Infinifranchise Post-Mortem

The Backstory

The Infinifranchise, starting with Infinitron, was born from a hastily invented game that I played on two occasions many years ago. I wanted to make a strategy game where all the units were created as we played, thus requiring only scraps of paper and a few pencils. If I recall correctly, I unexcitedly won the first game, like a boxer winning because his opponent was killed rescuing orphans from a fire the night previous, as the game wasn’t that well defined. The second game ended in what was technically a tie, as my friend flipped out over the fact that we could literally do whatever we wanted, which makes for a broken game. I think he tried to nuke me. By some chain of thoughts I remembered this last year and set out to create a valid game similar to what I had played years before, and ultimately ended up with Infinitron.

Similar to its inspiration, only two games of Infinitron have ever been played. The second was the test game featured in the rules, played over the internet with a friend named Jon. The first was what I would say was the only real game played; it lasted eight hours, most likely had no more than twenty turns, and was one of the most draining games I had ever played; I had no desire to play again for quite some time. Thirty minute turns were common, as we haggled over deals for units and abilities and attempted to figure out how the rules actually applied.

Intelligent Destruction was coded over a 48-hour period for a game programming contest (which I lost, I might add) and is essentially a watered down, no-haggling version of Infinitron. It’s two player hot-seat, something you don’t see a lot of nowadays, and has, as far as I know, never actually been seriously played. Perhaps you will be the first!

Returning home from school for the summer, I programmed Stockmotron, my first web-based game. After it tapered down from the whopping high of about twenty active members to essentially none, I reused a lot of the code to make a new game – Infinarena. It came to me in a vision of sorts, laying down for a nap and teetering between consciousness and sleep, and had something to do with triangles. By the time I finished the first version, it had absolutely nothing to do with triangles; players would create units by enumerating a number of traits and abilities they wanted the units to have. They would then fight and randomly use their abilities and attack each other, of which a text based representation could be viewed. I was able to get about fifteen beta players by spamming my buddies list and an IRC channel I was in at the time, who proceeded to give most of their fighters offensive names and quickly realize that strong beefy units were generally the most successful.

Upset with the direction the game was taking, I did a major overhaul of the game system. A rudimentary scripting language was used to control the units, moving them and attacking on a two-dimensional grid. There was no random chance involved, and the battles were played back through a DHTML / JavaScript animated playback engine. Instead of simply listing attributes, players customized their units and then gave them simple AI scripts to determine their actions. Shortly after rolling out this “new and improved” version two, membership dropped to a handful of players who mostly copied my example code. As it turns out, cryptic scripting languages alienate people, and I was unable to find any new, programming savvy players to continue testing. The point at which someone posted “Man, this shit fucking sucks. You really created a crappy product.” on the message board, the experiment was essentially over. Feel free to play around with it, though. (As an amusing side note, I made a simplified, mildly mundane version for an event the RPI Game Development Club put on for incoming freshmen. They loved it. Figures, crazy RPI kids. More on this later.)

Infinifrag was conceived a little bit over a month ago and was intended to be the showcase of the Infinifranchise. It started out as being small team based, with a commander, who would supervise construction and script weapons and player classes, and runners, who would perform the standard FPS duty of killing stuff. After going through the preliminary design document with the small team I assembled, we cut a lot out of the game and ended up going more toward a fully action oriented gameplay style. The one problem I couldn’t solve was how to make building work on the fly; in the end it was a bright freshman named Keith who saved my ass by pointing out that blocks could simply be “shot” at the faces of other blocks and the floor. Problem solved. A month or so later version 0.1 was finished, which as of writing is the current version and may be so for a while.

What Went Right

Some people value fancy graphics in a game; I value creativity.

That said, my favorite aspect of the Infinifranchise is that the games are about creativity. Not just creativity within the framework of a traditional game, like unit strategy in a game of Warhammer. It’s absolute, abstract creativity, forcing you to invent things from a much larger pool of permutations. Not a lot of games feature this, which I like to think makes the Infinifranchise stand out. When played correctly, although it’s tough, this open ended creative gameplay is fun and rewarding, as it can infer a real sense of accomplishment from having actually created something new.

What Went Wrong

