My experience working on a text-based Python game
Introduction
My goal with Slime Collector was to create a simple yet entertaining slime collection game, since there’s only one other existing game like this right now. It’s aimed at anyone who likes collecting things. The team was composed of myself and my cat Koi who really helped me get through tough times. I worked on the development of the game and she was here for emotional support.
Ever since I was a child, I’ve always loved collecting stuff, from cute plushies to plastic dinosaurs; I just had to get ALL of them. When I got into video games later, I encountered a lot of slimes in them, but they always lacked variety. Then I discovered the game Slime Rancher, where you can capture cute slimes and raise them. I really enjoyed that game and I liked the designs of the slimes, some of which were very original.
A few years ago, there was an anime that focused on slimes where slimes evolved based on their diet, and that was what gave me the idea of creating a game similar to Slime Rancher but where the player would be deciding how the slimes would evolve by giving them different things to eat.
I actually made a very simple prototype of this game last year and stopped there with the intention of remaking in Unity with pretty pixel art graphics when I could, but then it came time to do our portfolio project and I thought it would be nice to work on this game again.
The project
The game was coded entirely in Python 3 as that’s the language I know the best and I wanted to improve my understanding of it. I chose to do a text-based game because it was important to me to do all the graphics myself, and I knew I wouldn’t have had the time to do it this years, but this is probably something I’ll do in the future.
Some of the features include:
- Exploring regions and collecting different items to feed the slimes as well as battling monsters
- Leveling up so you can win against stronger monsters
- Feeding slimes different items and seeing them evolve into different types
The biggest challenge
The most difficult challenge I ran into was the making of the console.py file. I had been inspired by the recent AirBnB clone project and wanted to do a similar console, but while testing it I quickly realized it wasn’t going to work. The commands didn’t work the way I wanted them to and I didn’t know what to do. I left a message on Discord and Slack hoping someone would help and ended up not doing anything for the rest of the day while I waited for a reply that would never come. As I went to sleep last night, I was struck by inspiration and suddenly I knew what to do. I decided to do it the same way as I did last year when I made that prototype: I would use a while loop in which I kept asking for the user’s input, then define all the commands needed for the game to work using if statements. It was much simpler than what I wanted to at first, and it worked. With this, I finally had the core of the game and I could start adding all the other “bonus” features. I’m still a little disappointed that no one answered my message.
What I’ve learned
I’ve certainly improved in Python by doing this project. However, I really do regret not doing it in Unity. Even though I know I wouldn’t have had enough time, I also know the game could have been so much better with graphics and all the mechanics I wanted to add.
What’s frustrating is that I’m also very close to getting a treatment for my ADHD and if I had had that treatment before starting the project, I would have been able to do double or triple the work. It’s frustrating knowing that I could’ve done so much better if the circumstances were different.
If I had had more time for this project, I would have probably included more features such as a marketplace and more evolution possibilities for slimes. I would have also done the inventory differently and made it so that the same items would be grouped together instead of spread all over, and maybe also group the items by type so it’s easier to find what you’re looking for.
In the end, this project made me love developing games even more, and made me surer about what I wanted to do in the future. I intend to continue developing all kinds of games.
About me
I’m Jun, a 20-year-old student at Holberton School; I love cats, games and anime. Slime Collector was my first attempt at making a game, but I intend to make a lot more in the future!
The project: https://github.com/JayJay707/slime_collector
The website: https://juliettemesnil35.wixsite.com/slime-collector
My LinkedIn: https://www.linkedin.com/in/juliette-mesnil-674355206/