Actions

Work Header

Roommates

Summary:

“You could stab me,” Jason said. “I’d forgive you.”

Peter’s hand froze mid-stitch. He hadn’t even finished tying off the last thread.

He looked up.

Jason was watching him — not the wound. Not his work. Him.

Notes:

I rebuke the AO3 curse

yes, this was inspired by Roommates by Malcolm Todd. Most of my writing are inspire by music.
More specifically, that one animatic of it. Two guys chilling in a bathtub.

(See the end of the work for more notes.)

Work Text:

The first almost.

 

The apartment was small. Not Gotham-small, where you paint a fortune for a window and a pipe that wasn't broken. It was just…tight. Cramped. Lived in. 

 

Peter made it feel like that.

 

Jason used to wake up in silence. He liked that. Silence meant no one was sneaking up to you, touching you. Silence meant that he was in control.

 

But now he woke up to the low hum of life–to the distant click of a spoon against a chipped mug, the squeak of peters socked feet against the linoleum, and sometime, when he listened closely, he could hear peter humming under his breath. Off-key. Careless. Alive.

 

This morning the apartment was still soft with sleep. Pale orange light bled through the cheap blinds. The radiator let out a hiss that never stopped.

 

Jason slowly blinked awake on the couch, arm thrown over his face. Blankets have on, half dragging on the floor. His back ached– again. He didn't remember falling asleep here.

 

He smelled toast. 

 

The scent was burnt– not quite charred, but definitely brewing. And the coffee machine was already whirring. That wasn't normal. He was the one who made it. 

 

He dragged himself up, running a hand through his hair slowly as he sat. He muttered something like kill me, then he padded toward the kitchen.

 

Peter was there. Shirt wrinkled, curls still damp from a shower. He leaned against the counter, mug in one hand and in the other– his phone, balanced precariously as he read something with his brow buried in concentration.

 

The toaster let out a dramatic clunk. Smoke curled up from the second slice of bread.

 

Jason blinked blearily at him. “You tryin’ ta burn the place down or sum?”

 

Peter jumped, nearly spilling his coffee. “Jesus– warn a guy next time.”

 

Jason shrugged, “you're the one setting off the smoke alarms before 9 AM.”

 

Peter glanced at the toaster, then at the smoke rising lazily in the shaft of morning light. “It's… well done.”

 

“Charcoal,” Jason corrected, already moving to unplug the toaster. He waved his hand towards the ceiling just in case. “You got a death wish or something?”

 

Peter didn't answer. Instead, he turned, opened the cupboard, and grabbed a second mug.

 

“The coffees on,” he said, almost too casually. “Didn't know how you took it.”

 

Jason stared. 

 

Peter didn't make coffee. Jason always had control of that ritual. That was his territory, his routine.

 

But Peter was standing there now– dark circles under his eyes, hands steady, offering him something small. Something domestic.

 

Jason looked away, “I take it black.”

 

Peter hesitated, then slid the mug across the counter. It stopped just short of Jason's fingers

 

“I put in a bit of sugar,” Peter said. “Just in case.”

 

Jason didn't answer. Just picked up the mug, warm between his hands, and sipped.

 

Too sweet. He hated it.

 

But he drank the whole thing anyway.

 

Peter took a bite of his ruined toast and chewed with an exaggerated grimace.

 

Jason leaned back against the fridge and watched him. The early light made Peter glow a bit– like he was made for daylight. Like he didn't belong in a place like this–all cracked tiles and bruised shadows.

 

There was something domestic in the air. Familiar. Dangerous. The kind that made you wish for more mornings. 

 

Peter wiped his hand on a dish towel, looking everywhere but jason.

 

Jason’s fingers tightened around the mug.

 

Say something. 

 

He didn't.

 

Peter offered him a smile– small, hesitant, a little crooked– and Jason looked away first.

 

Almost.

 

 

The second almost.

 

It was quiet. Not the good kind.

 

The kind where every little sound echoed too much– the slow drip from the bathroom faucet, the hum of the fridge cycling, the rustle of Jason's jacket as he finally– finally– sat down on the edge of the couch.

 

He was bleeding. Not much, but enough to make Peter tense up.

 

“You didn't have to wait for me,” Peter said quietly, already grabbing the medkit from the shelf. “Could've patched yourself up.”

 

