Afterword

—Tuesday, 30 January 2024.

And so we meet again. In the unlikely event you’ve forgotten, I’m Popfan, the guy who made this game.

After how long it’s been, I didn’t think I’d ever be touching it again, but sometimes I just have the weirdest impetuses (and yes, apparently that’s the correct plural, not “impeti”). Basically, around last November, I found myself struggling to even bring myself to work on any creative endeavors, much to the detriment of the album I’d been wanting to finish and release back in 2023.

One way or another, my thoughts wandered to JynX, the developer of the Len’en Project – or, more specifically, his VTuber persona, Kanae Tabinoki. His original premise was productivity streams, in which he and his viewers would capitalize on mutual accountability to work on something for a full hour before talking about what they did. I thought that maybe that was something I could try for myself, too. Kanae tends to show footage of idle games for the duration of said streams, which I realized I wanted to do, too, since I have several reasons to not want to show my entire screen while working on something... and wondering what I had at my disposal that could work as idle footage, I thought about the Sokoban clone I’d worked on last decade.

I thought that, if I could get it to play itself, I’d have hours worth of footage to use for those streams. There was just one problem: Both my code and the IDE I had made the game in all that time ago have since become horribly obsolete. So for my first labor of productivity, I had to essentially rewrite the whole game from scratch, using my 8-year-old code as a reference, and cringing constantly at all my bad practices at the time.

Most of the work of reconstructing the core gameplay loop was done in a matter of days. The editors took a few more weeks on top of that. But what made this project take nearly three months to complete were all the extra features I added in:

The autoplay mode was definitely one of the more arduous ones, but also a great way to catch errors in the levels themselves. I quickly realized that several levels in the SG Pack were missing walls, crates, dots, or all of the above, making some downright impossible to complete. But even then, the solutions themselves were no easy feat to work out. A list of tools I had to rely on were this FAQ for the SG-1000 version by odino, JSoko by Matthias Meger, and the Sokoban Automatic Solver by takaken. If it hadn’t been for those three, making autoplay a reality would’ve taken so much longer.

What was also a big timesink, however, was the implementation of hidden levels and easter eggs from the SG-1000 version, as well as a few more easter eggs of my own. Now, when you complete a level, you may get a different cutscene playing on the Congratulations screen. I hope you’ll play long enough to see all that this game has to offer now.

All in all, though, comparing my new code to my old one shows me just how much I’ve grown as a developer, and I’ve learned plenty of tricks and good practices that I plan on carrying forward into future projects.

One thing you may notice is missing from this new release is any mention of an “Original Pack”. Truth be told, it really wasn’t getting anywhere, so I decided to axe it for good. But hey, maybe if inspiration strikes, I may produce some levels worth playing and release a new update. Don’t count on it, though – after all, I’ve got other, more pressing projects that need my attention.

I am gonna take a nice long break once I’ve released this one to the public, though. Spending every free minute I have on game development while simultaneously working a full-time job really did a number on my energy reserves. You wouldn’t believe how much I was sleeping last weekend...


—The following is my original afterword from when I initially released this game back in 2018:

Hello there, dear reader. Popfan here.

Thanks for playing and hopefully enjoying this game.

I actually started development on this all the way back in 2016. My motivation was to make a Sokoban clone just to see if I could. I’m really fond of the SG-1000 version of the game, so that’s what I based this game off of – rather heavily, might I add. Music and sound effects are taken straight from it, and graphics are practically traced, except with nicer colors and actual shading.

The level editor is what I would consider my proudest piece of the whole package. It ended up pretty powerful and user-friendly because I essentially kept adding features and quality-of-life stuff whenever I felt like it was too clunky and awkward to use.

All things considered, the game was pretty much complete at the time. All it needed at that point was a second built-in level pack full of levels I created myself. Buuuut because I can’t create good levels worth a damn, I pretty much just stopped working on it for two years before revisiting it in 2018 as I was going through some of my old study projects and remembered that this one was a thing. Kind of a shame I had to shelve it for so long.

I really need to stop getting sidetracked by side projects...