Some words on software versions:
The source code used for the mtrek.com game server doesn’t share a scrap with that of the mid-late 90’s Multi-Trek. After increasingly long periods of down time and eventually the complete disappearance of the original game, a clone was written from scratch, using a short recorded play session, bits of scrounged-up documentation, maps, guides etc, and the uncanny memories of the game’s remaining player-base. If you scroll back through several pages of the alt.games.mtrek newsgroup, you can get a feel for how the community, led by two determined programmers, came together to revive the game.
Following, is a brief tale of how the JTrek engine came to be. This account was written by Joseph Hopkinson and published on the old Java-Trek homepage in late 2004 or early 2005:
The JTrek saga:
In February, 2003, shortly after moving into a new apartment, I had the major urge to play MTrek. An old addiction was returning, and would soon affect my life in the following months. At 3am, restless and overcome with insomnia, I took to my computer, brought up a command prompt, and typed ‘telnet mtrek.com.’ To my dismay, MTrek was down. Firing up the old newsreader, I was hoping to find an alternate address in alt.games.mtrek. Sadly, the posts for several years had the same questions that I had. “Is MTrek coming back?” All responses were a resounding “NO!”
With a long dramatic sigh, I returned to bed, in an attempt to get some much needed rest for the next work day. Little did I know at the time that my mind would kick into high gear, and I wouldn’t get any sleep that night.
“Why couldn’t I write my own?” “Surely someone has already attempted this?!” “This is gonna be cool.”
Flipping the comforter off the bed, I quickly ran back to my computer, fired up JBuilder, and began working on a basic multi-user TCP/IP chat program. Within four hours, I had an extremely buggy chat application, and I was on top of the world.
“I can do this!”
Days turned into 7 months, and I had a 75% functional MTrek clone, based off of the documentation, and what little memory I had of the game.
August 11, 2003: The clone had been in personal development for 7 months, and I was anxious to see what type of response I could receive from the old MTrek community. After reading through several posts of people that had attempted an MTrek clone, and seeing the negative type responses, I was dismayed, but decided to post the address to the newsgroup anyway. What could it hurt?
Two days later, I had several responses from individuals who had been monitoring the newsgroup! Before I knew it, I was getting email after email, and posts in the newsgroup became more frequent.
Could it be?! Could I have possibly brought back the game that we all loved and were addicted to for so long?!
Enter Jay and Josh, long time MTrek addicts. These guys would make your head spin at the knowledge that they had of the game. Without ever seeing one single line of the original source code, these geeks had figured out most every algorithm that MTrek ran off of, and were more than eager to help me integrate those discovered algorithms into my clone. After 7 long hours of explaining source code, and making tweaks to the clone, I asked them both if they would like to lend a hand to the project.
Within 2 months, the “MTrek Clone” became “JTrek”, and took on a life of it’s own. JTrek standing for “Java Trek”, as it is written in Java. From various sources, newsgroup archives, a quickly growing beta testing user base, and a fellow named Justin from the UK, who contributed the only known recorded session of MTrek, we were able to take the clone to the next level, and make it approximately 98% accurate to what MTrek was!
This brings us to present day. JTrek is moderately gaining popularity. The game has attracted several new players, and is continuing to do so. Functionality is near dead on to MTrek, and new features are planned to take JTrek where MTrek should have gone so many years ago.
The addiction is back, as well as the withdrawals, and the MTrek community is happy… well… for the most part, until one of them loses their prize winning gold ship.
-Joe Hopkinson, “About the Developers”
JTrek was coined “version 0.98” for several years- until it’s public open-source release in 2007. It was then labeled “version 1.0” for anyone who would like to run a copy. The jump from a private 0.98 to a public 1.0 was boon for the mtrek community as a whole. This, after years- no, decades.. of simply accepting the fact that the game (mtrek) will only ever live in the hands of, and only at the mercy of a very select few..
I personally hold no bitterness for the original Multi-Trek devs letting the game slip silently away; to the contrary, I am thankful for the fact that they created the game in the first place. The entire concept was pure genius. In one form or another, mtrek has given me countless hours of entertainment over the years.
So what is the big deal about software versions? Not much really. I just want to share with anyone who happens to read this, the reasoning, the meaning behind the software version displayed on the log-in screen of the mtrek.com game server. That is, the meaning I have placed on it.
The software version could really be interpreted as the “mtrek” version in the context in which I am using it. I personally assign 1.0 to the Multi-Trek of old, and the following 1.xxs to the evolution of “mtrek” as we knew it from 1994 until around 2001, when it disappeared. The 2.0 and beyond, belongs wholly to Jay’s and Joe’s “mtrek”- that is, the Java-Trek project, which certainly deserves it’s own new integer as an “mtrek” version.
As I blaze a trail through the foreign wilderness that is game development and java programming, I hope to one day reach my own 98%.. Though, I think I’ll label it as [mtrek] version 2.98, if the day ever comes. This, in recognition of the two Titans upon whose shoulders I am precariously perched. One being the Multi-Trek Creators who envisioned, built, and shared this amazing pastime, and the other being the Java-Trek Engineers who truly brought “New Life to Death” and guaranteed the immortality of mtrek.
[edit, 8 Apr 2016: The numbering has come a long way since the time of the original post. As of this writing, we are on Version 6!]