Sunday, October 2, 2011

History of the Interguild, Part 2: TNT Ruins Everything


During part one of this series, I pointed out many of the good things that the creators of the game Hannah and the Pirate Caves (HATPC) did to help its fan community grow. In this post, I will go through all of the major mistakes that TNT made with the game during the past eight years and how the community has reacted to each of these issues.

Strike One: Broken CaveMaker

The original version of CaveMaker that TNT released included Water Crates and Water Tap Crates. I mentioned briefly in the previous post how these two crates added a new dimension to water levels. But because these crates were not included in the game's built-in levels, many players were confused. TNT responded by releasing a new version of CaveMaker that did not include any of these tiles.

The fact that they removed two crates isn't nearly as important as the fact that the new version of CaveMaker was just plain broken. You absolutely could not load levels into the program because it couldn't read the level codes correctly. It would instead scramble your levels into a complete mess.

CaveMaker V1

To get around this, many players would refuse to close the program until they completely finished their level, which could sometimes take a few days if they were making a particularly epic level. Some would also learn how to read and edit their level codes directly, in case a problem came up later that needed to be fixed.

When the Interguild forums were set up in 2006, we started passing around copies of the original version of CaveMaker, thanks to the members who managed to download it when the game was first released in 2003. And later in 2009, user canadianstickdeath made his own version of Cavemaker, which included several much-wanted features, such as the ability to place multiple gems and heart crates, open multiple levels at once, and an Undo/Redo feature.

CSD's awesome CaveMaker V2

Strike Two: Caves of the Week

Over the years, we watched as the weekly Cave of the Week (COTW) contest was reduced to nothing more than a showcase of some of the most bland levels ever created. Sometimes we tried to submit some of our best levels to the contest, but they never won. We always thought that they most likely declared the winner at random, but not before playing the beginning of the level to make sure it was easy enough. Sure enough, there were times when the winning level was impossible to beat.

We honestly didn't care all that much about the COTW contest, since we could always find better levels on the forums. It's just that this didn't help us feel as if TNT cared much about the game, which is understandable considering that they have a much larger website to run.

As an interesting side note, during the summer of last year (2010), we experimented with our theory of how TNT selects the Cave of the Week. We set out to win the COTW by making really easy, generic levels with a similar style to the other COTW winners. Sure enough, it worked! We then went on to win the COTW for four consecutive weeks. By the time we stopped submitting levels, we had won the COTW seven times.

COTW #338: CrazyMadness by GF4
Just a few weeks after that, ironically, TNT announced that they were going to end the Cave of the Week, which had run for nearly 350 weeks. While we didn't care much about this event, it was still troubling because it suggested that TNT no longer wanted to support HATPC. As we'll see later in this post, by this point in time we already knew that all too well.

Strike Three: Broken Uploader

On March 30th, 2007, the Cave Upload page suddenly stopped working properly. To upload a level, users had to copy their level code from the CaveMaker program and paste it into a page on neopets.com. But during the April Fools day weekend, the page suddenly started rejecting perfectly valid levels and giving out inconsistent error reports.

