Old IncrediBots Relics
Last updated: April 18, 2011
IncrediBots didn't start out as the cream of the crop. It started out like any other
game as a rough prototype, becoming more refined until they were satisified with the
result. Below are some relics from its earlier days that have never before been
compiled into one list such as this.
First on the list is the original IncrediBots logo. When most of you reading this
think about that phrase, you think of the logo at the top-left of this page, since
it was made for IncrediBots 1, right? IncrediBots 2 wasn't even a consideration yet,
so surely that's it? Believe it or not, there was a logo before that one,
created as a prototype. So how did I find it? Fortunately, the original IncrediBots
website didn't disable directory listings. I used that knowledge to scour their
known directories and download every file. The /images/ folder for the most part was
uneventful, containing things like avatars, smileys, and website elements that were
in use (many of which are in use here as well).
Then I came across a file named "incredibots_logo.gif". Like most of you, my first
reaction was that I had come across the file found in the top-left corner of the
webpage. When I took a look at it, what I saw amazed me. You mean, there's
another logo I never knew about?! Indeed there was. After a
quick inspection, I quickly realized why it wasn't used in the final product. Here's
the image:
Fascinating, isn't it? But it looks "industrial", as if at a construction site. Matt
Parry (the graphic designer of all original IncrediBots images) showed this to the
rest of the IncrediBots crew, and they came to the same conclusion: it was a good
logo, but it seemed to target a more adult audience than they thought they would
reach. They liked the lowercase "i" with the gear for the dot, so that was kept in
the final logo, even down to the number of teeth (6) and orientation of the gear.
Matt Parry went back to work designing a more kid-friendly logo, and the IncrediBots
crew liked what he made, so his second design was kept in the final product.
Next on the list is an in-game graphic for IncrediBots 2 that was created, but never
used. Instead, another version of the same graphic was used. You can find both the
old version and the new version if you download the open source IncrediBots, then
navigate to [download location]/incredibots/Incredibots Open
Source/src/Incredibots2/resource/ and look at the two images named
"Incredibots_Congratulations_1.png" and "Incredibots_Congratulations_2.png". Based
on .../src/Incredibots2/Game/Graphics/Resource.as , the first one was used and the
second was included, but otherwise omitted.
Keep in mind that the image labeled "_1" was used in-game, and the image labeled
"_2" was included, but omitted. This naming convention implies that Matt Parry
created "_1", then somewhere along the line decided to create a second version which
he named "_2". It also implies that the IncrediBots crew wasn't satisified with
"_2", so they stuck with "_1" instead. Here's the second version that went unused:
And here's the first version that was used:
The third item on the list predates the last one, and possibly the one before that.
Ryan Clark sought help from internet users like you or me on forums under the alias
of "theluckyleper". He has used this alias many times in the past for various sites,
but keep in mind that the name was discovered on the original IncrediBots forums,
and later on the Grubby Games forums, so there have been impostors using the alias
in a not-so-appropriate manner. As a general rule, if the alias itself predates
November 10, 2008 (when IncrediBots first went public), then it's probably Ryan (but
this is not guaranteed).
The first of these posts was made on June 16, 2008, almost five full months before
IncrediBots went into public beta. It links to IncrediBots, then asks for feedback
and help for a few issues. Interestingly enough, v0.01, which can be found on the
changelog here, has a date of October 31, 2008,
four and a half months after this post was made. Here is a screenshot of the post:
Later that day, in the same thread, Ryan explains why rotating joints break when
they experience a certain amount of force (most noticeable with chains):
So it seems this was intentional, rather than a Box2D bug, in an attempt to prevent
rotating joints from being pushed too far apart. It doesn't solve the problem, but
it does prevent users from exploiting that weakness.
The next day, Ryan asked for help with prismatic joints (known in IncrediBots as
"sliding joints") bending perpendicular to their direction of travel, and linked to
the original thread depicted above. Here is a screenshot of the post:
Later that day, he made a second post in the thread asking if anyone had any ideas
for solving it, and explained why sliding joints have the appearance that they do:
So the appearance of sliding joints is not just graphics, but a functional method of
making the sliding joint more rigid. This also explains why IncrediBots 1 never had
non-colliding sliding joints -- turning off collisions meant the sliding joint could
no longer retain its stiffness.
Then, on October 25, 2008, Ryan announced that IncrediBots was in "limited beta",
and gave examples of things you can do in IncrediBots. Interestingly, this was six
days before v0.01 was released, which can be found on the changelog here. Here is a screenshot of the post:
Unfortunately, those links no longer work, and we do not know if anyone saved early
bots like that, or if they were able to. If you have any information regarding these
bots, please see the Help Wanted page!
On November 20, 2008, just ten days after IncrediBots went into public beta, Ryan
asked for more help. There was a problem with replay syncing, with the cause not
fully known, and Ryan wanted help in solving the problem. If you find old replays
from IncrediBots 1, one common problem you'll come across is what Ryan refers to as
"jittering". In essence, bots that move any moderate distance can have problems
where their expected location is much different than their actual location. To solve
this, IncrediBots 1 uses a "sync frame" after every five seconds, which records all
the locations and rotations of objects on-screen every 150 frames (5 seconds at 30
fps), and the playback "syncs" with these locations.
Ryan suspected that it was caused by the fact that Box2D behaves differently across
different processor architectures (e.g. PPC vs. Intel), but the problem was still
there when a replay was played back on the same machine that saved it. This confused
Ryan (and Oliver Trujillo, the other programmer) enough that Ryan offered $100 USD
for anyone who could solve the problem. Here is a screenshot of the post:
Later that day, Ryan asked how Fantastic Contraption solved the problem, since the
help he was getting wasn't what he was looking for. We now know that Fantastic
Contraption doesn't rely on any user input whatsoever, so the only information
needed to reconstruct a replay is the location data for every rod, wheel, and block,
which (obviously) doesn't help Ryan's problem.
The next day, a user suggested skipping the physics entirely and instead recording
the position and rotation information for all shapes every x frames, graphically
transitioning the difference between each recorded frame to make up for the frames
where no new shape data was recorded. So if he recorded at 10 fps, then two out of
three frames would be a transition from the one before them to the one after them,
since IncrediBots runs at 30 fps. Ryan liked this idea, so he payed the user $100
USD via PayPal, the same system we now use to handle donations.
Do you have any more relics to add to this page? Have an idea for a relic? Please
see our Help Wanted page! NOTE: please do not send us your bots or links to them
unless it was either made on IncrediBots 1 with a URL robotID of under 100, or was
made by Ryan Clark and was NOT featured when the servers were taken offline.