|Trials, Triumphs & Trivialities #66:
Fool Me Twice
April 1, 2002 - I love April 1st. After Hallowe'en it's my favorite holiday of the year. As I mentioned last year, in Trials, Triumphs & Trivialities #27, Fool Me Once, in my halycon undergrad years at Cal I used to play pranks on the web, sending out blatantly false news items to all the corners of the Internet and watching the astounded responses come in.
I turned 30 a few days ago, and alas with that age has come responsibility. Since I know that there are now people out there that trust me and have reason to believe what I say, I don't engage in random tomfoolery any more. But, I would like to share a little of the humor and happiness of the holiday. So, for the last year I've been collecting quotes and bugs related to Skotos.
Here's the best.
Bug: Consensual Dueling
As you've no doubt heard, we've just upgraded Marrach to what we call our trunk code base. It's the more stable, more advanced, but slightly different, version of our server. Overall, the upgrade has gone fairly well, but we've run into occasional problem.
We always claim that Marrach is consensual, but this little bug just shows us how consensual we could really be if we wanted. May I lunge at you in a duel? May I enter the room with you? May I speak to you?
Sometimes, too much is too much.
Quotes: Silly Developers
"I smack death."
Sometimes our developers get a little giddy when they've been working on a problem for too long, as was the case here, when we actually had a physical "Death" CNPC in our first incarnation of Castle Marrach's furnace.
"Every day is +slay day for me."
And sometimes our developers' heads get just a little too filled with visions of power. +slay is the administrative command which allows a StoryTeller to destroy an object in game. In this case the developer didn't need to be restrained, but just barely.
Bug: Ghosts in the Castle
In something as complicated as an virtual online game world, systems sometimes interact with each other in totally confounding ways. Take the example of the Gate Courtyard in Castle Marrach's Outer Bailey. When we first built the Castle, there wasn't anything west of it. We hadn't yet constructed the gatehouse beyond. Because players couldn't get there, there was little need.
But, we knew that doors sometimes accidently got left unlocked. In fact, early versions of the system accidently unlocked doors whenever we rebuilt a room. If anyone ever got outside of the Gate Courtyard's western door we wanted to make sure they didn't end up in the infamous void. So we looped the western exit back to itself. If the door somehow got opened, and you wandered west, you'd ended up right back where you started. A nice solution for a probably non-problem.
And then some joker wrote code to allow you to a knock on a door.
The implementation was pretty simple. If you knocked on a detail that was an exit, the system looked at the exit's destination and transmitted the knock to that location.
By now, you must see where this is going. People knocked on the western door of the Gate Courtyard, and someone on the other side knocked back. Or so it seemed. Ghosts in the Castle? A poor guest stuck outside? Monsters trying to get inside?
Just ghosts in the machine, alas.
Quotes: The Problems with Clothes
"Why are they nude?"
Even simple systems can get really complicated when introduced to a complex, intertwining multiplayer gamesystem. Clothes, and the concept of non-clothed people being nude, have caused no end of troubles.
"You see emptiness. It is nude."
Our biggest problem seems to always be with our game systems getting overzealous, and labelling things as nude that shouldn't be.
"My clothes don't need to have influence."
But in general every time we look into how different systems and different types of objects interact, we see new, bizarre behavior, as shown by the above quote, about how clothing might affect a (never released) influence system.
Bugs: The Gravity of the Situation
Over in Horizon Station, Sam Witt has been doing very different things with the Skotos system. For example, he's thinking about physics in a way that we really don't need to for games like Castle Marrach (or even space-operic science fiction games like Galactic Emperor: Hegemony).
One day Sam was doing experiments with gravity over on the Horizon Station stage. To try and simulate an increased gravity, he'd made himself huge. And then everything broke.
When our engineers looked at his character, later, they realized he'd made himself too big to fit in any of the Horizon Station rooms.
Quotes: More Zany Developers
"I think I'm going to have to do a separate legwear catalog."
Sometimes our developers get so enmeshed in the games they're working on that they don't realize how funny their tasks might sound.
"I just sharpened every sword in the game with one command. Ha!"
But, more frequently, they just get overcome with the vast, though virtual, power at the tips of their fingers. Again, no restraint required, but it's always touch and go.
"Where the hell did he get an arm?"
And sometimes our developers just don't make sense, especially not a year later when looking at their quotes in retrospective.
Where would a character get an arm? From the armwear catalog, one would suppose.
Bugs: Noun Overload
One of the biggest problems you can run into in an online game is overloading the same nouns. As a player you run into this every day when you get a message like, "Do you mean a chair, a chair, a chair, or a chair?" All of the items respond to the same noun and you can't necessarily distinguish between them in the same way that you could in real life.
The problem gets even worse due to the ambiguity of the English language. As we would learn...
The ambiguous English word that has caused us the most problem is, without a doubt, "chest". When developers use it, they typically mean a container-object, usually wooden, sometimes banded with metal, which may be carried around and used to store objects. But, "chest" is always a detail on every single character, meaning the top, front of the torso.
One day one of our CE staff, playing Petris and trying to get rid of an obnoxious container, typed the following command:
As you'll recall +slay is the command used by staff members to destroy objects. Petris' chest, and thus the whole character, went up in a puff of smoke.
We sent out the obligatory warning to all of our staff members, and added to our TODO list something to offer better protection for characters, so that they couldn't be destroyed quite so easily.
And then a few week's later the developer playing Hetchel did exactly the same thing.
Fool me once, shame on you.
Fool me twice...
That's it for me this week, folks. Happy All Fool's Day.