7DRL Day 7 - Already Done

I was thinking about what further things I needed to add to my game. I had already gone through my To Do list on Day 6. Knocked almost all those items out of the way. Only thing left was to add tunneling through walls. Then I eliminated a lot of walls and decided to not allow the play to tunnel.

With that, I decided that 6 days was enough. I am declaring this project done. The game is playable. You can win. You can permanently die. Health and gold are tracked. I learned a lot of python. That was the real goal - getting better at python programming.

I did try to create a class and use a player object to hold all the attributes that were previously global independent variables. However this was just some cleaning up of the code. There were no functional changes done on day 7. I think I might further refactor my code. That way I can learn more python and improve the code.

7DRL Day 6 - Game Completion

I attended to some mechanics of the overall game today. First I implemented keypad movement. This let the user move diagonally. I also halted the game when the player died. Also added detection to see whether all monster have been killed. If so, I also halt the game.

On a programming front, I removed any function parameters that were not necessary. Almost all variables seem to have a global scope. No need to pass them to my functions. Makes for simpler looking code. I might be violating some proper design principles. However I blame that on the Python programming language.

I decided to severely reduce the amount of dungeon walls. This was an attempt to ensure the player can reach all monsters to battle and win the game. I also took care of initial wall and gold placement to make sure the player does not start out on top of either of them. I think I have a fully playable game. It is highly minimal, but playable.

7DRL Day 5 - Monster Artificial Intelligence

I was getting annoyed with monsters getting stuck in my maze. So I added some more logic to their movement. Found it tough to figure out how to keep them going towards the player, even if there were walls in the way. I think there are still several scenarios where they get stuck.

Was not satisfied with the turquoise wall color. So I changed it to green. Also made the gold pieces an orange instead of yellow color. This causes a retro 1960s look to the game. Feels right since Rogue is an ancient computer game.

I finally broke down and added a scrolling message section at the bottom of the maze. This worked out well. I primed the queue with some initial welcome messages at the start of the game. Now at least the player has a running commentary on what is going on in battle.

Not sure where I am going to go next. I might clean up the code, especially in the department of function calls. I do need to implement perma-death. Right now if you die, your hit points go to zero. But you are allowed to keep playing. That is not right.

7DRL Day 4 - Mechanics

I did not make many visual changes to the game today. Moved the gold and hit points stats to the right of the maze. This is to make room for a scrolling message area below the maze. My goal this time around was to concentrate on making the game challenging through a sense of balance.

I decided to bump up the number of monsters in the maze. I made sure when choosing an initial position, that I did not choose a space on a wall. I also ensured I did not put a monster on top of another monster. Had to update the monster movement routine to also make sure the monsters did not step on top of each other.

I implemented regeneration of player hit points per turn. Tomorrow I shall try to add more smarts to the monster movement. They get stuck way too often in the maze. Monsters don't need supreme intelligence. But they need to know how to get out of a bind and attack the player.

7DRL Day 3 - Monsters

Today I implemented monsters in my dungeon. They are all nameless. Their symbology is a red "p". I gave them each hit points. For battle purposes, I also gave the player hit points as well. The player's hit points are now displayed on the bottom of the screen next to the gold amount.

The monster do try to move towards the player. Based on the nature of the dungeon walls, the monsters do not move smartly. Therefore they can get lodged in assorted walls. I need the monsters to get a little smarter. They should detect that they are stuck, and choose another path to get to the player.

Battle is currently working. Monsters and the player do a set number of hit points damage per attack. Both always score a hit. There is detection for when a monster dies. Upon death they disappear from the screen. I have not implemented death for the player character yet. I probably will tomorrow.

I did fix some prior bugs in the game. Now gold will not be placed on top of a wall. Also the player can collect gold and move onto the space previously occupied by the hold in a single turn. I also made sure that monsters cannot be initially placed on top of a wall. The game is progressing slowly. But I am pleased with the overall progress.