Capstone Project: Midpoint Check-In

I realized this morning that I haven’t made any posts about my Capstone Project yet, and since we just reached its midpoint, I think it’s the perfect time to bring it up!

My group chose to work on a Text-Based Adventure Game. Our game is called ‘Elon Goes To Mars’, and it, as the name implies, allows you to play as a vaguely-known character name Elon, who is on a quest to get to Mars. He fortunately has the funds, time, and connections to make this a reality, if he makes the right choices along the way.

The exact details of the story are still an evolving work in progress, but we have nailed down the technology that we’ll be using to create the game. Rooms, room features, game items, and the main character himself will be represented by JSON objects. The game itself will be written in Python that utilizes these JSON objects, along with a text-parser that the player will interact with throughout the game.

My main area of responsibility is the aforementioned text-parser. It consists of a class containing all the required functions necessary to prompt the user for a command, parse that command, remove any extraneous words and symbols from it by comparing it to a linked allowable vocabulary list, and returning the cleansed command as a string to whichever game function calls it. The calling function then runs through an if-elseif-else structure that it contains, where it then triggers the appropriate in-game command functions linked to said string.

I had no experience with Python before this class, as my lower-level classes were all in C++. The learning curve has honestly not been too bad though, as Python is quite user-friendly, and between my Python-familiar teammates and the seemingly infinite online resources available for Python, I’ve picked it up quickly. I look forward to learning more, and to completing this game, as it’s been a lot of fun creating so far, despite the front-loaded learning curve.

Leave a comment

Your email address will not be published. Required fields are marked *