Release and the things that got us there
Hey~! I’m Veki, writer and UI guy. I’ve been working on this script for about a year off and on, building up the characters and planning the story. Certain scenes like the Officiary x Suit x Imp scene had to be trashed and rewritten from scratch a few times over… but I’m pretty happy with how everything turned out. The cast is intentionally introduced in a shotgun style, switching rapidly between them, to keep all twelve characters equally fleshed out in the player’s mind. I’m going to keep using this strategy to hopefully obfuscate who is going to die next, and to build a cast where each character stands on their own, instead of a bloated cast that’s carried only by a few fleshed-out characters while the rest are left as cheap death fodder.
This was my first time working with Godot, and also my first time writing a visual novel. It was kind of hard to switch from writing prose to writing almost entirely dialogue… some scenes I think still sound a little too stiff or dramatic. I’m learning how to write dialogue that sounds like a real conversation without being boring or unfocused.
Instead of editing a text file, every line of dialogue in the game had to be added by hand in the Godot GUI. As we went along Vaartis made things a lot smoother by having lines auto-link to each other chronologically and simplifying the button system in-game. I’m working hard writing the next part of the game. The skeleton is pretty much done but there’s still a lot left to fill with concrete. The way this demo went, even scenes that I thought were done ended up getting lots of edits and extra juice. I’m hella stoked for some of the story beats coming up tho… in the next update the Officiary will meet her Conductor, the gang will all gather together for their first group discussion, and the cabinmate duos and trios will break apart a bit as everyone meets each other and forms new connections~ I’m also working with our artist to get the art for Mom, Star, and Null done. Null is gonna look so epic.
Thanks for giving the game a chance, even if there’s not much here yet. <3 More coming soon.
Hi, we just recently released and I wanted to talk a bit about how we got this game working. When the idea to actually make a game from the story came to be, we discussed what engine we should choose. At that point, it wasn’t exactly clear what kind of game it would be, though we settled quite fast that we should limit the scope of the game to something we could actually make in a reasonable amount of time with such a small team. The engines we thought of at that point were Unity, Godot, Ren’Py, and a custom engine. Custom engine and Unity were the first ones to be scratched off, since a custom engine meant it would likely take a long time to get anything presentable working. Unity, we both agreed, was too big and clunky for what we wanted to make, and, despite me having a lot of experience with Unity, or perhaps because of that, I have grown to dislike working with Unity and its many design flaws. Another proposition was RPGMaker, but we quickly decided that perhaps we didn’t actually want a top-down RPG game, since that meant lots of sprite art, and we would’ve had to slow down the story with RPG gameplay, much like Danganronpa is slowed down by some of its gameplay, although it’s a great game at many points.
In the end, we’ve stopped on Godot; we’ve never worked with it, so neither of us had much bad to say about it. It seemed like a good general-purpose engine that has good documentation and actual support for 2D games (unlike Unity). Godot is open-source, too, so patches could be made to the engine directly, if need be (and there was indeed a need, at some points). Working with it, we’ve also noted the quick release cycle they had for Godot 4, which meant that fixes for major issues would usually arrive within a week or sometimes even a few days. Speaking of Godot 4… initially, we tried 3, which is the current stable version, but it seemed to me that 3 lacked a lot of small quality of life things and GDScript language features that they’ve made available in 4, so early in the development process we made the decision to switch. Of course, since Godot 4 has no stable release yet, we encountered some issues and crashes within the editor and with exporting the game, but all of these issues were resolved within a few days or weeks with the new Godot releases, and we’ve steadily progressed on the demo up until its release.
As Veki mentioned, we’ve opted to use Godot’s resources system instead of just text files for the game’s written content. That was mostly a decision of mine, and I’ve tried my best to make it as painless as possible to add content to the game by implementing custom resources and inspectors. Overall, there’s a lot of clicking on buttons and expanding sub-objects, but it’s far from how annoying it was at the start. The idea behind using resources instead of just text files was to make sure that we never had issues with typos in file structure or dialogue navigation. Plus, this meant not having to write a parser for all of that. Seems that this approach is not oft taken, and people do usually opt to make custom formats and parsers, but nevertheless, this is the path we chose; perhaps in the future something will change about our setup, but, for now, we’re sticking with it.
Some time before the game’s actual release we got the Steam and Itch pages set up. For Steam, things have been mostly smooth, and, after incorporating feedback from Valve, we released our demo. The paid release of the game will feature achievements, too, and the demo’s save system will ensure that the achievements will be unlocked automatically when players move from the demo to the paid release. This way, we hope the migration from the demo should be mostly imperceptible, and you can just continue playing like nothing changed. On Itch’s part, there was no review up until the game’s actual release, at which point we discovered that if your game costs money, Itch won’t let it be searched on the site until they’ve reviewed it. Unfortunately, we’re still waiting on that review, so the game can only be accessed from someone’s profile or from a direct link. Other than that, we haven’t had issues with releasing on Itch either.
For the Steam release, we wanted to have Steam integrations like achievements. Turns out, the library that provides bindings to the Steamworks API, GodotSteam wasn’t yet ported to Godot 4. Thankfully, it was fairly little work to do that, and in a few evenings I got it working with Godot’s GDExtension and submitted the patch to the library. It was accepted, since it got the library working at least, but it’s still not considered stable, because it hasn’t been tested that thoroughly— but it should mostly work fine. If you’re using Godot 4 and want Steam integration, take a look at it.
Close to the demo’s release, when the story was mostly done, we got to work on polishing and fixing bugs that we and our playtesters had found. There were quite a lot of minor issues and some major bugs that slipped through up to that point, but now we’ve got them fixed, and the demo release should be mostly bug-free. It took a while, and I’d like to thank everyone who played the game and told us about the issues; with the help of those people, we also touched up some parts that didn’t make sense to them, like providing a little tutorial at the start of the game which teaches you the main mechanic, but still lets you figure out the rest yourself.
So far this has been an interesting experience, and I like the Godot engine a lot more than Unity. I hope we can continue to have fun making this game and eventually make it a complete story. Thank you for reading this long post and sticking through to the end, and I hope you enjoy, or enjoyed, the demo!
Leave a comment
Log in with itch.io to leave a comment.