Bluescreen Read online




  DEDICATION

  This book is dedicated to Hedy Lamarr, an actress and

  mathematician who, in the 1930s, invented some of the

  Wi-Fi communications technology that make the internet age

  possible. She was brilliant and inventive, and the fact that

  most people remember her just for her looks says more about

  the world than a hundred books could hope to convey.

  Let’s change that world.

  CONTENTS

  Dedication

  One

  Two

  Three

  Four

  Five

  Six

  Seven

  Eight

  Nine

  Ten

  Eleven

  Twelve

  Thirteen

  Fourteen

  Fifteen

  Sixteen

  Seventeen

  Eighteen

  Nineteen

  Twenty

  Twenty-One

  Twenty-Two

  Twenty-Three

  Twenty-Four

  Twenty-Five

  Twenty-Six

  Acknowledgments

  Back Ad

  About the Author

  Books by Dan Wells

  Credits

  Copyright

  About the Publisher

  ONE

  “Quicksand’s down.” Sahara’s voiced hissed across Marisa’s comm. “Fang, too. I made it out of the fight but only barely.”

  “They got Anja in a double blitz,” said Marisa, crouching behind the lip of a shattered skylight. “I tried to save her but I was doing recon on the other side of the roof; I couldn’t make it back in time.” The battle had moved past her for the moment, distant gunfire echoing through the shattered ruins of the old industrial complex. The bulk of the fighting was down on ground level, leaving her hidden but desperate on the top of an old factory, gasping for breath. She checked her rifle: a long, black Saber-6 that fired pulses of microwave energy. There were only two charges left.

  “Protecting Anja is your job,” said Sahara harshly. “You were supposed to have her back. Now you and I are the only ones left.”

  Marisa winced. “I know, I’m sorry. I lost track of the battle, and you told me to recon the other side of the roof—”

  “I also told you bring cameras on this run,” Sahara snapped. “They could have reconned for you, and you could have stayed with your Sniper. Don’t blame me when you— Damn, they found me.” Sharp staccato gunfire crackled through Marisa’s headset from two directions: the distant pops from the actual battle, and the louder, closer barks transmitted directly from Sahara’s comm. Marisa muted the sound and checked her visor display, watching Sahara’s embattled icon move across the wireframe map of the factory complex. She had a small group of bots to back her up, maybe six or seven, but there was a wave of enemies swarming toward her, and more icons popped up on Marisa’s display as Sahara identified them: two, three, four . . .

  “You’ve got all five enemy agents on you,” said Marisa.

  “Then get off your ass and help me!” roared Sahara.

  Marisa jumped up and sprinted across the rooftop, her black bodysuit nearly invisible in the starlight—though with all five of the enemy focused on Sahara, Marisa had little fear of being spotted now. There were guard drones on the rooftops with her, but her optic armor made her undetectable to their sensors—they wouldn’t bother her unless she bothered them first. As she ran, she cataloged her assets, racking her brain for any advantage that might help save Sahara and salvage the mission. Sahara’s words still stung: it was Marisa’s job to protect Anja, and that made it Marisa’s fault that Anja was dead. Sahara had told her to bring cam drones, but she’d insisted on trying a new loadout for this run. She should have stuck with what she knew. The drone kit would have given her not only cameras but gun drones, mobile weapon turrets she could have locked onto Anja, sniping anything that got too close. Those same guns could be down there right now saving Sahara, too.

  Marisa shook her head. It didn’t do her any good to whine about it now. She’d brought what she’d brought, and she’d have to make do. She couldn’t win the battle, but maybe she could . . . what? She had nothing that would be useful in a firefight: a stealth kit, and some new tech, just released, that she’d wanted to try out: force projectors. It had been fun using the gloves to knock enemy agents off the top of the factory, but what now? Even if she could get to the battle in time, the projectors didn’t have the range to hit anything on the ground from up here, and she didn’t have the armor to get in close. And a couple of force wave shoves weren’t going to save the day in a five-on-two gunfight anyway.

  She leaped over a short gap between buildings and kept running. Her visor showed her the specs of her new gloves, detailing exactly what they could generate: a force wave to knock people back, a force wall that could block a door or an alley, and a force field she could throw out as a temporary defense. It was crowd control and protection—all things that might have saved Anja, if Marisa hadn’t left her, but wouldn’t provide enough to help Sahara now that she was cornered and outnumbered. The enemy agents were going to kill her, and with most of Sahara’s defensive turrets already destroyed, they’d roll right through the factory to Marisa’s base and destroy it. The mission was lost, and the Cherry Dogs were dead.

  Sahara’s voice screamed across the comm, using Marisa’s call sign instead of her name, “Heartbeat, help me!” Hearing her name refocused Marisa on the task at hand—she was an Agent, and she had a job to do; dead or not, her team was counting on her. She would have to improvise.

  She checked her visor again, zeroing in on the scene of the battle, and angled toward the corner of the roof. The ledge gave a perfect view of the ground below, which made it an ideal sniping spot; it was guarded by one of the biggest attack drones in the complex, a massive Mark-IX, but Marisa slipped past it in her optic armor and dropped to one knee, leveling her rifle and looking through the scope. Sahara was pinned down in a dead-end alcove, kneeling behind a heavy cement wall—probably the corner of an old fusion reactor. She only had a few bots left, crouched in the rubble and firing blindly at the enemy swarm. The five enemy agents had taken up positions in the street, surrounded by their own army of bots, using old delivery trucks as cover and concentrating their fire on Sahara’s position. It was a perfect kill zone.

  “I’m right over you,” Marisa whispered.

  “Do you have a shot?”

  “Not a great one.” She looked up at the Mark-IX towering over her—a humanoid model bristling with blades and armor and a belt-fed chain gun on its shoulder. “I’ve got two charges in the rifle, but I’m right underneath an attack drone. As soon as I take the first shot he’ll spot me, so I’m not going to get a second.”

  “Then make it count,” said Sahara grimly.

  Marisa nodded, scanning her targets and drawing a careful bead on the enemy Sniper. She breathed carefully, calculating the angle, aiming just a little high to account for the distance—

  —and then she got an idea.

  “Heartbeat, are you going to shoot or not?”

  Marisa backed up, slinging the rifle over her shoulder and looking more closely at the attack drone. “You’ve got the laser kit, right?”

  “Of course: I actually brought what I was supposed to.”

  Marisa held in a sigh. “Can you paint a target for me?”

  Sahara was growing more frustrated. “Can’t you pick your own target? How many times have you practiced with that rifle?”

  “I’m not using the rifle,” said Marisa. She planted her feet wide, bending her knees and bracing herself against the coming shock wave. She raised her hands, palms forward, keeping her eyes on the drone.


  “What are you doing?”

  Marisa turned on the projectors, building up a charge. “Just paint me a target, right in the middle of their group.”

  Sahara grumbled, but her icon moved on the wireframe map, and a moment later a pillar of light shot up from the center of the factory floor. “That’s the enemy General,” said Sahara. “The rest of his team is within ten feet of him, but one bullet isn’t going to be able to take them all out.”

  “That’s why I’m not using bullets. Now stay out of sight.” Marisa moved slightly to the left, putting the attack drone in a direct line between her and the pillar of light. “Catch this, chango.”

  She fired the force projectors with all the juice they had, a blast that would have sent a human target flying across the map. The drone, far bigger and heavier, flew backward only a little before it started to fall, arcing perfectly down toward the enemy General. The drone’s AI was basic: if it saw something that wasn’t a fellow drone, it killed it. Marisa’s attack had dropped the stealth mode on her armor, and the drone swiveled its gun toward her as it fell, sending a stream of bright white tracers buzzing toward her through the night; she was too close to avoid them, and staggered back as the rounds slammed into her armor. Then the Mark-IX landed, right in the center of the firefight, and with Marisa out of sight it swiveled again, acquired new targets, loosed a devastating hail of fire on the enemy agents.

  “Great Holy Hand Grenades,” said Sahara. “Can you even do that?”

  “Probably not a second time,” said Marisa, dragging herself to the edge and looking down at the chaos. The chain gun burst had nearly killed her, and she blinked to activate a healing pack. “They always patch the good toys as soon as we exploit them.”

  “Respawned,” said Anja. “Quicksand and Fang are right behind me.”

  “Just in time,” said Sahara. “Let’s hit them fast, before they recover. Tap into the drone and focus fire on its targets. Go!”

  Marisa watched as Sahara and her soldiers popped up from behind their cover, firing forward at the enemy while the attack drone rampaged through their battle line. Marisa lined up her rifle and fired its last two shots, dropping the enemy Sniper as he fled from the Mark-IX, and then she watched as her respawned teammates caught up and decimated the rest of the enemy team. Marisa blinked on the comm.

  “Sorry I got you killed, Anja.”

  “Are you kidding?” Anja was flitting around the field with her jump pack, picking off stragglers while Sahara and the others mowed through the center of the enemy bots. “If we hadn’t been desperate, we never would have got to see that drone launch move. You come up with that?”

  Marisa grinned. “Surprised?”

  “Expect to see it all over the net by the weekend,” said Quicksand. “Another viral Cherry Dogs vid.”

  “And another kit nerfed,” said Fang. “I was looking forward to trying the Force Projectors, but noooo. They’ll nerf the hell out of it now. It’s like Marisa specializes in breaking the game balance.”

  “It’s what we do,” said Anja. “When all else fails, play crazy.”

  A new wave of bots arrived to reinforce them, and together they finished off the drone and pushed forward to the enemy base. It had been a close game, and the enemy towers were already destroyed, so with all five enemy agents dead, the Cherry Dogs had an open lane to blaze in and pour all their damage onto the last few turrets. The enemy team respawned right as Marisa reached the base, but it was too late: the turrets went down, and the vault exploded.

  “Cherry Dogs win!” The voice-over rolled through the factory, and the bots broke into their dance animation as triumphant music filled the comm. Marisa cheered, stretched her neck, and blinked out of the simulation. The factory disappeared, and she floated in nothingness for a second before the stat room materialized around her: a wide, round room full of benches and ringed with consoles, the walls covered with data from the battle. Marisa was still in her Overworld avatar: a skintight stealth suit—far skinnier than she was in real life—made of sleek black leather, with thin tracings of metal gadgets and exoskeleton. A basic design, but she was proud of it. The other team, Salted Batteries, was already in the lobby, laughing in shock at the sudden turn that lost them the game. That was a good sign. Not everybody could laugh off a loss like that. Sahara blinked in just as Marisa did, and strode forward to shake hands with the enemy General.

  “Good game, guys,” she said. She was also in her avatar, though it was mostly just a digital copy of herself, maintaining her branding as a vidcaster; she didn’t even use a call sign, just her real name. The avatar matched Sahara’s dark brown skin to perfection, and wore a rich, red dress so tight she’d barely be able to walk if this wasn’t a video game. She smiled. “I really thought you had us there.”

  “So did I,” said the General. His call sign was Tr0nik. They were all still in their game avatars as well, so Marisa didn’t know what he really looked like; his voice was male, and his accent Chinese, with the stilted vocabulary that marked him as learning most of his English on the net. “We didn’t think about giant killer robots falling out of the sky.”

  “Hong Kong,” said Fang, blinking in to whisper in Marisa’s ear.

  “How can you tell?”

  “How can you tell when an American’s from Boston?” she asked. “He sounds like it. You need to practice your Chinese.” Fang was a Chinese native, living somewhere in Beijing; Marisa had never met her or Quicksand in real life, but they were some of her closest friends in the world.

  “I know, I know,” said Marisa. Her mom was always telling her to study her Chinese, too. Marisa put on a smile and stepped forward to shake Tr0nik’s hand. “Good game.”

  “Great game,” he said happily, and the rest of the team crowded around to offer similar congratulations. “That was a good tactic, to throw the Mark-IX. Have you done that before?”

  “That was spur of the moment,” said Sahara, reinserting herself as the center of attention. She put her hand on Marisa’s back, smiling broadly. “Nobody thinks on their feet like the Cherry Dogs.”

  “Play crazy!” said one of the other Salted Batteries. Anja’s catchphrase had been gaining notoriety almost as fast as their team had.

  “You guys did a great job, and this was a great match,” said Sahara. She talked like she was in a beauty pageant. “Thanks for the game; we need the practice.”

  “You’d better believe we want a rematch,” said Tr0nik. “Friend request sent.”

  “Received and approved,” said Sahara with a smile. “Now: I hate to play and run, but we’ve got to go over these stats and get ready for the next one. Big tournament coming up.”

  “Us too,” said Tr0nik. “Play crazy!”

  “Play crazy!” Sahara smiled again, the perfect ambassador, and one by one the Cherry Dogs blinked out to their private lobby. Out of the public eye, Sahara’s cheerful persona dropped, and she rolled her eyes. “Play crazy. We almost lost that stupid game playing crazy.”

  “I’m sorry I left Anja,” said Marisa. “I’m so used to playing with the cam drones, I just wasn’t keeping an eye on the map without them, and the other team got behind me.”

  “With Fang and me down you couldn’t have done anything anyway,” said Quicksand. Her real name was Jaya, and she lived in Mumbai, but her English was flawless—better, Marisa admitted, than her own pocho blend of American and Mexican.

  “I know we don’t have a real coach yet,” said Sahara, “but I do my best, and I told you to bring those . . .” Her voice trailed off, and her eyes had the slightly vacant look of someone watching a separate video feed. Marisa braced herself for another chastising tirade—Sahara was her best friend, but she could get angry when they played this sloppy. After a long pause Sahara shook her head. “You know what? Don’t worry about it. Yes, there was some bad play, and that win was way too lucky to rely on in a real match, but wow.” She smiled, and Marisa couldn’t help but smile with her. “There’s going to be replays of that drone la
