Vaporware
Page 34
I took a deep breath and closed my eyes. “Yes,” I said softly. “I’m sorry. I lied to you. I shouldn’t have. I slept with Shelly. I shouldn’t have. But there have been things going on that I’ve tried to tell you about, that you didn’t want to hear.” I could hear my voice getting louder, feel the anger seeping into it. “What’s been going on at work? It’s real. What I’ve seen? It’s real, and I’ve been trying to fight it while keeping any of it from touching you.”
I took a step forward, and she took a step back. “But you know what? Even before then, you didn’t want to hear it. You didn’t care about my job, you didn’t understand why I cared about it or worked so hard on it, and all I ever heard was ‘when you get a real job’ and ‘when you’re done making games.’ Maybe I don’t want to be done making games. Maybe I like what I do, and I’m good at it, and I was hoping that one of these days you’d actually, I don’t know, appreciate what I do? How hard I work?”
Sarah looked at me, her eyes narrowed. “Don’t you dare,” she said, her voice shaking. “Don’t you dare make this about me and what I did wrong. One of us went outside this relationship and had himself a nice little screw. One of us betrayed the other. Not both of us. Not me. One of us did, and you do not get to pin any of this on me.”
“You know what?” I took a step back and pressed my hand against the wall. It didn’t drain much of my anger, but what I really wanted to do was punch it, and that would have taken the conversation someplace I didn’t want to go. “You’re right. It’s all my fault. And you know what else? I’m through fighting. I won’t fight this thing at work, I won’t fight you, and I won’t fight anything else that comes along. I’m sorry, Sarah. I really am. But if you’re not going to listen to me, that’s all I can say.”
“Me? Not listen to you?” She stomped past me, everything held rigid until she was halfway up the stairs. “You know, Ryan, when I reached into that hamper, it was like I got a physical shock. It hurt, Ryan. It hurt to think you’d do that to me. To us. It’s like you wanted to throw it in my face, and you were laughing at me the whole time I was sneezing and miserable and couldn’t figure out why. Did you really have to do that? Did you?”
I stood there, my mouth hanging open. For a second, I thought about telling her about how hard I’d worked to get rid of the evidence because she was allergic. Of how I’d thought if that had been it, I would have done the laundry myself, ten times over. About how if there was a shock, I had only one horrible suspicion as to where it might have come from, or whether static electricity, carefully applied, might be enough to draw all the cat hair together. And then I shut my mouth, and hung my head. “No,” I said. “I didn’t.”
Sarah burst into tears, and fled the rest of the way up the stairs and into darkness. I stayed behind, and below.
Chapter 28
From down the hall, I could hear the bedroom door slam. It wasn’t an angry slam, a hinge-rattler that said whoever had done the slamming was getting something out of their system. This was something different, the click of a mausoleum door shutting with someone you loved on the inside. It spoke with finality, and I just stood there, staring into the darkness that led to the door, to the bedroom, and to Sarah.
I waited there a while, hardly thinking, hardly breathing. There was no sound in the house that was not of the house, the creaking of air vents and the hiss of unquiet plumbing, and that was all.
Sarah didn’t come down. I strained to listen, but heard nothing of her—not the creak of floorboards, not the thump of drawers being flung open as she packed a bag, nothing. She’d talked of being alone in the house even when I was there, of the palpable silence spreading out from my office. Now I knew what she meant.
There were lights blazing all through the first floor. Slowly, I flicked them off in turn. I turned off the chandelier in the dining room, where the light showed off the cut glass that Sarah had tried so hard to get me interested in, and the blue of the wallpaper set off the arcs of color that the sunlight sometimes cut through the crystal. I turned off the living room light, three bulbs working out of four in a fan that was set too high off the ground to ever do anything but make the ceiling cool. From there, it was off to the kitchen, plates in the sink and on the counter and a half dozen cabinet doors open like a dust devil had gone through in a hurry. There were two lights to turn off in there, and I did each in turn like I was blowing out candles, a ritual or funeral for what had been before. One by one the outside lights went to black; back porch, garage and front in that order, shrouding the house in darkness. No one looking at it from the outside would see shapes silhouetted against the blinds; they’d see nothing moving at all.
Then and only then, with all light in my home extinguished, did I do what I’d known I was going to do all along. Up the stairs I went, guided by the memory of a thousand other trips in the dark. I’d done this before, done it on so many late nights where I’d told myself that a light would be selfish, would wake up Sarah, would….
…Would give me away.
Up the steps, then, while I thought about what I’d done. Third step, go to the left—the right side creaked. Fifth step, up and over. Eighth, avoid the middle; it made a sound like an old man groaning whenever you put any weight on it. I’d talked about getting the stairs fixed a couple of times. Each time, Sarah had said that she liked the nightingale floor effect, that it would tell her if anyone was in the house.
Anyone like me.
My fingers itched. I clenched them into fists, cracked my knuckles, bent each one back in turn and felt the burn all the way up to my elbows. Ahead of me, the upstairs hall was dark. No light shone out from under the bedroom door. Sarah had either blocked it, or kept to the dark herself.
Maybe she was waiting in there for me. Maybe she was waiting for me to come in, to apologize, to ask for forgiveness for what I’d done. Maybe she was hoping that this would be the moment that would open my eyes to how destructive my career was and how much damage it had caused, that I’d have my Saul of Tarsus moment over having screwed my ex-girlfriend and be ready to start a new life on her terms.
I took slow steps down the hall now, my feet landing lightly, my ears pricked for any sound. What was I listening for? Crying? Curses? A sign that she was still there? I didn’t know. In front of me was the door, closed and seemingly a deeper black than everything around it. It had a lock on it. That much I knew, though I’d never used it myself. All the interior locks in our place were crap, the sort of thing that you could get through with a MasterCard and ten seconds of reasonably good aim. With that in mind, I’d never seen the point. Maybe Sarah had, though. After all, locks were good for saying “You’re not wanted here,” too.
I’d never know. The doorway to my office was to my right, a rectangle of emptiness against the mere shadows of the hallway. With a single last look at the bedroom, I went in and shut the office door behind me.
There was no need for light in here, either. I knew where everything was, and the amber indicator on the monitor told me where I was going. My system was waiting on standby, a faithful companion ready for its master’s return. I’d known I’d be coming up here tonight, had known it even before Sarah had forced the confrontation and revelation, and had left things prepared for my arrival.
“Still got some docs to look at,” I mumbled to myself, a rationale as good as any, and waggled the mouse. The red light underneath it flared and the CPU woke up with an eager whirr. The computer, at least, seemed happy to see me.
“Better check email while I’m at it.” Hand still on the mouse, I dropped down into my office chair. The light on the monitor went from amber to a blinking, eager green, then settled in as the hard drive hummed into life.
“And maybe see if there’s a new build.” The monitor screen flickered to life, the gray popup in the middle asking for the magic words CTRL-ALT-DEL. I hit them, tapped the “mute” button so the Windows startup noise wouldn’t play, and input my password into the dialogue box that made its tardy appearance.
The light from the screen washed over me, cool and blue and calming. My fingers settled onto the keyboard, curved into QWERTY-seizing claws, the itching gone. This was where I felt at home. This was where I felt like I ought to be.
First order of business should have been to check email, but instead I pulled the USB key out of my pocket and slid it into one of the ports on the side of the monitor. The cursor changed into “I’m thinking” mode, and then a list of files popped up—everything I’d taken home from work in order to fill my evenings and weekends. Design files, mission thumbnails, dialogue spreadsheets, the works—they were all there, sitting and waiting patiently for me to pay them a visit.
I stared at the list for a minute, scrolling down to remind myself of exactly what I had and what I needed to do. There was a meeting with the level builders planned for tomorrow, but that wasn’t until three and I didn’t need to look at those docs before lunch. Dialogue? The sound engineers were making noise about wanting to do a reorg on the data structure on that stuff, so maybe that was the best choice. Multiplayer game type proposals? Better to wait until morning and see if there was bandwidth to do some prototyping…the scrolling line of docs went on and on. I watched it go, ticked off every item there and what I should be doing with it, and mentally shuffled them like a kid trying to get his Yu-Gi-Oh deck just right.
And there, down at the bottom, was the archive folder I’d pulled out and stuck on the drive for no good reason whatsoever. Zipped up, compressed to hell and gone, company property that wasn’t ever supposed to leave the building, it was there. There was no executable with it, nothing that could do anything other than sit and wait to be read, but I’d wanted it anyway, wanted to take it home and look at it one last time at my own pace before doing what had to be done.
Before erasing everything.
Before killing the version control database, before wiping the backups, before setting the entire goddamned thing on fire if I had to.
A chat window popped up in the corner of the screen. It was Michelle, of course, probably the last person I wanted to chat with at this moment, with the possible exception of myself.
HI, the IM read. It pulsed there for a minute, then another line added itself: UOK???
No, I typed back, as much to get rid of the alert flash as anything else.
…figured u would tell her. It came back quickly, as if she’d already written it before my response and just waited to send out of courtesy.
Yeah, well, she found out all on her own. My fingers stabbed the keys. Is there something you wanted to say, or were just keeping score?
There was a pause. Screw you, finally popped up. I just wanted to see how you were doing after…you know.
After I messed everything up. Yeah. My fingers sat on the keys for a minute. I have no idea how I’m doing, Shelly. So I thought I’d just get some work done while Sarah figures out if she’s going to leave me.
I’m kinda sorry.
Sorry. It was an interesting word, and a heavy one. You shouldn’t be, My fault. I screwed up, I should say sorry to you. I paused. And to Leon, and to the guys who were working with Terry, and….
Yes, you should. & U should get offline&start fixing ur life.
I felt my lips curve into a weak smile. At that moment, being online was all I had to keep me from doing something truly stupid, though I had no idea what form that stupidity might take. Best that I was sitting there, then. Best that I was chatting with the woman with whom I’d done the stupid thing that had put me in the position to do something stupid that—
I took a deep breath and got a hold of myself. Find a joke, hide behind it—that seemed safest. And still, it came out dangerous for the moment, and wrong. Afraid I’m going to start typing naughty words at you?
U always sucked at that anyway, she wrote back. And I don’t want to go there again either. Im sorry Ryan. We shouldn’t have done it. I shouldn’t have. But its done and now we pick up pieces&move on.
Easy to say, I thought, instead of typing, I’m trying. I’ve got a lot of sorrys 2 say.
The window blinked. Yeah U do.
I stared at it for a moment then closed the chat window.
“Yeah,” I said to myself. “I do.” With a couple more mouse clicks, I changed the settings on the chat to make sure that Shelly couldn’t interrupt me, and then turned to the matter at hand.
Or, rather, the matter that had gotten completely out of hand.
But still, one last look at the docs I’d written wouldn’t hurt. There might be something in there that I’d missed, something that could be picked up and integrated into Salvador. That way, I told myself, Blue Lightning would live on. Maybe the game and I were the only ones who would know it, but it wouldn’t matter. I’d have saved a piece of her. I’d have made the smallest part of her immortal.
And blown the rest away without prejudice or mercy, because frankly, it scared the shit out of me. Whatever it was, whatever it might have been, I needed it not to be anywhere near me anymore. And if that meant eliminating it altogether, then I’d happily stick a twenty-inch magnet up my ass and rub it all over every server we owned before I’d willingly deal with whatever it was that had crawled up out of the electronic depths and called itself Blue Lightning.
So. One last look, and then into the virtual trash. Empty the trash, do a defrag as follow up, and then get back to work on Salvador. It was that simple.
With a reflexive glance at the corner of the screen where Michelle’s chat window lurked, I clicked on the folder of Blue Lightning docs. It opened up like an imitation manila flower, the subfolders inside the petals of this particularly tricky blossom. And within each of them were the docs, arrayed patiently in long virtual rows, waiting to be read again.
I picked a subfolder at random. “Combat Model.” Perfect. Boring stuff, lots of numbers, not much likely to arouse fond nostalgia for the game.
The doc opened, a wasteland of charts and algorithms. Long lines of modifiers marched down the page. Distance, weapon type, armor type, stance—all of them lined up in endless tables and percentages. Each of those numbers had been guessed at, argued over, and tweaked and re-tweaked as playtesting revealed the inevitable flaws in our best-guess assumptions. Point enough multipliers in the same direction and things could get out of control pretty quickly. Reduce the number of modifiers or make them too small, and there was no palpable difference between weapons and game states—and lack of difference was deadly. There had been one session, I remembered, where Terry had been cleaning up, armed with just a pair of pistols because the distance modifiers had been too screwed up, and—
In the hallway, something moved. A single creak, the sound of a footfall on a floor that really deserved better treatment than I was giving it.
I stopped. Sat up. Listened for a moment. Footsteps in the hallway meant Sarah. Footsteps stopping in the hallway meant Sarah was standing outside my office door. A clever man would realize this and make use of the information, would call out something like “Sweetheart, is that you?” or even just her name. That would show that I was paying attention, that I cared that she was lurking just outside the space that we’d long ago reserved for me.
I waited another minute. There was a second, smaller creak, the sound of weight shifting on that long-suffering floor, and then nothing more.
My fingers found the mouse again and started scrolling back through the document.
I ran the numbers again. Range factors, too high. Armor values, too low until nearly the very end, demonstrated by single pistol shots knocking avatars off of rooftops and ten feet back and beyond. Trajectories that were too steep, then too flat, then somehow off the charts and going every which way but loose. If I closed my eyes I could see each of those sessions in turn, switching back and forth between controller and notepad as I wrote down everything that went wrong and the occasional thing that went right.
The memory was a good one. One playtest session in particular leapt to mind, a full-on six-hour fragfest that just kept goi
ng. I’d set it up to test weapons balancing; it had only been supposed to go for an hour. After all, we were still a long way from done, the game wasn’t polished, and everyone had other things to do. Except, that day, they didn’t. We hit the hour mark and nobody dropped out, so I reset the map rotation on the server and we just kept going. Hour after hour, we kept going, with me getting my head handed to me every which way but not giving the slightest little damn because there was something there, something exciting and ineffably cool that made playing that game the best thing in the world to be doing at that moment. We didn’t wrap up until near midnight, and nobody cared. We’d found the “unknown fun,” that special indefinable something that made a game sing, and from that moment forward, we knew, knew that the game was going to be something special.
And then BlackStone had pulled the plug, and it was all for nothing.
My gut knotted up like a balloon with all the air sucked out of it double-quick. They’d killed it. And now I was going to kill it all over again.
There was more creaking out in the hallway, the sound of someone waiting to be told they could come in. The pain in my belly unraveled and sorted itself out as anger. I didn’t need that passive-aggressive crap, not tonight. I’d messed up and I’d admitted it. If Sarah wanted to stay and work on things, I’d make it up to her. If she wanted to go, then she should go—I wouldn’t deny that she more than had the right. But to stand out there making just enough noise for me to hear, to make me have to invite her in—that was pushing it.
The anger felt good, so I went with it. Hell, I realized, that was the same button that she was always pushing, or one of them. I’d said I was sorry, and I’d meant it. But she always had to get me to give a little bit more, to somehow win by wringing out just one little extra twist of apology so that the tally ended up on her side of the ledger. And this time, I was having none of it. She wanted to stand out in the hall? Fine. Let her stand out in the hall. Let her wait. Let her twist in the wind a little bit instead of getting what she wanted.