0

I'm looking for a way to implement a fighter-jet like movement behavior for my non-player entities in my 2D side-view shoot-em-up.

I.e. enemy entities (say jets or planes) can't suddenly change their facing or velocity vector, but instead should need to slow down and / or fly a curve in a wider angle, possibly depending on a properties like "agility" or "maneuverability".

Gravity is not relevant for Enemy entities.

The goal would be to have an enemy Entity that can ultimately "intercept" the players path to fire a projectile. However, just being able to move in a smooth way would already be a great help.

To be specific, assume the player is at position (200, 0), with its movement vector being normalized (-1, 0) (i.e. moving to the left). The enemy would be at position (400, 100), moving normalized at (1, 0) (to the right).

I'm at a complete loss on how I could implement such a steering behavior.

If it matters, I'm using Godot, so I have the built-in _process with a delta time variable.

DMGregory
  • 134,153
  • 22
  • 242
  • 357

0 Answers0