The History Of Vibrant
This article is about how this game_ came into existence. Reading time = 4 min._
Overall feelings
Vibrant is actually a 15 years old software. That makes it my oldest still alive program, for better or worse.
I'd never expected that piece of software to be alive 15 years later. Its history makes it rather inflexible. Oftentimes, I thought it was pointless to keep pushing yet another update. I attempted half a dozen rewrites, but those went nowhere.
What kept it alive was my own addiction to it. It's as if Vibrant specifically trains short-term memory: you have to remember quite a lot of recent game events to be able to take sensible decisions. So I had to keep going further into that gameplay aspect.
Somehow Vibrant has made it into Steam (this is the reason for this post).
So how did it started?
Vector2D (2002 - 2006)
vector2d.exe
started its life back in 2002 as a short MS-DOS program. It was "retro" before it was cool. At these times, DOS was an old thing already, Turbo Pascal was dead, and the i386 laptop it ran on came from the garbage bin.
It wasn't even a game but a test for a triangle rendering engine. I was looking for a way to recreate what OpenGL did with matrices. This proto-Vibrant started to use a stack of matrices with 2 rows and 3 columns: enough for scaling, rotating and translating. Who needs more anyway?
Later vector2d.exe
started using VESA, and Unreal Mode (no link with the Unreal Engine). That Unreal mode is the reason why I can't provide a screen capture of this ancient version.
Version 1.0 (2009)
Fast-forward several years. At these times I was into the Demoscene big time. We would release quickly, quantity first. In a few weeks, Vibrant was ported to Windows using the D language, and became a game, albeit without a clear goal. I now realize how ugly it was, however I was happy with Vibrant 1.0 hypnotic pace.
After one last sleepless night, I rushed the release for a local FOSS demoparty. The audience was expecting Libre software, with all the right freedoms, for Linux and Haiku.
Instead after a string of unfortunate events, they would watch a Windows computer boot on the main screen before the game even ran. This was less than ideal.
Version 1.5 (2010)
At a nerd meeting, I met Nelson Tavarez who let me use a recording of his live electronics act (the best he had ever done, he mentioned). To this day it remains the one OST for the game. The idea was to tie the gameplay to the music inextricably. Hence, over the years more real-time audio effects were mixed with the gameplay, and the game now features a master limiter, resonant filter, distorted chorus...
Vibrant 1.5 captured the heart of several game critics, made it to a well-known blog (TIGSource) and was even mentionned in a physical publication.
It's a bit shameful to admit: I made the key mistake of not listening to users in any way, and not updating it fast enough. That tiny bit of excitement quickly went down back to zero.
Updates were slow and careful, and in version 1.8 (2015), Vibrant hadn't changed in a meaningful way compared to version 1.0! I thought the game was so fragile it had to be fine-tuned, but not get out of the local minimum it was in. Many times it felt "finished". I was too careful.
Version 2.0 (2017)
How do you change a program that you've known half your life? It turns out software can survive a great deal of mistreatment.
I took cues from physical board games, whose rules are as simple as possible, and iterated over and over. Version 2.0 changed almost every rule in the game, to make it more like a board game and less like accounting.
Something that surprised me is how everything changed once levels were added. Level design and gameplay code started growing together, instead of just having gameplay rules and environment without interaction between them. Both levels and gameplay code seemed to benefit.
Version 2.1 (October 24th 2017)
With your help, I've tried to make it as hypnotic as possible. For this one release the accent is on better presentation and a challenging "Hardcore" mode; the one way it's meant to be experienced.
For the first time, I feel like Vibrant rightfully expresses the mental anguish it was meant to be.
Vibrant 2.1, a version I wish was definitive, will soon be available on Steam.