Update 3:Okay, a lot has happened since my last update. It has been quite the rollercoaster of emotions. Spoiler: The game got done, but it was not as easy as it seemed like it would be based on how development was going.
2/24/2022 Day 5: Enough of the core game screen was complete that it was time to do something I was putting off (and actually pushed down the list of priorities): the menu. I HATE doing interface/menu stuff. I was just want it there to get the game doing what it needs to do. Text isn't fun. Gameplay is fun. Unfortunately, the text serves the gameplay, so it's a necessary evil. With my downtime at work reaching critical mass this day, I was determined to get the whole thing done on this day. Fortunately, I was able to do it.
It didn't always look like this. If you can believe it, this is the "final" version.
UX/UI developers don't get enough credit. This stuff is hard, man. This is obviously function over form, but it was a monumental task just for that. Do function AND form, AND making sure it all connects to the right data on the backend? Ugh. Luckily, as I have mentioned previously, my skillset is such that I am able to implement these things with some thought. Getting all the code to do what it needed to do took a few tries, but I got there... with some sloppy shortcuts.
I also added a motivational message that doubles as a gameplay tip once you select something:
And with that, we were finally starting to have a gameplay loop (with the addition of a main menu and end screen, which took no time, but I also added those this day).
2/25/2022 Day 6: I knew my time when I would be available to work on the game was running low, and I knew that I would not be able to stay up until 6am on 2/27 to work on it all night and submit right at the deadline, so my hopes was to have this game mostly, if not entirely, compete by the end of this day. With the menu in place and everything working as intended, it was time to clean it up, add sound, polish, playtest, and so on. That's what I did.
Not a whole lot of really eventful stuff in terms of the development. There were a few bugs. Getting the sound to work really didn't take too much effort, because -- and I will say this forever, because apparently I have imposter syndrome -- I am a skilled enough developer that I just know how to do that. I was even able to implement a rudimentary mute function. All it does is disable the "audio listener," but by God, the sound stopped when you pressed the button.
This was Friday, and by the night, I was really hoping to wrap it up. Between you and me, I had given myself a "reward" incentive. I would purchase myself Elden Ring if I was able to complete the jam as best as I could. As in, submit a game and not just phone it in. I also knew that Saturday I would be tremendously busy, so I didn't think I would have time to work on it. I played the game from beginning to end, and I came to a realization: the game was terrible.
The idea was that you would get a reward for bringing the "stresses" down to 0. That reward, originally, was to remove the colliders of the stresses, which means they would no longer cause you harm. That was the message that I had. I had reservations about that idea when I first had it -- that it would make the game too easy -- but that was why I implemented the "cup emptying" loop, which would theoretically offset the ease by increasing the amount of damage the stresses caused. But... there were large sections of the play area that were 100% safe. You could eliminate the stress, move to a spot on the screen, and sit there for the duration unharmed. That defeated the point of being stressed, and was insanely boring to boot!
My soul completely sank. I was left with almost no time left to complete this thing and an incredible design flaw that would render the game total garbage. Obviously, I'm a grown man who fulfills all his responsibilities and obligations, but I couldn't in good conscious submit the game this way and feel good about rewarding myself. Something had to change. But what? Do I remove the reward entirely, effectively removing any incentive to get rid of stresses, and making the distinction between stresses and the idea of "focusing" on them completely pointless? Do I shorten the timer once one reaches zero, increase move speed of the player, reset the damage for free, empty the cup for free... All of these had major design problems, not the least of which that once again it does not give you an incentive to pick and choose which stress to work on. Not to mention the deadline was approaching, and all those coding "shortcuts" I said were no big deal previously would make reworking the game in a reasonable amount of time impossible. I was in trouble.
I verbally attacked my wife, talking about how much time I wasted and how much of a loser I was, and how I would never amount to anything, and how I was ugly and had no friend, and... wait... I was doing exactly what my game was trying to tell people NOT to do. I was letting my stress win. I apologized to her (and to her credit, she was very understanding) and told myself I would sleep on it. I would rethink it. Worst case scenario, I made something. I worked hard on it and learned a lot. I should be proud of that. I went to bed and closed my eyes, trying to relinquish the thoughts from my brain.
That is until I started to drift off and had an epiphany. The problem was I needed to give players a reward that was specific to the stress they eliminated, while also not ruining the game of any fun or challenge in the process. My solution? Well, the screenshot of the final menu probably gave it away, but it was to make the stress you eliminate appear less frequently, but still appear and do damage.
It may sound simple at first, but the more I thought about it, the more it made sense. Stresses don't go away just because you worked on them. A personal one of mine is I'm constantly worried about finances. I'm MUCH BETTER about it, but it does come back up again from time-to-time. There's no getting rid of that for me, even though I'm in a better place with it. That is the experience I want to convey. Make a stress less common, but don't get rid of it. It's always going to be a part of your life. You just have to find ways to deal with it.
It also meant that I didn't have to rework everything. I already had a function to be performed per stress when the count reaches 0. All I had to do was say, "Hey, this stress's spawn time needs to do X when its count reaches 0." That was literally all it would take. And even more fortunately, it worked from a gameplay perspective. The game gets harder as you empty your cup and have a damage multiplier, but gets easier per stress you get to 0 for a bit, and then builds back up if you're forced to empty your cup more. Even better? It's a score based game, so you could replay it and take a different approach.
This solution was far from perfect, but it sounded A LOT better. I knew the following day I would have very limited time to implement it, though, so I had to work fast.
2/26/2022 Day 7: My entire day was filled, so I knew that my only time to work on this was when my wife went to work in the evening, and after the baby went to bed. I had to hope that he went down easy and stayed asleep, because I needed as much time as possible to implement the new change.
The time had come. My wife went off to work, the baby was winding down... except he was not going down easy. I started filling my own cup. "Well, he's going to stay up all night and I won't have time to work on it and I'm going to be a failure." I didn't let that narrative consume me, though. I would get this done, and again, what was the worst that would happen? I did have SOMETHING to submit, and the experience was worthwhile. No shame in defeat on this one. Still, I desperately wanted to make it as best I could. I "patiently" waited for the baby to go to sleep. He finally did, hours later than I had hoped he would, and I got to work.
The night before, in my fit of rage and despair, I had hammered on the code trying to make it design itself into a better game. Obviously, that didn't work, and all it did was confuse the heck out of me when I opened it up and tried to figure out what changed I had made. It took me probably 30 minutes just to wrap my head around what I did. I got back to a good starting point, and started creating my new functions to go off when stressed = 0. I tested it, fully expecting it to explode at the outset, and something strange happened: it worked, instantly. The code I came up with, logically, just worked out of the gate. Yes! And guess what? The game was a lot more playable.
While some shortcuts I made did make it a lot harder to develop, I did take time to make sure that all of my gameplay variables were easily changed without issue. I Serialized them in the inspector, and now, with all of the code in place, I needed to tune this sucker. This process took the remainder of the night, and I'm still not 100% thrilled with it, but it became something resembling a game that one could play. As the night approached and my body was shutting down for the night, I hastily compiled the package and uploaded it to itch.io.
The game launched on the webpage with an error. Great! I spent probably an additional hour figuring that out. I honestly couldn't evil tell you why it was happening, but I checked and unchecked some boxes in the build settings and I was finally able to get it to work. I uploaded it, it worked, and the page went live. "I'm done... finally. I made it." That's what I thought to myself. I needed a moment to destress before bed, so I went to my couch with a seltzer water and watched some fitness YouTube videos. I had done it. February 2022 game jam complete. Two down, 10 to go.
Until I realized that I didn't submit the game to the jam page. OH NO! That would be BRUTAL if I forgot that. I have no idea what prompted me to remember, but I freakishly ran back to my computer and submitted the game to the page. NOW I've done it. Whatever the game is, whatever from it took, I was done.
I was very disappointed with how it turned out, especially with how well development was going, but I had done it. I was so drained, and that, in conjunction with the baby having a worse-than-average night, I resigned myself to be done with it, and just decided to put the description and devlog off until later. I went to sleep.
2/27/2022 Day 7: I woke up shortly before the deadline, as if that mattered (the game was submitted). Having put off the devlog originally because I wanted to focus on "striking while the iron was hot" vis-a-vis development, the idea of thinking about it or looking at it disgusted me. I was really down about how it turned out, so I just decided to ignore it. I knew I would have to get to updating the log eventually, and I knew the game needed a description, but I could do that any time, and my soul couldn't handle it. I went about my day, played some video games, watched some stuff, and just tried to blow off some steam. I hadn't intended on even acknowledging the game on this day.
In the evening, my wife came to me and said, "Did you get any feedback on your game yet?" I said, "No, this is a popular jam with over a thousand submissions. I doubt anyone will even see it." A few moments passed, and then she said, "You have three comments." I felt a combination of surprise, excitement, and dread. Someone sifted through the mountains of high-quality submissions and found my game with no description or screenshots, a UI that might as well not exist, and assets that are just built-in shapes? Clearly they hated it.
No! At the time of this writing, the game has had a handful of comments, and all of them were positive! They totally got what I was going for, and some people even complimented on stuff I didn't like about it.
I will post more about this in my final thoughts, but this lifted my spirits tremendously, and I felt very emotional. The rollercoaster of emotions I had and the amount of stress I felt making this game that was, ironically, about managing stress is nothing short of astonishing. I never expected what this jam in particular would do to me, considering how laid-back the previous one was.
But that's what happened over the last few days of development. At the time of this writing, I still have not updated the description, although that's what I plan on doing after writing this post. I will update the main post with the link to the game, and write a "final thoughts" post here shortly.