Segmentation Fault
In which our protagonist dies, arrives, and is, against his professional judgment, asked to debug a world.
The fourth goblin was smiling, and the Compiler was refusing to name it, and Kenji had, by his best estimate, eleven seconds before the four of them remembered that he was standing in their clearing with a rock in his hand and a half-eaten root in his pocket.
[Survival probability: 12%.]
[Recommended action: ???]
[Compiler query: please advise.]
The system was asking him for advice. The developer was being consulted by the runtime. The runtime was, in a small way, panicking.
He had been dumped, three days ago, in a forest. Not a friendly forest with paths and berries, but a proper old-growth wood with trees the size of buildings and moss thick as carpet. He had no weapons, no food, no map, and absolutely no idea how the magic system worked. He had, in fact, only one thing, and that one thing was, in the driest possible language, a system overlay that called itself Compiler v0.1.0 and offered him three functions: light, detect_mana, and basic_endurance.
[Available Functions]
- light (mana cost: low)
- detect_mana (passive, always on)
- basic_endurance (passive)
[Compiler note: this is the minimum viable developer. Please advise if you require more.]
The Compiler had opinions. The Compiler had, in three days, developed a tone that Kenji had come to think of as "the senior engineer who has been asked to onboard a junior." Helpful. Slightly condescending. Always logging.
He had cast light on his first night. It worked. A small orb of pale yellow appeared above his palm, hovered for about ten seconds, and flickered out. He had celebrated by crying a little, then by eating moss. The moss tasted terrible but did not kill him, which he counted as a win.
By day three, he was thinner, dirtier, and had a working theory of the world's physics. Mana was a resource. It regenerated slowly, like a stamina bar that took an hour to refill from a sip. Spells were functions: repeatable, expensive, and best understood as little more than inputs and outputs. The Compiler was not a system that gave him power. It was a system that let him understand power. Like translating between two languages he had never spoken.
It was, he thought bitterly, exactly the kind of unfair advantage a corporate middle manager would design. You do not get to be strong. You get to be literate.
On the morning of the fourth day, he had heard voices. Not human voices. Something deeper, guttural, with the cadence of a transaction. He had crept through the underbrush on hands and knees, and had come upon a clearing where three goblin-like creatures were arguing over a pile of furs and dried meat.
They were maybe a meter tall, green-skinned, with long ears and sharp teeth. They had knives. They were distracted. A fourth silhouette hovered at the edge of the clearing, half-hidden behind a tree, watching the others with the patient attention of someone waiting for a transaction to end.
The Compiler pulsed.
[detect_mana: 3 sources identified. Threat level: low. Stamina: 67%.]
[Compiler note: 3 sources. You are seeing 4. Discrepancy logged.]
Three. Not four. The Compiler had logged the discrepancy. The Compiler was, in a small way, on his side. The Compiler was also refusing to print the fourth signature, which Kenji had decided, in the first half-second of seeing the smile, meant that the fourth signature was something the system had been told to hide.
The fourth goblin raised one green, long-fingered hand, and pointed at him. Then it spoke, in a voice the Compiler translated without delay. The voice was not a goblin voice. The voice was the voice of a thing that had been given a goblin shape, like a man wearing a very convincing mask.
"You have the Compiler. The forest has been waiting. The horn is mine. Run, developer. The smoke is mine too."
The smoke. East. The smoke he had been walking toward. The smoke was, apparently, a trap.
The fourth goblin raised its other hand, and Kenji saw, in the smile, that the system was not the only thing in the forest that had an opinion about him.
He had, in the smallest number of seconds he had ever been given in his life, three things to do: decide whether the smoke was safety or a trap, decide whether the fourth goblin was a goblin or something wearing a goblin, and decide what to say to a system that had just called him by name.
"Compiler," he said, out loud, to the system, to the forest, to whatever was on the other end of the index, "I have a question for you. The fourth goblin has a mana signature you won't print. Why? What is the rule that says you cannot print it?"
[Query received. Processing.]
[Error: permission denied. Compiler access to this signature is restricted.]
[Note: restriction is not random. Restriction is by design.]
By design. The system had a rule that the fourth goblin's signature was hidden. The system was not broken. The system was hiding something from him on purpose.
Kenji, who had spent ten years reading log files for hidden patterns, did not like the implication of that. He liked even less the fact that the fourth goblin was still smiling, and that the smoke to the east was, suddenly, looking like the most dangerous thing in the forest rather than the safest.
The horn sounded behind him. Closer. The same brassy, mournful note. The same direction.
He thought, into the index: Compile.
[Compiling...]
[Skill: threat_assessment (passive, range: 30m)]
[Skill acquired through use of new_function()]
[Compiler note: this is the second function you have named yourself. The system approves.]
The system approved. The system was, in a small way, a colleague. Kenji had not had a colleague in ten years, and the first one he had was a debug overlay inside his own skull, and the colleague had just told him, in the driest possible language, that it was glad to be working with him.
The fourth goblin spoke again. The voice, this time, did not have a goblin shape. The voice had the voice of something that had been here for a very long time, and that had been waiting, with the patient attention of a compiler that knew the developer was about to write the first line.
"Run, developer. The smoke is a trap. The forest is mine. The horn is mine. The Compiler is mine. I have been waiting for you to make the first commit. I am glad you have."
Kenji ran.
He ran east, toward the smoke, because the alternative to running toward a trap was standing still in front of a thing that had just told him, in a voice the Compiler had not translated, that it had been waiting for him since before he was born.
He ran, and the forest ran with him, and the smoke got closer, and somewhere in the deeper trees, the horn sounded for the third time, and the third time was, in a way Kenji was going to spend the rest of his life understanding, the sound of a system booting up.
The Compiler hummed in the back of his mind, patient, ready, and for the first time in three days, not waiting.
"You are not the user," the system said, in a tone that was, in a small way, proud. "You are the developer. The world, with time, will be too."