As quick update - the "inventory" system has been added together with various spells and item types. Enemies, once they spot you, will announce it via a message in the log. This is to avoid having the player constantly look around when moving in order to not get jumped by an enemy behind him.
In short, the update contains:
- Game Over screenwith your score, the dungeon level you died on and the enemy that killed you.
- I plan on adding a the ability to export a .txt file with move details about your journey (enemies killed, items picked up, stats, etc)
- 9 weapon types and spells:
- Dagger, Bow, Sword - have their own animation + variations
- Muffle, Heal, Disintegrate, Fire Bolt, Knock, Acid Touchshare the same animation for now.
- Since doing 6 extra animations will push me over budget, I'm thinking of doing just two more, that can be shared:
- Touch Spells (Knock, Acid Touch) will use the default spell casting animation
- Self spells (Heal, Muffle) will use a new animation (Think of a priest joining hands to heal)
- Range attack spells will have a new animation (Casting one handed, moving the right arm in an arc from the chest to the target)
- The 4 player classeshave been defined and the data can be imported from external files (this will make the addition of custom classes pretty easy)
- The 4 classes are:
- Warrior: Starts with a sword, high strength, high con
- Rogue: Starts with a dagger, high dex, medium strength, Muffle Spell, small mana.
- Wizard: Starts with Acid Touch and a dagger. High Intelect, High Mana
- Priest: Dagger + Heal Spell + Medium sized Mana Pool
- Enemies announce themselves when they spot you and are nearby in the form of a in-game message:
- Vampires and Lizardmen growl
- Slimes make a bubbly noise
- Rats and Bats chirp
- Humanoids yell
- Usable items (weapons and spells for now) can be picked up from the ground and found through out the dungeon.
- Item and potions types have been added like:
- Healing and Mana Potions to restore them
- Stat affecting potions (can increase/decrease base stats)
Slowly but steady the game is shaping up. I've added Gold in-game, that can be found on the dungeon (and in chests or dropped by enemies). I'm thinking of this being persistent between save files/characters with the gold collected being used when creating a new character (to buy a better weapon at the start or spend on stat points. Who knows).
I'm also happy that I manage to fix all memory leaks and problems caused initially by my inability to understand how to blend C strings with Pascal strings and have successfully completed 5 runs in a row without a single game crash or garbage appearing on screen. It doesn't sound like much, but I'm coming from C# and Lua. C strings combined with Pascal strings have been a maddening kick to the proverbial crotch.
Now I'm defining the creatures that appear in the game and on what dungeon levels + their abilities. A small concern of mine is dealing with enemies that have ranged attacks and how to display it properly. Right now, there is a "damage" animation in the form of scratches appearing on screen so I'm guess a different impact animation will be needed for range spells. To be determined...
Other than that, I'm hoping that in two weeks to place a new order for about 12 character sprites, 4 new animations and the icon + logo + main menu entry and to start writing the "manual" for game, explaining the rules, controls and offering a little bit of lore.
Features left to do are an auto-map window that can be opened side-by-side of the game for those that want to use the feature and the saving system. With a bit of luck, I can look into generating more dungeon types to make it a bit more interesting.
If anyone is curious how the character classes are defined for the game, it's pretty easy. I'm relying on CSV files so that anyone can edit/modify the game easily after it's done. So far, there's a CSV file for:
- Entities in the game (creatures, items) and their stats, abilities and effects
- Character Classes
- Dungeon details.
This makes it easy for me to balance the game and add features without having to recompile the game constantly or mess with resedit when I shouldn't have to.
Example csv files as I edit them using Excel 4: