dop2000's Forum Posts

  • You need to use "wait 0.5*loopindex" in the first line, not your static variable.

    The first loop (for "IndexX") is actually executed in one tick, but it creates many Wait threads. If you use static variable, at this time it's 0, so all these threads will become "Wait 0". If you use loopindex, then they will be scheduled with 0.5s increments.

  • That's a clever solution! Much easier than what I had in mind.

  • Making the car to only turn on intersections is easy - just put an invisible square sprite there and ignore left/right keys if the car is not overlapping it.

    But if you want the car to make a naturally looking 90-degree turn and enter its lane properly - this part may be tricky.

  • I don't really understand how your game is supposed to work. You need to post your project, or maybe a youtube video of a similar game.

  • Put the JSON string with character spacing data in here:

    I also highlighted other important fields.

    If you configure everything correctly, you will not need to change anything with events.

  • Why did you put a dot in "savedWithRelease" line? If it contained 13802, you need to replace it with 13700

    If this doesn't help, please post you file. I don't know what you are doing wrong, but it will definitely be easier to change it myself...

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Try this:

    Enemy has LOS to player
    ...Enemy bullet speed<1000 : Enemy set bullet acceleration to 500
    ...Else : Enemy set bullet acceleration to 0
    
    
    PlayerBullet on collision with Enemy : Enemy set bullet speed to 1
    

    So every time player bullet hits the enemy, it will stop, and then will start accelerating again, up to the maximum speed of 1000.

    If you don't want it to stop, then instead of 1 you can use something like min(100, Enemy.Bullet.Speed) or (Enemy.Bullet.Speed/2)

  • You can definitely do this with blend modes.

    Set layer transparent=no, color=black, Force own texture=yes

    Put your circle sprites on this layer with blend mode "Destination out".

  • It's actually much more complex than that, especially with only one family for all NPC types. Here, I made a little demo:

    dropbox.com/s/1zqazbbvfhnraqz/ChasingAnimals.capx

    This can be done easier (the picking part) if you make separate families for predator and prey objects. You can actually add the same object to multiple families, for example a Wolf sprite can be in Predators family and in NPC family. On Predators family you add instance variables only applicable for predators (for example, attack speed etc). On NPC family you can add more general variables, that apply to all NPCs, like health.

  • Ashley, thanks for the explanation!

    Since "Set color" action is essentially the "Tint" effect, why did you add it as an action? Was it for convenience and ease of use?

    Also, when using both this action and some other color-changing effect, in which order are they applied?

  • Sigh...

    Why did you change extension for "project.c3proj" file?? Rename it back from "project.c3p" to "project.c3proj"

    Go back to "bamboo forest.c3p" file. Rename it to "bamboo forest.zip"

    Extract files from "bamboo forest.zip" into an empty folder.

    Open "project.c3proj" file in Notepad++, make changes, save.

    Don't do anything else. Try opening this file in Construct 3 editor.

    If successful, make a backup copy of the entire project.

  • rborsuk Yeah, the files got removed a few days ago, hopefully this will be fixed soon.

    Here is the zip:

    dropbox.com/s/eu5gx6ihl091urj/Post_To_Google_Spreadsheet.zip

  • In a big project hard-coding UIDs in code is a bad practice, you should use instance variables instead.

    If you need to detect when the character is standing both feet on the platform, you can put an invisible Zone sprite, which is smaller (narrower) than the actual platform. Then use "on collision with zone" or "is overlapping zone" events.

  • Note that for SpriteFont, the color is applied as a tint. To ensure you can use any color text, use a SpriteFont with the characters drawn in a white color.

    construct.net/en/make-games/manuals/construct-3/plugin-reference/sprite-font

  • Use another invisible rectangle! :)

    Seriously, an invisible rectangular sprite for character is a very common technique used in platformer games. It helps to avoid lots of potential issues with changing collision polygons. Player actually controls that invisible sprite and the character sprite is pinned to it.

    You can use other invisible sprites (green zone on your picture) to detect when character steps on something, or enters a room etc.

    Just a second condition to "On landed" event:

    CharacterBox On landed
    CharacterBox Is Overlapping LandingZone
    .......(do something)
    

    .

    Edit: I may have understood your question wrong. If you are asking about how to detect when the character is N pixels above the floor, in this case - yes, you need to use "Overlapping at offset" event, with a positive number in Y offset. Possibly together with "Character is falling" and "Trigger once" conditions.