Development Hell: What I Learned From Scrapping and Restarting
The actual development of Hellevator: Chapter 1 turned out to be mostly straightforward, resulting in a visual novel experience with a fair amount of charming banter between characters, visual and aural effects, and careful pacing and presentation. So, why is this postmortem titled “Development Hell” (...well, besides the pun)?
Well, a good portion of that stems from the game idea that came right before Hellevator: Chapter 1, one that had to be scrapped halfway through a final project intended for a game development class: “Gacha Gotcha”.
The Initial Idea
A snippet of the pitch presentation for the initial idea, “Gacha Gotcha”
“Gacha Gotcha” was a gacha game simulator with a phone-like interface that would use mouse controls and contain a simplified gacha system as well as a chatroom system. It would take place over 10 specific days, and players would unravel the history and gradual relationship between two strangers.
When I pitched this idea to my video game dev class, many suggested that Unity might be a better engine to make it into reality. RenPy, however, would be an alternative that would preserve the narrative in exchange for dropping the idea’s RNG and interactive elements. As you can probably see already, this ambition brought up a lot of problems.
---
Problems of Scale and Ambition
The first mistake I made was assuming that I wouldn’t have any troubles with a game engine (spoiler: you always will). The second mistake I made was assuming that I could learn a new game engine in 1-2 weeks and make a full-featured game experience (spoiler: you can’t, especially if you don’t have a background in programming).
The third mistake, and the biggest oversight with this idea, was that I really didn’t have any knowledge about programming a point-and-click interface, or have an opportunity to make a prototype way beforehand. As a result, I ended up wasting time on attempts to understand Unity, ensuing confusion and panic, and ultimately contemplation on switching over to RenPy… which inevitably presented a steep learning curve with “screens” (spoiler: at that point, your brain isn’t thinking straight to learn something).
Honestly, I should’ve confronted and scrutinized my ambitions more carefully and very early on, rather than expecting that everything would move smoothly into place (since when does it ever?). In hindsight, prototyping within the game engine immediately will give clarity as to what you realistically can and cannot do within a given timeframe (read: deadline), and avoid the overwhelming stress I experienced.
---
Reflection and Reconfiguration
Thank you Katsudon for dealing with my endless rambling, salute!
Also, a tip: do not game dev alone. Being able to talk to Katsudon (the one who gave coding guidance for Hellevator: Chapter 1) about the whole ordeal was the best way to get out of that dread. Through this, I was able to take a step back and realize that “Gacha Gotcha” was not the right project for me, at least with my current game dev knowledge and experience.
For instance, my background stems from creative writing—poetry, short stories, screenwriting, etc. Trying to make a game that emulates a phone screen, a gacha game, and a chatroom… all of those systems only detract from my purposes of telling a story.
This helped me reflect and reconfigure what exactly I could do within 1-2 weeks: what are my strengths, what do I like and know how to do? What kind of story, genre, or game engine would help me lean onto those strengths? What weaknesses or gaps in knowledge do I have, and would it be possible to learn them quickly within this limited time frame?
Ultimately, I decided to scrap “Gacha Gotcha” since I was unwilling to compromise the vision of the original idea. I didn’t want to make a limited, restrictive version of that experience—for now though, that idea is somewhere in limbo until I get more coding experience to realize it.
---
Restarting Development With Realistic Goals
And so, why did I decide to pivot to making Hellevator: Chapter 1? Well, it was a more feasible project to work on within the deadline. For instance…
- Visual novels are heavily narrative-driven, so I could fully focus my energy on making dialogue and plot progression rather than fret about systems and coding
- Familiarity with RenPy due to making the Hellevator prologue (the “prototype”) earlier in the year meant I could allow myself to experiment with the programming
- I already wrote down how the story of Hellevator could possibly continue, so it wasn’t too difficult to get back into the narrative
- Assets—such as backgrounds, music, and character art (from artists who I could readily contact for additional touch-ups)—were already there, so once again, I could focus on writing
---
I: Streamlining the Process
RenPy code organization for the game… Programmers, please don’t scrutinize too much!
Given the panic and dread that stemmed from “Gacha Gotcha”, the first thing that I had to do was streamline the programming process. Heavily consulting Katsudon (who has worked on RenPy projects before), I was able to find organization systems that made sense to me. This meant being able to code transitions, images, music, metadata, and more in a way that reduced the amount of lines or words within the RenPy script.
Without this system-wide organization and coding efficiency, I don’t imagine I would have been able to program a 8.5k word script into a game engine in such a short amount of time—unless I wanted to put my physical and mental health into disarray (keep in mind I had other obligations and classwork outside of making a game).
---
II: Writing the Script
Writing script organization for the game… definitely use the “Heading” / “Outline” features on Google Docs!
Next, I decided that the script would be the first thing to complete—this was to prevent programming features or asking for art assets that might not even be utilized in the final piece. For me personally, I find that using an external document, such as a Google Doc, to be helpful— especially when you organize it efficiently as well.
That said, I still wrote the script with the RenPy coding format in mind, especially writing down “#” (comments) for potential programming issues or specific visual, aural, or pacing ideas I had in mind. This made it simple for me to copy-paste the script into the RenPy engine with relatively minimal adjustments.
By the end of it, the writing process actually took a large portion of the actual development process—which seems appropriate for a visual novel game being “updated”.
---
III: Implementing the Script
Finally, implementing the script into the RenPy engine was… mostly busy work. This portion consisted of searching up very specific things on the internet, and exercising the part of my brain that learned pacing from other video games, but also other media such as films, comics, and literature.
This obviously took a good amount of time, but it was reassuring for me that I knew that the entire script was written—it was simply waiting for me to program it.. To summarize, I wrote in a way that was conscious of programming, but never impeded the process of making dialogue. Then, I programmed in a way that works to visualize that writing. And so, a clearer division between writing and programming has been established: one no longer encroaches upon the other, they instead work to synergize and support each other.
---
Results & Accomplishments
Hellevator: Chapter 1 is something that I’m proud of, especially as someone just starting out with game dev earlier this year. It stands as a complete package—at least more complete than what a “Gacha Gotcha” would’ve been within this time frame.
It’s a preview of how efficient I can be with writing: I was able to write 8,500 words in 6 days, which is incredibly good for my usual writing pace, without needing to resort to all-nighters or unhealthy practices. I think it’s a good sign that I am very comfortable with mediums centered around dialogue and pacing of time (so game scripts, screenwriting, and comics are definitely areas I want to study and create more of).
Similarly, I was able to code the entirety of the script into RenPy in around 4 days, without any chronic stress or pressure. If anything, this made me aware of good organizational practices in programming, and made me more familiar with the features that RenPy has as an engine.
Additionally, Hellevator: Chapter 1 was a good venue for me to test out music composition (three of my own tracks are in the game), drawing (drawing Lili's character sprites was definitely a new experience), and programming in a somewhat bite-sized, but cohesive package.
---
Conclusion
Though this postmortem turned out a bit lengthy, I hope you enjoyed reading through the thoughts of a beginner game developer. Hopefully this reaches other game devs or writers who are at a similar point in their hobbies or career journey.
Likewise, I hope you enjoy (or enjoyed) playing through Hellevator: Chapter 1, as I really enjoyed working for this project. Turns out, in some twisted way, Hell got me out of development hell.
Hellevator: Chapter 1
This is gonna be one hell of an elevator ride...
Status | Released |
Author | SeaCabel |
Genre | Visual Novel, Interactive Fiction |
Tags | Casual, Comedy, Fantasy, Ren'Py, Short, Singleplayer |
Languages | English |
More posts
- Final Build Release (chapter 1 is fully complete!)Jun 17, 2024
- Playable Build Release (chapter 1 is nearly complete!)Jun 10, 2024
- Beta Build Release (chapter 1 in progress...)Jun 02, 2024
- Alpha Build Release (chapter 1 in development!)May 29, 2024
Leave a comment
Log in with itch.io to leave a comment.