unch all over the net for weeks, and in a practice game like this that’s worth more than a win.” She put a hand on Marisa’s shoulder, her eyes refocusing on her face. “And we have plenty of time to practice before the tourney, so don’t beat yourself up.”

  Marisa cringed at the reminder, and couldn’t help feeling bad all over again.

  “You up for another match?” asked Fang. “We ought to play with the Force Projectors a little more before word gets around, see what else they can do that no one’s thought of yet.”

  “What time is it over there?” asked Marisa. “Like, one in the morning?”

  “Sleep is for the weak,” said Fang. “Let’s do this.”

  “It’s only half ten here,” said Jaya. “I can do another game or two tonight.”

  “Only two?” asked Fang. “Weeeeeeak.”

  “Ten a.m. in LA,” said Jaya. “Sahara, you and Marisa and Anja should be good for a few more hours of practice at least, right?”

  “I haven’t slept since yesterday,” said Anja. She shrugged. “No sense sleeping now.”

  “No. No more practice today,” said Sahara. “We’ve got to leverage this drone launch clip if we want to really get the word out.” She was growing audibly excited. “We haven’t had a really great exploit since Mari min-maxed the avatar builder, and that’s what put us on the map in the first place; something like this could take our reputation into the major leagues. I’ve got to spend a few hours at least cutting good angles out of the replay and submitting this to broadcasters.”

  “Tomorrow, then,” said Fang. “Or tonight, depending on your time zone. I’ll run a few solo games with the new kit and see if I can get some good footage for you.”

  “I’ll join you,” said Jaya. “Maybe we can play catch with a Mark-III.”

  The two of them blinked out, and Marisa looked at Anja and Sahara. “I’ll see you around, then. The restaurant’ll be opening soon, see you there?”

  “If I get a chance,” said Sahara. “I’ll ping you.”

  “Dinner, then.”

  “You ladies can come to my place,” said Anja. “Pool’s installed now.”