My game. What to include…?

The final sections of the LPTHW book, is to make a text-based game, similar to Zork. There are iterations in this process, from making a simple working shell and adding automated tests locally, through to fleshing out the game and integrating the final solution into a web framework for deployment online.

The first time I attempted creating the game, I made several big mistakes that I aim to avoid this time:

As a result, I failed…badly. But fortunately, failure provides an opportunity to learn, so I am much better prepared this time, both in programming ability and working procedure.

Content and structure #

The content of the game really doesn’t matter. I need characters, events, locations and a story to bind it all together. Zed’s game was based on a spaceship, having a fight with an alien, whilst trying to escape to freedom.

My game, will also be based on a spaceship, (the Frostromo), will have characters, (Shipley, Fash) and will involve a fight with an alien or two (Faceslugger, Xenodwarf) - aptly named to avoid copyrighting issues.

The structure of the game will be the same as Zed’s. There will be a map, scenes, and an engine to drive through it. Each scene will have some introduction text and a ‘challenge’, with various results leading to different outcomes and navigational paths. There will be an inventory with items influencing decisions.

What am I going to do differently this time? #

I am going to draw the game out. It will start as a pencil and paper exercise before progressing to a state model diagram and maybe even UML Class diagram, purely for practice.

I’m also going to spend less time planning my characters and their personal traits. In my first game, I used inheritance from a base class - Person() that was that was incorrectly implemented as I didn’t understand the super() function.

However, I am also going to include everything I have learned in the LPTHW book, which I expect was probably the original goal of the game in the first place! I haven’t investigated how to implement each item at this point, so I’ll follow that up in another post, but I plan to include:

I want to ensure I check-in each change or discrete piece of functionality as soon as I get it working and validate it with tests. I’ve been slack with git branching up to now when I’ve had ideas, so I’m going to work on a branch for any significant change.

OK. So, the first step is to do some research on potential ways to implement the items above and draw my game map…

 
0
Kudos
 
0
Kudos

Now read this

What is this blog about and who is it for?

This blog is primarily….for me. But I am happy to share it with you too. In September 2017, I signed up to Zed Shaw’s Learn Code: Live course to progress my programming skill set. This blog is a learning aid for me. It is to review... Continue →