⚙️ An automation engineer writes a game 👾
🎮 Nobody plays it.
In the past eight weeks, we’ve added sound, hit interaction mechanics, control transitions, and UI improvements.
Let’s have a look:
Here’s the list of notable visible (and audible!) changes:
- UI includes instructions on how to navigate.
- UI sounds.
- Speed of the
dashsequences have been reduced.
- When a character hits another, a sound is played.
- When a character hits another, there is a small pause or freeze frame.
- HP bars are in the right place.
Alongside that is the list of less visible changes. More detail is further in the post.
- Hit mechanics.
- Stun points.
- Configurable control transitions.
- Added an end user license agreement (EULA).
- Ship with default assets.
The logic to determine when an attack hits a character is guarded by two mechanisms:
The number of objects the attack may hit. This can be limited to:
- A single object: For a simple attack such as a punch.
- A fixed number of objects: For a medium-strength attack, like a limited area-of-effect spell.
- Unlimited number of objects: For a strong attack, like an explosion.
Hit Repeat Delay (or cooldown1)
Number of ticks that must pass before an attacker may hit the same object. In a 60 FPS game, if a character has an ongoing attack with a hit repeat delay of 10, it would hit the same object 6 times.
The hit repeat delay is tracked separately for each object that is hit.
Attacks can inflict stun points. When a character accumulates enough stun points, they go into the
dazed sequence, where they cannot fend against further attacks. If a character is further attacked, they will fall even if they still have health points.
Stun points reduce by 1 point per tick.
Characters can now perform different moves (sequences) depending on whether you press, hold, or release an action key. This enables and distinguishes the following types of moves:
- Regular moves: Press attack to punch, jump to jump.
- Charged shot: Hold attack to charge, release to fire like Rockman / Megaman.
- Lasers: Hold attack to continuously fire.
- Defend: Hold defend to continuously guard.
There are 4 new sequences, and one renamed sequence:
stand_attackhas been renamed to
stand_attack_1is a second attack sequence.
jump_attackis added for attacking while jumping.
dash_attackis added for attacking while dashing.
dazedis used when a character is hit and has accumulated enough stun points.
interactions are specified has changed to accomodate the new hit mechanics. For a normal hit, the following snippet will tend to do want you expect:
The following shows all of the values that can be specified for a hit interaction:
In character configuration, . The following snippet of a frame in the
stand sequence shows the configuration to transition to
Attack is pressed, or
Jump is pressed:
For hold and release transitions, the
release_<button> fields are used to specify what sequence to switch to when the button is held or released on that frame:
Currently, because control transitions are specified per frame, if you have 4 standing frames, you have to copy and paste the transitions to all frames. In a later version, common transitions can be specified at the sequence level.
There are now two sequences for stand attack to make the movement appear more natural, and characters can now attack while jumping and dashing.
dazed sequence is when the character has been hit multiple times, and is dazed from the attack.
The next release will be a maintenance release to allow arbitrarily named sequences to be used in configuration. I’ll also try to work on the ability to spawn objects in game, and specifying acceleration values in object configuration.
The game is still in an early stage, but if you would like to support me, please consider becoming a Patreon.
- The word “cooldown” will likely be used in the future for skill execution delays. [return]