Unfortunately, the things that made the Infinifranchise great are the same things that made them alienating and, at times, ridiculous. It’s very hard to be creative on demand, which can lead to games that are draining and not terribly spectacular if the players aren’t in the groove. As a result, the games tended to have a limited audience and be overly complicated, although this is most definitely also a consequence of me.

Infinitron / Intelligent Destruction

Infinitron was extremely difficult to play, and with the only real game lasting eight hours, sort of counts as a con (unless you like that sort of challenge). Additionally, the rules of the game create a very strong positive feedback situation, whereby the first player to capture cities gains a resource advantage that compounds into him having bigger and better units earlier in the game. Thus, most players would simply rush out to capture as quickly as possible, and then slowly roll in increasingly stronger units to finish the game.

Those two complaints aside, however, Infinitron brought what I feel were some excellent mechanics. Creating terrain on the fly was exciting and introduced some excellent strategy to the game, along with being able to leave a creative mark on the battlefield – you get to fight on the grounds that you created yourself. The concept of picking and sticking to a theme also helped to shape the game creatively, but was significantly more trivial than being able to customize the terrain. Overall, Infinitron was rather intense, and may even have some promise for play in the future – I’d like to sometime create a small league and try it out in a larger, group setting.

Infinarena

On the bright side, I really like a lot of the technology I developed for Infinarena; it’s mildly Ajax-y and I like the way it works. Unfortunately, it never really had the best member-base for what it is (an obscure programming game) and is a bit too in-depth for the attention deficit web-game crowd (myself included). The community also seemingly bottomed out before there was any chance for a good group of dedicated players to set in, with only a few people attempting to write their own AIs instead of just modifying the example – this prevented me from rolling out any of the story elements I had planned, such as the invasion of the Void, where players would cooperatively fight against an invading force and work together to find their weaknesses. Oh well.

This was my first big lesson in audience – as it was an online game and not just a board game, I was able to bring in actual players, and pretty quickly lose them through overly-complicated gameplay. On one hand it was simply not finding people from the appropriate niche I had in mind, but it was nevertheless a reminder that I need to keep my audience in mind.

Infinifrag

I just finished the first version (0.1) of Infinifrag a few days ago, so I haven’t had much feedback aside from during bug testing. I plan to roll it out at the next LAN party, and will presumably add the results to this document at that time. During bug testing it was received pretty well, with the only real complaints being technical, such as slightly buggy collisions and a few other minor glitches.

I’m very fond of the block building mechanic, and plan to add special block types in the future, such as projectile shooting blocks and moving blocks. I’d also like to open up weapons customization a little more, as there’s a very finite amount of choices, resulting in only about three distinct weapon configurations – rocket/mortar weapons, sniper weapons, and low-power rapid weapons. I think that it definitely has promise, though, and hope that it holds up to extended playtesting.

What This Means

I’d like to think that the Infinifranchise holds some sort of special meaning being abstractly creative; I started out with the slightly large goal of creating “the greatest game ever”, and fell quite a bit short, at least as far as I’m concerned. However, I’ve learned quite a few valuable lessons along the way:

  • When making things like this, it’s easy to get stuck in the meta-game; when you’re worrying more about Turing-completeness than gameplay, it might be a good time for a sanity check.
  • Remember your audience! Maybe, more importantly, make sure your audience is more than just yourself, or maybe just make sure to build a single player mode =).
  • It’s alright to fix some elements of gameplay, as giving players too many options means they’ll simply resort to obscenely-themed things.
  • I really doubt there will ever be an end all, “greatest game ever”, and even if there is you’ll still get bored of it (think World of Warcraft!). Part of the fun of playing a game, whether it’s an actual “game” game or just anything else in life that falls under the human definition of game, is discovering it and figuring it out. In all honesty, I’m surprised I didn’t figure this out earlier, as I get bored working on projects before they’re even finished – the secret is change and dynamics, so ride that sine wave!

To tell you the truth, I have no clue how I came up with the name Infinitron. Although it’s just a poorly conceived name that’s sort of awkward to type, to me it represents the infinite possibilities of creative gameplay, and what I hoped to create with the games of the Infinifranchise. There’s a bit of magic to knowing that you have absolutely no clue how a game will end, let alone what will happen along the way.