Cody by Cameron Horsburgh

He was standing in the village green. Around him stood a dozen or so others, each dressed in the same pale brown clothes. All were identical, and all were still.

There was a noise behind him. He thought about this for a moment, then turned to see what caused the noise. There stood two people. They looked somewhat similar to the others, but one was short and round, while the other was tall and skinny. Their clothes were similar, but somehow more… elaborate?

The new arrivals walked slowly among his people. His head ached for a moment, then he heard a sound, somewhat high pitched and whiny. “Dude, it looks like the character generator’s borked again.”

There was a pause, a slight throb in his head, then another sound, lower and more deliberate. “No, it’s working. Each one is now a separate agent in the server AI. I’m not turning the personality module on until I’ve sorted out a couple of kinks.”

The two people walked around a little more. The tall one walked to the edge of the green, stopped, and moved sideways along a hedgerow. His head throbbed, then the lower sound started again. “I’ve ironed out the problem we had with the map renderer, too. Now when it says we are at the edge of the map we really are at the edge of the map.”

The higher sound sounded. “Cool.”

The tall being flickered and was gone. The short being flickered, and was gone.

#

#

He was standing in the village green. Around him stood a dozen or so others, each dressed in pale brown clothes. Yet there were differences. Some were dressed as warriors. Some were dressed as mages. Others were dressed as tradespeople. He himself was a town official and wore robes befitting his station.

There was a noise behind him. He thought about this a moment then turned around to see what caused the noise. There stood two people. They were dressed as warriors. They weren’t human—one was a dwarf, the other an elf.

The new arrivals walked slowly among his people. His head ached for a moment, then he heard a sound, somewhat high pitched and whiny. “Wow, this looks great. You’ve given them all roles?”

There was a pause, a slight throb in his head, then another sound, lower and more deliberate. “Yes, but that’s all so far. They’re pretty well mannequins at the moment. Next time around I’ll crank up the personality module and see if they interact.”

The higher sound sounded. “Cool.”

The elf flickered and was gone. The dwarf flickered, and was gone.

#

#

He was standing in the village green. Around him the dozen or so townsfolk were going about their business. The warriors were sparring with one another. The mages were casting spells. The gardener was tending to a garden, whilst the builder was hammering on timber. All was in order, and he was happy.

There was a noise behind him. He turned to see what caused the noise. There stood two warriors, one a dwarf and the other an elf. They walked towards him.

His head ached for a moment, then he heard a sound, somewhat high and whiny. “Man, this is great! Who’s this guy?”

There was another sound, lower than the first. “The mayor.”

The high sound sounded again. “Can we interact with him?”

The low sound followed. “Not really. He’s aware of our presence, but he’s not able to communicate with non-AI characters yet. All the behaviour you can see is pretty well defined. The warriors only know how to spar with each other. The mages can mutter mysterious phrases. Once I’ve sorted out the physics and optimized the communications layer I might plug in a couple of AI modules I’ve been working on.”

The elf flickered and was gone. The dwarf flickered, and was gone.

#

#

He was standing in the village green. Around him the dozen or so townsfolk were going about their business. The warriors were sparring with one another. The mages were casting spells. The gardener was tending to a garden, whilst the builder was hammering on timber. All was in order, and he was happy.

There was a noise behind him. He turned to see what caused the noise. There stood two warriors, one a dwarf and the other an elf.

He motioned to three of his warriors to join him. They flanked him, one on his left and two on his right. Together they marched to the two strangers.

The elf started to speak. “Greetings! We come in peace.”

He looked at the elf. He bore a sword, but it was securely fastened in its sheath. The dwarf held an axe, but the head was covered with thick leather. The elf’s words and the strangers’ peaceful carriage suggested they weren’t a threat. If they weren’t a threat, it was the mayor’s duty to welcome them into town.

He spoke. “Welcome to our village! Please rest and eat.” The town warriors withdrew and returned to their sparring.

The dwarf spoke. “Where is the shop?”

He spoke. “Please, follow me.”

He began walking to the shop which was on the other side of the green. His head throbbed, and he heard a sound. It seemed to be patterned after speech, but it was different to the speech he had heard so far and he couldn’t understand any of it. It was high and whiny. He couldn’t see where it came from. “This seems to be working.”

His head throbbed again, and there was another voice, but this one was lower. “Yeah. I think I’ve sorted out the interface between the human players and the AIs. Have a look through the menu. There are about two hundred things you can say.”

