Skip to content

Month: January 2022

Fathoming the pitfalls of unaccountable creative freedom

Absolute creative freedom is every artist’s dream. One that is easily attainable when working alone! Creating on your own terms sets you free. At a cost.

With no one to answer to, you call all the shots. Creative and otherwise. There is no head-butting with basic plebs, who cannot grasp the genius of your big-brain ideas. There’s zero workplace drama. No idiot boss. No waiting around for someone else to finish their part of the work. No stress. No need for duress. Heck, no reason to dress—if you’re so inclined. Clothes are just a prison for the body anyway, and who needs that kind of negativity while masterpiecing?

You are the naked pearl in the bosom of a luscious oyster. Or wait… Your creation is…? Whatever! There are pearls! And YOU are the one who gets to take them from the cosmic muse, string them together, then stick your name on the necklace.

Time bends to your will, while the ephemeral deadlines (of your creation) shift around you. You can stretch them willy-nilly to infinity. Sure, they will snap back to bite you, like overextended rubber bands… But ignore the anguish and the pain, create new ones and stretch away. Time must bow before your whimsy and your geniosity.

Sometimes you might get so caught up in the motion of creation, that you spend weeks on very tiny obsessions. Twist, tweak, spit, and polish until that perfect shine appears. Then rinse and repeat. Rinse and repeat. All the while major tasks get cast aside, waiting for your fancy to notice them. This attention to minutiae will surely be recognized and appreciated. Even if it flies over the audience’s heads.

Tasks and ideas swim in and out of the ether as your attention shifts from one to another. Work on what you want, leave it half done, start something new, return to something old. Change it, break it, kill it, rebirth it… Rinse and repeat while you bask in the conceit of your erratic creativity .

And when burnout strikes? When you no longer feel like working on anything at all? Well, there’s always tomorrow. Or the day after the weeks ahead. Sometimes, when you’re all wrapped up in working nude like that—playing with yourself takes precedence over playing with your craft. It’s only natural.

Ideally, though, you will start a side project. It matters not if your previous two-month project has grown to only halfway done… three years later… Put it on the sidelines and birth a new brainchild. Then help it get its chance to grow out of control, before orphaning it as well.

Creativity is a fickle beast one shouldn’t attempt to rein in. It needs to run unburdened. Like a naked hippie person—lysergically touched, frolicking in the tall grass of a flowery meadow, on a bright summer day. Free.

Discovery of Cat Magic in a Chaotic Sea of Ideas

To kick off this blog, here’s a self-indulgent story about the discovery and development of my matching, puzzle game Solomeow’s Magic Blast. Or rather, why a two-month game development project—turned into a three-year monstrosity.

In the future, I will use this blog to write about my games. A lot. Retroactively focusing on development and design, reiteration, and how things changed over time. I will also cover topics such as the medium of video games in general, creativity, productivity, art, and similar.

Solomeow’s Magic Blast, aka Cat Magic

For years, I’ve been harboring feelings of love and hatred towards the casual puzzle genre. The various free-to-play, match, blast, pop, burst, flick, block, flock, lock, and whatever games. Love for their casual and entertaining nature. Hatred for their carrot-on-a-stick, abusive design. Which, despite my better judgment, could easily suck me into addictive behavior.

So in 2018, having learned the basics of programming in C#, I decided to create a parody game. A run-of-the-mill, yet-another-candy-crush-clone for mobile app stores. Except this one would start glitching out and falling apart after several levels. It would freeze on occasion, even crash. Then, a malicious, buggy AI would start taunting the player with unwanted dialog. The goal was to make it unexpected and unnerving. Free too.

The idea felt novel. Until I learned of Doki Doki Literature Club! and Pony Island—two games with somewhat similar premises. Both engrossing, but both having play experiences which lack visceral excitement. Unlike Pony Island, which doesn’t hide the weirdness at all, Doki Doki was a better reference point for my game. However, the clunky, frustrating design weakened the immersion—which hurt the impact of its tonal shift. I felt the game had to be fun and polished before attempting to mess with players. Addictive even. And the idea itself might still be novel enough for the casual, mobile crowd.

That’s how Solomeow’s Magic Blast began its journey.

At first, the name was Cat Magic. Ideally uninspired for a game that had to blend in with the crowd and catch players by surprise. The feline and magic themes seemed a good mix. To both fit in with, and stand out from similar games.

How the game changed over time

Change from Match-3 to Match-2

Cat Magic soon distanced itself from the match-3 design of Bejeweled or Candy Crush. I turned to Toon Blast for inspiration instead.

In match-3, to form matches players must swap adjoined objects. When a group of 3 or more is formed, it gets destroyed and might produce a beneficial effect. Depending on the shape of the group (line, L-shape, T-shape, etc).

In match-2 games, matches form automatically but don’t get destroyed. Whenever two or more, same-type objects are adjoined, they get grouped together. The gameplay consists of simple tapping to instigate changes on the board. When a group is tapped, it produces an effect, depending on how many objects are in it. I find that more satisfying, compared to sliding objects to form matches. I also live with an addict who’s been playing Toon Blast—daily—for over 4 years. Solomeow’s Magic Blast is dedicated to him.

