Cover of Prove It

Fanfiction

Prove It

Read the story

24 chapters · 114424 words · Read 1 times

Dave Strider isn't gay, he's definitely not. His hot (not hot - don't think that, what the fuck) neighbour, Karkat Vantas, doesn't agree. He challenges Dave to prove it.

Chapter 15: Soft Control

The rhythmic scratch of Karkat’s blunt fingernails against Dave’s scalp was a hypnotic counterpoint to the low thrum of the mini-fridge. Dave floated in a hazy limbo, boneless against Karkat’s solid chest, the world outside the apartment door reduced to a muffled hum. The greasy pizza sat heavy in his stomach, a grounding anchor. The persistent ache from the cage was a dull, familiar throb beneath the comforting numbness of exhaustion and Karkat’s touch. He felt… contained. Held. Safe in a way that scraped terrifyingly close to surrender.

Karkat’s fingers slowed, shifting from idle scratching to tracing deliberate, slow circles just above Dave’s left ear. His voice, when it came, was a low rumble vibrating through Dave’s skull, impossibly gentle. "Still with me, angel?"

Dave managed a faint grunt, pressing his forehead harder into the warm skin of Karkat’s neck. Words felt like stones in his throat.

"Good." Karkat’s thumb brushed the sensitive skin behind Dave’s ear, sending a fresh shiver down his spine. "Need to ask you somethin’. Important." He paused, letting the silence stretch, filled only by their breathing – Dave’s shallow, Karkat’s deep and steady. "You need the word? Right now?"

Dave froze. The word. The safeword. Karkat’s ironclad rule, drilled into him during… other times. Times involving ropes, blindfolds, and Karkat’s demanding hands. Using it meant everything stopped. Instantly. No questions. A lifeline thrown into deep, dark waters.

He squeezed his eyes shut tighter behind his shades, still pushed up on his forehead. Did he? Did he want this – the crushing intimacy, the lap-sitting, the pet names, the cage – to stop? The thought sent a fresh wave of panic, cold and sharp, slicing through the comforting haze. Stopping meant facing the wreckage of his day alone. Meant going back to his sterile dorm room. Meant feeling again without this anchor.

He shook his head, a tiny, desperate motion against Karkat’s neck. No. Not yet. Not while Karkat’s fingers were still working magic on his scalp, easing the tension coiled like barbed wire inside him.

Karkat let out a breath, a sound like relief. "Good boy," he murmured, the praise settling warm and heavy in Dave’s chest. He pressed a kiss, soft and lingering, to Dave’s temple. His fingers resumed their slow circles, then dipped lower, tracing the tense line of Dave’s neck where it met his shoulder. "Just checking. Gotta take care of my angel."

Dave melted further, a soft sigh escaping him. The panic receded, replaced by that drugged lethargy again. Karkat’s fingers were magic. They always were.

Then Karkat shifted slightly beneath him. Dave felt the movement, the subtle tightening of Karkat’s arm around his waist. Karkat’s other hand, the one not tangled in Dave’s hair, sl

Dave felt the movement, the subtle tightening of Karkat’s arm around his waist. Karkat’s other hand, the one not tangled in Dave’s hair, slid down the plane of his stomach, slow and deliberate, fingers splaying possessively just above the waistband of his sweats. Dave tensed, a jolt of awareness cutting through the haze. Karkat’s fingertips brushed the elastic, then dipped slightly lower, tracing the hard ridge of his hip bone.

"Easy," Karkat murmured, his breath hot against Dave’s temple. The hand on Dave’s hip didn’t retreat. "Just getting comfortable. You good?"

Dave mumbled something unintelligible against Karkat’s collarbone, more vibration than word. His whole body felt heavy, boneless, like wet sand settling. Karkat felt the minute tremor run through him. "Shhh," Karkat breathed, the sound barely disturbing the quiet. "Just breathe."

He kept his touch light on Dave's hip, a steady anchor, while his other hand returned to Dave's hair. Blonde strands, surprisingly soft despite the gel Dave usually plastered them with, slipped through Karkat’s fingers. He combed them gently away from Dave’s damp temple, tracing the shell of his ear with his thumb. Dave’s breathing hitched, then evened out again, deeper. Exhaustion radiated off him, a palpable weight.

"Christ, you're wiped," Karkat murmured, more to himself. The frantic text messages earlier, the choked sounds Dave made when he finally stumbled through the door – it hadn’t just been the usual performative stress. Something had genuinely cracked. Seeing Dave like this, stripped bare of his usual razor-sharp sarcasm and shades, was… unnerving. Raw.

He pressed another kiss to Dave’s temple, lingering this time. The skin was cool. Salt from dried tears tickled Karkat’s lips. "Got you," he whispered into the quiet. Dave didn't react beyond a soft sigh, his body melting heavier against Karkat’s chest. The constant low-level tension Dave usually carried, the defensive coil, was gone. Just this profound, almost frightening stillness.

Karkat adjusted his legs slightly, trying to find a position where his own limbs wouldn't go completely numb under Dave’s limp weight. He kept the slow, rhythmic stroking through Dave’s hair, his fingers working methodically through minor tangles. The repetitive motion soothed them both. The faint scent of Dave’s cheap shampoo mixed with the lingering incense and the ghost of pizza grease. Comforting, in its own weird way.

He watched Dave’s eyelashes flutter slightly behind the crooked shades. The rigid cage pressed against Karkat’s thigh, an insistent reminder of the unspoken tension simmering beneath the surface care. Dave hadn’t asked for it to stop. Hadn’t used the word. That knowledge sat warm and heavy, almost painful, in Karkat’s gut. His thumb brushed the delicate skin just below Dave’s earlobe. "Sleep, angel," Karkat breathed, the endearment slipping out low and intimate. "I’ve got you."

Dave’s breath hitched again, a tiny, vulnerable sound. He nuzzled blindly into the hollow of Karkat’s neck, seeking warmth, seeking more. Karkat tightened his arm around Dave’s waist instinctively, pulling him impossibly closer. His heart hammered against his ribs, a frantic counterpoint to Dave’s slowing breaths. He rested his cheek against the top of Dave’s head, breathing in the scent of him – exhaustion, cheap soap, and something uniquely Dave. The world beyond the couch, beyond the clutter of action figures and comic books stacked precariously nearby, ceased to exist.

Just the weight. The warmth. The slow, hypnotic rhythm of his fingers in soft blonde hair. The quiet rasp of shared breath. Karkat closed his own eyes, swallowing hard against the sudden, overwhelming swell of protectiveness mixed with something far more dangerous. Dave was out, finally, utterly surrendered. Karkat held him, suspended in the dim apartment light.

Sunlight, sharp and intrusive, stabbed through a gap in Karkat’s perpetually crooked blinds. Dave groaned, blinking gritty eyes against the assault. His neck screamed from the awkward angle it had been pinned against Karkat’s shoulder all night. Every muscle felt stiff, welded to the lumpy couch cushions. He shifted, a dull ache radiating from his hips, a persistent throb reminding him of the cage’s unyielding presence. Karkat’s arm was still a heavy, warm band across his waist.

"Morning, Sleeping Beauty," Karkat’s voice rumbled above him, rough with sleep but unmistakably alert. Dave tilted his head back, squinting up. Karkat was already watching him, dark eyes soft with a concern that instantly scraped Dave raw. That look undid him faster than any sarcastic barb. He felt exposed, like yesterday’s fragile mess was still smeared across his face.

"Ugh," Dave managed, pushing himself upright with effort. The movement pulled uncomfortably at the cage. He winced. "Feel like I got run over by a truck full of existential dread. And bad pizza." He rubbed his neck, avoiding Karkat’s gaze, focusing on the familiar chaos of action figures guarding a precarious stack of graphic novels.

Karkat sat up too, stretching his broad shoulders with a satisfying crack. He didn’t look away. "Yeah, no shit. You looked like hell warmed over when you crashed here." He paused, the air thickening. "Actually crashed. Like, genuinely passed the fuck out." His tone shifted, losing the morning roughness, becoming deliberate. "We need to talk, Dave."

Dave’s stomach clenched. He knew that tone. The 'serious Karkat' tone. The one that bypassed his usual deflections. "Talk? About what? The profound cultural impact of Neon Genesis Evangelion? Debating the merits of pineapple on pizza? Because I gotta tell you, bro, my philosophical faculties are operating at like, dial-up speeds right now." He gestured vaguely towards his head, forcing a smirk that felt brittle.

"Cut the crap, Strider." Karkat’s voice was low, firm. He scooted closer on the couch, the worn fabric sighing. His knee bumped Dave’s. "Yesterday wasn't just a bad day. That was… different." He searched Dave’s face, hidden behind the shades Dave had instinctively grabbed and shoved back on upon waking. "You were fucking wrecked. More than wrecked. You were…" He trailed off, struggling for the word. "Fragile. In a way I haven't seen."

Dave flinched. The word landed like a physical blow. Fragile. He hated it. He balled his hands into fists in his lap, knuckles white. "Just stress, KK. DJ gig fell through, roommate’s being a passive-aggressive dickweed, existential ennui hitting its quarterly peak. Standard Strider operating procedure. Nothing a solid nap and maybe some questionable caffeine couldn't fix." He tried for flippant, but it came out strained.

Karkat wasn’t buying it. Not for a second. He leaned forward, elbows on his knees, his gaze intense despite the barrier of Dave’s shades. "Bullshit. Absolute, grade-A bullshit." He took a deep breath, his next words deliberate, measured. "I need to ask you again. Seriously. Do you need to safeword? Out of… this?" His gesture was subtle, a flick of his eyes downwards towards Dave’s lap, then back up. "The cage? The… task?"

Dave froze. The air vanished from his lungs. The offer hung there, heavy and terrifyingly real. Freedom. Relief from the constant pressure, the ache, the humiliating reminder. His throat tightened. He stared at the faded band logo on Karkat’s t-shirt, unable to meet his eyes.

"Is it…" Karkat pressed, his voice gentler now, layered with that unbearable concern. "Is asking you to do that… alone… causing this? Pushing you too far?" He hesitated, then added, the words careful, "I need to know what you need, Dave."

Dave stared at Karkat’s faded band tee. The question hung like broken glass. Relief from the cage’s constant, aching pressure? Fuck yes, he wanted it. He was strung so tight his teeth hurt, the usual release valve – his own hand – brutally denied. The cage felt like a live wire against his skin, a cruel joke amplifying every jolt of stress. He hadn’t slept, hadn’t eaten properly, hadn’t breathed all week without this low thrum of frustrated need. Using the safeword was the key. Just say it.

But… the cuddle. Karkat’s solid warmth against his back, the grounding weight of his arm, the hypnotic scratch on his scalp… that worked. It had drained the screaming panic from yesterday, leaving a hollow exhaustion that felt almost peaceful.

He swallowed, throat clicking dryly. "No," he mumbled, the word scraping out. "Don't need the word." He couldn't look up. Shame prickled hot behind his shades. Weak. Needy. "Just... the week sucked ass. Felt like… like you were pissed." He forced the last part out, barely audible, a confession dragged from the dark pit inside him.

Karkat went utterly still. The air crackled. "Pissed?" His voice was dangerously low, stripped of all its earlier gentleness.

Dave flinched at the tone. He kept his gaze locked on a chipped corner of Karkat’s coffee table. "You vanished, KK. Like, ghosted. Barely saw you. After… after setting that fucking task." He gestured sharply towards his lap, the cage shifting painfully with the movement. "Assumed it was punishment. Double punishment. For taking too long, for being… useless at it." The words tasted like ash. "Leaving me hanging. Like you were disappointed. Or just… done." His voice cracked on the last word. Stupid. So fucking stupid.

Karkat’s sharp inhale was like a door slamming shut. He leaned back slightly, breaking the contact where his knee had been pressed against Dave’s. The sudden absence of that small point of warmth was a shock. Dave braced for the sarcasm, the dismissal, the ‘get a grip, Strider.’

It didn’t come.

Instead, Karkat made a sound. A raw, choked noise deep in his throat, like he’d been punched. "Fucking hell, Dave." His voice was thick, strained. He surged forward again, catching Dave’s chin in his hand, forcing his head up. Dave tried to twist away, panic flaring, but Karkat’s grip was firm, insistent. "Look at me. Look at me."

Trapped, Dave met his eyes. Karkat’s warm brown eyes were wide, blazing with an intensity that stole Dave’s breath. Not anger. Horror. Devastation. His thumb brushed Dave’s cheekbone, rough and trembling slightly. "Is that what you thought? That I was punishing you? That I was angry? That I’d just… ditch you?" His voice cracked. "Dave."

Dave couldn’t speak. He just stared, frozen under that shattered gaze.

"I was swamped!" Karkat’s voice rose, raw with emotion. "That fucking database migration at work imploded. Three all-nighters. Barely remembered my own name, let alone…" He trailed off, shaking his head violently, his grip tightening almost painfully on Dave’s chin. "It wasn’t punishment, you absolute idiot. It wasn’t disappointment. Fuck, Dave…" He took a ragged breath.

Karkat’s ragged breath hung in the air like shattered glass. His thumb still pressed against Dave’s cheekbone, holding his gaze prisoner. "That cage wasn't punishment. It was... incentive. A stupid, horny challenge. Not this. Never this."

He released Dave’s chin, his hand falling away to grip his own knee, knuckles white. "I should’ve checked in. Fuck, I knew you were stressed about the gig. Should’ve sent a goddamn carrier pigeon." He scrubbed a hand over his face.

Dave flinched, the raw confession hanging between them. He stared at a chip in the plaster on Karkat’s wall, the familiar chaos of the apartment suddenly too bright, too loud. The cage felt heavier, a cold, hard reminder of his own stupid panic. He mumbled, "Figured I fucked it up already. That the task was... impossible. Or you were bored." The admission tasted like rust.

"Impossible?" Karkat scoffed, but the edge was blunted by exhaustion. "Bullshit. You’re stubborn as hell, Strider. You’ll get there." He leaned in again, his voice dropping, intense. "But listen. The cage stays. The deal stands. You earn your release when you finally manage to get that video done. But." He held up a finger, his gaze locking onto Dave’s hidden eyes. "Safeword. Always. Say it, and it stops. Instantly. No guilt trips. No fucking abandoned feelings. It doesn’t mean you quit. Doesn’t mean I bail. It just means stop. Got it?"

Dave swallowed, the weight in his gut shifting. Relief warred with the persistent throb between his legs. "Got it," he whispered. "Red means stop. Not game over."

"Exactly. Not game over," Karkat confirmed, his voice softening fractionally. He shifted on the lumpy couch, the springs groaning. "But yesterday? That fragile, broken mess stumbling through my door? That shit stops." He poked Dave’s chest, blunt finger tapping over his sternum. "No more imploding silently because you think I’m mad or vanished into the ether. So, new rule. Non-negotiable."

Dave raised an eyebrow, the familiar sarcasm a flimsy shield. "Mandatory pizza consumption? Gotta hit the grease quota?"

Karkat snorted. "Better. Daily cuddle requirements." He stated it like a fact, brooking no argument. "Minimum ten minutes. Here. On this couch. Or your shitty dorm bed, if I have to invade. You show up, you park your skinny ass, and you decompress. No DJ bullshit bleeding through. No existential dread monologues unless you want them. Just… quiet. Contact. My job." His gaze was steady, demanding acceptance. "Consider it preventative maintenance against future Strider meltdowns. Keeps the denial train running smoother."

Dave stared. Daily. Cuddles. Mandatory. The concept lodged in his brain like a misfiring synapse. The cage gave a sharp, almost painful twinge of protest beneath his sweats, a stark counterpoint to the warm, heavy memory of Karkat’s arms around him last night, the terrifying peace of it. He opened his mouth, a snarky deflection ready on his tongue. Bro, that’s hella gay. You turning this into some weird after-school special?

But the words died. He saw the lingering shadows under Karkat’s eyes, the genuine worry still etched around his mouth. He felt the phantom scratch of blunt nails on his scalp, the solid anchor of Karkat’s chest against his back. He needed… something. Maybe it was this. Maybe Karkat’s stupid plan was the only life raft in sight.

He closed his mouth. Adjusted his shades. Looked away, towards the towering stack of comic books threatening to topple. "...Ten minutes?" he finally rasped, the words feeling alien. "That’s it? Fine. Whatever. Keep the emo wolves at bay. But no fuckin’ lullabies, Vantas."

A slow, relieved smile spread across Karkat’s face, warm and genuine, chasing away the exhaustion for a moment. "Deal. No lullabies. Now," he shifted, settling back against the cushions, spreading his arms in open invitation. The faded band tee stretched tight across his chest. "Clock starts now, Strider. Get your ass over here. Preventive maintenance protocol alpha is go." He patted his thigh. "C'mon. Earn your keep."

Dave hesitated, the worn corduroy of the couch rough under his palm. Ten minutes. Mandatory contact. Karkat’s open arms were a trap disguised as comfort, a pit lined with softness he knew he’d fall into. He saw the challenge in Karkat’s eyes, the unwavering expectation. A muscle in his jaw twitched. Fuck it. He owed Karkat for yesterday’s pathetic display. Moving stiffly, he shuffled the scant distance separating them, every shift making the cage press insistently against the seam of his sweats.

He leaned back, letting his weight settle awkwardly against Karkat’s side. Karkat’s arm immediately closed around his shoulders, solid and warm, pulling him firmly into the curve of his body. The scent of sleep and faint incense enveloped him. Karkat rested his chin on the top of Dave’s head. They sat in the heavy morning quiet, broken only by the distant city hum and Dave’s own too-loud heartbeat thudding against his ribs.

Dave let the enforced proximity do its job. He focused on the steady rise and fall of Karkat’s chest against his back. But the quiet felt charged, amplifying the low thrum of his own frustration, the lingering shame of yesterday’s breakdown. He felt Karkat shift slightly, his hand drifting from Dave’s shoulder down his arm in a slow, deliberate stroke. The touch wasn't overtly sexual, just… grounded. Possessive. Dave stiffened instinctively, then forced himself to exhale. Preventative maintenance, he repeated silently.

Karkat’s fingers traced idle patterns on Dave’s bicep, calloused skin catching slightly on the thin cotton of his t-shirt. "Still wound tighter than a drumhead," Karkat murmured, his voice a low vibration against Dave’s scalp. The observation wasn't accusatory, just soft. Factual. Dave grunted, a non-committal sound. He tilted his head back, bumping Karkat’s chin, needing a fraction more space. His shades slipped slightly down his nose. Karkat adjusted his own position, his arm tightening incrementally, pulling Dave’s back flush against his chest. Dave felt the hard plane of Karkat’s stomach, the solid muscle beneath the worn tee.

Karkat’s breath was warm on Dave’s temple. His hand slid back up Dave’s arm, over his shoulder, his fingers tangling gently in the messy blonde hair at the nape of Dave’s neck. He gave a soft tug, tilting Dave’s head back further, exposing his throat. Dave’s breath hitched. Before he could brace, before he could object, Karkat leaned down, pressing his lips firmly against the sensitive skin just below Dave’s ear. The kiss wasn't tentative. It was a claiming.

Read on DreamPress

Write your own erotic story with AI