I guess I’m done today. It’s mostly what I wanted.
Not as good as I was hoping for but it’s decent and seems to not crash or have any obvious bugs. I think I accomplished quite a few new things but it just doesn’t quite have the feel I was going for. I think if I had devoted more time to the ally ai and focused less on enemies and items it would have been better. Oh well. It was still fun.
You can recruit up to 8 people to adventure in the Dice Mines. There’s dice to pickup, items to find, enemies to kill, and lava to fall in. There’s no real goal but it does keep score.
I’m fairly happy with how the dice are used. They’re used as your base stats (eg, accuracy = 3d4+2), as weapon bonuses (eg, +1d3 damage), and carried around in your inventory. You can use the ones in your inventory to use special abilities. It didn’t quite get the feel I was going for but maybe you need a real dice-based boardgame for that. I’m happy with how the weapons and abilities turned out.
I’m a little disappointed in how the party based ai ended up though. They’re fairly smart but each person’s personality doesn’t stand out very much. They don’t interact with each other as much as I wanted either. I do like how they have different preferences for where they stand in the group, how often they talk, and how greedy or aggressive they are. Another couple days and it would be pretty good. The 3D a-star pathfinding is pretty cool though.
It’s playable in your browser but you should probably download the Flash Standalone Player and use that instead. It’s written in Haxe so it can compile to native libraries but it was about 2 seconds to render each frame when I tried it so I’m not going to make that downloadable.
Funny day today. I greatly improved the pathfinding of your allies so they now stay near you and can follow to other z-levels. They each have their own preference for how far ahead or behind you they want to be. It took quite a while to get right but I think it works fairly well. I also gave them better names. I started with throwing together some fantasy style names but changed my mind since I’ve done that before. This time I just pick from lists of the most common first and last names in the USA. For some reason I think it’s really funny to be running around fighting orcs with Kimberly Clark and Steven Brown.
start the game with some allies who stay close to you
show your allies and some details on the screen
actually select your party before you enter the dice mines
I finally got around to implementing allies. They mostly stay near you and use their abilities or fight nearby enemies. They will sometimes follow you down stairs or if you fall to a lower level. I had to implement 3D AStar pathfinding for that. First time I’ve done 3D pathfinding and I think it went smoothly.
From here on out it’s mostly just improving the ai. Make them stay near you but still give you space to move, make them work together better, make them say things about their history or strategies, give them some personality.
Worldgen was starting to take a few seconds so I split that out into a worldgen screen. You can see the progress and then it switches you to the play screen once the world is ready.
Items can now use the same abilities that creatures do. So a short sword of knock back will have a chance of knocking others back when you hit them. Healing items will heal based on your piety when used. So an “unholy long sword of healing” will do a ton of damage but, unless you have a high piety from something else, it will occasionally “heal” you negative points.
You can also exit the caves by going up the stairs on the first level. Exiting or dying shows a persistent high score list. Your score is based on the number and value of the dice you’ve brought back from the mines. This is the first time I’ve done any kind of saving and loading in a 7DRL.
Want some giant jumping arachnids with your roguelike?
Enemies can now use their special abilities just like you can. Arachnids can jump, bear attacks can temporarily lower your stats, orcs can boost their stats, ghosts can become invisible, fairies can use magic, etc. It gives them much more character but a few are way overpowered. Too bad it took about 3 hours of refactoring and trying to figure out why the bear ai took several minutes to run.
Also, I was originally planning on making it so you could select a special ability and then select a target, but I realized it was easier to just have a list of effects to be applied to your next attack. That was an easier implementation and allows zanier gameplay since you can do crazy combos. Like boosting your accuracy, boosting your damage, jumping across the screen into an enemy, and knocking it back all as part of one attack. It’s pretty fun. Although when a giant arachnid jumps across a chasm and knocks you back and makes you fall a few levels down another chasm… well… that’s also pretty fun.
enemies can use the same abilities heroes can use
enemies can be put to sleep (with the soothe ability or some start asleep)
enemies flee when afraid (with the intimidate ability or after a kill)
DiceMines is going to be about two mechanics: using dice to do cool things, and choosing your party. Ideally; using the dice will be fun and interesting and each party member will have a different personality.
I got an insane amount of work done today. I’m reusing a lot of algorithms for FOV, colors, and display but I also wrote a lot. Just before dinner i added knockback. It turned out to be hilariously overpowered so decided to rework it so that it shows up more often. I’m about 1/3 of the way done which is good because I don’t have much time during the week. I think after a couple days it may be worth trying.