Nazi Jones Episode 1

      



This project was made as part of a programming class. We had a little less than a semester to get it done.

The first thing I should explain is the name. Before this, me and two other students, John Mikula and Colton Carter, tried to make a text-based game. We didn't do very well, but somehow we got the name Nazi Jones. It was kind of like Indiana Jones, but you went into Hitler's tomb looking for stuff. When we got to the point in our programming class where we had to make a text-based game, we decided to keep going with Nazi Jones. Since we had to make the games ourselves, we decided to make a trilogy; I would do the first, John the second, and Colton the final.

I can honestly say that this project turned out much better than I thought. I learned about classes so it was very organized. I took a lot of time to actually think things through, and it turned out very flexible. I spent most of the semester making the systems, and then in about a day or two I made the game. I also tried some of the design patters we were learning about: the state machine and the singleton being the ones that helped the most.

We were only supposed to have a couple items and rooms, and an NPC for basic interaction, but I really went all out and learned as much as I could. The state machine was for the NPC and all the different things he said were states. The singleton was for my gameManager, because it held everything (items, npcs, rooms), but some things needed access to those things, which worked very well.

To be honest, I am proud of the whole thing, but two things that I am really proud of are the NPCs and the save/load system. The NPCs are able to check if you have items, take your items to say more, and just work really well. The save load system has 3 slots, which show some of the info for each slot. Saving works easy, and when you load, it shows you the last 5 actions that you did (Previously in Nazi Jones!). That was easy to do because the save/load system behind the scenes just saves all the valid actions that you do in the game, and then runs through them when you load. Seems stupid, but it works very well.

Overall, I am very happy with the programming and the game.