I'm JTE. I joined Minecraft around nearly the beginning, way back in the Summer of 2009, when Glass Blocks and Sponges were newly implemented and the only server mods for Minecraft were simple Batch file wrappers which would read the server's text output and input bans. It's been five years since then, so please forgive me if the details of this document are a little off, or missing.
With all this eula drama blowing my way, I don't know, I guess I feel the need to write my story down so I can let go of it. I don't expect to get much attention, I'm just here to get my thoughts out.
So let me tell you about Minecraft.
Vanilla pre-Classic
Hosting a vanilla server for Minecraft was some form of Hell. There was a giant list of all public servers which anyone could use to join, absolutely no form of hack detection/prevention, no automatic map backups, and all free accounts could join and grief the extremely limited area of your map to death at any time. The most basic of gameplay building blocks were there, but that was it.
In order to manage it properly, I had to build a convoluted player trap out of bedrock I called the "frying pan" just so I could keep people from wandering off to destroy things before I got the chance to fly over and keep an eye on them. This was actually common practice at the time, and served essentially the same function as whitelisted servers.
One of the flaws of Minecraft at this point was that if a player were to walk one block away, place two blocks down where they spawned, and then hit the respawn button, it would spawn them on top of wherever they were, allowing them to break out and escape. So I had a hive of one-block-wide spaces built on top of the 'frying pan' where players who tried to break out without asking nicely would wind up trapped, essentially putting them out of the frying pan and into the fire.
The dawn of mods
Being the tinkerer I am, and knowing that indie games like to keep things nice and simple, I soon created an intermediary server Perl script, to act as a proxy between my client and my server, and set to work figuring out all of the messages passed back and forth between them. My proxy server was quickly able to perform simple modifications, such as reading slash commands (including /me), spawning idle player dummies all around the map, or allowing the placement of coal and gold ores, and even liquids.
So now we could not only build with blocks, but we could build little blockmobiles on our roads and then sit actual player characters inside them. Neat. But there was more to be done!
Using the proxy server, and with help from another early modder's research, I eventually compiled documentation of the complete networking protocol now publicly available for Minecraft Classic servers. Armed with this private research, and over the course of 26 sleepless hours, I turned my Perl script into a fully fledged Minecraft server, which could generate maps, accept any number of clients, automatically detect hackers, allow the in-place painting of blocks (and other creative tools), build trees by placing a single block (before saplings had function), and even produce custom water and lava block 'physics'. I was even able to, astonishingly enough, trick clients into re-downloading the map from the server, and therefore could host multiple maps on a single server or reload maps from the last backup on the fly. (Now we could play Spleef without having to rebuild!)
All without looking at, modifying, or compromosing any of Notch's code. Notch agreed that my server software is entirely my own creation, and I am free to do with it anything that I please.
On the forums, these very forums before they were handed over to Curse, I was heralded as the "Minecraft Hacking God" for a day or two. All of my changes were big improvements to the core function and gameplay of Minecraft itself. Even the fact that I built in a safety switch to prevent the flood of lava covering the entire server from making the server eventually freeze over near-indefinitely from the exponential growth of 'thinking' blocks was a big thing. Notch himself came to my server from IRC and flooded it with lava just to ascertain exactly how well it handles. (Answer: Not particularly well, but at least it didn't die completely and admins were still able to simply reload the map without disconnecting anyone, right?)
Back then, Notch arbitrarily had a golden name hanging over his head, being a VIP and all. I was jealous, so I invented colored names for different tiers of server moderators / administrators, the server owner (me) being colored Red (my favorite color), just so I can feel special. (The reality was that admins of my server could set their name to literally anything, at any time, on the fly, color code spam and all.) If you were ever on a Minecraft server and the server admins have red names -- I started that. Notch even went and specifically made the skin-grabbing code strip colorcodes out so that it would still show the correct skin despite having a colorful nametag in the next version.
Leaving the forum
And then I announced that I planned to add fancy new game modes to my server, so you could play a giant boardgame of Battleship with Minecraft blocks for pieces, or Zombie Tag versus like mods of other games do, and so on. The moderator Zuriki didn't like that idea, and immediately did a 180, revoking my custom forum title, and even threatening to ban me from the forums entirely should my server software ever be released there (for free and open-source or otherwise). After a lengthy and childish argument, wherein Zuriki claimed I would be "stealing money from Notch", and when finding my server software was 'production ready', I simply packed up my topic and left, dropping only my email address for anyone to contact me if they want it.
Here's where my story gets muddled, people thinking that I was fighting with Notch directly despite Notch previously stating outright that I am free to do anything I like with my server software in the first place. So I made use of that and started privately selling my server software to individual buyers for around $10 each, entirely by email, advertised solely by word of mouth. I only made around 14 sales out of that, before my server started spreading like wildfire, as each server admin shared the source code with their friends to try and program new features into it together, and those people freely shared it with more people, and so on until the market was entirely saturated. I did of course use the first bit of money to pay for my Minecraft account (which at the time, offered no benefits other than a custom skin) and the rest went to a couple Steam games and buying three more Minecraft accounts for my friends. This was the first and only time I've ever been paid for anything I programmed.
Anyway, among all of this open source server sharing (after all, it would be difficult and pointless to make a Perl script closed-source), all sorts of new game modes and life cropped up. Lava survival servers, floating water stairway challenges, I was quickly changing the very community itself by allowing the first real modding to take place. JTE servers were the best. And soon it was being replicated in other languages like Python, the same tools I pioneered becoming further expanded on with spout blocks, finite water systems, and the ability for players to cross between the server's maps individually. Now everyone could have their own sandbox to play in, and challenge packs could contain multiple "levels"...
Survival Test, indev, infdev, and Alpha
Meanwhile, Minecraft had been progressing seperately, having destroyed its basic multiplayer (and probably most of its engine) to introduce NPC creatures, zombies, pigs, and so on. With the account that I purchased, I was able to follow it all, every step of the way, from the beginning, and just sort of watch how it progressed. Since there was no networking in these versions, I didn't have much work to do, and just sort of kept my silence. Seeing Notch struggle with some of this, I offered to let me help him with programming, but he turned me down, saying he needed Minecraft to "get his name out there" first. He said that maybe he'll let me work with him on his next game, after Minecraft. (Then he went and hired someone else to be a 3D model artist, and then finally established the entire company Mojang around the success and continued development of Minecraft..)
When crafting was introduced, I made the first full recipe list graphical crafting page on my website at the time, EchidnaTribe.org
By using in-game sprites and GUI elements entirely ripped from screenshots with basic image editing software, I was able to show not only how to build every tool, but even which mobs drop what resources and how to smelt for iron. At the very bottom of the list, as a sort of in-joke, since Notch had recently removed the test Apple item from existance, I put that you need to kill Notch in order to get apples. Then right next to it, since apples still needed a use, I put that if you surround an apple with gold ingots (not blocks) you would get a golden apple.
I invented the Golden Apple, guys. (Proof, scroll down to the bottom of the page under the ??? section.)
When Secret Friday Updates rolled around, Notch loved randomly implimenting "community rumors" as actual features of the game to tease and delight everyone, based on what he heard secondhand. This is how pig saddles came to be, among other things, and to this day if you look in the source code you can see that any player named Notch will have a random chance of dropping apples, even if he had none in his inventory.
SMP
Finally, when the multiplayer mode of Alpha came out, long after scrapping nearly everything of the engine and remaking it for infinitely large worlds (a move I always felt was tremendously unnecessary and poorly implimented), it was full of bugs and problems, and split the entire community in half at the price-point, now allowing paid accounts for full servers that free accounts could no longer access. Time once again for JTE to come out and introduce things like persistent inventories and time of day locks and alternate map generators and whatnot, right? Well, not quite...
At this point, Notch kept changing up the network protocol faster than I could descipher it on my own, and this time I didn't have a random stranger leap out at me and hand me a half-finished document I could just fill in the blanks for or anything. With every new version, the client would just start crashing blatantly from the messages my server sent, and eventually I just gave up trying. Nowadays there's even full-on SSL-like encryption going on in Minecraft's networking, not just the hassle of HTTP logins to deal with.
I still have it sitting on my harddrive -- the half-finished OmniServer meant to bridge the gap between all Minecraft versions, be they Classic, Alpha SMP, or a new custom client written from scratch, with its finitely sized Classic-mode maps and day-lock in Alpha and infinitely-large segmented maps implimented in Classic, made to host all kinds of creative new arcade-like NPC-driven minigames I have a design document of, sitting forever in stasis now... It's a shame that never came to pass.
Present
I'm sure you all know what happened next. Modders started de-obfuscating the client and server's source code and making amazing new add-on packages of blocks and game mechanics, directly implimented into the server and/or client, basically all hell broke loose and the community stance on modding had shifted entirely from where it was when I introduced my little server way back when. Even before Alpha SMP was out, people were modding the Survival Test client to connect to Classic servers and spawn client-side zombies anyway.
So now we have an army of deobfuscaters, coders, and inter-dependant modders all keeping up with an endless update treadmill, because Notch never made a proper modding system for Minecraft and continued to re-obfuscate every single build because it's not a free open-source software and never has been. The community has long outgrown me, as well as the morality that drives me. In fact, the community outgrew Notch, and now it's threatening to try and overthrow Mojang as well.
Such is the modding momentum we have built from that point long ago. It all started with one awesome wandering programmer's tiny server script.
Resources:
The original JTE server distribution files, untouched since 2009 (and probably no longer functional)
The proxy tool I wrote and used to figure out the network protocol, including the original output logs.
more pre-alpha screenshots
Very interesting story, I'm glad you shared it with us. If you are intending on leaving, I guess... I'll say as a former server owner myself; thank you for what you did to contribute to Minecraft over the past few years or so. And I hope you have as much fun doing what you do next as you have here.
This is a pretty amazing narrative; I've got to say. I really do wish I could've been playing Minecraft since the time of its release. And you invented the golden apple? That's pretty freaking amazing; I guess that's why Notch never nerf'd it. Anyway, I think the modding community should be allowed to create updates, as long as Mojang improves them. The game would grow SO much faster.
Newly Spawned: Baby. Out of the Water: Deep-Sea Diver. Tree Puncher: First Fight. Carpenter: Under The Carpet. StoneMiner:Newb. Coal Miner: Just Add Methane. Zombie Killer: Village Protector. Iron Miner: Burnt Hands.BudderGold Miner:Sky Army Stuck At Home: It's a nightmare Redstone Miner:Electrician.Diamond Miner: I'm rich! Lapis Lazuli Collector: Enchanting Time!
Anyway, I think the modding community should be allowed to create updates, as long as Mojang improves them. The game would grow SO much faster.
What...? I hope you're not saying that people should be allowed to put in updates to vanilla themselves. That would be ridiculous. That is why there are mods. If you mean let players introduce updates themselves, the game would be a mess. You would see guns, unicorns pooping jelly beans, and Hitlers everywhere.
Rollback Post to RevisionRollBack
Need a friend to play Minecraft with? Click me! Lots of players are looking for someone to play with as well!
Need a way to make survival more fun? Click me!
Don't know what to build? Here is a "What should I build?" generator!
Interesting read, but it sounds like you are completely against the idea of infinite worlds and all the other amazing and fun features minecraft has had since classic. Just since I started in 1.7.3 to now, the game feels completely different. So many updates and additions. I have enjoyed nearly every update minecraft has had since I have joined. I can understand if the reason you are angry is because the modding API has been delayed time and time again though. It was brought up years ago, and still they put it off. Now this EULA scare, removing capes, and more, it seems like they are out for money instead of the community.
Anyhow, 1.7 was kind of tough since there was so much changed that tons of modders just gave up. 1.8 doesn't sound like it will be any kinder. I was not a fan of hunger when 1.8 beta came out, but I came to love it by 1.0.0. The upcoming 1.8 features a complete enchanting overhaul, which screws up some minigames and such which will be quite annoying. It makes enchanting easier, but at the same time makes it annoyingly easy. I still have yet to test it, so I'll see how that turns out when it comes.
We will just have to wait and see what minecraft will become when 1.8 is released.
Rollback Post to RevisionRollBack
I began minecraft ~July 7 2011 1.7.3 Beta
My username used to be Creative_Dalek but is now Dalek since 2/4/2015
... No offence but this story is kind of hard to believe.. I was believing it all till you said I invented the Golden Apple.. Proof? A website isn't enough proof I can make one right now and say its 100 years old -.-
Quite an amazing story. I began playing the game not long after you did, and was around to witness majority of the events you mentioned unfold. Its amazing and unfortunate that someone who has played such a large role behind the scenes, has never had his story told until now.
... No offence but this story is kind of hard to believe.. I was believing it all till you said I invented the Golden Apple.. Proof? A website isn't enough proof I can make one right now and say its 100 years old -.-
I can vouch for this. This was one of the things that made Alpha updates so great. You never knew what would be added the next update. It would only ever be a few features at a time, but they were always so random and fun to find. The game was so mysterious. Finding each new feature each week was an amazing feeling that I miss.
I still remember the week this update took place. I set up my first portal, lit it with my flint and steel.. and stared at it. For days. I could not gather the courage it took to see what was on the otherside. I had heard rumours of haunting sounds of screaming cats, or pigs, or whatever they were meant to be... Even til today, that feeling i felt, was one of the most nostalgic to this day.
A blast from the past. Damn, golden days of Minecraft. Thank you
I also remember your website (EchidnaTribe.org) That's where I learned all the recipes
I'm gonna come here also to mention that I distinctly remember when JTE's custom server, that very first one, was being worked on. In fact, I recall being there day 1 or so when first testing it publicly. If I recall, I was one of the first people on it, and was apparently (by some lunacy) able to convince JTE to let me have an op/admin role for a bit to test somethings out (AKA have fun). In my younger and childish ways, I made him angry by continuously spamming golden block pyramids, and he revoked the rank. That was my experience with JTE. (Remember me at all? I'd expect not.)
The entire experience was significantly different in those days. I remember when the server I played on was up continuously for a few days, all those free players he mentioned would constantly join since it was the top of the list. You'd have to disable the heartbeat somehow or just restart the server to make it even remotely playable again.
Forums here were significantly more of a community. You knew a bunch of people by name. JTE, remember when Zuriki put up that small server and only sent invites to well known people? To get access, you had to be vouched by someone. You very well might not due to the disagreement between y'all (which Zuriki was always doing... dude had some people relations issues I'd say). I remember getting on that thing and building a submarine. I remember talking to Notch on some random server I went on once. I remember meeting people in game and being like "Hey, I know you from the forums! Seen my name before?", and a not insignificant amount of time, the answer was yes.
Oh, good times. Thanks for the reminder of those good old days, JTE.
EDIT: For example... reading through all the responses, I recognize LG_Legacy's name there. Hi!
Never heard of this guy. Don't really care what he claims to have taken part in on his word alone, particularly when presented in such a clearly self-aggrandizing manner. "I'm responsible for Minecraft being great, And if I stop participating it will get worse" was the basic message I took away from it).
The link is (unsurprisingly) dead, because it uses play.jsp. So (also presumably) this server software was never published anywhere? Unsurprisingly, as well, I found more quotes that prove my original conniptions:
I really want to put up a download for the server scripts here or something, if only for the sake of letting others see my beautiful code
Additionally, in the OP we see claims that "Notch never had a problem with it" Whether this is true, it doesn't explain why he would say "Notch gets ed off at me sometimes" which is what the replies in that thread that assumed as much were basing it off of. The "reverse engineering" part also has the problem that there is no leg to stand on to prove it was in fact a "clean room" reverse engineering. If a person had EVER seen any of the source code or decompiled code for Minecraft, it would not have been a clean-room recreation. And even if it was, since it is a protocol and thus intellectual property that protocol and all implementations fall over the Copyright act and that copyright belongs to Notch/Mojang anyway- being able to create your own implementation using the same protocol does not free you from having to worry about intellectual property laws.
I cannot find ANY link that actually makes the source available, despite repeated promises, 5 years ago, that it would be made available.
it's a typical teenage self-proclaimed "prodigy" programmer who thinks all his code output is made of gold and that his epic awesomeness has influenced his favourite things. Neither appears to actually be true or have any corroborating evidence.
I cannot find any other work done by this individual. Just a few slipshod, ancient Minecraft server scripts for which I cannot find any source code to partially confirm any sort of clean-room approach to the protocol. In fact, all I cna find is this thread and the thread I linked. That's it
Asserting that you were somehow pinnacle in the development process of a game during it's early years because people actually regarded you in some position of authority seems to forget that the community was also small and lacking actual talent people tend to idolize those who are able to pretend to have it. Whether this is the case now, I don't know- but it's hard to dismiss the fact that what we have here is a clear one-shot wonder. We have an ancient piece of server software script that doesn't appear to have had any sort of real release- and.... that's it. No later projects. No current projects. No articles, nothing. (the linked thread mentions a "blog" but I can find no reference for that and the thread has no link either)
Reverse engineering a network protocol isn't exactly difficult. Being the first person to do something easy is a fleeting accomplishment.
It's a self-proclaimed programming prodigy reminiscing about his epic accomplishment of being the first person to do something easy within a small community. The claims made are hilarious- I like the part where he " offered to let me help him with programming" because the idea of some know nothing self-indulgent kid who thinks reverse engineering a network protocol is actually hard helping somebody with a BsC is just hilarious. It's the equivalent of somebody learning to use a handsaw asking to help somebody with an industrial lathe. Pair this with claims that are unsubstantiated or even confirmed as false using web.archive.org and we have the profile of somebody who is evidently still clinging to this simple thing they did almost 5 years ago- which is in and of itself a bit sad, really.
Thats amazing that all of that happened before i got minecraft in 2012. Now i own servers and thx for your contribution.
(and mojang does need to add an official modding system)
I knew the entire story of the minecraft thing, but second hand. Hearing it like this reminds me that minecraft isn't made by some huge company, like Valve or someone. It was made by a single man, and is developed today by a fairly small company. Its brilliant to think about really. Thank you for the narrative.
Thanks for sharing. I joined long after those days, but at the same time, I enjoy the kind of things the modding community creates on a daily basis. I've even taken advantage of how well Forge is built and documented to create mods of my own with little more than "I want a block that..." to start with and a collection of tutorials and a prodigious enthusiasm to dig into the existing classes and see how they tick.
I wouldn't have the patience to decypher the network signals or deobfuscate decompiled bytecode (although I have, on occasion, done some of this). So to those that take it upon themselves to do this and provide a better living through modding for the rest of us:
THANK YOU
Rollback Post to RevisionRollBack
Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.
Having been around when this happened (and, in fact, being one of those 14 people to buy the server), I can confirm its truth. Haven't seen JTE around for years, nice to see you're still around.
Wait, really? It was right in the ??? section at the very bottom, after the whole thing became sectioned... I think it might have been lost when http://www.echidnatribe.org/Minecraft/ was made to redirect to crafting.php, or some other url afterwards, I actually sent a Twitter tweet out about it at some point but that seems to be lost now too. >_<;;
Found it. Scroll to the bottom. Web archive doesn't lie.
And yes, the wiki did eventually get a decent crafting section and my page was no longer needed, so I stopped updating and eventually removed it.
And yes, I am a washed-up nobody who did something easy way back when everything was much simpler, reminiscing on the time when I had any relevance in the world. Is that so wrong?
The link is (unsurprisingly) dead, because it uses play.jsp.
The first post used to be a giant list of features and requesting people to feed me more ideas to impliment in the thread. because I was bored and uncreative. I reduced it to that after all the drama played out. (Yes, in a stupid fit of childish emotion I tried to hide by simply saying as little as possible.)
Additionally, in the OP we see claims that "Notch never had a problem with it" Whether this is true, it doesn't explain why he would say "Notch gets ed off at me sometimes" which is what the replies in that thread that assumed as much were basing it off of.
Notch was okay with my server. Notch was ed when I took his "skin previewer" applet and hacked it to accept any URL (using a basic hex editor to change literally one string), because the person who needed said hack for their website (minecraftskins.net) wanted to credit me for it. Notch immediately stepped in like "No, no no, I made this, this is MY skin previewer, all JTE did was change one line, you're not allowed to credit JTE for it like JTE made it." So I didn't get any credit for that, which is fine. They're just two entirely separate issues, is all.
The "reverse engineering" part also has the problem that there is no leg to stand on to prove it was in fact a "clean room" reverse engineering. If a person had EVER seen any of the source code or decompiled code for Minecraft, it would not have been a clean-room recreation. And even if it was, since it is a protocol and thus intellectual property that protocol and all implementations fall over the Copyright act and that copyright belongs to Notch/Mojang anyway- being able to create your own implementation using the same protocol does not free you from having to worry about intellectual property laws.
That is absolutely correct. It was not strictly "clean room" (although at the time I had absolutely no idea how to decompile OR deobfuscate Minecraft at all in the first place), nor is that relevant to legality of using the protocol and original client. But it was good enough that Notch personally gave me the go-ahead, and that was enough for me, because at that time he was the only one who mattered.
I cannot find ANY link that actually makes the source available, despite repeated promises, 5 years ago, that it would be made available.
I eventually released a dumbed-down version dubbed the "spleef server" at http://www.echidnatribe.org/Minecraft/spleef-server.zip ... This version of it was stripped of all worldbuilding components and used entirely to host automatically self-scoring self-resetting spleef matches on a tiny map at the top of the world and nothing else. Having sold the server to many people, I felt it would be rude to personally release the full thing to the public, so it only went around by private transfers from server owners to server admins, nothing else. If someone still has a pristine copy laying around, I would not be opposed to them posting it, but it's not even relevant now.
it's a typical teenage self-proclaimed "prodigy" programmer who thinks all his code output is made of gold and that his epic awesomeness has influenced his favourite things. Neither appears to actually be true or have any corroborating evidence.
Evidence exists, in exactly the manner I had described it to exist. My writing may be horribly subjective and self-congratulating, but it's not knowingly false.
I cannot find any other work done by this individual. Just a few slipshod, ancient Minecraft server scripts for which I cannot find any source code to partially confirm any sort of clean-room approach to the protocol. In fact, all I cna find is this thread and the thread I linked. That's it
I've also done work for SRB2 and the original Cave Story English fan community (before that also became a big corporate thing owned by Nicalis). I'm a wandering programmer who helps out in small, fun little game communities where a JTE might be needed.
Asserting that you were somehow pinnacle in the development process of a game during it's early years because people actually regarded you in some position of authority seems to forget that the community was also small and lacking actual talent people tend to idolize those who are able to pretend to have it. Whether this is the case now, I don't know- but it's hard to dismiss the fact that what we have here is a clear one-shot wonder. We have an ancient piece of server software script that doesn't appear to have had any sort of real release- and.... that's it. No later projects. No current projects. No articles, nothing. (the linked thread mentions a "blog" but I can find no reference for that and the thread has no link either)
Yep. I'm just another weird kid who walks in when I have something to show you, and then soon fades back into non-existence.
we have the profile of somebody who is evidently still clinging to this simple thing they did almost 5 years ago- which is in and of itself a bit sad, really.
Yes, it is sad. And I said from the start that I was here for me, not you. This is my release. I will probably never be relevant to Minecraft again. It's time to let go.
I'm JTE. I joined Minecraft around nearly the beginning, way back in the Summer of 2009, when Glass Blocks and Sponges were newly implemented and the only server mods for Minecraft were simple Batch file wrappers which would read the server's text output and input bans. It's been five years since then, so please forgive me if the details of this document are a little off, or missing.



With all this eula drama blowing my way, I don't know, I guess I feel the need to write my story down so I can let go of it. I don't expect to get much attention, I'm just here to get my thoughts out.
So let me tell you about Minecraft.
Vanilla pre-Classic
Hosting a vanilla server for Minecraft was some form of Hell. There was a giant list of all public servers which anyone could use to join, absolutely no form of hack detection/prevention, no automatic map backups, and all free accounts could join and grief the extremely limited area of your map to death at any time. The most basic of gameplay building blocks were there, but that was it.
In order to manage it properly, I had to build a convoluted player trap out of bedrock I called the "frying pan" just so I could keep people from wandering off to destroy things before I got the chance to fly over and keep an eye on them. This was actually common practice at the time, and served essentially the same function as whitelisted servers.
One of the flaws of Minecraft at this point was that if a player were to walk one block away, place two blocks down where they spawned, and then hit the respawn button, it would spawn them on top of wherever they were, allowing them to break out and escape. So I had a hive of one-block-wide spaces built on top of the 'frying pan' where players who tried to break out without asking nicely would wind up trapped, essentially putting them out of the frying pan and into the fire.
The dawn of mods
Being the tinkerer I am, and knowing that indie games like to keep things nice and simple, I soon created an intermediary server Perl script, to act as a proxy between my client and my server, and set to work figuring out all of the messages passed back and forth between them. My proxy server was quickly able to perform simple modifications, such as reading slash commands (including /me), spawning idle player dummies all around the map, or allowing the placement of coal and gold ores, and even liquids.
So now we could not only build with blocks, but we could build little blockmobiles on our roads and then sit actual player characters inside them. Neat. But there was more to be done!
Using the proxy server, and with help from another early modder's research, I eventually compiled documentation of the complete networking protocol now publicly available for Minecraft Classic servers. Armed with this private research, and over the course of 26 sleepless hours, I turned my Perl script into a fully fledged Minecraft server, which could generate maps, accept any number of clients, automatically detect hackers, allow the in-place painting of blocks (and other creative tools), build trees by placing a single block (before saplings had function), and even produce custom water and lava block 'physics'. I was even able to, astonishingly enough, trick clients into re-downloading the map from the server, and therefore could host multiple maps on a single server or reload maps from the last backup on the fly. (Now we could play Spleef without having to rebuild!)
All without looking at, modifying, or compromosing any of Notch's code. Notch agreed that my server software is entirely my own creation, and I am free to do with it anything that I please.
On the forums, these very forums before they were handed over to Curse, I was heralded as the "Minecraft Hacking God" for a day or two. All of my changes were big improvements to the core function and gameplay of Minecraft itself. Even the fact that I built in a safety switch to prevent the flood of lava covering the entire server from making the server eventually freeze over near-indefinitely from the exponential growth of 'thinking' blocks was a big thing. Notch himself came to my server from IRC and flooded it with lava just to ascertain exactly how well it handles. (Answer: Not particularly well, but at least it didn't die completely and admins were still able to simply reload the map without disconnecting anyone, right?)
( thread )
Back then, Notch arbitrarily had a golden name hanging over his head, being a VIP and all. I was jealous, so I invented colored names for different tiers of server moderators / administrators, the server owner (me) being colored Red (my favorite color), just so I can feel special. (The reality was that admins of my server could set their name to literally anything, at any time, on the fly, color code spam and all.) If you were ever on a Minecraft server and the server admins have red names -- I started that. Notch even went and specifically made the skin-grabbing code strip colorcodes out so that it would still show the correct skin despite having a colorful nametag in the next version.
Leaving the forum
And then I announced that I planned to add fancy new game modes to my server, so you could play a giant boardgame of Battleship with Minecraft blocks for pieces, or Zombie Tag versus like mods of other games do, and so on. The moderator Zuriki didn't like that idea, and immediately did a 180, revoking my custom forum title, and even threatening to ban me from the forums entirely should my server software ever be released there (for free and open-source or otherwise). After a lengthy and childish argument, wherein Zuriki claimed I would be "stealing money from Notch", and when finding my server software was 'production ready', I simply packed up my topic and left, dropping only my email address for anyone to contact me if they want it.
Here's where my story gets muddled, people thinking that I was fighting with Notch directly despite Notch previously stating outright that I am free to do anything I like with my server software in the first place. So I made use of that and started privately selling my server software to individual buyers for around $10 each, entirely by email, advertised solely by word of mouth. I only made around 14 sales out of that, before my server started spreading like wildfire, as each server admin shared the source code with their friends to try and program new features into it together, and those people freely shared it with more people, and so on until the market was entirely saturated. I did of course use the first bit of money to pay for my Minecraft account (which at the time, offered no benefits other than a custom skin) and the rest went to a couple Steam games and buying three more Minecraft accounts for my friends. This was the first and only time I've ever been paid for anything I programmed.
Anyway, among all of this open source server sharing (after all, it would be difficult and pointless to make a Perl script closed-source), all sorts of new game modes and life cropped up. Lava survival servers, floating water stairway challenges, I was quickly changing the very community itself by allowing the first real modding to take place. JTE servers were the best. And soon it was being replicated in other languages like Python, the same tools I pioneered becoming further expanded on with spout blocks, finite water systems, and the ability for players to cross between the server's maps individually. Now everyone could have their own sandbox to play in, and challenge packs could contain multiple "levels"...
Survival Test, indev, infdev, and Alpha
Meanwhile, Minecraft had been progressing seperately, having destroyed its basic multiplayer (and probably most of its engine) to introduce NPC creatures, zombies, pigs, and so on. With the account that I purchased, I was able to follow it all, every step of the way, from the beginning, and just sort of watch how it progressed. Since there was no networking in these versions, I didn't have much work to do, and just sort of kept my silence. Seeing Notch struggle with some of this, I offered to let me help him with programming, but he turned me down, saying he needed Minecraft to "get his name out there" first. He said that maybe he'll let me work with him on his next game, after Minecraft. (Then he went and hired someone else to be a 3D model artist, and then finally established the entire company Mojang around the success and continued development of Minecraft..)
When crafting was introduced, I made the first full recipe list graphical crafting page on my website at the time, EchidnaTribe.org
By using in-game sprites and GUI elements entirely ripped from screenshots with basic image editing software, I was able to show not only how to build every tool, but even which mobs drop what resources and how to smelt for iron. At the very bottom of the list, as a sort of in-joke, since Notch had recently removed the test Apple item from existance, I put that you need to kill Notch in order to get apples. Then right next to it, since apples still needed a use, I put that if you surround an apple with gold ingots (not blocks) you would get a golden apple.
I invented the Golden Apple, guys. (Proof, scroll down to the bottom of the page under the ??? section.)
When Secret Friday Updates rolled around, Notch loved randomly implimenting "community rumors" as actual features of the game to tease and delight everyone, based on what he heard secondhand. This is how pig saddles came to be, among other things, and to this day if you look in the source code you can see that any player named Notch will have a random chance of dropping apples, even if he had none in his inventory.
SMP
Finally, when the multiplayer mode of Alpha came out, long after scrapping nearly everything of the engine and remaking it for infinitely large worlds (a move I always felt was tremendously unnecessary and poorly implimented), it was full of bugs and problems, and split the entire community in half at the price-point, now allowing paid accounts for full servers that free accounts could no longer access. Time once again for JTE to come out and introduce things like persistent inventories and time of day locks and alternate map generators and whatnot, right? Well, not quite...
At this point, Notch kept changing up the network protocol faster than I could descipher it on my own, and this time I didn't have a random stranger leap out at me and hand me a half-finished document I could just fill in the blanks for or anything. With every new version, the client would just start crashing blatantly from the messages my server sent, and eventually I just gave up trying. Nowadays there's even full-on SSL-like encryption going on in Minecraft's networking, not just the hassle of HTTP logins to deal with.
I still have it sitting on my harddrive -- the half-finished OmniServer meant to bridge the gap between all Minecraft versions, be they Classic, Alpha SMP, or a new custom client written from scratch, with its finitely sized Classic-mode maps and day-lock in Alpha and infinitely-large segmented maps implimented in Classic, made to host all kinds of creative new arcade-like NPC-driven minigames I have a design document of, sitting forever in stasis now... It's a shame that never came to pass.
Present
I'm sure you all know what happened next. Modders started de-obfuscating the client and server's source code and making amazing new add-on packages of blocks and game mechanics, directly implimented into the server and/or client, basically all hell broke loose and the community stance on modding had shifted entirely from where it was when I introduced my little server way back when. Even before Alpha SMP was out, people were modding the Survival Test client to connect to Classic servers and spawn client-side zombies anyway.
So now we have an army of deobfuscaters, coders, and inter-dependant modders all keeping up with an endless update treadmill, because Notch never made a proper modding system for Minecraft and continued to re-obfuscate every single build because it's not a free open-source software and never has been. The community has long outgrown me, as well as the morality that drives me. In fact, the community outgrew Notch, and now it's threatening to try and overthrow Mojang as well.
Such is the modding momentum we have built from that point long ago. It all started with one awesome wandering programmer's tiny server script.
Resources:
The original JTE server distribution files, untouched since 2009 (and probably no longer functional)
The proxy tool I wrote and used to figure out the network protocol, including the original output logs.
more pre-alpha screenshots
Additional reading:
"How Blocktopia Started", history of TheOne's JTE server.
The original "JTE's 100% Custom from-scratch Minecraft Server" thread. Ancient drama, immature mannerisms, and all.
JTE's Custom Spleef Server thread, the dumbed-down and closed-source release of the server software set up for a specific limited purpose.
Newly Spawned: Baby. Out of the Water: Deep-Sea Diver. Tree Puncher: First Fight. Carpenter: Under The Carpet. Stone Miner: Newb. Coal Miner: Just Add Methane. Zombie Killer: Village Protector. Iron Miner: Burnt Hands.
BudderGold Miner: Sky Army Stuck At Home: It's a nightmare Redstone Miner: Electrician. Diamond Miner: I'm rich! Lapis Lazuli Collector: Enchanting Time!*applause*
Former #minecraft channel operator.
What...? I hope you're not saying that people should be allowed to put in updates to vanilla themselves. That would be ridiculous. That is why there are mods. If you mean let players introduce updates themselves, the game would be a mess. You would see guns, unicorns pooping jelly beans, and Hitlers everywhere.
Need a friend to play Minecraft with? Click me! Lots of players are looking for someone to play with as well!
Need a way to make survival more fun? Click me!
Don't know what to build? Here is a "What should I build?" generator!
Anyhow, 1.7 was kind of tough since there was so much changed that tons of modders just gave up. 1.8 doesn't sound like it will be any kinder. I was not a fan of hunger when 1.8 beta came out, but I came to love it by 1.0.0. The upcoming 1.8 features a complete enchanting overhaul, which screws up some minigames and such which will be quite annoying. It makes enchanting easier, but at the same time makes it annoyingly easy. I still have yet to test it, so I'll see how that turns out when it comes.
We will just have to wait and see what minecraft will become when 1.8 is released.
I began minecraft ~July 7 2011 1.7.3 Beta
My username used to be Creative_Dalek but is now Dalek since 2/4/2015
Ebola
I can vouch for this. This was one of the things that made Alpha updates so great. You never knew what would be added the next update. It would only ever be a few features at a time, but they were always so random and fun to find. The game was so mysterious. Finding each new feature each week was an amazing feeling that I miss.
I still remember the week this update took place. I set up my first portal, lit it with my flint and steel.. and stared at it. For days. I could not gather the courage it took to see what was on the otherside. I had heard rumours of haunting sounds of screaming cats, or pigs, or whatever they were meant to be... Even til today, that feeling i felt, was one of the most nostalgic to this day.
I also remember your website (EchidnaTribe.org) That's where I learned all the recipes
The entire experience was significantly different in those days. I remember when the server I played on was up continuously for a few days, all those free players he mentioned would constantly join since it was the top of the list. You'd have to disable the heartbeat somehow or just restart the server to make it even remotely playable again.
Forums here were significantly more of a community. You knew a bunch of people by name. JTE, remember when Zuriki put up that small server and only sent invites to well known people? To get access, you had to be vouched by someone. You very well might not due to the disagreement between y'all (which Zuriki was always doing... dude had some people relations issues I'd say). I remember getting on that thing and building a submarine. I remember talking to Notch on some random server I went on once. I remember meeting people in game and being like "Hey, I know you from the forums! Seen my name before?", and a not insignificant amount of time, the answer was yes.
Oh, good times. Thanks for the reminder of those good old days, JTE.
EDIT: For example... reading through all the responses, I recognize LG_Legacy's name there. Hi!
Never heard of this guy. Don't really care what he claims to have taken part in on his word alone, particularly when presented in such a clearly self-aggrandizing manner. "I'm responsible for Minecraft being great, And if I stop participating it will get worse" was the basic message I took away from it).
Custom Server.
The link is (unsurprisingly) dead, because it uses play.jsp. So (also presumably) this server software was never published anywhere? Unsurprisingly, as well, I found more quotes that prove my original conniptions:
Additionally, in the OP we see claims that "Notch never had a problem with it" Whether this is true, it doesn't explain why he would say "Notch gets ed off at me sometimes" which is what the replies in that thread that assumed as much were basing it off of. The "reverse engineering" part also has the problem that there is no leg to stand on to prove it was in fact a "clean room" reverse engineering. If a person had EVER seen any of the source code or decompiled code for Minecraft, it would not have been a clean-room recreation. And even if it was, since it is a protocol and thus intellectual property that protocol and all implementations fall over the Copyright act and that copyright belongs to Notch/Mojang anyway- being able to create your own implementation using the same protocol does not free you from having to worry about intellectual property laws.
I cannot find ANY link that actually makes the source available, despite repeated promises, 5 years ago, that it would be made available.
it's a typical teenage self-proclaimed "prodigy" programmer who thinks all his code output is made of gold and that his epic awesomeness has influenced his favourite things. Neither appears to actually be true or have any corroborating evidence.
I cannot find any other work done by this individual. Just a few slipshod, ancient Minecraft server scripts for which I cannot find any source code to partially confirm any sort of clean-room approach to the protocol. In fact, all I cna find is this thread and the thread I linked. That's it
Asserting that you were somehow pinnacle in the development process of a game during it's early years because people actually regarded you in some position of authority seems to forget that the community was also small and lacking actual talent people tend to idolize those who are able to pretend to have it. Whether this is the case now, I don't know- but it's hard to dismiss the fact that what we have here is a clear one-shot wonder. We have an ancient piece of server software script that doesn't appear to have had any sort of real release- and.... that's it. No later projects. No current projects. No articles, nothing. (the linked thread mentions a "blog" but I can find no reference for that and the thread has no link either)
Reverse engineering a network protocol isn't exactly difficult. Being the first person to do something easy is a fleeting accomplishment.
It's a self-proclaimed programming prodigy reminiscing about his epic accomplishment of being the first person to do something easy within a small community. The claims made are hilarious- I like the part where he " offered to let me help him with programming" because the idea of some know nothing self-indulgent kid who thinks reverse engineering a network protocol is actually hard helping somebody with a BsC is just hilarious. It's the equivalent of somebody learning to use a handsaw asking to help somebody with an industrial lathe. Pair this with claims that are unsubstantiated or even confirmed as false using web.archive.org and we have the profile of somebody who is evidently still clinging to this simple thing they did almost 5 years ago- which is in and of itself a bit sad, really.
(and mojang does need to add an official modding system)
I wouldn't have the patience to decypher the network signals or deobfuscate decompiled bytecode (although I have, on occasion, done some of this). So to those that take it upon themselves to do this and provide a better living through modding for the rest of us:
THANK YOU
I do maps and stuff.
Well that's embarassing.
Edit:
http://web.archive.org/web/query?q=wayback_server:40 type:urlquery url:http%3A%2F%2Fwww.echidnatribe.org%2FMinecraft%2Fimg%2Fitems%2Fgoldapple.png&count=150000&start_page=1
The golden apple image is there, now where was it used...
Edit2:
2010-02-23
Found it. Scroll to the bottom. Web archive doesn't lie.
And yes, the wiki did eventually get a decent crafting section and my page was no longer needed, so I stopped updating and eventually removed it.
And yes, I am a washed-up nobody who did something easy way back when everything was much simpler, reminiscing on the time when I had any relevance in the world. Is that so wrong?
Yeah, I was five years less mature back then, and I'm only five years more mature now.
Notch was okay with my server. Notch was ed when I took his "skin previewer" applet and hacked it to accept any URL (using a basic hex editor to change literally one string), because the person who needed said hack for their website (minecraftskins.net) wanted to credit me for it. Notch immediately stepped in like "No, no no, I made this, this is MY skin previewer, all JTE did was change one line, you're not allowed to credit JTE for it like JTE made it." So I didn't get any credit for that, which is fine. They're just two entirely separate issues, is all.
That is absolutely correct. It was not strictly "clean room" (although at the time I had absolutely no idea how to decompile OR deobfuscate Minecraft at all in the first place), nor is that relevant to legality of using the protocol and original client. But it was good enough that Notch personally gave me the go-ahead, and that was enough for me, because at that time he was the only one who mattered.
I eventually released a dumbed-down version dubbed the "spleef server" at http://www.echidnatribe.org/Minecraft/spleef-server.zip ... This version of it was stripped of all worldbuilding components and used entirely to host automatically self-scoring self-resetting spleef matches on a tiny map at the top of the world and nothing else. Having sold the server to many people, I felt it would be rude to personally release the full thing to the public, so it only went around by private transfers from server owners to server admins, nothing else. If someone still has a pristine copy laying around, I would not be opposed to them posting it, but it's not even relevant now.
Evidence exists, in exactly the manner I had described it to exist.
I've also done work for SRB2 and the original Cave Story English fan community (before that also became a big corporate thing owned by Nicalis). I'm a wandering programmer who helps out in small, fun little game communities where a JTE might be needed.
Yep. I'm just another weird kid who walks in when I have something to show you, and then soon fades back into non-existence.
Yes, it is sad. And I said from the start that I was here for me, not you. This is my release. I will probably never be relevant to Minecraft again. It's time to let go.