dop2000's Forum Posts

  • Ashley I haven't actually tried to make a signed APK in the new version, but I believe OP is referring to this issue:

    Google Play doesn't allow uploading APKs targeting SDK 30 and signed with signature scheme v1. Does the C3 build service support v2 signatures?

  • Of course, you need to invest effort in solving this issue, I think everyone wants to understand this and solve it as needed)

    I meant you should try investigating it :) And then explain us how to fix it.

  • If your enemies are moving from right to left, I would suggest using Compare X<(ViewportLeft(layer)-100) condition.

    This way the enemy will respawn after it disappears at the left edge of the screen. Similarly, respawn it at x=ViewportRight(layer)+100

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • It's obvious now that nobody on the forum knows how to solve this. If you think that Construct creates a key in the wrong format, which is no longer supported by Google Play, you need to log a bug report:

    github.com/Scirra/Construct-3-bugs/issues

    Otherwise you can try researching this issue in the internet how to generate a proper v2 key. And if you find the solution, post it here for the benefit of others.

    My workaround was to change the target version to 29. Export as Cordova project, extract files and change target version from 30 to 29 in config.json and config.xml

    Then package back to zip and build with C3 through Export Manager.

    This is only a temporary workaround, I'm afraid Google Play will soon no longer accept SDK 29.

  • When you delete an index from the array, all the remaining rows move up. So if, for example, the "For each" loop has removed row #3, there is now a different row #3. And if the value in it also happens to be empty, it will not be deleted.

    This is why I run the loop in reverse when I need to delete records from arrays.

    For "n" from Array.width-1 to 0 
     Array compare value at loopindex="" -> Array delete index loopindex
    
  • What behavior are you using?

    Also, what does this mean - "Player keeps his 20"?

  • Try this:

    runtime.callFunction("MyFunction"+localVars.n);

    or with a global variable:

    runtime.callFunction("MyFunction"+runtime.globalVars.n);

  • My demo is for construct 2, maybe that's why you don't see these options. Try saving it as Construct 3 project and make sure you have selected Runtime=Construct 3 in project settings, in Advanced tab.

  • Text input may be ok for prototyping, but I would suggest using text or spritefont for the real game. You can create a new text object for each message and pin them to a large panel for scrolling. Check out this demo.

  • This happens to me all the time. I still regularly discover that something in construct works differently from how I imagined it :)

  • Edited: this is based on the function method of action... if you remember in Construct in order to have events/action act like function calls we have to do a wait 0 so next set of actions wait for above to complete then fire up ... but in functions... that wait 0 happens by default.. this will cause the other 2 functions to have time to re-evaluate the conditions that fired them in 1st place. (this is main reason i don't use functions... )

    I'm sorry, but I don't think what you are saying is correct.

    In any event actions and sub-events are executed from top to bottom. Functions are no different. They don't add any "wait 0" to the execution order. (unless you are using asynchronous functions and specifically wait for them to complete)

    And any conditions are evaluated only once, except when in loops.

  • No, I don't think this could happen in C2 either. One possible scenario when the first function could stop the other two from running is if it deactivated the group with those two functions. Or if the same conditions are checked again inside the two functions.

  • Saving to local storage is definitely easier with a dictionary. How you use the values after loading is up to you. You can copy some values that you need often to global variables (for example, gold amount). Values like game settings you can leave in the dictionary.

  • this sounds like when the drag and drop conditions happen, the 1st function call will disable one of the conditions and the other 2 remaining in the action list will not trigger.

    I may have misunderstood you, but if you are talking about the screenshot in the first post, there is no way the first function can disable the remaining two. All conditions are evaluated first, and if they are all true, then all actions will be executed. So all 3 functions will run one after another, without any pauses. Even if one of the functions changes the variables used in conditions, it won't matter, because they have already been evaluated.

  • Had the same problem today, ended up changing target sdk to 29. It works for now, but I'm guessing Google Play will soon stop accepting this version, so I'll need a proper solution.