He nodded appreciatively. “System management?” he said.
“Here, Dev.”
“Make me a window and show me meta, please.”
“Done.” A rectangle of air on his right opaqued and began to flow with details about the Microcosm—its designer, the extra WannaB modules that had been plugged into this space, what they were being used for. Dev discovered that this little world was surprisingly detailed, if on a very small scale: this ocean was teeming with strange and intriguing life-forms, all hung on interestingly tweaked variations of the basic WannaB non-playing character template.
A lot of time spent on this,
Dev thought, briefly putting his finger on one of the template names on the virtual panel. Instantly that whole stack of code displayed itself in front of him like a pile of glowing DVDs. Dev reached out to it, pulled a single module out of the stack and looked it over
. Interesting. Somebody’s taken a linguistics module and stuck it into a personality heurism routine out of the game-generated character stack, so these creatures in the water can learn from each other as well as the live players. Clever way to use WannaB to mimic some of the same effects we get in the full implementation of ARGOT . . .
Dev slipped the code module back into the stack and waved it away. The stack vanished as Dev looked more closely at the meta display.
A
twelve
-year-old built this?
Dev thought as he glanced down at the MicroLeveler’s bio. Her name was Della Chun, and she lived in a suburb of Akron, Ohio. Her picture, looking like a school picture, showed him a shaggy-haired girl with a broad smiling face and a clever glint in her eye.
“Well, now, Della,” Dev said. He looked up into the air. “Executive game management?”
“Here, Dev,” said the dulcet Omnitopia control voice.
“Flag this user to the attention of HR, six years from today. Message: if Della is still gaming with us after she graduates high school, have someone at HR contact her and see if she’s interested in a job. Also between now and then, flag any communications from her to Omnitopia support regarding code issues and route them to BSI.”
“Done, Dev.”
“Thanks.”
Behind him he heard something squeaking faintly. Dev turned. Sure enough, here came Tau, walking toward him along the black sand beach and looking around him admiringly.
“You’re late,” Dev said.
Tau snorted. “Doing your work,” he said, “so don’t start complaining. Especially with
your
on-time stats this week. What’cha got here?”
“New ’cosm,” Dev said. “Went up last week, apparently.”
Tau glanced around him. “What’s it called?”
Dev glanced at the meta information. “Caribee.”
“Looks more Hawaiian,” Tau said. “Like something over on Kona.”
“She may have lifted it from there, who knows,” Dev said. “I flagged her for the Baker Street Irregulars. She did something interesting with her ancillary life-forms.”
“Really? What?”
“Later. It’s CCG stuff.” He took his hand away from the presently invisible sapling he was still leaning on, and Caribee flickered out, replaced by the Microcosm-forest of which it was part. “Come on,” Dev said, “the Underworld awaits. Let’s go get our debugging done.”
“We hope,” said Tau.
“Now, don’t be negative.” Dev stomped on the ground.
It split, the crack widening out and spreading across the ARGOT substrate, deepening into a crevasse that dropped away from their feet into profound darkness. A stairway leading down into that darkness began manifesting itself below them, tread by tread. Together they stepped down into the dark, the light of the code-forest dwindling away above them.
As they walked downward, light began to swell around them, a greener glow. It came from what hung down from the underside of the floor they’d just broken through, which down here was a ceiling. Like some huge and bizarre chandelier, an inverted forest, itself surrounding an inverted and shadowy version of the Ring of Elich, hung down into the dark. These upside-down trees, each of the hundred and twenty-one mirroring a Macrocosm-tree above it, were more shadowy than their counterparts above, but far more complex. Their branches, from the great limbs to the tiniest twigs, led not into the Omnitopian game structure, but into the millions upon millions of client computers all over the world on which Omnitopia’s players were actually playing. A fine blue-gray mist was gathered about the thinnest twigs of the trees. This rendered the reality of fifty million living rooms and playrooms, smart terminals and servers—and soon, if things went well, a hundred million of them. Every particle of that fog, every machine or device, had a tiny seed of this master structure installed in it.
At the bottom of the first flight of steps leading down under the surface Dev and Tau had just broken through, there appeared a landing in the virtual stairway. Dev and Tau paused there, and though the landing remained level under their feet, all around them the Conscientious Objector underworld started to slowly rotate so that the inverted mirror forest now started becoming an upstanding one. Dev watched the visualization right itself, letting out a breath of concern. Building the code that ran and maintained these client seedlings had cost him, and later Tau, more labor than anything else in the building of the first generation of the new game. The seedlings had to guard the game and protect it from hacking and cheating and exploitation, which was continually on the minds of a small but nontrivial percentage of Omnitopia’s players, to a greater or lesser extent. They also had to protect all the players’ personal information from access by anything but the bookkeeping and scorekeeping routines that had a right to know where a given player was in the game, how much he’d spent or was owed, and what his game karma was from moment to moment. Each client seedling had to know how to obey the data privacy laws of a hundred and sixty- five different jurisdictions and how to save the player’s status and settings online in case the client machine failed. Each seedling also had to be able to keep itself from being damaged accidentally or on purpose, know how to repair itself when damage did happen, and how to notify the main game servers when, for whatever reason, those repairs failed. This delicate and complicated interface was both the game’s great strength and its weakest link, and there wasn’t a day Dev didn’t spend at least a few minutes worrying about it.
But today,
he thought,
there’s a lot more reason than usual. . . .
The ceiling Dev and Tau had just stepped through was now a floor again. The landing under their feet now reoriented its stairway to lead down to it, and the two of them headed downward. As the rotation finished, something else had appeared—the structure in which the trees of the CO itself were rooted, an island surrounded by a lake of what at first glance looked like lava. But lava was rarely emerald green. Anyone who went down to the shore and gazed down into that wash of light would see not light and dark particles of molten stone, but a constantly intermingling swirl of ASCII characters, millions of lines of code fluidly interacting with one another, in the green-on-black of monitors long gone. This was the visual expression of the Conscientious Objector’s basic code taken as a whole—a barrier to the potentially inimical outer world, and an intelligent gateway to the inner one, constantly self-testing the traffic that flowed between the two on millions of ephemeral bridges from moment to moment.
Dev and Tau stood there for a few moments on the Omnitopian shore, their backs to the trees and the shadow Ring, watching the ebb and flow of light in the lake. Both of them had been down here so often in the course of any normal work week, over several years, that often a few minutes’ viewing of the CO routines in this graphic mode was all it would take one or the other to identify where a problem might be coming from: an eddy in the waters, a dark swirl of shadow in the body of code as routines interfered with one another or an attack or intrusion snagged or blocked the flow. But now Tau looked over at Dev. “You see anything?”
“Nothing,” Dev said. He sighed and reached into the air beside him, pulling out of it a long glowing object. It was a cartoon sword, thick-outlined and filled in with flat animation cel colors, though it glowed at the edges with a 2- D Gaussian glow, like a streetlight seen through fog.
The Sword of Truth had started life as a macro, a programming analysis and management routine that Dev and Tau had jointly devised back when Dev first started letting Tau help him with the CO. Dev had laid down its core routines, and Tau had multiply folded them onto themselves and welded them together, a many-leveled sheaf of self-executing instructions like the layers of iron and steel in a katana’s blade. Then together they had taken turns honing its diagnostic edge to a razorlike sharpness until it was now almost alive in terms of its ability to detect what was wrong with a segment of Omnitopian programming.
Tau put up his eyebrows. “Thought you’d want to get down and splash around in the lava at random for a while first,” he said.
“Not today,” Dev said. “We’ve got a party to go to after this, remember. You have time to hit the staging area yet?”
“Not yet,” said Tau. “But it’s filling up nicely. A lot of other people are taking this as seriously as you are: there wouldn’t have been any point in trying to limit crisis management to the intervention team. Everybody wants some of this—the attack teams have been briefing their auxiliaries for days.”
“I take it it’s not just a question of the overtime.”
Tau shook his head. “With
these
people? You should know better by now. This is their turf, and they don’t take kindly to crooks barging in to mess with it.”
“True,” Dev said. “By the way, I forgot to ask. Where’s
Time
Magazine Lady?”
“Joss’ people have her over at the Flackery,” Tau said. “She’ll be safely locked down by the time the balloon’s ready to go up. I think they were planning to take her out for barbecue or something.” He smiled a naughty smile. “Someplace with lots of atmosphere, but no WiFi and terrible cell phone reception.”
Dev nodded. “Good. All the same, I think I’d sooner her access permissions had some kind of unidentifiable malfunction for the next few hours. Just to prevent any, you know, journalistic accidents that might follow on someone else unexpectedly getting hold of her login info . . .”
Tau looked aside, whispered briefly to the air. “Done,” he said. “System security’s on it.”
“Good. Then let’s go—”
Dev waved a hand. Immediately the cold green fire of the lava started to flood the shore of the island where they stood, rising until Dev and Tau were knee-deep in it. As it did, the size of the particles in it grew until the letters and numbers and long, long strings of code were clearly visible. Dev lifted up the Sword of Truth and plunged it into the swirl of strings and characters.
The liquid code around the sword’s glow roiled and boiled enthusiastically, now looking less like lava and more like a bowl of unusually green chicken noodle soup. Dev hung onto the hilt, waiting for the built-in analytical functions to throw up some kind of result that he could use. But all the sword would do was lean leftward, indicating that the debugger had detected something peculiar in one of the thousands of interleaving protective routines that were part of the Conscientious Objector system. “Okay,” Dev said to the sword, “what are you reacting to?”
A window popped up in the air beside him and showed him a page of code written in the densest form of executive ARGOT. “This is one of the internal player security routines associated with the assignment and revocation of permissions to enter controlled-access ’cosms,” said the control voice. “It is showing intermittent failure of function.”
“Macrocosm or Microcosm?” Dev said, starting to push his way leftward along through the code stream.
“Microcosm, Dev.”
“Oh really,” he said under his breath.
Tau, pushing along through the lava beside him, threw Dev a glance. “Something?”
“Don’t know,” Dev said. “It’s just that I was up in the Microcosms earlier, assessing some bug reports and such for referral to the brush-fire teams. Thought I was seeing some common threads here and there. Ingress-and-exit-based outages that weren’t making sense . . .”
The two of them pushed along through the current, peering down into it for pertinent lines of code that the system would be tagging for their attention, but seeing nothing. The sword in Dev’s hand finally stopped leaning in the direction they were going, and stood straight upright in the code flow. Dev peered down along its length, not seeing anything. “Where’s the malfunctioning routine?” he said to the system.
“It has ceased to malfunction,” the control voice said. “Now running correctly.”
Dev and Tau stared at each other. “Typical,” Tau said. “The minute the repairman shows up, whatever’s busted starts working again.”
Dev frowned. “Show us the log of the malfunction,” he said.
The window hanging in the air cleared itself and then filled with more code, scrolling down fast and then pausing as each section of the system logs containing a malfunction highlighted itself. Dev waved the window a little wider, and he and Tau looked closely at it. After a moment Tau reached up a hand and pointed at one specific line of code. “There,” he said. “Look at that. A bad call to that routine. Someone who shouldn’t get into that particular space tries to get in. And bounces—”
“But not the way they should,” Dev said, bemused. “They shouldn’t be sent off to
that
rejection routine. They should be going—” He reached out into the air, and another spill of code started flowing onto another screen. “Over
here
. So why aren’t they? And where the heck’s the logic that sent them where they went? The field for the referring code is blank.”
“Somebody got sloppy . . .”
Dev gave Tau a look. “You or me, buddy? We’re the only ones who deal with this code.”