In-Depth Project (Final Blog Post)

What is In-Depth?

Your In-Depth project is an opportunity to experience learning about any topic (that you haven’t already mastered) so that you can potentially gain a valuable new skill, or gain an interest in a topic you never knew you had.

What is my In-Depth project?

For my In-Depth project, I decided to create a “text-RPG” (role-playing game) game using the Python programming language, which would include a whole battle system with a lot of math, dialogue options which lead to later reveals in the story, and more.

Why did I choose this as my field?

To me, being able to think critically is a very important skill, and I, at the time of choosing my In-Depth topic, thought that computer programming would be a great skill to reflect. I also thought that, as an added bonus, I could always consult my brother for help if I ever needed. My brother ended up becoming my mentor, as he has had training and education in computer science.

I also decided to use the programming language Python for my project as Python is a very good starting language, since there are many aspects of other programming languages that can be very difficult to get a good understanding of, such as memory consumption. With Python, you don’t have to worry about any of these aspects. Python also has a very easy to interpret syntax. After working on my project, I have gained a solid ability to read Python code like the English language. That’s also another reason why Python is such a good language to start with; It reads like the English language. If you want a language to compare to, which does NOT read like the English language, look up the Haskell programming language.

How did I find the project?

Throughout the project, there were some issues, with varying levels of importance, but more or less, the project wasn’t too difficult to deal with. I loved working on it. I learned a lot about not only the Python language, but many other tools that work with it such as some of its modules, the “pickle” or “sys” module, or possibly ‘pyinstaller’, which I used to export my program from a .py file to a .exe file so that people without a Python interpreter can run the game.

Where can I find the project? How can I play the game?

Here is a link that leads directly to the GitHub repository for my game. In it, you will find a singular executable file known as AeternosDemo.exe. To download the game, press the green button that says “Code” on the right.

Then, click the button in the drop-down menu that says “Download ZIP.”

Now, in the Downloads folder of your computer, you will find a ZIP file named AeternosDemo-main.zip. Extract the file and you will find the .exe file inside a newly generated folder with the same name as the .zip file. Now, open the .exe file and enjoy!

Note that with my game, all the inputs are highly sensitive to error, so if the game asks you to input either “1” or “2”, only type the integer that you select, with no additional spaces or characters.

I will also link a PDF which shows which days I worked on my project to prove my working time. You can find it here.

Note that your antivirus may detect my game as a virus since my program has isolated variables, but and promise you’re not downloading any malicious content!

Concluding thoughts

Throughout this project, I’ve learned a lot about the Python language, and, as corny as it may seem, a little bit about myself. I’ve learned that I actually have a passion for programming, and I think I may want to pursue it further, possibly throughout my life. I’ve also learned a bit about how I like to work, how I ask for help, how I fix problems, and more. With that being said, please let me know if there are any bugs with my program and I hope you enjoy the demo!

– Kavyan

14 comments

  1. qmtk · May 31, 2021 at 1:07 pm ·

    Thanks for guiding us through your project. What did you enjoy most about this project? Mulder

    • Kavyan · May 31, 2021 at 7:51 pm ·

      For me, I really enjoyed learning about the ‘pickle’ module, as I thought about how many possible applications there were for the module. The pickle module is used to download information from the program onto the users computer, usually used for any configuration settings that the program wants to refer to later. In my case, I used the pickle module to save a player’s character data. For example, their gender, their name, how far they were into the game, etc.

  2. Dylan · May 31, 2021 at 7:20 pm ·

    This was amazing, Kavyan! You made a genuinely pretty unique game and I’m having a blast play through it! I love that the story is genuinely interesting and engaging, and I must say you did an amazing job!

    Dylan

    • Kavyan · May 31, 2021 at 7:52 pm ·

      Thanks, Dylan! That means a lot to me, as this is my first time doing such a project like this. I can’t wait to see where the Python language takes me!

  3. Adrian · May 31, 2021 at 8:45 pm ·

    Very cool project, it really looks like you put a lot of effort into it, and enjoy it too. Are you planning to expand on this skill in the future?

    • Kavyan · June 1, 2021 at 12:06 pm ·

      Hey, AJ! Thanks for the reply! As for your question, I’m soon going to be working on a database for a childhood game of mine, for any people who still play it! The game is Monster Hunter Freedom Unite, if anybody is curious.

      Kavyan

  4. Benjamin · May 31, 2021 at 8:48 pm ·

    Great post! It was cool to hear how you became more and more enthralled with python as you went and started to really really like it. I wasn’t able to play the game as I’m not sure I see the link.

    • Kavyan · June 1, 2021 at 12:04 pm ·

      Hey Ben! Thanks for your interest in my project! The link is actually embedded in the word ‘Here’ when I share the link if you still want to play the game!

      Kavyan

  5. Bana · May 31, 2021 at 8:51 pm ·

    Super cool! You seem to know a lot about your topic and it is a very interesting one. I should check out your game someday! What was your favourite part of the game to come up with?

    • Kavyan · June 1, 2021 at 12:41 pm ·

      Hey Bana! Thanks for the comment! As for your question, I really enjoyed creating the battle sequence of the game, since there’s so much math involved, just to find out how much damage you did in your attack.

      Kavyan

  6. 125-mbettauer · May 31, 2021 at 9:35 pm ·

    Whoa! Super cool project, that’s so awesome! Can’t wait to try the game (if my laptop will allow such awesomeness, haha). Great In-Depth!

  7. Mike · May 31, 2021 at 11:18 pm ·

    Wow Kavyan, I did not think it was possible to make a text-RPG this interesting! Great work. I hope you continue to explore programming and game development in the future!

  8. rochambers · June 1, 2021 at 11:53 am ·

    Hi,
    What would be different if you wanted to make a multiplayer game?
    Mrs. Chambers

    • Kavyan · June 1, 2021 at 12:09 pm ·

      Making a multiplayer game is a MUCH more difficult and complex project (I’m assuming you’re talking about online or local multiplayer), as you have to host an online server for multiple computers to communicate on. However, a multiplayer game on the same device wouldn’t be so challenging. For that case, each player would simply have to take turns on their character on the same keyboard (one player could use the WASD movement layout, and another player could use the arrow keys).

      Kavyan

Comments are closed.