Talking about the development of the game
Ho boy, my first proper game jam. I honestly thought that I wouldn't make it this jam and I would have to yet again shelf another project that I've been working on due to me missing a deadline or being demotivated to continue it further; But despite all the hurdles' life had thrown at me this time, I decided that I would be stubborn and continue till the end even though subconsciously I knew that I had joined pretty late and that time was not on my side at all.
Due to my limited time schedule, I had to cut a lot of corners to finish this game and had to constantly keep myself in check in order to not over-scope. Originally, the game was supposed to be about repairing your tower instead of paying rent; with a full system to buy upgrades and decor. And the original time-frame was 31 days instead of 7 days, with lots of events in-between using the dialogue system that was only used for the tutorial in the end. Did I also mention that I wanted cutscenes for each ending and an opening cutscene? Boy, I'm glad that my brain kicked itself in the nuts and didn't go overboard with all the ambitious ideas that I had.
However, in my effort to try and simplify things; I might have butchered a lot of features that -In my opinion- would have made the game a lot better. Right now, curses are defined in-game and their prices are hacked together by a random profit generator times a predefined number in an enum that rise in steps of 2. I don't like this one bit at all, and I feel like I should have invested some time in making a proper economy system to manipulate prices around based on how greedy or generous the player is. I also wanted the player to see the curses that they're going to fix, so players would have the ability to make decisions like "leaving the rich customer who transformed into a pig to stay like that forever" which would play into the maybe-not-so-subtle themes of this game. But then again, The gameplay was considered "finished" 23 hours before the submissions were closed, and I spent the next day just smashing my head over my keyboard in FL studio to try and make any kind of song that I'd enjoy listening to myself. So in the end, it was still a good call to not over-scope and focus on what is important, which was the base gameplay around making profits while balancing your karma.
One thing that was definitely butchered during the development was the endings, if you played through all 5 endings, you might have noticed that the text randomly changes from third person story-telling to poems; this is because I wanted to change the endings on the last second but noticed that I was a few hours away from the submission deadline which made me leave the endings in this Frankenstein of two different ideas that I had in mind mixed into one. But despite my initial disapproval of it, I kinda grew to like it after some playtests, as the sudden shift to poetry kinda entails a specific meaning or emotion to the player. "The Death of the Author" is a symptom of the writer/creator trying to force their perspective onto the consumer of his/her content, expecting that they would read their intentions in what they create; but when you shift around the structure of your ideas, the consumers begin to notice that shift and is more likely to also follow your message head-on as they stop and ask why that change was made. When people notice that shift in the ending text, I hope they also notice what the game's message is trying to send.
On another note.. God, What a mistake it was to use C# for this. For the longest time, I've been a supporter of GDScript due to its very tight integration with Godot and its incredible ease of use. However, while picking out my approach at the start of this game jam, there is a weird sense of shame(?) that washed over me when I kept getting reminded of all the times' people on the unitystation discord server kept insulting and insinuating that GDScript was not a "real programming/coding language" due to it being an interpreted language that is very early in its life with lots of missing features (such as interfaces). There was this weird moment where my ego wanted to prove to someone that I don't use toys to make serious stuff, but I had no clue who exactly I was trying to prove this to. This decision would really not do me any good, as I took out the fun of using GDScript away from this challenge and all the little details that make me appreciate GDScript a lot more than C#. You'd be surprised how much time you waste when you have to manually write down signal names in your C# scripts because godot doesn't automatically write them down for you when you connect them like in gdscript; and if you have a habit of ignoring the naming of your signals when connecting them? You'll be wasting extra precious minutes trying to figure out "why does my code not run when this signal gets emitted?" when you accidentally miss-spell a word or two in your (un)connected function names. But by far the worst side effect of this whole language switch was the fact that I couldn't export my game to WebGL, for those who don't know; people are more likely to play your game when there's a web build available in your browser. Apparently Godot 4 can export webgl builds despite the OpenGL renderer being incomplete, but Mono builds cannot export to web (for whatever reason) and there are plans to add it back in Godot version 4.1. In the ending, I'll be still waiting for Godot.. Even when 4.0 is in RC2 while I'm writing this currently. Also, Yes, I've been using RC1 to make this game.
In general, I'd say this was a good first game-jam for me. I had fun, and I finally got the satisfaction of releasing a game on time before the deadline and not abandoning another project. Will definitely do it again someday in the future, and hopefully it will be with a group of people next time. And despite me constantly trying to convince myself that everything would have been much better if I had a little bit of extra time or if the stupid day tween bug hadn't been a thing if I used GDScript instead of C#.. I'll try to enjoy what I created as is and accept the final product with all its flaws, because in the end I had finally accomplished what I wanted to do in a very long time, and that is to finish a game.
With that being said, It's time to jump back to unitystation and continue my work there; since my people need me there.
Till next game,
Max.
P.S: I'll release the source code later after I get some sleep.
Files
Get Cursed Deals!
Cursed Deals!
High-speed action captalism simulator. Make deals to pay your rent.
Leave a comment
Log in with itch.io to leave a comment.