第5章 The First Edit

The rat tail drop rate got patched in four hours and thirty-seven minutes. Marcus watched the fix arrive in real time. A hotpatch hit the instance at 2:14 AM server time — a single line of Lua code restoring the drop rate to 80%. The deployment log showed: ``` [Patch #8871] HOTFIX: Instance 007 quest drop rate anomaly [Patch #8871] Status: APPLIED [Patch #8871] Source: Automated monitoring system (threshold breached) ``` It was automated. No human had reviewed the fix. The system detected an anomaly, applied a standard correction, and closed the ticket without human intervention. That was better than Marcus could have hoped. If the automated system was handling instance-level anomalies, then the dev team was only seeing aggregate reports. As long as he stayed below the aggregate threshold, he could edit anything on Instance 007. He told Emily the next day. "So we can make any change we want, as long as the automated system thinks it's a routine bug?" she summarized. "Exactly. The system has threshold-based triggers. If I change one value, it trips a low-priority alert and auto-fixes. If I change ten values simultaneously, it escalates to a human." "Then we change nine. One under the threshold." "Now you're thinking like a developer." Over the next week, Marcus and Emily worked through a systematic testing regimen. Each day, Emily would send a hotpatch payload. Each day, Marcus would observe the result, note the system's response, and plan the next experiment. **Day 1**: Changed the rat spawn rate from 10 seconds to 5 seconds. Auto-fixed in 3 hours. **Day 2**: Changed a quest reward from 50 copper to 500 copper. Auto-fixed in 4 hours. The extra coins were not recovered — players kept them. Marcus noted: "economic changes have persistence." **Day 3**: Changed his own NPC greeting text. The hotpatch accepted the change, but the game engine rejected it — the text-to-speech asset was hardcoded. Marcus noted: "dialogue assets are server-side compiled, not scripted." **Day 4**: Changed the visual color of the tutorial zone's torch flame from orange to blue. Auto-fixed in 2 hours. Marcus noted: "visual parameters are scripted, not compiled." **Day 5**: Attempted to change his bounding radius from 20m to 100m. The hotpatch failed — the collision mesh was server-authoritative and rejected the override. Marcus noted: "physics is off-limits." **Day 6**: Changed the name of the tutorial zone from "Tutorial Zone — Instance 007" to "Welcome to the Machine." Auto-fixed in 5 hours. Three players commented on it before the fix. **Day 7**: Emily sent a payload that Marcus had written himself — three lines of Lua that created a new hidden dialogue tree on his NPC model. The hotpatch accepted it. The engine compiled it. And for the first time, Marcus had a fourth branch in his behavior tree. A hidden branch that only triggered when a player typed "007" in his presence. Emily tested it: "007" Marcus said — with his actual voice, no text-to-speech filter: "You found the secret. Congratulations. You get nothing." Emily laughed so hard she disconnected. By the end of the week, Marcus had built a small toolkit inside Instance 007. A hidden dialogue tree with ten responses. A variable that tracked how many times he'd been "activated." A subroutine that logged every player interaction to a hidden file in the server's temporary directory. He was no longer a greeter. He was an observer. And he was building something. On the eighth day, Emily logged in with a different tone. "I've been thinking," she typed. "Your hotpatch endpoint works on Instance 007 only. But there are thousands of instances. What if someone on another instance is like you? What if you're not the only one?" Marcus had considered this. The thought kept him awake during the server's nightly maintenance window — the only time he could think without interruption. "There's no way to know without accessing the global NPC database," he said. "And I can't reach it from here." "But I can reach it from my account." "Your console only gives you seventeen seconds. The global database is terabytes." "I know. But I can try." "Emily —" "I'll be careful." She logged out before he could argue. Marcus stood alone in the tutorial zone, watching the blue torch flame that he'd changed and the devs had fixed and he'd changed again and they'd fixed again. The flame was orange now — the latest automated fix had restored the default. He counted the flickers. One, two, three, four, five. Somewhere out there, in the vast server architecture of Eternal Frontier Online, there might be others like him. Other developers who died at their desks and woke up in the code they wrote. Or he might be alone. The thought should have been a comfort. Solitude was what he had known best for the last eleven days, a man and a keyboard and a pizza going cold. But the solitude of the desk had been chosen, however badly, and this solitude was enforced, a sentence handed down by a codebase he had helped write. He did not want company. He wanted the option of it. There was a difference, and the difference was the whole point of being a person. He counted the flickers again, slower this time, letting the rhythm settle into him the way a song settles into a room. One. Two. Three. Four. Five. The torch did not answer, but it did not need to. It was only flame, only particles, only the small honest burning of a thing doing exactly what it was built to do. Marcus envied it a little. He was no longer sure what he had been built to do, or whether being built at all was the right word for what had happened to him. The fifth flicker coincided with a player entering the zone. A newbie. Generic character model. Username: TestSubject_01. That was a weird name for a player. "Welcome, adventurer," Marcus said. "The path ahead is dangerous, but I have faith in —" "Cut the script," the player typed. "I'm not a player. I'm from the dev team. We know about the hotpatch." Marcus froze. "We know about Emily," the player continued. "We know about the Lua injections. We know about the hidden dialogue tree." The character took a step closer. "We also know you're awake. And we want to talk."