GameMaker: Angular motion


It's like drifting. On a spaceship. In space.

This is an example of managing angular motion in GameMaker.
In turn, that means having angular speed with acceleration, friction, and limitation.
Such can be particularly useful for simulating a more 'smooth' rotation behaviour, when object will not start or stop rotating instantly.
If combined with relatively properly written code for linear motion, this can grant pretty nice behaviour for space games.
Also there's a "trail" effect added, originally just to demonstrate how it works.
Everything is pretty nice and simple.

Download GMK

GameMaker: Orbiting


Looks of it. Also you can drag "planets" around.

Yesterday I've made an example for making instance orbit around other instance.
In contrast to other similar examples, here speed defined in a normal way (not angular), instance will detect distance to 'target' object automatically, and speed vector is stored in hspeed/vspeed, allowing to detect direction and impact speed easily.
Also code is well-commented, since several parts indeed require some knowledge to understand.

Download GMK

GameMaker: 8-way shooting with 4 keys


This is a specific example for shooting in 8 directions by having 4 'shoot' keys, which, in different combinations, determine direction. While not being exactly a common control scheme, in some situations this proves to be better than different schemes with single attack button, as it allows projectiles to be fired in directions independent from movement, essentially granting something similar to 'analog sticks' of gamepads.
Example is simple, well commented, and would be rather easy to implement.

Download GMK