Jason didn't answer. Just peeled off his ruined hoodie with a grunt and dropped it on the floor like it weighed ten pounds.

 

Peter didn't say anything else. Just knelt in from of him, the gauze unrolling with a soft hiss between his fingers

 

Jason’s shirt was half torn, soaked through near his shoulder where blood had bloomed and dried into rust-red patches. The cut looked deep and angry.

 

He swallowed. 

 

“I'm gonna have to stitch this,” Peter murmured.

 

Jason nodded, jaw tight. His eyes never left Peter's face. That always made it harder–being watched. Being seen. 

 

Peter looked down, ungloved hands now ghosting over Jason's skin as he cleaned his wound. The scent of antiseptic filled the space between them– sharp, cold, familiar. It clashed with the rest of Jason: leather, smoke, warmth. Something woodsy, something unnameable. Like rain in a city.

 

“You're quiet,” Jason said after a beat.

 

Peter's lips twitched. “I usually am when I'm trying not to stab someone.”

 

Jason huffed, and Peter felt it– the subtle shift in the air. Like the room had leaned in just a little closer. Like something soft had cracked open between them. 

 

“You could stab me,” Jason said. “And I'd forgive you."

 

Peter's hands froze mid-stitch. He hadn't even finished tying off the last thread. 

 

He looked up.

 

Jason was watching him– not the wound. Not his work. Him.

 

There was blood on his chest, bruises forming like ink across his ribs, and still… he looked calm. Open. Too open. Like if peter said something, anything, he would let him . Wouldn't run.

 

The air was too thick.

 

Peter's fingers hovered above the skin– a few inches from Jason's pulse. He could faintly see it beat beneath the surface. Strong. Alive.

 

“You're not invincible, y’know,” he said, voice barely above a whisper.

 

Jason tilted his head. “Neither are you.”

 

Their eyes locked again.

 

Peter could’ve leaned in. could've pressed his forehead to Jason's, just to feel him. Just to let it be real for a second. Just long enough to forget everything they were too afraid to say.

 

Instead, he looked back down. Finished the stitch. Tied the knot. Cleaned the edges with hands shaking more than they should have.

 

“There,” he said. “Done.”

 

Jason didn't move. Just sat there, eyes heavy, lips parted like he was waiting for Peter to do something. To break the moment or claim it. 

 

Peter didn't. 

 

He started packing up the kit instead. Said something soft and useless like, “Try not to tear it open again.”

 

Jason stood slowly, brushing past him.

 

For a second, their arms touched. 

 

Warm skin. A flash of breath. A heartbeat’s hesitation.

 

Then Jason was gone– off toward his bedroom, no words, no sound but the soft crack of the floorboards.

 

Peter sat there a while, the smell of antiseptic still lingered on his hands.

 

Almost.

 

-

 

The third almost.

 

The city never slept, but it did fall into a kind of haze around 3 am.

 

Even Gotham– always pulsing, always rotting somewhere beneath the skin– got quiet enough to breathe if you waited long enough. The sirens dulled. The drunks stumbled home. Even the streetlights buzzed a little softer.

 

Jason liked it that way.

 

So when he heard the creak of the window opening, followed by a gust of cool spring air, he didn't question it. He just followed.

 

Peter was already sitting at the edge of the fire escape, legs dangling like a kid that was too stubborn to admit that he wasn't afraid of falling. The city glowed below him in blotches of neon oranges and blues, flickering off rusted metal, and crumbling brick.

 

Jason hesitated in the window frame. Watched him for a second.

 

The wind played with Peter's hair. He was in one of Jason's old hoodies– the navy one with the frayed cuffs– sleeves pushed up, hands resting on his knees. Still. Too still.

 

Jason grabbed two beers from the fridge before climbing out after him.

 

He passes on over without a word. Peter took it, twisting off the cap with a quiet click, then let the silence fall between them like something sacred. 

 

For a long time, they just sat there. Shoulder to shoulder, the type of closeness that had Jason feeling like something in his ribs might break if he breathed too deep.

 

He looked up. The sky was clearer than usual. fewer clouds, more stars. The kind you didn't get in Gotham unless you were lucky.

 

Or maybe it was peter. Peter made things quieter. Brighter. Easier to look at.

 

“Do you ever think about…leaving?” Peter asked suddenly, voice soft.

 

Jason looked over, “Like gotham? Or in general?”

 

“In general,” Peter murmured. “This world. This univers. Just… vanishing. No strings.”

 

Jason took a long sip of beer. Thought about it.

 

“Yeah,” he said. “All the time.”

 

Peter nodded. Like he knew that already. like he wasn't really asking for confirmation.

 

They went quiet again. 

 

 Breeze rolled over the rooftops, tugging at their clothes, stirring the smell of rain and distant smoke. There was always something burning in Gotham, even if you couldn't see it.

 

Jason stole a glance sideways. Peter had his head tilted back now, eyes on the stars, throat exposed, lashes low. He looked tired. In the broken persistent way only someone like Peter could  be– like a light bulb flickering but refusing to go out.

 

“You're not sleeping,” Jason said.

 

Peter hummed. “Neither are you.”

 

Jason smirked faintly, “Touché.”

 

Peter turned his head. Their eyes met in the half-light. It was stupid, how long they looked. How long they held.

 

Jason felt it again– that pull. That unbearable urge to reach out, to close that inch between them, to touch Peter's face to see if it would ground him or unmake him.

 

“I ever tell you,” Peter said, voice suddenly small. “That you the first person here that's made me feel real?”

 

Jason blinked.

 

 Peter didn't wait for a response. Just looked back up at the sky like he hadn't just said something that fractured Jason's ribs from the inside out.

 

Jason’s hand twitched around the metal. He could feel the warmth of Peter's leg next to his, their knees just barely touching.

 

He could do it. Right now. Lean in. Kiss him.

 

Peter wouldn't stop him.

 

He could see it in the way Peter's fingers clenched around his bottle, the way his jaw flexed. They way he didn't move away.

 

But Jason didn't move forward either.

 

Because if he did– if he touched this thing– he knew it would break him.

 

So he sat there. Paralyzed by the weight of almost.

 

Peter turned back towards him, lips parted like he ight say something else.

 

Jason beat him to it, “we should go in.”

 

Peter's face didn't fall, exactly. But it did settle. Like a door slowly closing.

 

“Yeah,” he said. “Okay.”

 

And they climbed back in through the windows, the beers half finished, the sky still wide open behind them. 

 

Almost.

 

-

 

The fourth almost

 

The rain hit them halfway home.

 

It hadn't been raining when they left for a grocery run– just cold and grey, the way Gotham always was in early spring. But by the time they stepped out with two paper bags and one umbrella between them, the sky cracked open like a wound.

 

The umbrella broke almost immediately. Jason cused, tossed it in the trash, and pulled his hood up. Peter just laughed, soft and resigned, and trudged after him, one hand awkwardly trying to keep the paper bag from breaking.

 

By the time they got back to the apartment, they were soaked to the bone.

 

Jason's hair was plastered to his forehead, dark strands curling around his jaw. His shirt clung to him in a way the peter absolutely did not notice.

 

Peters hoodie was useless– it hung heavy off his shoulders, dripping water in uneven trails down his spine. His jeans squelched when he moved. His fingers were numb.

 

The door slammed shut behind them, muffling the storm.

 

Jason dropped the grocery bags on the table, breathing hard through his nose. He shook his arms like a wet dog, splattering water across the floor, and grumbled something unintelligible.

 

Peter stood in the doorway, shivering, letting puddles form around his sneakers. He didn’t move. Didn’t speak.

 

The room buzzed with tension — not the angry kind. The other kind. The kind that sneaks in when you’re exhausted and drenched and standing too close to someone you care about too much.

 

Jason finally turned around.

 

“You’re soaked,” he said, voice low.

 

“So are you,” Peter replied, too softly.

 

Jason stared at him. The light from the kitchen haloed behind his head, throwing his face in shadow. His expression was unreadable — mouth tight, eyes flickering.

 

Peter should’ve gone to change. Should’ve said something light to cut the tension. I guess we forgot to check the weather app again. At least we got eggs. Something.

 

Instead, he just stood there, blinking slowly, every part of him cold except where his heart was beating too loud.

 

Jason moved first.

 

He stepped forward, slow, careful, like Peter might bolt.

 

When he reached him, he didn’t say a word — just reached up and gently tugged at the collar of Peter’s hoodie, peeling it back, fabric squishing wetly. His fingers brushed Peter’s neck — warm, even in the cold.

 

Peter sucked in a breath, but didn’t move.

 

Jason dropped the hoodie to the floor without looking away.

 

“You’re freezing,” he muttered.

 

“I’m fine.” Peter’s voice cracked a little when he said it.

 

Jason didn’t answer. His hand stayed there, curled near Peter’s shoulder like he didn’t know what to do with it. Like he wanted to keep touching but wasn’t sure he was allowed.

 

Peter stood still. Waiting. Hoping.

 

Jason’s thumb brushed the edge of Peter’s collarbone. His eyes flicked to Peter’s mouth, lingered, then dropped again.

 

Peter almost said his name.

 

Almost.

 

Instead, Jason took a step back. Broke the moment. The cold rushed in between them like a slap.

 

“There’s a towel in the bathroom,” Jason said, turning away. “I’ll put the food away.”

 

Peter stood there for another five seconds. Let the silence wash over him. Let the moment settle in his chest like dust.

 

Then he stepped out of his soaked shoes and padded down the hall, the echo of Jason’s fingers still warm on his skin.

 

Almost.

 

 

The fifth almost

 

It had been a bad night.

 

One of those patrols where everything goes sideways — too fast, too violent, too personal. He couldn’t even remember half of it. Just fists, noise, blood. The taste of copper in his mouth. Someone laughing — not him.

 

By the time he got home, his knuckles were split open and his ribs ached like hell. He didn’t bother taking off his boots. Just stood there in the middle of the dark apartment, soaked in sweat and rain and streetlight.

 

Peter was already home.

 

He’d left his mask on the counter. A quiet sign that he was okay. A small mercy.

 

Jason stood still for a long time. His heart hadn’t stopped hammering yet.

 

Then he walked into the bathroom. Turned the water on. Sat on the edge of the tub and waited for the faucet to fill the basin with something close to peace.

 

The water was lukewarm at best — the heater was still busted — but he didn’t care. It was enough. It was quiet.

 

He climbed in fully clothed. Jeans, shirt, all of it. The water soaked through slowly. Heavy. Real.

 

And for a second, he just breathed.

 

The bathroom light flickered. The radiator ticked. A single drop of water dripped from the showerhead every few seconds — like a clock counting down to something he couldn’t name.

 

Then he heard the door creak.

 

He didn’t turn.

 

Peter stood in the doorway, just a silhouette in the dim light, his curls damp, eyes shadowed.

 

Jason didn’t say a word. Just leaned his head back against the tiled wall and closed his eyes.

 

He left the door cracked.

 

Peter stepped in.

 

Soft footsteps. No words. He lowered himself into the tub across from Jason without asking, knees bumping Jason’s as he folded himself into the too-small space. His clothes were still wet from the rain — clinging to him like a second skin.

 

The water rose a little. Sloshed over the edge.

 

Neither of them moved.

 

Jason opened his eyes slowly. Met Peter’s gaze across the narrow space between their knees.

 

It wasn’t comfortable — not physically. The tub was too small, their legs tangled awkwardly. Jason’s boot brushed Peter’s shin. Peter’s elbow was wedged against the wall.

 

But none of that mattered.

 

It was quiet here.

 

Safe.

 

Jason reached onto the small stool by the tub, grabbing a crushed carton, and slid a cigarette between his lips. He lit it with the cheap red lighter he kept in his jacket — which was currently soaked through and clinging to his shoulders.

 

He inhaled. Let the smoke fill his lungs. Held it there until it hurt.

 

Peter watched him with unreadable eyes.

 

Jason reached into the carton again. Offered one across the distance, wordless.

 

Peter blinked, then leaned forward. Took it.

 

He didn’t ask for a light.

 

Instead, Peter slid closer. Slowly, carefully — until he was sitting between Jason’s legs. Not straddling, not touching — but there, in the space Jason never let anyone into.

 

He moved like it was natural.

 

Like he belonged there.

 

Peter tilted his head. His cigarette hung loose from his mouth. And without speaking, he pressed the tip of his unlit one to Jason’s.

 

Their hands never touched. Their faces nearly did.

 

Jason’s breath caught in his throat as the flame passed between them.

 

The ends flared, ember-bright. Smoke curled between their mouths like a secret.

 

They stayed close. Closer than friends should. Not close enough to call it something else.

 

The kind of closeness that breaks you slowly.

 

Jason didn’t pull back.

 

Peter didn’t move.

 

They just sat there. Breathing each other in. Letting the silence speak louder than anything they could’ve said.

 

The cigarette trembled in Jason’s hand, but he didn’t drop it. Couldn’t.

 

His chest ached with everything he couldn’t name.

 

The way Peter looked at him — calm, steady, ready — it almost broke him. Almost made him reach out. Almost made him give in.

 

But he didn’t.

 

Peter sat back again. Gently. Smoke curling from his lips, disappearing into the steamy air.

 

Their knees stayed pressed together under the water.

 

The silence held.

 

And the moment passed.

 

Almost.

 

 

Not almost

 

The apartment was too quiet.

 

He knew Jason was back — the window had been unlocked again, just slightly ajar, and Jason always did that when he came home late and didn’t want to wake Peter.

 

But Peter was still awake. Sitting on the floor in the dark, back against the couch, knees drawn up, a blanket around his shoulders. Not even pretending to sleep anymore.

 

He heard the soft creak of boots in the hallway. The heavy, slow step of someone who hurt. Someone carrying more than just bruises.

 

Then the sound of clothes dropping onto the bedroom floor. A quiet hiss of breath. Pain.

 

Peter stood up slowly. Moved on instinct.

 

He padded to the door and knocked once — light, uncertain.

 

“Jay?” he asked.

 

No answer.

 

He opened the door anyway.

 

Jason was sitting on the edge of the bed, shirtless, back to the doorway, head bowed. There was blood crusted along his ribs and fresh swelling starting on his cheekbone. His knuckles were split open again.

 

Peter exhaled softly.

 

Jason didn’t move. Didn’t turn. Just said, “Hey.”

 

Peter crossed the room and sat beside him without asking. Close enough for their knees to touch.

 

“Rough night?”

 

Jason huffed a humorless breath. “You could say that.”

 

Peter looked down at Jason’s hands — resting limp in his lap, blood drying at the fingertips. Carefully, he reached out and took one.

 

Jason didn’t stop him.

 

Peter held it gently, inspecting the damage. His thumb ran over a split knuckle, slow and deliberate.

 

“You should clean this.”

 

“I will.”

 

Peter didn’t let go.

 

 

Peter’s fingers were warm. Steady. God, he’d missed that.

 

Not that they ever touched much. Not on purpose. But when they did — when Peter helped him up from a fall or brushed past him in the kitchen — it always stuck .

 

Now Peter was here, holding his hand like it meant something. Like Jason wasn’t made of things that ruined.

 

He looked over, and Peter was already watching him.

 

So close.

 

His curls were still damp. His face was pale. His eyes looked tired in that Peter way — like he was always thinking too much, always carrying more than he said out loud.

 

Jason wanted to say something. Anything. Don’t go. Don’t stop touching me. I think I love you.

 

What came out was: “You’re not sleeping.”

 

Peter smiled, a sad little curve of his mouth. “Neither are you.”

 

And then it was quiet.

 

Too quiet.

 

Jason’s hand was still in his. His shoulder brushed Peter’s when he shifted slightly. He looked down at Peter’s mouth, just for a second.

 

And then Peter leaned in.

 

Not rushed. Not dramatic. Just... leaned . Like he’d decided, quietly, that he wasn’t going to keep pretending anymore.

 

Their lips met.

 

Soft. Careful.

 

It wasn’t the kind of kiss Jason had imagined in the quiet nights when he couldn’t stop thinking. It wasn’t fiery or rough or full of teeth.

 

It was gentler than that. Realer.

 

Peter’s free hand came up to rest on Jason’s jaw. His thumb brushed just under Jason’s cheekbone, right where it hurt.

 

Jason didn’t move.

 

Didn’t pull back.

 

He leaned into it.

 

Kissed him back.

 

Let himself be held like that.

 

Just for a moment.

 

Just long enough to feel it.

 

Just long enough to want more.

 

 

They didn’t say anything when it ended.

 

Peter pulled back just enough to look at him — to see if Jason would regret it, or panic, or shut down.

 

