Work Text:
Day 1
The bunker door groaned as Soap threw his weight against it again. The thick metal rang under his shoulder with a dull, hopeless clang.
"Fuckin’ thing’s welded shut by the ice," he muttered, breath clouding in front of his face.
Ghost didn’t respond. He stood beside the old radio panel, fingers working over dials and knobs like a man defusing a bomb. He gave it one last flick and listened. Static. Nothing else.
He looked up. "Dead."
Soap let out a long sigh and stepped back from the door. The cold outside had been closing in fast. One moment they’d been scrambling for cover in a whiteout; the next, the snow beneath their boots had given way, plunging them into a forgotten Cold War relic buried deep under the Siberian ice.
"Backup power’s barely holding. Battery’ll die by morning," Ghost added, nodding at the emergency lights above – flickering dim and angry.
Soap scanned the room, breathless from exertion, sweat cooling too fast on his back. "No sat signal, no evac, no heater, and we're stuck in a Russian coffin."
"Pretty much."
They stood in silence a beat longer, letting the weight of it settle. They looked around. The corridor behind them stretched in both directions, grey and frostbitten. Then, without another word, Ghost grabbed a flashlight and moved down the corridor.
Soap followed. The bunker groaned with age. Ice pushed in against the concrete, paint peeling off the walls in sheets like old skin. Soviet signs still hung overhead, faded Cyrillic letters hinting at rooms left to rot: ‘СТОЛОВАЯ.’ Mess Hall. ‘АРХИВ.’ Archives. ‘МЕДБЛОК.’ Infirmary.
They explored in silence, boots crunching on frost-covered floors. The infirmary had old cots, rusted equipment, and not much else. The mess was worse; tins of food long frozen solid, some burst from the cold. Everything smelled faintly metallic and dead.
They ended up in a back room with a few emergency supplies. A half-broken electric lantern. A single, too-thin sleeping bag. Two cracked military-issue canteens. And a wall-mounted thermometer whose red line hovered stubbornly below freezing.
Ghost took stock with clinical efficiency. "We’ll ration the MREs. Melt frost for water."
"How? Are we supposed to be licking walls?"
“Stop whining.” Ghost pointed to a rusted metal tray and the emergency battery pack. “Canteen under the light. Patience.”
Soap gave him a skeptical glance and snorted. “Me? You’re the one who didn’t notice the giant hole in the fuckin’ snowfield.”
Ghost looked over, eyes unreadable behind the mask. “Could’ve left you to freeze.”
“You didn’t.”
Ghost said nothing.
-
That first night, the cold hit harder than expected. The walls offered no insulation, and the few emergency blankets were stiff with age, crackling like paper.
Soap lay shivering in a corner, arms crossed tight, the sleeping bag pulled up to his chin. But the cold worked into his bones. He shook so hard his teeth hurt.
Ghost sat across from him, legs stretched out, back against the wall. He hadn’t bothered with the bag, content to freeze like a statue, curled up tight in his jacket.
"You’re not sleepin’ like that, are you?" Soap asked, voice cracking.
Ghost gave a grunt. “I’ll manage.”
"Bullshit," Soap snapped. "You’re an icicle in five hours, tops."
There was a pause. Then Ghost’s voice, quiet but certain: “Skin-to-skin. Standard protocol.”
Soap blinked. “...You serious?”
Ghost had already shed his jacket. “I’m not dying in here because you’re too shy to share a sleeping bag, Johnny.”
Soap cursed under his breath. “Right. Fine.”
They didn’t talk as they stripped down to boxers, each layer peeled off with the same reluctant tension as disarming a mine. Ghost didn’t look at Soap. Soap didn’t look at Ghost. They slid into the bag like awkward puzzle pieces, pressed chest-to-chest, their legs tangled automatically by lack of space.
Soap could feel every point of contact: Ghost’s bare arms, solid and cold at first, then slowly warming against his skin. The steady beat of Ghost’s heart under his ribs. The way he exhaled through his nose, slow and deliberate. The calloused edge of his hand brushing against Soap’s spine.
It wasn’t suggestive. It wasn’t anything like that.
Just survival.
"Still fuckin’ freezing," Soap muttered after a few minutes.
Ghost’s voice came low in his ear. “Give it time.”
-
Day 2
The second night, it happened.
The day had passed in monotony: searching again for an exit, trying to dig through blocked tunnels with old tools, going nowhere fast. They found a dusty can of military pemmican; decades expired, but it didn’t kill them. A small victory.
But the real discovery came before that.
They were exploring one of the lower levels. The air was colder down here, still and ancient. The walls were smooth concrete, ribbed with metal piping and lined with frost. They descended a narrow stairwell that spiraled down into what looked like a sealed sublevel, untouched by time.
Then they reached it.
A blast door so thick it looked more like a vault than an entrance. The mechanism was frozen, rusted, but with enough force and teamwork, it groaned open just enough to slip through.
A circular chamber, easily twenty meters across. The walls were curved glass, rimmed with steel, giving it the feel of an old research dome or observation room. In the center stood a raised platform surrounded by metal rails and a half-circle of consoles. Banks of old Soviet machines lined the far wall, analog monitors, switchboards, cassette reels, punch-card readers.
Rows of green diodes pulsed faintly in the dim. A low electrical hum thrummed beneath the floor, like a heartbeat buried in stone.
Soap stared. “What the fuck…”
“It’s a lab,” Ghost said, voice tight with tension. “Or something like it.”
He stepped forward, brushing dust and frost from a console with his gloved hand. Cyrillic labels marked each switch and dial; some faded, others still sharp.
One machine near the platform had a metal headpiece attached to it, a tangled crown of wires and sensors suspended by articulated arms. Beside it: two narrow reclining chairs, fitted with restraint cuffs at the wrists and ankles. Beside those, a cabinet filled with old EEG tape reels, some still labeled in spidery handwriting.
“Some kind of sleep monitoring system,” Ghost muttered. “EEG. Maybe even sensory isolation.”
Soap ran his hand along the padded edge of one of the chairs. “Isolation? Like deprivation?”
“Could be. Or dream study. Some of these consoles are set up to record REM cycles.”
Soap looked over his shoulder, uneasy. “Dreams?” he repeated. “Why the hell would the Soviets need all this to study dreams ?”
Ghost didn’t answer. He moved to one of the panels and flipped a faded switch labeled ‘ запуск '. Start.
The room shuddered softly. Lights above flickered. Then held.
A low, steady whine began to build from the machines like something old waking up.
“Maybe,” Ghost said, watching the lights with wary eyes, “we should stop touching things we don’t understand.”
Soap exhaled, trying to shake off the chill creeping up his spine. “Little late for that,” he muttered with a wry grin, but his voice was quieter than usual.
They stood there a moment longer. Two soldiers in a forgotten tomb, surrounded by the relics of minds they didn’t understand with machines that had no right to still work.
-
Soap was quiet as they crawled back into the sleeping bag, skin-to-skin again. Ghost didn’t speak either. Soap’s shivering stopped faster this time. Maybe the cold was getting to his head, or maybe it was just the silence that made him feel weightless.
He closed his eyes.
And dreamt.
He was outside. In sunlight. It flooded the field in gold and heat, a balm against the cold etched into his real bones. Grass moved lazily in the breeze. Somewhere nearby, water trickled.
Ghost stood in front of him, mask off. Not just unmasked – smiling . The rare kind, the one Soap had never seen but somehow recognized.
Ghost was laughing. A real, low laugh. The sound echoed in Soap’s chest like it belonged there.
And then Ghost stepped forward. Closer.
Too close.
"Johnny," he murmured, voice soft in a way it never was. "You’re late."
Soap tried to speak but couldn’t. His mouth opened; no sound came out. But Ghost smiled like he understood anyway.
"You're always chasing something," he murmured. "You’re never just… here."
Ghost’s hand brushed Soap’s arm. Then his chest. His fingers settled over Soap’s heart.
"You run too hot," he whispered. “Even here.”
Then he leaned in. Their foreheads touched.
“You don’t have to be anything right now,” Ghost murmured. “You can just… feel .”
Soap’s body shivered, not from cold this time. A pulse of emotion ran through him.
Then the field turned white.
Soap woke with a jolt.
His heart was pounding. Ghost was still asleep against him, breath steady, jaw slack beneath the mask, arm wrapped loosely around Soap’s waist.
He didn’t move. He just lay there, shaken and burning.
He didn’t sleep again, either.
-
Day 3
They kept busy. Melting frost into a trickle of water. Scavenging the other rooms. Rationing what they had. The frost retreated in tiny circles around the lantern’s heat.
The strange machinery gnawed at their minds but remained unspoken between them.
That night, the dream returned.
But this time, Ghost was sitting beside him, leaning back on his elbows. Watching clouds shift in a painted sky.
Soap sat down slowly beside him. “Still here, then?”
Ghost turned. “I was waiting for you.”
Silence stretched. Then Soap reached out and touched Ghost’s hand.
The contact sent a pulse through his whole body. Too sharp, too real . Their fingers laced together like they’d done it a hundred times.
Ghost leaned in slowly. His hand settled on Soap’s thigh, gentle, grounding. Soap met him halfway.
Their lips brushed, soft and uncertain at first, as if the dream itself held its breath. Then Ghost deepened it, warm and steady, a hand rising to cradle the back of Soap’s neck.
The kiss wasn’t hungry. It was passionate, filled with adoration. Love .
When they broke apart, their foreheads rested together.
“I didn’t think I’d ever get this,” Soap whispered.
Ghost didn’t answer. Just closed his eyes and exhaled.
Warmth flooded through Soap, rich and unbearable.
He woke up crying.
Tiny, silent tears on his cheeks. He wiped them quickly. Ghost still slept, his back turned.
Soap curled tighter into him.
-
Day 4
Ghost grew quieter, distant even.
They worked side by side, breaking frost off sealed doors and carefully melting more water. They found a few sealed crates – mechanical parts, preserved documents in Russian, half of it unreadable.
Soap caught Ghost staring at him, once.
Too long.
When he met his gaze Ghost looked away.
They didn’t talk about it. But Soap felt it, like they were sharing something they hadn’t meant to. Something neither of them could explain.
That night, Soap's dream deepened. The dream picked up where it left off.
Same field. Same sunlight. But this time, Soap spoke first.
"You’re not real," he said, voice low, splintering at the edges.
Ghost tilted his head, that maddening knowing look in his eyes. "And yet, you keep coming back."
Soap swallowed. The lump in his throat burned like a frostbite.
"You’re not like him,” he whispered.
Something in Dream-Ghost shifted. The quiet smile faded. Just a little. "No. But you wish I was."
The truth landed with unbearable weight. Soap felt it everywhere. His knees buckled slightly, legs turning soft under him. His hands curled into fists at his sides, half to stop himself from shaking, half to keep from reaching out again.
His chest constricted, breath hitching like his lungs couldn’t decide if they wanted to sob or scream. It wasn’t just disappointment. It was grief. Fresh, immediate, like someone had just died in his arms.
His shoulders caved. His throat worked around a big gulp. The air in the dream was warm, too warm, and it it felt cruel, suddenly. Like the dream was mocking the fact that he couldn’t feel this in waking life. Not truly.
Not safely.
Soap squeezed his eyes shut, trying to fight it, but heat pooled behind his eyelids. A few tears spilled down silently, streaking along the curve of his jaw.
“I know,” he whispered to no one. “I know you’re not him.”
But the Dream-Ghost just looked at him, eyes full of something that wasn’t quite pity. Wasn’t quite love. Wasn’t real.
And that, somehow, hurt more than anything.
He touched Soap’s face, hand warm and grounding. And Soap leaned into it like a man starved.
Suddenly, the field was gone. Only fog now. Heavy, pale, endless. Soap stood alone in it. The air was thick. It was like breathing in pain.
He turned, calling out. No voice came. Not even an echo.
Somewhere ahead, a shadow moved. A familiar silhouette. Ghost.
Soap ran toward him, but the more he moved, the further Ghost seemed. Out of reach. Out of touch.
Each breath was like inhaling cotton and silence and everything he couldn’t say in waking life.
The more he fought toward Ghost, the more the fog thickened. It pressed in on his chest, on his shoulders, wrapped around his throat. Choking him. A silent, unbearable pressure. Like the weight of every moment he hadn't said what he needed to.
And still, Ghost was slipping away.
The white wall swallowed him without a sound.
Soap stopped. Let his hands fall limp at his sides.
His heart ached so loud it felt physical. Not metaphorical. Not poetic. Just pain , clean and sharp, spreading under his ribs.
His knees hit the floor. He knelt in the fog, in the silence.
He didn’t cry.
He couldn’t.
Even his grief had been absorbed by the white.
He woke up with his hands clenched around the sleeping bag.
And this time, Ghost was already awake beside him. Watching. His hand resting lightly on his wrist.
The silence was deafening.
They didn’t sleep again that night. But they didn’t let go either.
-
Day 5
Restless from tortured nights, Soap returned to the strange lab beneath the vault-like door. The machines hummed steady, alive in the stale air.
Soap’s hand brushed the metal headpiece again.
A sudden surge of static flickered through the monitors, green lights blinking erratically. The low hum rose into a vibration that thrummed through their bones. The machinery was awake, and so were his dreams.
-
Soap blinked. The room was soft with morning light, warm through gauzy curtains. A window was cracked open. Birds outside. A kettle whistling distantly. The air smelled like fabric and pine.
He didn’t know this place. Couldn’t remember walking into it. But his chest knew. His bones. His breath.
This was home.
He turned over slowly.
Ghost lay beside him, bare-chested, hair mussed, only a sheet slung over his hips. He looked younger here. Softer, somehow.
Soap sighed with relief, last night’s dream, his absence, still lingering heavy in his heart.
He was watching Soap with that quiet, unreadable focus. But there was no wall between them here. No armor. No distance.
Soap reached out and touched his shoulder. Warm. Real. A slow drag of fingers down to Ghost’s elbow, as if testing the dream’s strength.
Ghost’s hand found his waist under the covers. Skin on skin. A warm palm, strong and still.
“Been waitin’ for you to wake up,” he murmured.
Soap swallowed hard. His throat felt tight, like something inside him was pressing to the surface.
“I hoped you’d be here,” Soap whispered.
They shifted closer together under the sheet, chests touching, stomachs brushing, legs tangled. Ghost ran his hand over Soap’s back, slow, reassuring, and unbearably intimate. Like he had the right. Like he knew him, all the way through.
“Johnny,” he said softly, and it broke something in Soap. Just his name. No rank. No mask. Just him.
Soap buried his face in Ghost’s neck, exhaling hard. The heat of skin. The scrape of stubble. The weight of being held like this. It was too much.
He kissed Ghost’s shoulder. Then his collarbone. Then higher, his jaw, his cheeks, his forehead – slowly like worship. Ghost let him. Tilted his chin up, hands never leaving Soap’s body.
“I need this,” Soap choked, barely above a whisper. “I-fuck, I need you. I don’t care if it’s not real.”
“It feels real,” Ghost said.
Soap kissed him. Deeply. Like the truth lived in his mouth. Ghost answered with his whole body, their torsos pressed tight, mouths moving like memory. Their hands roamed. Soap’s fingers explored tight muscles, ribs, the quiet shiver at Ghost’s hip. They weren’t desperate. They were hungry , yes, but careful. Loving . They knew each other here.
His hand curled tightly around Ghost. He groaned into the kiss, pressing his hips insistently into the touch. Soap stroked him slowly, pouring all his desire, love and passion into that fleeting contact. He savored the weight in his hand and the sounds gasped into his ear.
“I love you,” Soap breathed, forehead to Ghost’s. “Even if you’re not real. Even if I never get to say it when I wake up.”
Ghost just kissed him again, held him even closer, and said: “I know.”
Soap woke up gasping and sweating.
The warmth was gone. The bed, gone. The birdsong, the smell of pine, the soft hand on his back. All of it had been stripped from him like skin torn away.
He lay in the sleeping bag on the cold concrete floor, spine aching from the uneven ground. The air was sharp in his lungs, and his chest was already heaving like he’d been crying in his sleep and hadn’t finished.
And he was alone.
His fingers curled in reflex, reaching out for something that wasn’t there. His palm pressed flat to the floor, searching for warmth.
Nothing.
His mouth tasted like the dream. His lips still tingled. He had kissed him. Touched him. Loved him.
Soap rolled onto his side, curled up tight, and held his hands to his chest like that might keep the ache from spilling out of him. But it was no good. The pain wasn’t sharp. It was dull and total, like something huge pressing on his ribs. Like grief packed into his bones.
He tried to breathe evenly, but it came in shallow gasps. No tears. Just a deep tension, a coiled panic that threatened to turn into something louder.
Footsteps. Then a crouch beside him.
Ghost’s voice was low. Careful. “Johnny?”
Soap squeezed his eyes shut. Not now. Please not now. He didn’t trust his voice. Not the way it would break. Not the way it would beg.
“Bad dream?” Ghost asked, softer now.
Soap didn’t answer.
Ghost didn’t press. Just waited. Watching, no doubt. Measuring him like he always did, cataloguing every twitch, every tremor. His silence was maddening and merciful all at once.
Then Soap felt it: a hand, resting lightly on his shoulder.
Warm. Real. Not possessive. Just there.
He nearly sobbed at the contact but forced himself to stay still.
“Go back to sleep,” Ghost said eventually. “I’m here.”
Soap nodded, just once. But he didn’t close his eyes. Couldn’t. If he went back to sleep, he might dream again, and he didn’t know if he could survive waking up another time without him.
-
Day 6
The bunker was still cold, but less bitter now that they'd rigged a small fire in a vented steel drum. The frost had stopped forming on the walls. They’d melted enough to drink without rationing, and there were still a few MREs left.
Physically, they were surviving.
But Soap moved like he was walking underwater.
He stood at the edge of the fire, arms crossed, shoulders tense. Normally by now he’d have made some dumb joke about Ghost’s sleeping posture or how he snored like a tank engine. But this morning? Nothing. Just quiet chewing. Staring at the cracked concrete wall like it was saying something only he could hear.
Ghost watched him over the rim of a steaming cup of bitter instant coffee.
After a while, he said, low and flat: “You’re not talking.”
Soap blinked. “What?”
“You haven’t made fun of me once today,” Ghost said. “Didn’t smirk. Didn’t call me sunshine. Didn’t ask what my face looks like under the mask. It’s weird.”
Soap exhaled, forcing a grin. “Maybe I’m just enjoying the peace.”
“You’re not.”
That shut him up. He looked away.
Ghost stood and came to stand beside him, shoulder to shoulder. Close, but not touching.
“What’s goin’ on with you?” he asked, direct. “You’re quiet. Detached.”
Soap shrugged, stiff. “Just tired. Haven’t been sleeping great.”
Ghost scoffed, soft. “Understatement of the year.”
Silence stretched between them, taut and uncomfortable.
“What were you dreaming about?” Ghost asked.
Soap flinched. Not visibly. Not enough for most people to notice. But Ghost noticed.
“I said I didn’t wanna talk about it,” Soap muttered.
“You didn’t say anything,” Ghost replied instantly.
Soap stared into the fire, jaw clenched. His hands twitched at his sides, like they wanted to curl into fists or reach for something that wasn’t there.
“It felt real ,” he said finally, voice rough. “Too real. A home I don’t remember, but somehow knew. You were there. We were…”
He stopped himself.
Ghost waited.
“…You looked at me like I mattered,” Soap said, quieter now. “Not like your sergeant. Not like your mission partner. Just me.”
Ghost didn’t respond. Not right away.
And that silence. That was worse than anything.
Soap laughed once, bitter. “Forget it. Just a dream.”
Ghost’s voice came low, unreadable. “Did I hurt you in it?”
That made Soap look up, surprised. “No...”
“Then why do you look like someone tore you in half?”
Soap didn’t have an answer. His throat felt like it was full of glass. He shrugged again – a poor defense.
Ghost’s gaze lingered.
Then, almost reluctantly, he said: “You didn’t imagine everything.”
Soap frowned. “What?”
Ghost looked away. “Forget it.”
“No. Say it.”
Ghost’s jaw worked behind the mask. “The dreams. I’ve had some too. Not exactly the same. But... close,” he muttered.
That silence returned, but this time it buzzed, alive with heat and ache and something dangerous.
Soap swallowed. “Why didn’t you tell me?”
Ghost stared into the fire, eyes unreadable. “Didn’t want to admit it.”
Soap’s voice cracked. “And now?”
Ghost turned to him fully. Not close, not touching, but open , in a way he rarely allowed.
“I think,” he exhaled, “I’ve been holding something back so long, I don’t know how to let it out without ruining everything. But if I don’t, if I keep pretending this isn’t tearing me up too, then I’m gonna lose the only real thing I’ve had in a long time.”
Soap didn’t move. Didn’t breathe. Didn’t blink.
And then Ghost added, even softer: “So tell me if I should stop.”
Soap didn’t tell him to stop.
He stepped forward instead, just one breath’s distance between them now. His hands hovered at Ghost’s chest, unsure where to land, and then they simply did . Flat palms over fabric. Heat through layers. The first true contact made by choice, not necessity.
Ghost didn’t move, but his eyes burned beneath the mask. Watching Soap like he might vanish.
Soap reached up, slow but sure, and touched the edge of Ghost’s balaclava.
A silent question.
Ghost nodded once.
Soap peeled it up just enough to reveal his mouth. The mask caught at his nose. The skin underneath was warm, flushed, vulnerable in a way Ghost had never allowed him to see before. Stubble, a scar across his upper lip, a tremble at the corner of his mouth.
Soap’s thumb brushed that scar.
Then, gently, he leaned in and kissed him.
It was soft. No dream could’ve held the quiet intake of breath Ghost gave him, the slight hitch in his chest when Soap’s fingers slid into his jacket, pressing them closer.
Then Ghost kissed back. And it was different.
Not restrained. Not hesitant . But deep and grounding and starving. His hands found Soap’s jaw, pulled him in like something he’d been fighting to resist for too long, and Soap let go. Gave in. Mouth open, kissing him back with the kind of raw honesty he’d never said out loud.
Their bodies pressed together. Chests. Hips. Hands gripping at fabric, jackets half-off, fingers slipping under layers to find skin. The fire crackled behind them, casting shadows across the bunker walls, and still they kissed. Slow touches. Quiet sighs.
Soap let his forehead fall against Ghost’s. He was breathing hard.
“Touch me,” he whispered. “Please. I need- fuck, I need to feel something real. ”
Ghost’s hands found his waist, steady and firm. His eyes searched Soap’s face. Then he pressed another kiss to his mouth.
He peeled Soap’s shirt off first. Then his own.
Chest to chest, their skin touched – truly touched – for the first time. Not just for survival.
Soap’s hands traced the lines of Ghost’s ribs, the scars there, the soft tension in his muscles. Ghost’s lips found the side of his neck. A slow drag. A low sound in his throat.
It wasn’t just want. It was need.
Not to fuck.
To be close.
To be held.
To finally let the silence between them say something true.
They ended up on the floor, somewhere between the firelight and shadow, a blanket half beneath them, half forgotten.
Ghost lay on his back, eyes half-lidded, expression open in a way Soap had never seen, not even in dreams. Soap was straddling his hips, chest to chest.
Their mouths never strayed far. They were drawn to each other like magnets, like instinct, like a need they’d both buried so long it had started to ache. Kisses trailed from jaw to mouth to throat, again and again, soft and slow, like mapping each other’s skin would keep them real.
Soap’s hands moved freely now; over the planes of Ghost’s chest, his sides, down to his groin. One of Ghost’s hands was curled around the back of Soap’s neck, fingers tangled in his short hair, keeping him close.
It was quiet. Only their breathing, soft gasps between kisses, the faint shift of skin on skin.
“I don’t want this to be a dream,” Soap whispered, his lips brushing Ghost’s as he said it.
“It’s not,” Ghost murmured. “I feel everything.”
Soap pressed his forehead to Ghost’s. “You feel good. So fucking good, Simon.”
He shifted, slow and unhurried, hips brushing against hips, and the quiet sound Ghost made in the back of his throat sparked heat low in Soap’s spine.
Ghost’s hands found his waist, fingers slipping over bare skin, pulling him closer, guiding their bodies flush. The friction between them built with every breath. Still soft, still slow, but no longer just comfort. It was wanting, pure and undeniable.
“You’re warm,” Soap murmured. “Didn’t think I’d ever feel warm again.”
Ghost’s voice was lower now, rough. “Keep saying things like that, and I’m not letting you up again.”
Soap chuckled. He kissed the corner of Ghost’s mouth. “Not going anywhere.”
They moved together in a gentle rhythm. Hands roamed. Mouths rediscovered. Bulges pressed together. Each small and honest touch saying: I’m here. I want this. I want you.
“Johnny…”
He said it like it meant something.
Like it always had.
And for the first time since the bunker swallowed them whole, Soap wasn’t cold anymore.
