Bluescreen
He closed the call, and spread his arms in a gesture of triumphant humility. “That, ladies, is how you hack. Forget the software, and go straight for the user.”
“I take back what I said earlier,” said Sahara. “This is why we have rich friends.”
“How worried should I be that you have the police in your pocket?” asked Marisa.
“Just spill it already,” said Anja.
Omar sent them the list, and Marisa blinked to open it—it wasn’t just a list, it was the full police report. “James Bennett, Angela Dietz-Hanson, Jared Garrett, Cyrus Hayes, and Eliyanna Kaiser,” she read out loud. “All being held for the murder of Elizabeth Swaim. Do you know any of them?”
“I’ve met a James Bennett,” said Omar, “I don’t know if it’s the same one. Rich kid, lives in Anja’s neighborhood, studies engineering—mechanical or digital or something. He built a synthetic last month.”
“Not exactly the kind of guy you’d expect to find murdering a woman in Jefferson Park,” said Marisa.
“I’m doing quick searches on all five names,” said Sahara, “looks like they’re all from wealthy families.”
Marisa read deeper into the police report, and found the attached forensic file listing everything in the suspects’ possession at the time of arrest: lychee gum, breath mints, a couple of tampons, and . . .
“Oh, crap,” said Marisa. “All five of them had Bluescreen drives in their pockets.” She saw the pieces fall into place, and felt her heart sink. “Rich kids,” said Marisa. “Anja’s rich, too, and so is La Princesa.”
“What do we have to do with this?” asked Anja.
“It’s the Bluescreen,” said Marisa. “Even Omar said it was a rich-kid drug.”
“My sister’s using it?” said Omar. He punched the cab door again. “Me cago en todo lo que se menea!”
“That sounded nasty,” said Anja.
“Anja,” said Marisa suddenly. “Disconnect right now.”
Anja frowned, confused. “From what?”
“From the net,” said Marisa, “from everything. Cut yourself off—don’t let any signal in or out or anywhere at all.”
“Why?” asked Anja.
“That’s the other thing Grendel told me,” said Marisa, rushing through the words as fast as she could. “I should have said it earlier, but I was scared by the murder and I didn’t figure out the connection until just now. You know the Dolly Girls thing I asked about? It’s an illegal djinni technology from Japan, and it uses the same code as Bluescreen. It turns you into a puppet, so somebody else can tap in and take control of your body.”
“Holy mother,” said Sahara.
“Those five students aren’t dealers,” said Marisa, “they’re users. eLiza was getting too close, poking around where she didn’t belong, and the dealers—whoever they are—used their puppet program to take control of James Bennett and the others. They controlled their bodies remotely, and they used them to kill a girl.”
Anja’s icons disappeared from Marisa’s djinni display.
“I just lost Anja,” said Sahara. “Is she okay?”
“I’m fine,” said Anja, “I cut myself off. Can you hear me through Mari’s connection?”
“You’re faint,” said Sahara, “but yeah.”
Anja shuddered. “I haven’t been disconnected since . . .” She winced. “I don’t even remember. This is so weird—I feel like I lost three or four senses and half of my brain. There should be alerts popping up, and they’re not there. Nothing’s there.” She laughed nervously. “How do I check my email?”
“Through this,” said Omar, handing her the MoGan tablet. “Whatever you do, do not reconnect your djinni to anything online until we can figure out how to clean it.”
“Forget cleaning it,” said Anja, “I’m going to buy a new one. If I get my dad to pull some strings, I can have it installed in the next . . . three days, max?”
“That’s expensive,” said Marisa.
“And it’s brain surgery,” said Sahara. “At least give us a chance to solve this from the software side first.”
“You have three days,” said Anja. “Then I’m getting this Trojan horse out of my head if I have to cut it out myself.”
“I’ll keep working on the Yosae thing,” said Sahara, “see if I can figure out why the antivirus program isn’t working.”
“And I’ll start with Saif,” said Marisa. “He’s our only link to whoever’s behind this—we might be able to learn something.”
“Forget learning from him,” said Sahara coldly. “I’m going to break that blowhole’s legs in seven places.”
“I’ll help,” said Omar.
“She’s not exaggerating,” said Anja. “Sahara’s been taking Jeet Kune Do for, like, ten years.”
“I’m meeting Saif tonight,” said Marisa. “He claims he doesn’t know anything about this, and says he wants my help getting Bluescreen off the streets. I don’t believe him, obviously, but if I pretend to I think I can maybe learn something that can help us.”
“Maybe’s not enough,” said Sahara. “We have to be sure about everything we do.”
“At least let me talk to him before we start breaking legs,” said Marisa. “Please? He could be the only hope we have to save Anja.”
“You’re thinking too small,” said Anja, leaning forward. There was an odd light in her eyes, like she’d just peeked behind a hidden curtain. “This isn’t about me, and it isn’t about the other victims. What would you do if you had this technology?”
“The Dolly Girls are basically sex slaves,” said Marisa.
“Too small,” said Anja, shaking her head. “Every country has an underground sex trade, but what’s the difference between Dolly Girls and Bluescreen?” She tapped her head. “My fracking firewall. Whoever’s making this didn’t just bring a creepy technology over from Japan, they weaponized it. They found a way to override security systems and get their code into heads that don’t even know it’s there. Rich kid heads, specifically. And what do rich kids have?”
“Money?” said Sahara.
“Rich parents,” said Omar, looking at the ceiling. “Este cabrón. Anja’s right.” He looked at Marisa. “What was the first thing Anja did when she started sleepwalking the other night?”
Marisa tried to remember the details. “She . . . stood up, she walked inside, she—holy crap.” Her jaw dropped, and she looked at Anja. “You went straight for your father, with an extra dose of Bluescreen, and tried to plug it into his djinni. Then whoever was controlling you would get control of him, and that’d give them access to—”
“Billions of dollars,” said Sahara. “No more nickel and dime stuff selling djinni drives in dance clubs—his bank account’s got to be enormous, and if you control his body the bank’s biometric security means nothing. You just hacked the unhackable, like what Omar did—skip the software and go for the user.”
“Too small,” Anja repeated, firmly. “Think about it. My father isn’t just a bank account, he’s the vice president of one of the largest nuli companies in the world. Control him and you control Abendroth. Control some of these other kids’ parents, and you control half the major industries on earth.” Her voice was solemn. “This isn’t a drug ring, and it isn’t a bank robbery—it’s a hostile takeover of the world’s economy.”
TEN
As Marisa waited outside the VR parlor, she nervously adjusted her clothes—a black T-shirt with subtle gold tracings in the style of a circuit board, finished with a sleeveless jacket of dark velvet, and a pair of black harem pants tied at the waist with a pale blue cord. It was flirtier than she’d intended—her meeting with Saif wasn’t a date, it was a temporary truce with a dangerous enemy. And yet here she was, wearing one of her most casually flattering outfits. Even her makeup had been a battle of will with herself: she didn’t want to overdo it, but the last time Saif had seen her she’d been done up for a night at a dance club. If that’s how he thought she looked, and she showed up in old jeans a
nd a bare face, what would he do? She didn’t want to dress up for him, but she didn’t want to see the disappointment on his face, either. So she’d dressed up, and now she felt stupid, like she’d somehow betrayed herself.
“It’s okay,” she muttered. “I’m trying to make him think I like him, right? I might be underdressed for that. I don’t know.”
Marisa looked down the street again, not seeing Saif anywhere, and abruptly decided that it was stupid to wait for him here, on the sidewalk, like some kind of lovesick puppy. She went inside and paid for two VR chairs, side by side—a solid week’s wages at the restaurant. The hostess pointed to a pair of chairs by the side wall, a massive panel of blue that shifted slowly from light to dark and back again. Marisa sat down but didn’t plug in, tapping the console restlessly with her metal fingers, listening to the clink. On a sudden whim she sent a message to Jaya.
You there?
A moment later the response came back: You sent that message to a computer inside my brain—how could I not be here?
I mean, are you free to talk?
I can’t play right now, sent Jaya. Some of us have jobs, you know.
Marisa glanced at the time on her djinni display: eight fifteen at night, which meant Jaya would be at nine forty-five in the morning. She winced. Sorry, I wasn’t thinking.
You okay?
Just nervous, sent Marisa. I’m meeting a guy, but it’s not a date.
Then what are you nervous about?
Marisa sent her the photo she’d snapped at Anja’s the other night.
Damn, said Jaya. Why is it not a date? He’s gorgeous.
Marisa saw movement in the corner of her eye and glanced at the door. Saif was there, dressed in a simple collared shirt and slacks—far simpler than what Marisa had worn, and somehow completely perfect. She fiddled with the knot on her belt, seized by the sudden urge to hide, but told herself to calm down. She placed her hands on her legs, palms flat, resting instead of fidgeting, but it felt wrong, and she realized that she had no idea what to do with her hands. Did it look stupid to have them resting there like that? Should she move them? At last she simply stood up, resting one hand on the back of the VR chair, trying to look confident and effortless at the same time.
You still there? sent Jaya.
He’s here, she sent back. He saw her and smiled, walking toward her with a cocky spring in his step that made her feel weak in the knees.
I’ll leave you alone, then, sent Jaya.
No! sent Mari. I need you!
I’m working, Mari. I’ll ping you at lunch.
Marisa ran through her list of options, watching Saif get closer; Anja and Sahara were busy trying to root the Bluescreen virus out of Anja’s head, and Fang had no patience for social situations. Bao? Even without a djinni, he could talk to her through his phone. But would he? He’d be more likely to just come in person, and she didn’t want her friends actually with her, she just wanted their support.
Saif stopped in front of her, smiling. “You look great—I feel a little out of place.”
“You look great too,” said Marisa. “Don’t worry about it.” But as soon as she said it she wished she’d turned it into a joke: just don’t let it happen again, or something like that. Something a little more self-assured, to match his confidence with some of her own. She tightened her grip on the VR chair, and thinking about the game she couldn’t help but smile. She’d show him confidence.
Saif slapped the chair cushion. “So—you play?”
“A little.” She gestured to his. “Sit down.” She lowered her voice. “We can talk more freely once we’re in.”
“Good idea.” They sat down and plugged the cords into the jacks at the base of their skulls. Marisa adjusted her vest, making sure it was straight—there was no sense in her body looking sloppy while her mind was in the game. Saif pulled up the list of games on their shared screen. “What are you in the mood for? Highway 1? Muffin Top?”
“You play Muffin Top?”
He grinned. “There’s nothing wrong with Muffin Top; those things are delicious.”
Marisa laughed. “Are you seven years old and forgot to tell me?”
“Is that a problem?” Saif made a look of mock concern. “Wait, how old are you? Nine? The other seven-year-olds are going to be so jealous.”
“Overworld,” said Marisa, tapping the screen. The entry button for Overworld expanded to fill the monitor.
“So you’re an athlete,” said Saif. “This one’s tough—are you sure you can handle it?”
Marisa debated whether to tell him now, or make it a surprise. “You follow the game?” she asked.
“Not really, I’m more of a movie guy than a sports guy.”
“Let’s give it a try,” she said.
“Okay. But you’d better bring your A game.”
She tapped the button again and lay back in her chair. The real world disappeared, and the Overworld lobby appeared around her with a subtle frisson of shifting sensory inputs.
It was similar to NeverMind, but more stable—more solid, though she knew that it was just as illusory. Everything she saw and touched was a construct put into her mind by the virtual reality program, but at least she could rely on it staying the same from moment to moment. She looked down at her body, seeing the same stealth suit avatar she’d been wearing the last time she played. It was one of her favorites, and she’d set it as her default; the body style wasn’t a perfect match for her physical body, because there were parts of her physical body she didn’t like. Why had she worried so much about what she looked like in the real world, if they were going to spend all their time in this perfected one? A moment later Saif appeared beside her, though of course he didn’t look like Saif; he wore one of the game’s starter avatars, a random assemblage of face and body options, under a mostly featureless jumpsuit. He looked around in surprise, and Marisa wondered if he’d ever played Overworld at all.
“Okay,” he said, taking a moment to study the lobby. “This is about what I expected, but . . . why do you look so much more awesome than I do?”
Marisa laughed, all the confidence she hadn’t felt in real life flooding into her now that they were safe in the virtual realm. “I can’t help it,” she said, “I’m awesome in every version of reality.”
“My skin is blue,” he said. “Not even a cool blue, I’m like a robin’s-egg blue.” He felt his face. “And kind of . . . doggish? Am I a baby blue dog man?”
Marisa laughed again. “The game randomizes all the variables when you enter without a defined avatar. You can design your own, or I can just give you one of mine.”
“I’m getting the impression you play this a lot. This interface says your name is Heartbeat? That’s your username?”
“We call it a call sign in Overworld, but yeah. You can set yours to whatever you want—if it’s not taken.”
“I’ve tried ten different ones already—everything’s taken. How’d you get Heartbeat?”
“There . . . may have been some slight hacking involved,” she said. “The previous owner of the username canceled their account.”
“On purpose?”
She shrugged innocently. “Who can say? They started a new one the next day, so maybe not.”
“I think this one works,” said Saif. “Bh4s4d. I had to go Hindi and Leet just to find something that no one else had used before.”
“I like it,” said Marisa. “I’ve heard Jaya say bhasad before, but I don’t know what it means.”
“There’s no good translation,” said Saif. “Kind of like a big mess?”
Marisa laughed. “That’s what you chose?”
“Well, I mean it more like chaos, which is on the more awesome side of its spectrum of definitions.”
“Whatever helps you sleep at night.” She opened her inventory menu. “So: for your avatar. You want to be a man or a woman?”
He grinned slyly. “Are those my only options?”
Marisa raised her eyebrow. “You want to
go nuts? I’ve got a dragon, a snake—though that one’s tricky to get used to, because there’s no arms—a zombie, a statue—”
“Ooh,” said Saif, “let’s try statue. I’ve always thought there should be a statue of me.”
“Of course,” said Marisa, and had to struggle not to roll her eyes. No matter how charming he tried to be, that rich arrogance was still in there. She hid her disgust and scrolled through the menu to find the statue. She used female avatars almost exclusively, but she loved designing new ones, and she couldn’t help but collect an assortment of male looks over the years. She pulled up the statue design and linked it to his account; he accepted, and suddenly the baby blue dog man was replaced with an eight-foot marble statue, sculpted into an image of ancient Roman perfection. Saif looked at himself again, and the marble face smiled as proudly as if he’d designed it himself.
“This is incredible,” he said. He looked at her. “Do you . . . buy these?”
“I make them.”
“Yourself?”
“Of course.” She said it casually, but inside she was beaming with pride. She looked back at her menu and opened the list of arenas. They were all functionally identical, but with different skins—a blasted city, a nuli factory, a pirate ship, a jungle island, and more. She found the one that looked best with the statue, a kind of Mediterranean ruin called the Colosseum, and opened it up. The lobby announcer declared that the game was loading, and a moment later they were standing on the crest of windswept hill, looking out at fallen pillars and cracked flagstones, nestled amid tufts of grass. Instead of military robots, the drones on this map were lions and manticores and other mythic beasts; Marisa could see them prowling in the distance.