The high voice replied. “Great. Let’s see…”

The dwarf spoke. “What is your name?”

He replied. “My name is AgentOne.”

The dwarf paused.

His head throbbed. The high pitched voice spoke. “Don’t these dudes have names? Let’s see… you’re the leader of all these clones, so I’ll call you ‘Cody.'”

The dwarf spoke again. “I name you Cody.”

Cody spoke. “My name is now Cody.”

The dwarf spoke. “Cody, will you marry me?”

Cody thought. Males marry females. He was a male, as was the dwarf. “No.” he said.

“Why not?” asked the dwarf.

“Males marry females,” Cody replied.

Cody’s head throbbed, and the high voice sounded. “Hey! Your game’s homophobic!”

The low voice replied. “Yeah, for now. I haven’t done too much with the social rules at the moment. I’m going to play around with them when I actually introduce females into the game.”

They approached the shop. “Here is the shop, good sirs. I hope you enjoy your visit.”

The two strangers stood at the door of the shop for a moment, then disappeared. There was a flicker, then they reappeared carrying bags full of produce from the shop. Cody’s head throbbed, and the low voice returned.

“That’d be great. I’m too busy with the backend to design maps, so if you can expand the Kingdom of Ashtar beyond this village green we might actually have something worth playing soon.”

The high voice replied. “Yeah. I think the work you’ve done is great. I have an idea for a dungeon that would work well. How’s the combat system coming?”

The low voice returned. “Try it out. Shift cycles your weapon and pace wields it.”

The dwarf lifted his axe, the leather cover having disappeared. Immediately two warriors came running, swords in hand. The cover reappeared on the dwarf’s axe. The warriors slowed, but kept their swords ready. Once again the dwarf’s axe was uncovered, and the warriors fell on him in a fit of shining metal and fury. The dwarf staggered under the onslaught, but raised his axe and swung. He hit one of the warriors square in the chest. The warrior fell, blinked several times, and disappeared.

The low voice spoke. “Woohoo! Go Thorin Bloodaxe!”

Just as the voice sounded the dwarf lifted his axe for another strike, but Cody noticed several things happen. First, the leaves on the trees seemed to disappear, replaced by large grey and green squares. Second, he began to feel very heavy, as if he had large weights tied to his arms and legs. Third, he noticed the other people around him had similar problems. Instead of the swift, smooth motion that had accounted for Cody’s townsman the dwarf’s axe came down in slow, jerky movements upon a warrior who seemed to have lost all control over his own weapon. Somehow, the warrior parried the dwarf’s blow. There was a flicker, and everything righted itself.

The leaves returned to the trees, Cody regained his strength—and the two remaining warriors dispatched the bewildered looking dwarf with ease. The dwarf’s battered body blinked several times and disappeared.

Cody’s head throbbed, and the high pitched voice spoke. “What happened there?”

The low voice replied. “I don’t know. The CPU went through the roof. It happened just as I opened the player to player voice channel.”

The voice paused. “Hang on.”

Cody waited. The elf wasn’t moving. The two warriors began to spar with one another.

The low voice returned. “Man, I can’t believe how dumb I am. By default the voice channel is supposed to go to all players in the game, right? So that’s what it does. When you open the voice channel all other players can hear you.”

The high pitched voice replied. “Yeah, so?”

The low voice continued. “When I rewrote the AI mechanism I made each character into a separate agent. The problem is that the voice channel can’t tell the difference between an AI character and a human one. So every time we open up the channel the server is sending our voices to every character in the game.”

The high pitched voice replied. “So?”

The low pitched voice replied. “We have sixteen AIs in the game at the moment. Thirteen of them are active in the scene. When you speak the server sends your voice to itself thirteen times, and so it has to deal with thirteen voice messages all coming in at once. Figuring out it just has to ignore the voices takes a fair bit of power. It hasn’t been a problem until now, but when we’ve got the combat module running, it can’t cope with the load. That’s why you froze.”

The high pitched voice replied. “Can you fix it?”

The low pitched voice replied. “Yes, easily. We’ll need to reboot though.”

The elf flickered and was gone.

#

#

Mayor Cody was standing in the village green. Around him were several dozen or so others, each dressed according to his or her station and going about their business.

He heard a noise behind him. He turned. “Thorin! Hawkwing! Welcome to Ashtar!”

The End

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: