Sunday, July 19, 2009

Adding some teeth

Today the first few tentative steps towards letting our little armored soldier fight things have been made. Specifically, you can now perform an axe kick while standing on the ground:



One of the issues with making a game with melee combat is figuring out what kind of martial style you want to use. There's a wide range of real-life martial arts available, at varying ends of the flashy-practical spectrum. Sadly, most effective techniques do not look very impressive. Most games opt to end up more towards the flashy end of the spectrum, because that looks nicer, and presentation is a big part of gameplay. But attacks like that axe kick there, or a Butterfly kick, are hideously impractical in almost all real-life situations, more likely to get yourself badly hurt than to do the same to your opponent.

That said, if you want to try a game that takes a mostly-realistic approach to martial arts (disregarding the fact that the combatants can leap through the air as if they had wire harnesses on), check out Lugaru, where you will get very, very badly hurt if you try to fight everyone at once.

The plan from here on out is roughly as follows:
  • Update the animation logic to allow animations to spawn new objects on certain frames. This will allow the kick to create a new object for hitting other things; it will also allow e.g. a shooting animation to generate projectiles when the trigger is pulled, or a hive to generate new enemies, etc.
  • Set up a simple, stupid enemy object (and rework the code that handles storing dynamic objects, which currently assumes there only is one, namely the player).
  • Set up an "arena mode" for testing combat out. This would use a hardcoded map and allow you to spawn new objects to fight.
  • Add health to all and sundry, so things can be killed.
  • Get the enemies integrated into normal mapgen, so they're placed on the map and respawn when you get far enough away.

That should get us through two of the major bullet points on the road map, and that much closer to version .1.

No comments:

Post a Comment