It took us a while to figure out what was going on, but eventually we found that the uploader was altering our level codes by replacing all instances of "<" and ">" in the code, with "-no tags here-". We recognized this as being the exact same HTML filters that TNT uses for its forums. At the time, we had no idea why TNT would add HTML filters to the uploader. (We also mistakenly thought that part of the problem was the fact that the uploader added backslashes to quotes (\"), which represented ladders, but it turns out that the uploader had always done that).

But this was a very serious problem. The characters that they were trying to censor out of our level codes represented left and right arrow crates, respectively. Arrow crates, along with dynamite crates, are some of the most widely used tiles in the whole game. To see a level that doesn't include a single arrow would be a novelty in its own.

Pretty quickly we realized that this glitch wasn't going to go away soon. The most alarming part about all this was the idea that almost all of our greatest levels were now unplayable as the uploader would no longer accept them. This was perhaps the most direct threat that our community had ever faced—and we weren't going to go down without a fight.

This is how we planned to retaliate:
  1. We'd get as many of our members as possible to go to neopets.com's "Report an Error" page.
  2. Once on that page, they would go to our forums to copy and paste in an extensive report that we had written explaining what was wrong with the uploader and how to fix it.
  3. After pressing submit, they would hit the Back button in their browser, and then they'd hit submit again, and again, and again—until they had sent as many messages as they wanted.
Fortunately for us, the webpage had no blocks against that kind of spamming, and we ended up sending them hundreds, if not thousands, of bug reports.

We're not sure if TNT noticed any of our bug reports until after they realized something was wrong. On May 10, 2007, over a month after the glitch had initially appeared, TNT noticed that something wasn't quite right because almost no one was entering in the Cave of the Week! Shortly after posting about that anomaly on their news page, they took down the uploader page for maintenance.

Once the glitch was fixed, all of our members who had submitted bug reports received a message from TNT, thanking them for bringing the issue to their attention. However, it was an automated message that was sent as a reply to every single report submitted, and so our inboxes were absolutely flooded.

Look Mom! No Arrows! by canadianstickdeath
We would later refer to this event as the Great Uploader Glitch of 2007. This was such an important event in the Interguild's history that we just had to give it a dramatic name. There is no doubt that this brought us closer together as a community. It made even the ordinary members feel as though it was up to them to help keep the Interguild alive.

This event also solidified our resentment against neopets.com. Before, we had been moving away from neopets simply because we were starting to grow too old for the site, but now we were growing to dislike what neopets had become and we tried to separate ourselves completely from it. For many of us, the only reason we visited the website was to log in and upload a level—we didn't even visit the guilds anymore.

The Last Straw

During December of that year, jellsproutcanadianstickdeath, and TehMarz found that we could include HTML in our level codes and then view that HTML by going to this page. This was a serious risk because neopets.com strictly prohibits links to external websites. Anyone could use this glitch to create a redirect to a malicious site, which is especially alarming considering the low age group of neopets users. But it soon became clear that the previous uploader glitch was an attempt to fix this hole.

They considered reporting the issue to TNT, but fearing another uploader glitch, they decided to keep silent on the issue and act as if the glitch just didn't exist. But TehMarz later changed his mind, realizing that security was much more important than a single Shockwave game, and so he submitted a bug report, hoping that TNT would handle the situation competently.

A few weeks later, on January 8th, 2008, TNT broke the uploader again. If on any line of your level code you had both a left and a right arrow facing away from each other (like this: "xx<xxx>xx", but not like this: "xx>xxx<xx"), the line would be removed from your level. The worst part about this was that it didn't even fix the security hole! Anyone could just bypass it by putting their tags on different lines.

And to make it worse, the uploader was now enforcing a new rule where level titles were only allowed to have letters, numbers, and underscores. This meant that you could no longer put spaces or other special characters into the name of your level. This had nothing to do with the security hole that they were supposed to be fixing, and there were absolutely no problems or glitches coming out of level titles to begin with. Seriously, TNT?

TehMarz analyzes the situation.
We immediately set up another spam campaign, but our morale was considerably lower this time. We even tried sending them a reasoned letter, as opposed to frantic spam, to see if they would listen, but it didn't work.

The Great Uploader Glitch of 2008 never got fixed, and we're still dealing with it today. If there's anything worth being noted about this story, it's the unusually thick wall of communication that separated HATPC's players from its creators. Not even the largest HATPC community on the Internet could've figured out how to break through that wall.

I know that TNT is very busy with running an entire website, and I know that we were a very small percentage of the overall neopets.com audience. But when a group of players has a true and deep love for a game, it is a rare an valuable moment. Rather than supporting us, TNT showed us again and again that it just didn't care about the game very much. It was heart breaking—enough to make you want to completely give up on the game.

And so that's what we did.

A New Dream

The discussions about the new uploader glitch almost immediately turned towards a more interesting subject. We were joking about how much better HATPC would be if we were the ones who made it. Then one idea was presented that would spark a project so ambitious that its promise alone would keep the Interguild alive for months and years to come. The idea was that making our own game was possible.


It was one of the most exciting times in the Interguild's history. We codenamed our project the New Game, and we had to create new boards in the forums in order to house the dozens of idea topics that were popping up.

Every game developer can relate to those early feelings of excitement and extreme ambition when you decide to make your first game. Those of us who were grounded more in reality tried to talk some sense into the rest of us about how hard it would be to make a game and how many years it'd take. But we didn't care, because we knew that it was possible!

Three and a half years later, and the New Game, now known as the Aeon Project, is still under development. There's a lot of interesting things to learn from Aeon and why its development has been so slow, but that's a topic for another blog entry.


To be continued...

I didn't even start talking about our move to interguild.org yet! That's actually a much more interesting topic than it sounds.

By the way, it's unlikely that my very next blog post will be Part Three, because my teacher wants everyone to relate their next post to something about business models. I'm presuming it's to help some people who haven't been posting much on their blogs by giving them something to write about.

EDIT: Click here to read Part Three!

Some Interesting Trivia

In the last post, I talked a bit about the PCCA's over-the-top front page and how I didn't have any pictures of it. Well, I just found a glimpse of it in the beginning of the following video by shos. You can also see the old Interguild website, which I'll talk more about in the next post.

10 comments:

  1. Don't forget that we had already won the CotW before it began to drop in quality (CSD, me, Google246) and that we overall had somewhere around 12 total CotW winners on the Interguild.

    I only remember TehMarz finding the HTML glitch? Did CSD and Jell that as well?

    (also my level Weapon Of Choice is also without arrows...)

    /Isa

    ReplyDelete
  2. IT DID NOT POST MY COMMENT?!?!

    anyways, I knew you were gonna post once upon a PCCA :P damn, I sucked in choosing suitable music.

    oh well. I also immidiately thought about 'look mom! no arrows!' when you described that glitch.

    I think you forgot something though, we also had some time that we couldn't use ladders in our levels, cuz of the "-> /" thingie. "-add tags here-" was there too..

    Lookin forward to seeing the next part!

    ReplyDelete
  3. I think CSD was the one who found it first, and it was in jell's old research topic. Jell and TehMarz were really active in that conversation. Actually here's the link (you have to be logged in to see it): http://interguild.domingo.org/forum/viewtopic.php?t=1196&postdays=0&postorder=asc&start=40

    I remembered Weapon of Choice, but I included CSD's level because it was actually from the Uploader Glitch era.

    When I was looking up the old posts on what we thought was causing the uploader glitch, we repeatedly mentioned how the uploader was adding backslashes to ladders. But I think that it's always been like that, we just never noticed. But I don't remember it replacing ladders with "-no tages here-" as well. Here's proof: http://interguild.domingo.org/forum/viewtopic.php?t=436

    ReplyDelete
  4. The link to jellsprout's profile is broken.

    Woah, now I know a lot more about IG's history. A few months ago I tried to load a level code into neopets' cavemaker and all the tiles were completely scrambled but I just thought it was my computer. I downloaded CSD's cavemaker and it works great though.

    The decision to use the < and > symbols wasn't a good idea on TNT's part but the solution to the problem is even worse. What TNT did has made cavemaking more annoying and they don't really care at all.

    I never really understood this uploader glitch before reading this and I was not sure as to why people used to be able to use arrows on the same line but now that I understand how this works I am surprised at how stupid TNT was/is. They wanted to stop people from injecting HTML into the pirate_level_load.php page, right? ALL they had to do is put the following php code at the top of the pirate_level_load.php page (added spaces so it displays correctly):
    < ?php
    header("Content-type: text/plain");
    ? >

    That will tell the browser that you're pretty much sending a .txt file so no HTML will execute. With that, the problem is solved without messing up the arrows or titles (or the uploader) but apparently their programmers don't put any thoughts into this stuff.

    Go Aeon!

    Looking forward to part 3.

    ReplyDelete
  5. Wow that's a very elegant solution, Thomas. I was thinking more along the lines of using htmlspecialchars(). I remember TehMarz suggesting something even more complicated though, but he was primarily worried about preventing scripting.

    ReplyDelete
  6. I'm not sure if htmlspecialchars() would work because then pirate_level_load.php would start outputting < and > as & lt; and & gt; (added spaces to display correctly) and then shockwave would somehow have to convert those back to < and > before processing the code and I don't know if shockwave can do that. TehMarz wanted the < and > to be changed to { and } I think but I really doubt TNT would edit an extremely old file and do that. Setting the header to plain text was clearly the best solution. :(

    ReplyDelete
  7. lol my idea would've caused an even worse uploader glitch.

    TehMarz also suggested using H's instead quotes for ladders.

    ReplyDelete
  8. It is pretty certain that any " didn't get backslashes added before them before the first uploader glitch. I made several large level before this glitch that included many ladders. Before the glitch these would upload just fine, but now I get the error message that the level exceeds the character limit.
    You also forgot perhaps the most crippling error of them all: the Shockwave Error. Some time ago, I think two years or so, the entire game simply stop working for people. Instead it would display a Shockwave Error when loading the game. We figured out it was due to an error in the browser's cache and by clearing your cache or downloading a working cache you might fix it. TNT actually has noticed this and announced on the Neoboards that they were looking for a solution, but so far it hasn't been fixed. This is preventing most people from the game now and is probably the final nail on HatPC's coffin.

    ReplyDelete
  9. Oh wow how could I have forgotten that? Maybe because I never believed that the shockwave error was directly TNT's fault?

    But that's weird, I have this memory of when I was working on Christmas Blizzard and how when I added a large ladder to the right side of the cave, the cave suddenly went over the character limit, and this was back in December 2006. Or maybe my memory is deceiving me.

    ReplyDelete
  10. The ladder thing could have been done before the uploader broke. All I know is that I had some caves that I was sure uploaded correctly before, but that now no longer upload. These are mostly very high and small levels, so it could be that before the uploader first broke line breaks only took up one character instead of two.

    ReplyDelete