iznaut's Forum Posts

  • Problem Description

    Including the Touch object in a Construct 2 project prompts a location services request on first startup on iOS devices.

    Attach a Capx

    dl.dropboxusercontent dot com/u/1108862/Cordova%20Test.capx

    Description of Capx

    This is an empty project with only the Touch object included.

    Steps to Reproduce Bug

    • Export project to Cordova
    • Zip contents of project and upload to Adobe PhoneGap Build
    • Load IPA file on iOS device

    Observed Result

    The application displays the following message to the user: "Allow "Cordova Test" to access your location even when you are not using the app?"

    Expected Result

    This prompt should not appear. There is no reason for the Touch object to request location services.

    Affected Browsers

    • N/A

    Operating System and Service Pack

    Windows 7 Ultimate x64 SP1

    Construct 2 Version ID

    Release 200 (NOTE: This is still an issue in the 204.2 beta)

  • I submitted an update of my game to the App Store about a week ago, after having given up on fixing this prompt. Of course, despite getting approved the first time, my update was rejected for the rogue location services prompt.

    I did some more digging and FINALLY determined the cause: It seems to be the Touch plugin within Construct 2. Once I deleted it from my game, I no longer saw the location services prompt after exporting to iOS. Of course, this also meant that my game was totally unplayable (no touch controls).

    I thought it was insane that the Touch plugin would be causing this, so I made an empty project with nothing but a Text object (to make sure something was showing on the screen) and the Touch plugin. Sure enough, when I uploaded the project to Adobe PhoneGap and opened the app on my iPhone, it popped up the location services prompt.

    Can anyone explain what's happening here? Is this some sort of bug? I'd really like to kill this prompt and get my update approved, but removing the Touch plugin from my project isn't really an option.

  • Am I in the right place for this? I really have no idea. There are so many moving parts here (Construct 2, Cordova, PhoneGap, etc) that I can't even pin down which is making this prompt happen.

    Even if someone could point me in the direction of a different support channel, it would be appreciated.

  • I released my first iOS app in the App Store this weekend, built in Construct 2 and exported with Adobe PhoneGap. Everything went fairly smoothly (well, after a week or two of it NOT going smoothly...I had to piece together a lot of information on the process myself), but now that it's available to the public, I've noticed that it throws a "Allow this app to access location services" prompt upon the first launch.

    I have no need for location services and never consciously enabled this prompt during development. It doesn't break anything if the user declines, but at least one person has asked me about it, concerned for their privacy. I think that's a legitimate concern and I'd really like to kill the prompt in the next update.

    Of course, I have no idea where I would do that. I checked the config.xml file (both the one Construct spits out as well as the one PhoneGap spits out in the IPA file) and there's nothing that looks like it would be turning it on.

    Thoughts?

  • The latest beta build of Construct broke my audio loops, but I didn't realize until after I had done work with my capx in the new version.

    Is there a way to open projects saved in newer builds with older versions of Construct? I'm showing my project off at a show on Saturday and I'm afraid there won't be a fix in time.

  • I've pieced together most of what I need to do to get leaderboards and achievements on my iOS app, but it seems like there's very little documentation/tutorials to help me actually implement and test these features in my code.

    I've figured out that I need a sandbox account (and have to enable this feature on my phone), so I'm now able to see the authentication banner when starting the game as well as open the leaderboards via a button. However, my scores don't seem to submit to the leaderboard and (as far as I can tell) it doesn't seem like it's picking up any leaderboards at all. I've set them all up in iTunes Connect and made sure to match the Leaderboard ID to the one I'm submitting to in Construct, so I believe everything's fine on that end.

    Do I need to do anything more than using the "Submit Score" action once logged in?

    Exported with Cordova and built with Adobe PhoneGap.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Awesome! I was in the midst of a game jam so I wasn't able to take the time to implement any of your recommendations, but I will definitely keep them in mind for future updates. Thanks!

  • Take a look here, click a bit through the tutorial. Do you mean it like this?

    Yes, how did you do that?

  • I'm working on a game currently that has an inventory system. I think it would be nice for item names to be colored when mentioned in dialog so the player knows to pay attention to them. I think Zelda is a good example of a game that does something like this.

    Since a bit of searching taught me that there's no proper way to do something like this, I thought up a rather hacky way of making it happen, but I need some advice on how plausible it is. My idea is that I can add an identical sprite font with colored text and then overlay it on the white sprite font, add enough spaces until I get to the word I want to color, then type only that word.

    This works perfectly when done manually, but the problem is making it work automatically...how can I write an event that copies the text of another sprite font object, replaces the first X characters with spaces, then writes the one or two words I want in color? If it helps, the item names are often called in through functions (so a typical line of dialog would be something like "That's a very nice " & Function.Param(0) & " you got there." and I would want the parameter to appear in color).

    Attached is an example of the effect I'm going for.

  • I think that organisation is important. Grouping is very helpful and I basically use it for anything that is bigger than an example I whip up for someone.

    On that note, functions, grouping and callbacks. When I first started with Construct classic (seems like a long time now) I was really frustrated by having to repeating events when a function could have been used. I don't know to this day if classic had the ability to do functions, I haven't looked back. Finding out ways to better organise and abstract the event sheet are what I find really useful.

    Don't get me wrong, I think keeping things organized is VERY important and helpful, but it's much more so when you do it from the get-go. Getting 200 events in and deciding that the code isn't "clean" enough for you is not a productive path to start down, but keeping things well labeled and grouped as you work is a good habit to get into.

  • My personnal one would be "do not overdo it", I see some people (and lets be honest, on some parts I was like them at first) that put a lot of time and efforts into:

    -optimising every single event to run faster (changing conditions and actions constantly, which without measures or experience can become the opposite.)

    -trying to use things they do not understand instead of either learning about it or simply not using it (the a = lerp(a,b,x*dt) is the perfect exemple of thing that is not only wrong when the calculation is done with dt variations, but also is mostly used just because it looks good rather than being needed or understood), it can demand quite a time to polish some of them pretty well

    -learning by themselves how things work by doing some studies of them, whan the manual actually does this job, sure, there is a difference between reading it and proving it, but if people want to prove everything every time, it takes time for only rarely benefits.

    -reinventing the wheel, seriously, why use an engine if you reinvent the wheel constantly, there are tools, and they are pretty much working in most cases, might as well learn to give them some work sometimes.

    the lost time is actually time not improving the game in most cases, and the result obtained can make things worse, which means basically even more lost time.

    on the same topic, backups are great to erase big f*ckups and mistakes we do, use them.

    Good stuff here. I can especially relate to the point about backups...I often "Save as" to new files before big changes so I have a good working copy before breaking everything.

    I'm also very bad about trying to "optimize" everything...often I'll waste hours trying to consolidate events and organize things into groups, which will supposedly allow me to find and edit things more easily down the road (when in reality, I won't likely need to make any major modifications to those events in the future).

    I'm getting better, but old habits die hard!

  • I've been working with Construct 2 for a year or two now, but I'm still constantly learning new things about it...often because I have to in order to efficiently execute a new game idea, but sometimes I just happen upon a helpful new feature I never knew about.

    For the sake of learning even more new stuff: What are some of the most invaluable lessons you've learned in regard to working with Construct? For example, I didn't understand how Functions worked until a few projects in and I use them constantly now. Also worth mentioning is the "Replace Object" option.

  • Hello,

    My name is Eric and I've been making games with Construct 2 for a year or two now, but have been reluctant to do a lot of posting (aside from questions here and there) since I couldn't change my username. I finally decided to just make a new account and start to get in touch with the community a bit more.

    You can check out my work at virtually-competent[dot]itch.io!