Match 3 and match 2 gameplay differences
Example of match 3 gameplay to the left, and match 2 to the right

Due to matches getting destroyed automatically, match-3 games tend to fall into long loops of automated play. A player makes a match, it gets destroyed; new objects fall and create another match, which also gets destroyed and new objects fall down… It can go on like that for a while. Not the funnest experience.

Since match-2 games require player input to destroy matches, this theft of agency doesn’t happen in the core gameplay loop.

Monetization consideration and premise change

By the time two months flew by, it became apparent I’d need at least four more. I had only finished implementing some of the core gameplay elements, like Pebbles and rudimentary level mechanics. I barely had any gameplay.

Programming was slooow. So was drawing and animating, as I focused on visual polish too soon.

There was a lot to learn, both with the C# language and Unity’s MonoBehaviour API. I also got stuck in a mess of ideas. In a desire to make the game fun and unique, I kept changing its core gameplay. And as it kept moving further away from references, the story premise also kept changing.

Months later, monetization thoughts started surfacing as well. After investing so much time developing Cat Magic, I could no longer view the game as a mere parody. This in turn influenced the core gameplay, story, and theme implementations. I couldn’t let players spend money on in-game items (even ads removal) if I knew the game would break down soon. In time, the idea of glitching out and breaking apart got abandoned.

Solomeow—the cat intended as the malicious AI with a friendly guise—morphed from villain to companion. Core gameplay settled on casting spells and growing magical power. Or rather, the feelings of unleashing juicy, destructive fireworks from fingertips. Somewhat influenced by my old obsessions: Diablo, Dota, and Dungeons & Dragons.

The game’s name also changed along the way, to Solomeow’s Magic Blast, which felt more descriptive and unique for the project. I still wanted to keep a sense of narrative through dialog with the central character. Not too much, just enough to give a sense of an evolving story to players.

Despite the glacial development pace, the whole process has been fun. Very fun! Testing the game is incredibly satisfying. Every time I playtest, I get sucked into playing longer than necessary. And all the effort of making it juicy and polished only increases the satisfaction potential of the already addictive, casual puzzle game genre. Monkey brain likes.

Noob programmer woes

The code was another matter. Less than stellar and downright HORRIBLE in so… many… ways. When I started, I didn’t know how to use dictionaries, inheritance, polymorphism, or even arrays! Massive methods seeped into each other (across classes) without rhyme or reason, and I sprinkled global variables everywhere. My favorites were the numerous conditional statements with dozens of oddly mixed conditions. Planning and Refactoring? What are those?

All the mistakes a total beginner can make. I only wish my code was as polished as having game states fit neatly into a massive, sprawling switch statement. But it wasn’t nearly that well organized.

It worked, though.

More, it worked with good performance on older, low-end devices. Those were my primary two criteria regarding the code. To perform well and have it work in any way possible. Succeeding at that increased the desire to learn more and get better. Occasionally, a logic problem would arise that needed weeks of trying and learning to solve. Frustrating! But beneficial in the long run for both learning and practicing resolution.

Gameplay sample of Solomeow's Magic Blast

Restarting the project’s codebase

In June (2021), I restarted Solomeow’s Magic Blast from scratch, code-wise. A decision I’ve been mulling over for a year. The codebase reached a point where adding anything new meant jumping through countless hoops, wasting time and mental fortitude. The code was too far gone to refactor, and only a complete rewrite made sense.

It was a good decision. While it slowed down the game’s development in the short term, adding new things is so much simpler. The process is also solidifying and improving previously acquired knowledge. Luckily, many of the problems got solved the first time, so it’s just a matter of reiterating those solutions.

The restart did introduce hundreds of other tiny changes. It is hard to resist polishing and tweaking imperfections I’ve let slide in the past. I find the satisfaction borne out of polished assets keeps me sane(r) and more productive. The journey is as important as the destination, even if it goes against the ethos of “Just finishing things“.

A bigger downside is the desire to overly optimize and spend extra time on systems which were fine and worked, but “could be made better the second time around”. Sometimes it’s hard to surrender to a working solution, when a superior one may be around the corner. Of course, chasing perfection isn’t worth it, that cycle can be never-ending. But without “wasting time” to chase better methods, how can you acquire mastery? It is easy to get lost in eternal rework and optimization, but it’s just as easy to get stuck in stasis of doing the same, subpar things over and over.

What’s next?

Despite a surface desire to make something quick, decisions made along the way served a yearning to create something great… whatever that means. As the project grew, any nascent deadlines that tried to emerge got snuffed out. Discipline is a struggle when you let creativity take control.

There’s still some work ahead for Solomeow’s Magic Blast. The aim is a 2022 release. But it still feels less like a plan and more of a wish. I’m curious to see how that pans out. If you’re interested, stick around and find out what emerges from the chaos.