For movement behaviors, I highly recommend checking out this GDC paper on steering: https://www.red3d.com/cwr/steer/gdc99/ It’s a very good intro to a simple vector math application PLUS it describes many of the behaviors required for good agent-based movement you’d use in a game like this. E.G: Alignment: