oosyrag's Forum Posts

  • Overshooting is indeed the problem, as ticks are not necessarily divided evenly into seconds, and if you spawn on the object, it spawns at the object's location at the given tick you call the spawn on, rather than any set distance.

    You might try having the spawning object be the last placed dot instead of the moving object. Have the previous dot spawn a new dot at a set distance towards the target. But then you might have issues with sharp turns and cutting corners so I'm not really sure...

  • Rather than having your main object spawn the dots, you should have the dots positioned at predetermined locations along the path and reveal them at that location after your main object passes them.

    The problem here is you want dots spaced evenly, but for example even if you spawned a dot every tick, your object doesn't necessarily travel the exact same distance every tick, especially on a curved path.

  • Delete the index of the object removed, then push an empty index to the back if you want to keep the same size array.

  • Try Chupmunk physics

  • This is a question that comes up pretty often. If I recall, using custom movement push out solids is a pretty common solution, as well as applying physics to the objects in question. R0j0hound also had a nice SAT implementation that works well on circular objects.

    Otherwise, a low cost solution some people utilize is to actually allow overlap during movement, and then have them push each other out of the way upon reaching the destination (StarCraft zerglings).

    Generally speaking there is no easy quick answer for this as far as I know. Even StarCraft had trouble with dragon/Goliath pathfinding and collisions.

  • Either use an invisible helper sprite on your main scrolling layer that is positioned using the system viewport expressions every tick and set the arrow on your HUD layer to angle(helperobjectx,y,targetx,y).

    Or just put your arrow directly on your main layer and position it as above.

  • I can recommend creating your own particle effects using a sprite with bullet and fade (with random angles and speeds) rather than using the built in particle effect. You'll have much more control over the particles.

    Regarding performance - it depends on what platform you are targetting. The manual entry was probably written over 5 years ago. Devices are significantly more powerful now. Check http://www.scirra.com/demos/c2/particles/ for a live benchmark.

    Invisible and offscreen are identical as far as performance is concerned. They take resources in terms of event logic/collisions, but are not rendered. Large transparent areas of overlapping sprites are the common mistake - transparent pixels ARE rendered just like any other pixel.

  • If you are able to define "open" as a value in your array, for example 0, you can use the IndexOf expression to find the index of the open slot.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Increase the dampening again when you want it to start slowing?

  • Pretty effect.

    Quick theorycraft -

    Have a "base" (invisible) sprite, and the ball sprite in a container. Spawn the base sprite in a random direction in a random speed, bullet movement. The ball will also spawn as part of the container. Pin this to the base sprite's position only so it will move on the "horizontal" plane with the base sprite, and set up its own random vertical bullet behavior for the "height". The sprites vertical bullet velocity will be modified every tick by a set amount downwards (gravity), and when it collides with its own base sprite flip the angle of motion back upwards again while cutting the velocity by a half or third or so. You can round the position or use a distance clamp from the base sprite to trigger a "final bounce", where the bounce action is disabled, and fade can start to kick in.

    I noticed in the example the balls actually collide with the barrels with vertical discrimination too - if you want something like that, you can have a "collide-able" state for the base sprite based on the vertical position or distance from the ball sprite. If the ball is a certain distance (say, the height of the barrel or other obstacle) from the base, you can enable the state. While active, if the base sprite collides with a barrel, it can bounce off or change directions. If it is already overlapping an obstacle when the state is triggered, it can immediately run a bounce action for the ball and continue moving the same direction, representing hitting the top of the object.

    Your base sprite can also be visible as a shadow or glow effect rather than invisible.

  • It probably just won't load, and your oncomplete will never trigger.

  • I'm not very familiar with the physics behavior myself, but I assume to have constant motion you would need to apply force equal and opposite of the linear or angle dampening. I have no idea how the dampening value is calculated. Note this won't actually get your object moving, it will only sustain movement. To get the object moving in the first place, you will need to apply a force or impulse greater than the amount dampened.

    On the other hand, if your situation allows for it, you can simply set your dampening to 0.

  • You would need to build a tilemap image to import in as a tilemap, then you would be able to use the tilemap object to "paint" your level.

    The resource you linked to does not have this done for you, as many of the art assets are not the same size.

    If you put all the 16x16 images together into one file to build a tilemap image, that would give you a nice base foundation to work from.

  • Are you talking about importing project files? When you import/upload a project file into your project and a file with the same name already exists, Construct 3 definitely asks you if you want to replace the file.