“Play games all day,” they said.
“Such fun!” they said.
“Now I’m a robot.” 🤖
Menus are useful – when you don’t know what you want, it helps you choose from what’s available. But when you do know what you want, going through the menu is unnecessary.
This update includes a number of incremental improvements as detailed later, as well as automation for selecting characters and maps. However, collision detection didn’t make the cut 🙁.
So, what’s new:
- Character selection screen shows the selected character’s name.
- There is now a map selection screen.
- Sprite colours are now fixed (previously they were too bright).
- Selecting characters and maps can be done through the console.
- Air boxing aka punch-that-does-nothing.
Being able to control the game through the console will greatly speed up testing in the future:
- Saves time setting up a game.
- Feed in control input to test interaction between objects.
This doesn’t actually make the characters hit each other yet, but at least they look like it. Right now they stand completely still while doing so, which makes it look unnatural. Expect this to be polished ✨.
Even without the action collision detection, there is still plenty to be done.
What’s an action game without any action? One would struggle to call it a game. I gave heat a basic jab, but it certainly can be improved.
Other characters may use a weapon like a sword, or have a buster-style shot.
There are two new additions to scripting:
stand_attacksequence for characters.
interactionsin preparation for collision.
You can define the
stand_attack animation like so:
However, in preparation for the next section, you may want to use TOML’s full table syntax instead:
Collision Volumes – Hit and Hurt Boxes
There are two new configuration elements for each frame:
body: The volumes where an object can be hit.
interactions: The volumes where an object hits other objects.
These are defined on every frame, as each sprite may have different body and interaction zones:
These are defined in the character configuration as follows:
Hopefully you can see that every frame should have a
body (otherwise it can’t be hit), and in the frames where the character is attacking, there should also be
damage_hp value is currently arbitrary as HP limits haven’t been defined, but it’s likely to be done in the next update.
Hit and hurt boxes are done. Collision and winning are next 🏆.
Again as before, that’s where the fun begins!