He didn’t. He just looked back, slow and quiet, eyes soft in the dark.

 

“Okay,” Peter whispered.

 

Jason nodded.

 

“Okay.”

 

And that was it.

 

No confessions. No breakdown. No sex. Just... the truth. Shared in silence.

 

Peter stayed in the room that night.

 

He didn’t crawl into bed, didn’t ask for space. He just sat on the floor beside Jason’s bed, head against the edge of the mattress, listening to the storm outside.

 

Jason’s fingers found his in the dark.

 

They didn’t let go.

 

Not almost.

 

 

The kiss had ended. But they hadn’t pulled apart.

 

Peter was still on the floor, head resting against Jason’s knee, fingers loosely tangled with his. The storm outside was fading — rain softening into drizzle, thunder just a low hum in the distance.

 

Jason hadn’t moved. Couldn’t.

 

He stared down at Peter’s face — soft in the dark, lip caught slightly between his teeth like he didn’t trust himself to speak. His other hand was resting lightly on Jason’s thigh, like he’d forgotten it was there.

 

Jason swallowed hard.

 

“Pete,” he said, voice low.

 

Peter looked up immediately. So open. So ready.

 

Jason leaned forward, cupping Peter’s jaw gently, thumb brushing across his cheek.

“You sure?”

 

Peter’s breath caught. “Yeah,” he whispered. “I’ve been sure.”

 

Jason kissed him again. This time slower. Deeper.

 

He tugged Peter up from the floor, guiding him into his lap as they fumbled up onto the bed. Their mouths stayed connected — all breath and teeth and soft groans swallowed between them.

 

Peter straddled him, hands cupping the back of Jason’s neck, body already arching instinctively into his. The heat between them was unreal — like the months of tension had finally caught fire.

Jason slid his hands under Peter’s shirt, fingers dragging across skin he’d only seen in glimpses — bruises, scars, warmth.

 

Peter gasped when Jason’s hands reached his lower back, and Jason drank it in.

 

“Take this off,” Jason murmured, tugging at the hem.

 

Peter did — breathless, curls sticking to his forehead. He tossed the shirt aside and kissed Jason again like he needed it to breathe.

 

Jason flipped them gently, pressing Peter back against the mattress, hands braced on either side of his head.

 

Peter looked up at him with wide, burning eyes, cheeks flushed.

 

“Don’t stop,” he said, voice wrecked. “Please.”

 

Jason grinned — slow and dangerous, but softer than anyone else ever got to see.

 

“I wasn’t planning to.”

 

He kissed his way down Peter’s neck, teeth grazing skin, lips finding the pulse point and biting just hard enough to leave a mark.

 

Peter gasped, hips twitching up.

 

Jason pinned him down with his hips, grinding slow and deliberate, and God — the sound Peter made. Desperate. Raw.

 

Jason’s control nearly snapped right there.

 

Clothes came off in pieces — Peter’s jeans halfway down his thighs, Jason’s belt clattering to the floor, breath catching between every touch. Every graze of skin.

 

When Jason finally pushed into him — slow, steady, careful — Peter moaned into his mouth, eyes squeezed shut, legs locking around his waist like he couldn’t bear a single inch of space between them.

 

Jason set the pace — firm, controlled, deep. One hand in Peter’s hair, the other gripping his hip hard enough to bruise.

 

Peter met every thrust with a gasp, nails digging into Jason’s shoulders, lips parting around Jason’s name over and over like it was the only word he remembered.

 

Jason didn’t say much — he never did — but his eyes never left Peter’s face. Like he was watching something sacred unravel beneath him.

 

“You’re mine,” he finally murmured against Peter’s throat, voice rough. “You feel that?”

 

Peter arched up into him, breath hitched. “Yeah,” he whispered, “God, yeah — Jason—”

 

That was it.

 

They came undone together — not loud, not messy — just real. Shaking, holding, breathless.

 

After, Jason collapsed beside him, pulling Peter into his arms before he could float too far away.

 

Peter buried his face in Jason’s neck, still catching his breath. They didn’t speak.

 

They didn’t need to.

 

Jason just held him tighter, one hand tangled in his curls, the other drawing lazy circles along his back.

 

And in the quiet, for the first time in a long time — neither of them felt alone.

Notes:

Leave thoughts! I love those<3