Posted On: 2026-10-05
During a spot of downtime in an otherwise hectic week, I sketched out a plan for this month - and central to that plan was lining everything up so that I can focus on the release process, rather than development or debugging. If you'd asked me earlier this year (and, indeed, several people did), I would have told you that I didn't have a clear timeline but planned to release "sometime this year." In writing out what remains, I've managed to flip that on its head: I have a clear timeline for the pieces that I do control, but, accounting for those that don't, I don't expect the game available for purchase by the end of this year.
In the broadest strokes, my plan for the month has three main pieces, all of which can be worked on concurrently:
No software project is ever truly complete. There will always be room for improvements, and there will always be defects that need to be fixed. Without intervention, software development will follow that trend to its logical conclusion: it will remain in progress forever. A code freeze is one such intervention: an intentional decision to exclude further changes in favor of achieving an (arbitrarily defined) "done" state for the project.
To be most productive, a code freeze isn't something that happens immediately - instead, it's achieved by setting a date when it will take place, and aggressively cutting outstanding work (and blocking new work) until all that remains is achievable within the remaining time. Once the deadline hits, however, the freeze comes into effect, preventing any further changes to the code (except for those that are literally required for the release process.)
Eight years ago, when I first started full-time game development, I'd planned to form a company and roll everything I did into that. The more I looked into the process, however, the less sense that made: maintaining a company incurs annual fees, and at that point I expected to do everything myself (and thus wouldn't need a company until close to release.)
Somewhere along the way, that logic fell apart. Sure, I've saved hundreds of dollars by delaying company formation, but without a company I haven't been able to build a brand, accept donations, or hire outside help. Forming a company had changed from being something I delayed for practical reasons to something that I kept delaying due to inertia and perfectionism. Much like a project hitting code freeze, the business side is coming up against a point of no return: very soon I will need to sign contracts and I must do so as a company.
Although I've "released" several (free) prototypes on itch.io, the experienced gained from that will be little help for releasing a finished, commercial product. There are a lot of new skills (promotion, community management, etc.) that will be required, and after thinking through my options, I think my best bet is to work with a publisher. If even one or two of those new skills are handled by the publisher, that'll let me better focus on the parts that I need to do myself.
Finding a publisher, however, is a process unto itself - one typically defined by "pitching" my project. To that end, the third part of my plan involves starting to bring together the pieces that I will need to succeed: screenshots, videos, slides, talking points, and everything else that goes into a proper pitch. While I don't plan on pitching anything this month, I'd like to position myself so I can start doing so by mid-November. Having at least a month of experience before the new year will help position me to make the most of the situation I will be in - whether that's to keep pursuing the publisher route, or to pivot into self-publishing.
Writing this all down, and thinking about how some urgent things in my personal life kept me quite busy last week (and may continue to do so in the future), the goal I've set may be too ambitious for the time-frame I've given myself. I think, however, that is fine: all of these things have to get done, and the discipline to say "I won't have time for that" will be essential for getting the best results out of code freeze. If things end up slipping, it won't be due to wasted time or bad priorities - it'll just be a situation I'll need to deal with in the future.