Because of work I am limited to having 2 actual days of programming and this is the end of my first one. Luckily I managed to get most of what I wanted done so I can focus on some more aesthetic based things tomorrow.
My starting point for this years 7drl is the completed python libtcod tutorial found here. I like the direction it went. Sadly there are some bugs and a few nitpicks that I had to fix. I actually spent the end of last month and up until the day before yesterday slowly working on it. Though admittedly that says more about how little time I had then anything else.
My first change of the day was offloading the creation of monsters into a separate file. This was more to make it easier to find them than anything else though. I much prefer a plain text style storage but I lacked the time to really go through with it this year.
Next up was working on the monsters I actually wanted instead of the generic orc and troll you get. My theme is ‘naked’ animals. More specifically the game’s name ‘Fuzzy Wuzzy Hunters’ is a reference to the old song about a furless bear. If you have ever googled what they look like you will know those things look horrifying. To go with it I included a small selection of naturally hairless mammals (technically a lie as all mammals have hair, these just have almost none). This list contains Naked Mole Rats, Naked Mole Rat Queens (mostly just because they are one of the few mammals that do this), Sphynxes (the hairless cat, not the myth), Hippos, Elephants, and finally Fuzzy Wuzzy himself.
When stating them up I wanted some randomness to the stats. This however would make the xp values a little off with some stronger ones giving just as much as the weakest of weak. I would have also had to calculate the value myself anyway. In the end I decided to use a relatively simple formula to generate the values. It was hp * defense + power squared. This actually got me values shockingly close to the originals on the orc and troll. My reasoning on this specific formula was defense is a modifier on hp. The more you have of the first the longer the second lasts. With power I originally wanted to just multiply it by 3 or something but I decided that the more you have the more it is worth (mostly because of being able to pierce defense). Since the values never get too high (I limit the game to 5 dungeon levels) simply squaring it gives it a scaling worth.
After that there was some general things like switching it to use ‘#’ for walls and such. Mostly though I worked on combat for much longer than the number of lines changed would indicate. I didn’t want a ‘fully’ random combat system like using 3d6 or something. In the end I decided on most attacks just doing their power with 25% doing 1 less (min 1) and 5% doing 1 more. This felt about right from the little bit of testing I did. Though as with many things I feel this would not hold up in the long run and likely only works as I have kept the dungeon short which limits stat inflation.
Second to last I removed the equipment system in favor of having a choice of 3 weapons at the start which act like classes. This was actually one of the main things I wanted to do in the game so I am happy I got it done today. While each weapon can still do the regular bump attack they all have their own quirks. The most normal is sword and board. Its big feature is simply that when you bump attack and until you move there will be a 50% chance to not be hit by attacks. This is to represent the character being skilled with hunkering down and defending with his shield. The next in complexity is the pike. No dodge chances or anything. It just hits not only the square in front of it but the one directly behind it as well. I actually feel I need to change the two as in the end they are still mostly the basic bump attack if fancier. Finally though is the daggers. This one has been an attack method I have long thought about. Instead of static face to face bump fighting it allows a sneaky run by attack. When moving in a direction the tile directly to the left and right get attacked by your daggers. This allows for an active fight most suited for crowded areas. I also gave them a bit of a dodge chance where as they move it is harder to hit them. Right now for every turn moving they get +5% dodge chance to a max of 25%. This feels a bit much so I might reduce it to +1%. Really though I should probably make it only count when continuously moving and next to enemies.
The last thing I did today was more of a little hidden gem sort of thing. I increased the rarity of the naked mole rat queens. Along with that I made the more powerful ones a lot rarer. However to go with that I gave the more powerful ones longer names depending on how much better they are. I am also thinking of going back later and upping the xp even more though it technically does this already with my formula.
You can find the github for my game here and if you want to look at it as it is as of this post this link should take you to my end of day 1 merge into the master branch. My plans for tomorrow is to work on the dungeon gen to make a cave map instead. This will actually be a new thing for me as I have so far focused entirely on the standard dungeons and corridors model.