GABE’S TEETH wouldn’t stop chattering. That damn electrical weapon had reduced his body to jelly. The demons carted him through the windows, and he couldn’t even struggle as they locked him into a sinister-looking surgery chair. The bands came over his forearms, and Gabe strained against them, his heart thundering against his ribs. No, not again.
The metal of the chair dug into his back, pinning his wings in place. They were useless with his nerves fried like this. But he didn’t cry out, not in front of the two demons who still watched with glowing eyes, as a third clamped cybernetic bands over his legs. Gabe took in a measured breath, knowing he needed to keep levelheaded if he had any hope of surviving.
An ominous amount of tech filled the room—screens both flat and rounded like the ones in Jeff’s living room, circuit boards and panels, neural nodes in glastic cases, even holopanes that Gabe hadn’t seen since Heaven. The old and new equipment had been wired and soldered together, a wild tangle of metal and tubing. It clashed with the windows that ranged from floor to ceiling, looking out over the twinkling lights of Old Trent.
Of course, how else would the demons come and go from their own tower? This was their aerie, where they got to lord over the people of downside, like the false angels they were.
He strained his muscles to move his head at the sound of the mechanical whirring of a door opening. Another demon entered the room. Unlike the others, he lacked the grotesque features that usually signified a demon—no horns or talons or fangs. Just a short, thin man in a fitted navy suit about twenty years out of Heaven fashion but still trendier than anything Gabe had seen on the people here. They had more things to worry about than keeping up with Heaven clothing.
“Good job, boys,” the new demon said, his mouth twisting into a grin and his eyes glowing gold. “He give you any trouble?”
“Nothing we couldn’t handle, Mr. Luca.” The demon who’d bound Gabe’s legs straightened up and gave a little nod.
Something sour coiled in Gabe’s belly. This was Luca, the demon who controlled all of Old Trent. The one people spoke of with fear and awe in their voices. He had his gaze fixed solely on Gabe, that cruel grin never leaving his face.
“Excellent. Go down to the medical level and get your upgrades. Last thing I want is you guys bitching about not getting paid.”
The other demons laughed, though they kept their gazes averted as they jostled each other. It reminded Gabe of a teenager with a crush. They feared Luca, yes, but they loved him too.
Gabe tugged at his bindings as Luca circled him, the two of them alone in this room now that the other demons had left. If he could only get loose, he’d show this demon he wasn’t going to sit quietly and let himself be tortured, or whatever it was that Luca wanted to do to him.
Whatever it was that had Jeff agreeing to hand Gabe over.
Gabe swallowed, the thought sneaking into his mind unbidden. He had no evidence other than a demon’s words that Jeff had betrayed him. There was no reason to believe Jeff had done such a thing. But it was starting to make too much sense. Gabe had been in the heart of demon territory for far too long to have gone unnoticed.
“Are you just going to stare at me?” Gabe finally burst out, unable to deal with the pressure from Luca’s smoldering eyes. He needed answers, and Luca seemed to be the only one to have them.
“I thought angels would be more patient.” Luca didn’t speak in a growled undertone like so many of his minions, and he didn’t have any voice mods either. Yet somehow the innocuous, unmodded tone was almost worse. Gabe didn’t know what to expect from him.
“I’m not exactly the typical angel.” Gabe flexed his fingers, wishing for an honest fight instead of this interrogation. Being bound like this reminded him too much of his time being made, unable to protest as Zachary’s people took him apart and then put him back together in an angel’s image.
Luca crouched down in front of him, eyes blazing like fire. What did he see through those modified orbs? Were they augmented enough to see through to Gabe’s hollow bones? “Doesn’t matter. You’ll do.”
“For what?” Gabe needed to know. For a moment, he was afraid Luca wouldn’t tell him, that he’d have to guess. “If you think I have any secrets to betray, you’re wrong. I’m hardly high up in the ranks of Heaven.” He had been just another grunt, another angel to be sacrificed when needed.
As if in answer, the door opened again, and two more demons entered, both wearing the protective gear Gabe usually associated with mechanists—heavy aprons, protective goggles, and elbow-length gloves. One of them held a halo, dull instead of its normal shiny golden hue, with wires streaming out of the ports and attached to a network body jack in the hands of the other demon.
So that was where his halo had ended up. Gabe tensed against the chair, sweat pooling at his forehead. “I can’t tell you how it works,” he burst out. He couldn’t fake his reactions to that damn thing. They’d used it to enslave him, and Gabe could never forgive that.
“I already know how it works.” Luca waved the demons over. One took the dangling wires and hooked the halo to one of the computer panels along the wall. “The problem is that it only works with brains specially modified to be angels.”
“No,” Gabe whispered, realizing now exactly what Luca wanted. “You can’t do this.”
“Such loyalty for your masters, angel boy? You should be honored.” Luca picked up the network jack plugged into the halo and jammed it into the back of his own neck. “You’ll be my conduit to the God AI.”
Gabe pressed himself back against the chair, watching as the demon came closer with his halo. All of this for the God AI? Whatever fucked-up scheme Luca had dreamed up, there was no way he could touch the God AI. It was too big for even the angels to contact directly. They were only able to speak to it through Metatron.
It didn’t matter if Luca succeeded. Heaven could fall and Gabe didn’t give a damn. But he’d worked hard to regain his memories, to remember the man he’d been before the angels had erased everything. He never again wanted to forget Rocco and his life before Heaven.
He didn’t want to forget Jeff either. Or Kayla and Hank and Ian and everything he’d learned in Old Trent.
“Don’t,” he choked out, right before the demon slammed the halo onto his head, into the ports designed for it.
KAYLA CAUGHT her fingers in the scruff of fur behind Trixie’s neck. It was easier to bury her face against Trixie’s strong back than look at Dad right now. They’d come home only to find that the demons had stolen Gabe. While they had watched Mattie die, Gabe had been all alone, no one to help him. Who knew what the demons had told him? He was gone and he’d never know that Dad didn’t want to do what the demons ordered. He’d had to.
“Jeff, come on,” Ronnie said, stroking her hand gently over the back of Dad’s head, almost as if he were a dog too. “Let’s get inside, get something to eat….”
At least Ronnie was speaking now. She’d been so quiet after they had left the hospital, sitting in the truck with her shoulders hunched and her head bowed. Kayla hadn’t known what to say. Nothing she said could bring Mattie back, so why even bother? Now Gabe had been taken, and they actually could do something about that. Kayla gritted her teeth. Would they both just let this happen? Just let the demons take Gabe and not fight for him?
If they wouldn’t, then Kayla would fight for him. You didn’t give up on your friends, and Kayla counted the angel among hers. Gabe understood how she felt about her modded body in the way only a man with metal wings could. He’d taken her flying, let her see the world from the skies above. You couldn’t give an angel his freedom only to take it away again.
Gabe loved her dad, almost as much as she did. She could see that whenever the angel looked at Dad, the same way Hank looked at Ian. He’d made a place for himself here, and she could feel the gaping hole he left behind.
It wasn’t like she could rescue him herself. Unlike Gabe, however, she wasn’t alone. She waited until Ronnie had gotten Dad up and out of the workshop, and then Kayla moved to the panel along the main screen, punching in Ian’s code from memory.
“Jeff?” Ian’s voice came from the speakers. He must still be on the road, so he couldn’t see her face on his cam.
“No, it’s Kayla.” She bit her lip, trying to stop the tears from coming. Kayla couldn’t speak if she cried. “The demons took Gabe. And Dad’s just gonna let them!”
“Hold on, shorty.” Hank’s voice came through now. “What do you mean demons took Gabe?”
There wasn’t time for her to explain. They needed to come help, now. “They made Dad do it. He owed them. That’s why the demons brought Gabe here, so Dad could make sure he didn’t go back uplevel until they wanted him.”
Silence for a moment, and then Hank again. “Why do I feel there is a much longer story here?”
“Can you help me?” Kayla blurted.
“Help you do what?”
“Rescue Gabe.”
THE SQUEAL of the proximity alarms brought Jeff to his feet, blood rushing in his ears. He’d been sitting in the kitchen, just staring at Ronnie as she put together a meal out of the scraps in his cabinets, not even listening as she lectured him about being so dependent on nutricubes. If he focused on the movement of her hands, only that, then Jeff could almost zone out and push all thoughts of Gabe from his mind. He could forget for a moment that his own actions had caused this.
He wouldn’t have to choke on the guilt that came up like bile in the back of his throat. Because Jeff knew he’d do it again. He’d save his daughter at all costs, no matter how much he cared for Gabe. How much he loved the angel.
Jeff ignored Ronnie calling after him as he ducked into the living room, checking the monitors to see what had set off the alarms. Part of him worried the demons might come back, that Luca would take Gabe and then destroy Jeff anyway. At first he was relieved to only see Hank and Ian at the main gate and Kayla letting them in. But why hadn’t Ian called ahead? They were supposed to go back to Ronnie’s place to take care of Mattie’s possessions so Ronnie wouldn’t have to.
He shut off the blaring alarm before stomping into the junkyard, determined to find out what the hell was going on. “Kayla!” he shouted, coming up on his sheepish-looking daughter as Ian showed her something inside the hovercart attached to his bike. “What are you doing back here?” he snapped at Ian.
“Kayla called us,” Ian said, in that calm way of his that made Jeff want to strangle him.
Hank propped one leg up against his bike, drawing all eyes to him as he drawled, “We’re going to rescue Gabe.”
Jeff’s heart pounded at Hank’s words, his mind already reaching for plans, for a way to accomplish the impossible. “Don’t be stupid. How would you manage that?”
“Well, I’ve got a few things that might help.” Ian pulled the tarp off the cart, allowing Jeff to see a cache of weapons.
“You have energy guns,” he breathed. “Are you insane?”
“Nah, everyone knows I’m the insane one.” Hank grinned. “Ian’s got his own connections uplevel.”
Jeff shook his head. “It doesn’t matter. We don’t even know where they took him….” He trailed off. Maybe he did know. It couldn’t have been coincidence that he saw a flock of demons returning to center city just as they were leaving. The demons should have been on patrol around Old Trent, not returning to their home base, not yet. “If he’s at their sanctuary, there is no way you can possibly slip in past the sensors with those guns.” Never mind that the complex was a maze, Luca’s headquarters carefully guarded by his loyal soldiers.
“They could if they had a guide.”
They all whirled around as Ronnie spoke. Jeff hadn’t noticed that she’d followed him out of the house. His cheeks burned. “What?”
“You know what I mean.” She moved closer. No tears shone in her eyes, and her voice came out unguarded and clear. Her hands were clenched into fists, and she looked ready to start a fight.
Ronnie couldn’t mean what Jeff thought she did. Yes, someone could guide Hank and Ian through to wherever Gabe was being held, if that person jacked into the demon network and took control of it. The demons would never know they’d been infiltrated.
The only problem being that Jeff didn’t jack in anymore, had sworn to never ride the net again.
“Ronnie, I can’t,” he said.
Kayla came up beside him, catching her arm in his and putting her head against his chest. He held her close, her tiny body so warm against his.
“Please, Dad? For me.”
Jeff closed his eyes. He’d tried so damn hard to do his best, be the best father he could be, despite everything. When Gabe came into their lives, it seemed like all the rules had been broken. All that Jeff thought he knew to be right was somehow wrong.
Persisting in his vow to keep Kayla safe would doom Gabe to whatever fate the demons had dreamed up for him. He’d been willing to sacrifice the angel—he had no choice. The debt he owed Luca still loomed over them.
Jeff opened his eyes, catching the gazes of Hank and Ian and Ronnie, who stood with her arms crossed over her chest. Maybe it was time to open his heart to more than just one person.
“All right,” he said. “I’ll do it.”
JEFF SLID the jack in the back of his head, into a port that had been kept closed for five years. It should have felt strange and wrong. Instead he relished the way his brain came on line, ready for him to fire up the connection and surf out into the net. His body thrummed, impatient for that final bond with the tech. He flexed his fingers inside the control gloves and settled back into his well-cushioned chair, making sure there was no discomfort.
Kayla pulled a chair up next to him, her hands skimming over the control panel that would monitor his vitals. She needed to forcibly disconnect him if the health levels moved into dangerous territory. Jeff knew of hackers who had died because they didn’t have a failsafe in place. He knew better than to take that chance, especially after five years off the grid.
Ronnie stayed toward the back of the workshop, just close enough to still keep an eye on them. Jeff would need her to take watch. He trusted Kayla, but she was only a child.
“I may look strange,” Jeff told Kayla. He squeezed her shoulder, which felt odd through the gloves. “Don’t be scared.”
“I’m fine, Dad.” Kayla grinned at him. The smile slipped from her face. “Be careful.”
Jeff nodded and closed his eyes. He hit the switch on the arm of his chair and then felt his belly roil as he exploded into thousands of bytes of data, his mind drawn into the swirling vortex of the web. Most people panicked and hit the kill switch right then, unable to deal with being broken apart so thoroughly. Only a few who did make it through could actually do anything besides just ride the net—the hackers. At one time Jeff had been proud to call himself one.
Bodies meant nothing. The biggest mistake was thinking of himself the way he looked in the physical world. Jeff knew better than to limit himself like that. Jeff formed his avatar around himself, picturing a vehicle, something sleeker and smoother than his truck but with the same hover engines. The shield surrounded him like a digital skin, protecting him from errant programming on the net. He could feel everything that skimmed along his armor, as if he owned the cyberflesh of this borrowed form.
It was dangerous to reveal too much. Even among his hacker friends, Jeff had gone by another name, carefully concealing his true identity from most of them.
Now that he’d shielded himself, Jeff could let himself sink into the net. The streams of information blew past like a rush of wind, a storm gale he willingly steered into. He wanted to stretch out his arms and dive into the nodes, let the sheer joy of the code stroke him to a completely mental orgasm.
No one could understand this, how numbers could laugh and tease him, each with their own unique personality, or how the song of the web tasted. Jeff had fallen into this addiction once, caught up with finding the next rush, learning the next secret.
He needed to focus. Gabe and Kayla were depending on him. Hank and Ian downright expected him to be there and guide them through the demon fortress. Jeff couldn’t let himself be lost in the sea of information. Not again.
“Ian?” He tapped directly into the wire, zipping through the splash of code that led to Ian’s port. Jeff followed it through the grid, honing in on Ian’s signal. The net had no physical presence, but it helped to give it one in order to navigate through the chaos. It had always resembled Old Trent to Jeff, the latticework of blocks and buildings a perfect way to keep track of it all. Now, however, the net looked like a much larger version of the junkyard to him, piles of junk representing familiar nodes of information.
“We’re just coming up on the complex. Waiting for your go-ahead.” Ian’s voice translated as blue to him, and it felt like leather, smooth with a soft sheen. Jeff would recognize that signal anywhere in the net.
Now came the tricky part. He had to disable the sensors as Ian and Hank passed through the main gate to the heart of the city so the demon guards wouldn’t know about the weapons they carried. However, he had to make it look like the sensors were still functioning. Jeff needed to have a little talk with them.
Jeff could see Ian in the net, thanks to the implant that connected him without pulling him inside. Hank showed up as a warm green and seemed to complement Ian’s signature perfectly. They were waiting in the line to enter, the gates lighting up in red.
It was Jeff’s gift to see things as they were, their vulnerabilities and their structure. It was what had made him so effective as a hacker. Jeff could then tweak them by changing their very being. So the demons’ security couldn’t stop him. The code meant nothing to someone who could see the center core and speak to the elements inside.
The gates saw him as another programmer, one of their masters. They opened their code eagerly at his approach, hoping to please him. Jeff asked them to simply not see the weapons. This was easier than doctoring the scans and data itself, which he could fuck up if it didn’t match what the programmers expected to see. To the sensors, the weapons didn’t exist.
“You’re good for the first gate,” Jeff sent to both Ian and Hank, speaking without a voice. So easy to do that while he admired the demons’ code, the way the metal bent and warped around itself, which was how his mind translated it. They’d had someone good compile their security, but Jeff was better.
“Got it. Where are we headed?”
“Checking.”
Hank and Ian would claim they were there to retrieve Mattie’s body. Jeff felt an ache at that, but he knew Mattie wouldn’t mind being used in such a way if it meant saving Gabe’s life.
Jeff needed to find out where they were keeping Gabe. That would be more complicated than asking the sensors for a favor. He had to avoid setting off any alarms, so he couldn’t merely target the cybrarian in charge of organizing Luca’s information. The only way he could do that was by making it look like he belonged behind the demons’ firewall. Jeff had to change his avatar, make himself look like just another bot relaying information down the wire.
It was almost too easy to do that. Jeff slipped through the wall like he was meant to be there, breathing a sigh of relief that the mask held. It had been years since he’d shifted his skin like that. Either his skills were just that good, or Luca was being extremely lax in security. The demon probably thought himself untouchable. Once Jeff was in, he called up a map of the entire demon complex, the kind of thing someone who was lost would want. Then he asked for the sensor input on all living people inside it. Demons lit up in yellow, unmodded humans in red. A single pulse of blue-green blinked, and there, that was his angel.
It would take a little time to translate this in a form Ian and Hank could understand. Jeff pressed for more information beyond the grid coordinates. A pulse of energy sent him tumbling out of sync, a pounding against his armor that pushed him out of the information streams. Jeff scrambled, unable to see in the wake of the attack. Despite the pain thudding on his shields, he pulled himself together and sent out his senses, trying to find what had attacked him. He’d been in, dammit. The demon security shouldn’t even have noticed him. It would be just his luck to get stopped by some errant code.
“What are you doing here, Werth?” Chase’s voice, and it scraped over Jeff’s nerves like a hundred tiny needles. Jeff couldn’t see an avatar for him. Chase must have his highest security up, which would make sense if he were poking around in Luca’s network.
Jeff pulled back the code he’d readied to defend himself. He must have run right into one of Chase’s programs. “Not trying to grab your territory,” Jeff sent. “Just looking for Gabe.”
“I’m sorry, Jeff.” Now Chase’s avatar revealed itself, that youthful-looking kid Jeff knew was an illusion. Chase was good—he could appear exactly as he wanted, his armor and shields not visible unless you were looking for them. “I can’t let you find him.”
It took Jeff a moment to process that, since that was the last thing he expected Chase to say. “Chase? What the hell?”
“Nothing personal, Werth. It’s the freakin’ God AI. And I get to dissect it.”
“What did you do?” Jeff had trusted Chase. He’d told Gabe he could count the other hacker as a friend. Dammit, Chase had owed him. Jeff hadn’t expected their friendship to die once Jeff had freed him of the debt.
And for what? A chance at the God AI? Something that probably didn’t even exist. Chase had never been satisfied, always looking for the next big thing. Now Jeff and Gabe would both pay for it.
Jeff felt the rise in energy, those stinging needles pummeling against his senses again. He’d relaxed his shields when he’d learned it was Chase, and now Jeff struggled to get them back up, to push out his own offensive attack. Everything began to spin, data streaming into his consciousness and not making sense.
“No offense, Werth, but I was always better than you.” Chase’s voice dripped through him as Jeff tumbled without control, the net swirling around him.
Jeff jerked back into his body, staring at the screen in his workshop, his hands clutching the arms of his chair. He sucked in air, his lungs aching as if he hadn’t been breathing the entire time. But Kayla should have been watching if his vitals dipped.
Kayla. Where was she?
Jeff pulled off the gloves and tugged the cord out of his port. “Kayla?” He pushed himself out of the chair and into the junkyard. A light wind brushed his hair, bringing with it the smell of metal burning. It stung his lungs and Jeff coughed, leaning over with his hands on his thighs as he caught his breath.
When he straightened up, Jeff wasn’t where he’d been. The workshop wasn’t right behind him, and his house wasn’t in view. He was surrounded by piles of junk, hunks of metal and cartons filled with circuit boards. But for the life of him, Jeff couldn’t figure out exactly where in the junkyard he was, and dammit, he knew every inch of this place.
“Jeff!”
That voice. It almost sounded like…. Jeff stiffened, unable to move. He didn’t want to turn around and ruin the illusion.
“Jeff?” The soft whisper rolled over him like petals drifting from a tree branch.
Jeff turned, his lungs aching like he still hadn’t gotten enough air. Leah stood there within arm’s reach. She looked exactly as he remembered her—reddish brown hair flowing in unruly curls, freckles speckled across her nose, and her wicked smile revealing one chipped tooth. When she threw her arms around him, she even felt the same, so warm and soft, the sweet smell of her bringing him back to five years ago, when they were still a family and the junkyard only the beginning of their world.
He touched her hair for a brief moment and let himself pretend this was real, that somehow she had been brought back to him. Jeff kissed her forehead. His lips stung, as if she’d left something behind. Damn you, Chase.
“I’m sorry,” he whispered. “So sorry.” Jeff had to force himself to push her away. It was hard to ignore the hurt in her eyes. She looked exactly like Leah.
But dammit, that wasn’t Leah. It was an image from his memory, made into an illusion so perfect his own mind was fooled into thinking he had flesh here, when this was nothing more than electrons and wires. Chase was damn good, making Jeff think he’d left the net but trapping him inside this simulacrum of home. Jeff couldn’t be fooled. He had to start looking for a way out.
He closed his eyes and tried to reach beyond himself, to remember that he wasn’t flesh. But he felt the dirt beneath his heels, the wind rustling through his hair, and still smelled the perfume of Leah’s hair. Chase had locked him in, and Jeff didn’t know how to get out.
“Jeff, what are you doing?”
Leah was dead. Had been dead for five years. Jeff forced himself to remember that. Gabe and Kayla were counting on him right now. He couldn’t get lost here.
Jeff lifted his head and shouted, “I’m not stupid, Chase.” He had to throw himself out of this illusion, take control of his own mind once more. “You can’t make me think this is real.”
“No,” Leah said, causing him to turn back toward her, startled at the sneer on her face. He’d thought her nothing but a construct, an illusion like the piles of junk. “But I can make you see and feel anything I want.”
“Chase….” Jeff realized the hacker had taken his own role in this fucked-up illusion. He held out a hand, hoping to end this. They had been friends, once. “Stop this, please.”
His words didn’t seem to make any difference. Leah faded away, and there went any chance of reasoning with Chase. No, now Jeff would have to fight his way out. The ground lurched beneath him, and Jeff had to fight to keep his balance. It shouldn’t feel this real, he thought, as his hands met the ground, rocks slicing open his palms.
When the world stopped moving, Jeff found himself staring down at the blackened crater that used to be the center of the junkyard. He didn’t understand what Chase hoped to accomplish. Jeff hadn’t been fooled by Chase’s version of Leah, so why would he be caught up with this?
Out of the corner of his eye, Jeff saw a figure, small and crumpled on the ground. He pushed himself to his feet, unable to stop himself from running toward her. No, please, no.
“Kayla!” he screamed, rushing to his daughter’s side.
He’d forgotten the smell of her blood. It had risen thick and metallic in his nostrils, obliterating everything else. Jeff went to his knees beside her small form, as if he couldn’t stop his body from doing what it had all those years ago.
Only this Kayla wasn’t five years old. She looked exactly like she did now, as he had left her at the workshop. Her legs ended with stumps where her knees should be, electrodes and wires blending with the congealed blood. He cradled her in his arms.
“No.”
She hung limply, no sign of life in her body. Her tiny face was pale and slack. Jeff brought her to his chest, ignoring the tears spilling from his eyes. “No, sweetheart, no….” His baby, all he had left of Leah, his life, was still and cold in his arms.
“That’s what happens when you don’t hold up your end of the deal. Dig, Werth?”
Jeff looked up, not knowing when Nazaro had appeared. The past and the present collided in this nightmare Chase had constructed.
The demon’s eyes glowed, his wings taut and broad behind him, and he gestured with clawed fingertips. More demons were spilling into the junkyard, more than Jeff had ever seen in his lifetime. Two of them carried a figure wrapped in barbed wire, and it was only at a second glance that Jeff recognized Gabe.
They’d stripped his angel, the wire on his body slicing into pale skin so blood dripped, staining the ground as the demons hauled him forward. Gabe’s wings hung heavy and low, dragging in the dirt.
He looked at Jeff with bloodshot eyes. “Why, Jeff? Why did you betray me?”
Jeff clutched Kayla’s body even tighter, knowing there was no way he could respond to that. There was nothing he could do, no way he could defend himself against all of these demons. He heard the loud rumbling of a motor starting and turned just in time to see a demon hefting a chainsaw, the blade coming to life.
“No!” Jeff cried, but they ignored him as another lifted one of Gabe’s wings, holding it still as the saw cut through it, leaving behind jagged bits of metal.
Gabe screamed, a high-pitched noise that cut right to Jeff’s heart. He kept screaming. The demons finished with his wing and then pulled out one arm. Jeff was trapped here, doomed to watch while he lost everyone that mattered to him, watch Gabe being tortured to death over and over again.
GABE DIDN’T know what would happen the moment the halo clicked into place. He gritted his teeth, prepared to fight for his memories, chanting Gabe, not Gabriel in his mind, hoping to hold on to that much at least. He would not go back to being nothing more than Heaven’s pawn. Jeff, he added to his mantra, desperate not to forget the man he loved like he’d forgotten Rocco once before.
The connection snapped into being, filling that space in his mind that had been empty since he first woke up in Jeff’s home. Warmth and light flooded him as thousands of angels reacted to his presence, startled to find him alive. They’d been his brothers once, the only family he’d known. Part of him wanted to rise up and answer their call, become one with the commune of angels again.
“Gabriel 1089!” they called for him, a cacophony of voices demanding an answer.
“No. Gabe.” Even that wasn’t his true name. Gabe had forgotten that, lost it to time. He pulled himself back, away from the other angels, ignoring their cries of loss. Gabe couldn’t take all of their voices, unable to filter them out. Get out of my head.
Blood pulsed against his forehead, and the pressure built to a crest. Just when Gabe thought he couldn’t take it anymore, Luca swept through, using Gabe’s mind as a bridge to slide into the Angel Network as if he were one of them. No demon should invade this sacred link. Gabe couldn’t even warn them, silenced as Luca’s mind took over the connection.
For a moment Gabe couldn’t separate his own thoughts from the demon’s. They became one, connected too intimately. Where Gabe expected darkness, he found Luca’s mind filled with hope, searching for something beyond himself. Apparently demons weren’t any different from most humans. Gabe wished him luck, knowing exactly how hard Luca would need to fight to get past the thousands of angels to reach the God AI. He pulled away from the demon’s mind and the Angel Network, desperately trying to be alone in his own mind once more.
Desperate for some damn quiet, Gabe fled and slipped into a warm silence. Luca and the angels had disappeared, and Gabe didn’t understand. What happened? Where was he? He tried opening his eyes, only then discovering that he wasn’t anchored to his body anymore. He pushed against the darkness, not even comprehending what he did as he abruptly found himself someplace else.
He spread his wings and flew, no longer constrained by his body or caught up in the Angel Network. This, this had to be the Demon Network. Gabe had never explored it. He’d never jacked in as the hackers called it—become nothing but energy and code.
Jeff had told him once that he had become lost here, so caught up that he’d lost track of the real world. Gabe hadn’t completely understood. The Angel Network couldn’t compare. It had been a structured place of numbers and grids, allowing for nothing that deviated from its purpose. This network, however, swirled like chaos around him. Colors ticked off the hours, zipping past him so quickly.
Who was he here? Gabe held a hand in front of his face, surprised he could move. His real body was still bound in the chamber, still a captive of Luca and his demons. Could he get truly lost here, become nothing more than energy while the demons kept his body alive?
“Gabe! Gabriel!”
Jeff. He’d come for him, somehow.
Gabe followed the voice, flying through the net more easily than the atmosphere. His wings weighed nothing and beat faster than they had any right to. He moved closer, Jeff’s presence echoing within him like a song. Jeff shone in the darkness of the net, something bright and rich, calling to Gabe, and he was helpless to do anything but answer.
“Jeff.”
He reached out for Jeff, as if Jeff were another angel, someone he could connect with mind to mind. It was the only way Gabe knew how to speak through the net. He could feel Jeff’s fear, a stab of ice cold that marred the beauty of Jeff’s soul. Gabe rushed to him, to cover his lover with his wings and protect him from whatever threatened in the dark.
As he grew closer, Gabe recognized another presence on the web. He tasted something sour and realized this was the man who’d invaded his mind, only then Jeff had called him friend.
“I’m here,” he told Jeff, shielding them both from the invader. Somehow Jeff’s friend was keeping Jeff here. Gabe opened his mind to Jeff, hoping he would reach out and link back.
Jeff’s mind united with Gabe’s as if they had an angel bond between just the two of them. In an instant, Gabe understood the threat, saw Chase’s avatar as Jeff saw him—the handsome young man with the perpetual smile. The pleasant face was a farce. The powerful hacker could destroy them both with a thought.
The attack came in a wave that hit Gabe first, since he was shielding Jeff. For the briefest of moments, Gabe looked at Rocco’s face as his lover smiled at him. They were standing back at the student center in college, and Rocco leaned forward, just about to kiss him. Gabe wrapped his arms around Rocco’s waist and could actually smell his aftershave as he reached up.
“Gabe, it’s not real.”
No, but Jeff was. The illusion of Rocco shattered around him. Gabe bound himself even more tightly to Jeff. Chase was smart, trying to split Gabe from his lover. But he’d chosen exactly the wrong thing. Gabe had Jeff to thank for having the good memories back.
Jeff’s rage matched his own, their emotions linked so snugly it was as if they were sharing one mind. How dare Chase take something so private and use it as a weapon? He spent his time haunting the minds of others; he didn’t even know what it was like to live.
“If his weapon is illusion,” Gabe said to Jeff, down that intimate mental link, “beat him with the truth.”
Jeff lit up at his words. “Stay close,” Jeff ordered. He started to weave their answering attack.
Gabe watched as Jeff began to program. Here in the net, it was more than numbers and variables in a sequence. Jeff strung together light and song, creating a latticework of netting that hummed. Jeff looked magnificent—his face brilliant, his eyes alive and his hands constantly moving. This seemed like a truer version of Jeff, his mind and heart captured by electrodes, instead of his physical body.
Jeff slammed his fist against his palm. His creation dissipated and then surrounded the image of Chase facing them in the net, building a cube around his smiling visage. Chase laughed and moved his arms, as if setting up his own programming. Jeff’s work, however, stuck. Chase frowned, unable to get rid of Jeff’s code. Parts of his face began to unravel, pixels of lies being torn away and sucked into the lattice of the cube.
The semblance of the healthy young man disappeared in chunks, ripped away to leave only a figure crawling where Chase had stood. The body had been twisted and changed, with ports implanted down the figure’s pale wasted arms, his legs atrophied into nothing. Had Chase chosen this? Had he preferred the world of the mind so much that he’d destroyed his own physical body?
“No.” The word was so soft, Gabe wasn’t sure he heard it. Chase disappeared completely, and Gabe felt all trace of his presence fade as well.
“We need to hurry before he reassembles his code.” Jeff pulled Gabe back.
They also had some unfinished business to deal with. “Jeff. Why?”
Jeff’s guilt hit him through the mental link. Gabe saw it all, once again lost in a memory, this one not his own. He saw the demon Nazaro dump Gabe’s body in Jeff’s living room, heard him threaten Kayla if Jeff didn’t do what he had asked.
“I had to,” Jeff said. “I owed them everything for Kayla.”
It hurt to have it confirmed, to hear from Jeff’s own mind that he had betrayed Gabe. But how long had it been since Kayla said those words to him? That she would do anything for those she loved? Gabe couldn’t blame Jeff for a promise made long before they’d known each other. Right now, he’d willingly give himself up for Kayla too. He was glad she was home and safe, far away from the danger.
“But you came for me,” Gabe told him. Jeff could have let Gabe go, completed the deal, and moved on. Instead he risked everything by whirling through the net like this.
“Kayla’s idea,” Jeff explained. Gabe saw her, fists clenched as she berated her father for his inaction.
“You have a smart child.” A smart, beautiful, brave little girl.
Something pulled at his senses, threatening to take him away from Jeff. Gabe tried to listen but keep himself grounded in the net with Jeff. He heard his siblings, the angels putting out the call to war. There were so many of them, and the cacophony hurt.
Before he could warn Jeff, Gabe heard Ian’s voice, belatedly realizing it came from a simple link with the outside world. “Jeff, we have a bit of a situation out here.”
Jeff’s attention shifted, and Gabe could see him retreat a bit, go back to the business of rescuing Gabe. “Demons on to you?”
“No. There are angels. Hundreds of them coming down from uplevel. Demons coming out to meet them. This might be a good time to rescue your boy.”
Of course the angels would come to find him. He’d startled them all by rejoining the network when he was supposed to be dead. It was the kind of insult the angels couldn’t let go. No demon should be powerful enough to steal one of them. Instead of finding the God AI, Luca had triggered the wrath of Metatron itself.
“That idiot. He’s brought war to Old Trent,” Gabe said, not knowing if his words carried to Hank and Ian down the link.
Jeff’s mind slid against his like a caress. “Gabe, you gotta tell me where you are, where your body is, so I can send the map to Ian and break the security systems.”
Gabe forced himself to concentrate, though part of his mind was already being pulled away, the voices of the other angels a presence he could no longer ignore. He called up the memory of being bound and carried by the demons as they descended on the center of the complex. They’d taken him to the tallest building, the only one with floor-to-ceiling glass windows.
Jeff took the memory and formed a grid out of it, translating it to a form Ian and Hank could understand. “Got it. Ian, follow the map. I’ll be disabling locks and sensors in front of you.” Jeff dropped the connection, focusing on Gabe. “You get back inside yourself. We gotta get out of here before all hell breaks loose.”
“You mean Heaven. And it’s already broken.” Gabe cherished this connection for a moment, brushing against Jeff’s thoughts like a kiss before hurtling himself away. It hurt to lose this closeness. How easy it would be to share thoughts down this bond, to never have a misunderstanding with his lover. But as the connection to the Angel Network took its place, Gabe realized such a union could have its downsides as well.
Gabe fluttered back into the network, trying to hurry back. His mind had detangled from Jeff’s, but the bond seemed to have shaken some memories loose, much like when the memory block dissolved. There wasn’t time to sort through them all now, but Gabe cradled the new knowledge for the unexpected gift it was.
Slipping back into his body was even more of a shock. He had grown used to being air and moving as quickly as thought. Sinking back into flesh made him feel heavy and stupid.
“Dammit!” A demon crouched next to a slumped-over Luca on the floor, shaking him. Luca didn’t even twitch, and his eyes were rolled back in his head.
“Unplug him,” Gabe rasped out, unsure why his voice sounded so hoarse. He wondered if his body had been screaming. “Only way.”
The demon turned and glared at him but actually pulled the connection out of Luca’s port. Almost instantly, the demon king sputtered back to life. “Nazaro… what?”
“We got a bit of a situation, boss. Angels. Lots of ’em. Dig?”
“Damn them.” Luca pushed to his feet and moved to look out the window. “I was so close.”
Gabe laughed. “They only let you think you were close. Kept you out of it until they attacked.”
Luca didn’t even look in Gabe’s direction. He turned to Nazaro. “Call in all the reserves. Let them know we’ve got a fight on our hands.” Luca unbuttoned his carefully tailored jacket and shrugged it off before freeing his set of oversized wings. He pushed open the window and took off into the sky.
Nazaro gave Gabe a smile and a wink, then headed out the door, leaving Gabe bound and alone in the room. Gabe groaned and pulled on the bands holding him tight. He was useless, stuck here while the battle raged outside.
Before he could grow too impatient, the door swung open and Hank stumbled inside. Ian fell in after him, firing off one last shot from his energy rifle while Hank palmed the mechanism and the door closed. Gabe let out a deep breath, relieved they’d found him.
“You are one hard SOB to find, you know that?” Hank pulled the lever that undid the restraints over his arms. He bent to undo the clasp on Gabe’s legs.
“Thank you.” Gabe rubbed at his wrists, the blood rushing back into his hands. He flexed his fingers, needing that strength to return.
“What about this thing?” Ian tapped the halo, which was still connected to the computer panel and the dangling network jack.
Gabe reached up and tore the wire out, wincing as it sparked. “I need it for just a little while longer.” Already he could hear the angels shouting tactics to each other, leaving their formations to attack the demons coming to meet them. “Go back to Jeff. I have to do this myself.”
“You sure about that? We had to fight our way in here.” Ian’s voice sounded so far away. Already the angels’ voices were beginning to overtake everything. There were so many of them, coming right for Old Trent.
“I have to. I’m the only one who can stop the angels.” Gabe flexed his wings, releasing them into the space of the room. His shirt had already been ruined, so he shook off the last threads of fabric. Running for the open window, he ignored Hank shouting after him, just spread his wings and took to the air.
Gabe couldn’t enjoy the freedom of flight, the way it felt to soar with nothing but air beneath his wings. No, right now he had to focus on the battle raging through the skies and find some way to stop it without getting himself killed in the process. In retrospect, he probably should have grabbed one of those energy rifles Hank and Ian had.
Demons streamed out the windows, their dark wings spread wide to catch the air. Most had projectile weapons, strong enough to knock an angel out of the sky. A group of demons stood on one of the lower roofs, gathered around an odd-looking device—another meld of old tech and new, gunmetal gray and shiny golden glastic. He had to duck out of the way at the last moment when they aimed the device his way and blasted bullets at him.
Clever of them, but Gabe wished they hadn’t noticed him. He flapped his wings, fighting for higher ground. Gabe couldn’t let himself get hurt before doing what he needed to do. The angels wouldn’t stop just because he asked them to. Gabe had to find the leader and get that angel to order a retreat.
If it were only that simple.
Gabe banked and dived, dodging demons and buildings in his need to get higher, to where the angels flew. It felt almost like his old life, fighting demons in the skies to protect Heaven. He pushed another demon out of the way, sending him crashing into a wall.
“Sorry,” Gabe muttered. He was really only trying to help.
The angels plummeted from the sky in organized formation. Their gold and platinum wings would have gleamed with the light of the sun up in Heaven. Here they were no less impressive, bright where the demons were dark.
Gabe fought through the voices and streams of data coming from his halo. It seemed he couldn’t quite manage it now. Perhaps Luca had damaged it with his experiments. Or maybe Gabe couldn’t control the halo now that his memories were complete.
“Flank that demon.”
“Behind you, Raphael 7238.”
“Spears on kill. No quarter.”
He tried to shake their words from his mind. “Where is the leader?” he asked, forcing himself into the Angel Network. It had never been so difficult to do that before.
Two angels sped past him, tackling the demon who’d almost been close enough to take Gabe down. Neither had time to respond to his query. Gabe winced as he heard the crack of the demon’s neck breaking. These demons were no match for the angels, especially the newer seraph mods with their impenetrable skin.
This had to stop. He knew the angels would overwhelm the demons, and what would happen to Old Trent without them? Gabe had to concentrate, dig through the data zipping through the network. His halo ached—the pressure on his forehead seemed almost unbearable. There was no way he could sift through all of this at his usual speed, especially while flying and trying to keep out of the fight.
An idea hit him so hard, Gabe nearly tumbled out of the roll he’d tucked himself into to avoid being hit by more projectiles. He put in a request to find out where most of the commands were coming from, not asking the other angels but the network itself. Gabe should have thought of this earlier.
Now it was a simple matter to follow the commands. Gabe climbed higher and higher, out of the thick of the battle, to the top of the very highest building. There, a single angel crouched, his platinum wings extended as he surveyed the entire field. Gabe came down hard on his feet, out of breath and throbbing with pain from the halo.
He reached for this angel’s name, flipping through the data to find it since Gabe had never met him before. As an archangel mod, he was not high enough to consort with seraphs.
“Sandalphon 3435,” he said directly through the network. “I am here and alive. Stop this battle.”
Sandalphon had a face that looked like it had been carved out of stone, his skin almost marble white. His eyes glowed a brilliant cobalt blue as he turned his freakish gaze on Gabe. No other angel had glowing eyes. How far advanced were the seraph models?
“The demons captured you,” Sandalphon responded, lips not moving as his words went directly to Gabe’s mind through the network. “They used our sacred halo to try to take over our Lord. They deserve to burn.”
“It’s not the demons I speak for. It’s for the people they protect.” Gabe opened his mind, sharing not only with Sandalphon but all the nearby angels.
Mere words wouldn’t help here. Gabe called up the images, bringing them to life like Chase had used illusion inside the net. He showed them that night in Old Trent, how demons had swept in and saved him and Jeff and Kayla from the street thieves. Gabe’s heart pounded in fear as he watched Kayla take the blow meant for Trixie with her own body.
He summoned the memory of Jeff explaining about Kayla’s legs, how he had carried his broken and bloody child to the demon hospital. It might have been something left over from melding with Jeff’s mind in the net, but grief choked his throat, the horror at watching his child in pain. They weren’t his emotions, but they poured through him nonetheless.
Without the demons, there wouldn’t be the stolen goods in the market. The people of Old Trent wouldn’t have food, medical supplies, or any new tech. Ronnie appeared in his vision, with her brilliant smile and the people who counted on her for food and shelter—which she couldn’t supply without demonic help. His heart ached for her, for the loss of her only family.
Gabe’s love for Jeff and Kayla filled the link. They’d given him a home after he’d been lost. The thought of leaving them sent pain throughout his body.
It wouldn’t be enough to change the angels’ orders. But Gabe hoped he could make them think for just a little bit.
Sandalphon touched a hand to his own cheek, as if surprised to find the tears gathered there. His face held no expression as he asked through the network, “You would prefer to remain here?”
Gabe removed the halo, wincing as his ports protested the disconnect. “It is where my heart is.” He handed the golden circlet to the other angel.
The seraph took it in his hands and crushed it with ease. Only now he had to speak out loud. “You may never return to Heaven.”
“I know.”
Sandalphon looked out amongst the skies of fighting angels and demons. At the same moment, every angel disengaged from the fight and began to fly upward. “I end this battle now, but I make no promises for the future.”
“Thank you,” Gabe whispered.
With a flutter of wings, Sandalphon was gone.
Gabe dived off the ledge, wanting to make himself scarce before the demons realized he was the only angel left to pick on. He hadn’t gotten far, wings stretched to capture the wind, when he saw Luca hovering alone, watching the flock of angels leave.
On impulse, Gabe tackled the demon, dropping Luca into a hard fall on a nearby roof. Luca rolled, catching himself on his hands while Gabe stood above him. “You will listen to me, now,” Gabe snapped.
Luca looked up, his face more demonic than Gabe had ever seen—eyes glowing, teeth bared. “Need time to gloat?”
Gabe let his shoulders drop, too tired to deal with this. “I’m the reason they left, you idiot.”
“What do you want? Congratulations?”
What could Gabe say? He could demand Luca leave him and Jeff alone, but he had no weight behind those words. It wasn’t like he could call down Heaven’s help again. “You got damn lucky this time. Don’t waste this chance.”
Luca didn’t look convinced, but he didn’t attack or call to his demons for help. Maybe the false bravado would keep the demons away from him and Jeff for a while. Gabe could only hope. He took to the sky again, leaving Luca far behind.