Homestuck
Battlefield Terra

For Johnkat day: What if John had walked in that bathroom in chapter 7 of Battlefield Terra.
What if,
I ask you? Okay that was totally a rhetorical question, they frick. I got six prompts for this, so what should have been a short snippet ended up a full scene. Well okay why not. XD

Bathroom Porn

It would have been dead silent, if not for the soft plink, plink of water into the tub and Karkat's harsh breathing. John stood frozen, the bathroom door held half closed behind him.

He was vaguely aware, peripherally, that Karkat's red, furious eyes were on his face. His own eyes couldn't tear themselves away from that place between Karkat's legs where three of his fingers disappeared down to the last knuckle.

Karkat closed his knees, grabbed the edges of the tub to haul himself up. John found himself staring at the ceiling, face caught on fire. "I. I. Wash my hands. Other bathroom had no soap, haha. Needed to... It was open!"

"Was not open before you," Karkat snarled, and advanced on him, and John took a second -- not even that much!-- to glance back (oh wow, were the locks flimsy in this hotel, haha whoops) and when he turned to look at Karkat again the alien -- his enemychum prisonerpalbuddy -- was in his face, grey like suede and striped with white scars and dripping water everywhere.

He slammed both hands on the door around John's head, slammed it closed and how had John's back gotten pressed to it again? He couldn't -- oh shit, that was. Close. Very close. 'Shirt getting damp from Karkat's dripping hair' close. 'Hot angry breath against his face' close.

"Maybe I make you help me," Karkat growled, so low it sounded like a tiger's purr.

John's spent dick made a valiant effort at rising back to duty.

He was pretty sure Karkat didn't mean it much -- that he was more irritated than sincere, he knew that.

"Okay," he said, all quiet between the water drops, so his voice didn't even echo off the tiles.

Karkat twitched -- so close John couldn't have missed it with his eyes closed, but his eyes were open, as it so happened, lowered in (panic?) (guilt?) (shame?) something he couldn't deal with, and he could see all the way down a gray suede chest. He couldn't have missed that chalky scar on ash skin jumping where it crossed abdominal muscles, the tiny, unmistakable way Karkat's whole body flexed then, tense in an entirely different way.

A breathless pause.

"Zhann? You--"

The tip of Karkat's tongue (red) peeked out to wet his lower lip (black.) John tried not to bite his own, failed.

He didn't need the telepathic headband right now, he knew how Karkat thought, what he thought now, what he was weighing his words to ask, almost -- maybe -- start talking himself out of asking.

He curled into Karkat's body, down until he could hide his face against his shoulder, and said, "Yes," very quietly.

Karkat surged up against him, pinned him to the door with his body (bare, dripping, soaking through his clothes and John was the one who felt exposed.) Hands cupped his face, raked through the hair at his temples, fisted two handfuls of hair at the back of his skull, a mouth pressed hot and insistent against his and he was kissing back on blind instinct. It was nothing, nothing like the giggly explorations with Roxy, Rose's teasing, shallow kisses. (Nothing like the time with the nanites. Even despite the tension.)

His hands were running, grabbing their blind way up and down Karkat's back to pull him closer, as if there was any closer to be attained. They rocked together from the hips up as they kissed, strong and rough in a way he had never expected to enjoy.

He whined when Karkat paused, leaned his head back to stare at him, unreadable, whined louder when he started to pull on John's hair (experimentally, slow) to force John's head back, bare his throat. Oh fuck, oh fuck, teeth, oh.

"Help me," Karkat said slowly against his throat, words oddly cautious, measured. "I help you later. Yes?"

John tried to unclench his fingers, tried not to dig them in so hard -- he was going to bruise him, hurt him, lose control of his own strength and -- but Karkat rolled his back into John's hands like he didn't mind, rolled back into him, pressed up against his dick, and yeah, okay, he was hard again now.

He should have thought before he answered but he'd always made his most crucial decisions on the fly and besides his mouth had run off without him already. "Yes, yes, anything you want -- oh fuck, Karkat--"

He let his alien boy guide him down his strong gray body, all the way down to his knees.

He didn't even need any hair pulling to lean in and grip Karkat's ass in his hands and pull his strange alien crotch against his breathless mouth.

Any other time he would have been cautious, he would have approached slowly -- he'd heard enough from Jade and Roxy about foreplay and people attacking ladybits with their mouths but (these were not lady bits) these were alien bits and, and Karkat bits and who even knew how they --

Who cared.

Hands clenched on Karkat's ass, John licked his way into that slit, lapped at translucent candy-red, mouth mashed against Karkat's skin, against his mound, chin digging in and nose pressed so tight it was hard to breathe and he had to pull away to gasp before diving in again.

Karkat's hands were still in his hair, clenching and releasing, patting blindly at his skull -- and desperate as John was to tonguefuck him to release it took him a ridiculously long time to notice, and an even longer one to realize Karkat was looking for his horns.

(Not finding them, either, and it was ridiculous that in the middle of frantically trying to make someone come with his mouth John could even feel his throat tighten with painful sympathy.)

No folds in the slit, no second set of lips, but in the hole there were bits and things that twitched against his tongue and it was disturbing as fuck and made Karkat keen, so loud he thought his glasses would ping and Noir would be asking what the hell. John made hurried shushing noises against his inner thigh as he tried to breathe, slipped an arm all the way around the back of Karkat's thighs. He couldn't get deep enough with just his tongue and from the way Karkat's hips twitched and the noises he made, John was teasing him more than anything and no, he didn't want that.

"Don't shh, shh to me," Karkat ground out. When John glanced up he was bent over him, forehead pressed against the door and face scrunched as if in pain, eyes closed tight.

His alien dick barred his face in two from this angle, though.

Whoa.

"Zhann? Zhann, n'leysha, ak'ths, ssh--"

Karkat devolved into clicking, grating noises and John couldn't tell which were words and which were moans. Begging either way, though. (Please don't stop, please.)

He licked his sore, wet lips and traced the edge of the slit with his fingers, and slowly pushed them in.

Karkat's inner muscles, inner -- things clamped down immediately, started trying to suck them in deeper, holy shit, John couldn't help imagining that on his dick and oh, oh hell, he needed a free hand for his pants party but at the same time if he stopped holding onto Karkat's hips, no, no.

He leaned in to lick at the edges again, around and between his own fingers, heart beating hard in his throat, in his temples, licked up and up to the base of, of--

Karkat was staring down at him, irises blown so wide there was only a tiny dot of black left, a narrow circle of gold.

His hips were narrow and his ass square, and his shoulders were really not any shoulders John had ever seen on a girl, anyways, and that didn't stop him wanting to -- wanting to...

Fingers knuckle-deep in tight, clenching warmth, John pressed a trembling kiss to the base of Karkat's alien dick.

He had a brief, burning moment of wishing Dirk was here, or at least wishing that he had laughed over him and made ewww faces a bit less and tried to memorize more of his comebacks and asides related to going down on a guy.

Yeah, no, never mind, nothing could prepare him to that. Karkat's hand was clenched in his hair -- holding, not pulling -- and he could feel it shaking, could feel the way Karkat's thumb trembled when he rubbed a nice, soothing circle where the root of John's horn should have been.

He mouthed his way up Karkat's shaft. (It was a bit weird, thin damp skin, kind of like underneath John's foreskin only maybe even worse.) Karkat was still staring at him, and John hadn't caught him blinking even once. He tried on a little smile.

"Uh. That okay?"

"... You stop, I die." A flicker of a smile, eyes gone warm in a different way. "Help me, Zhann Eb'rt, you're my only hope."

John burst out laughing against his dick. "Oh my god, who taught you that! Was it Dave?! I bet it was Dave!"

Karkat chuckled quietly, eyes closing, and shifted his weight, spreading his feet a little. "Mnh no. Rokchi. Shh." He shifted on John's fingers and John remembered where they were, remembered to move them, to curl them and see what happened. From the spasm of activity inside and the way Karkat groaned, it was good.

Still grinning, giggling, he kissed his way to the tip and took the first couple of inches in his mouth.

It was -- awkward. Doable, though -- he moved his head a bit faster and tried to stop hearing Dave in his mind. Who cared about self-consciousness when they could be listening to the weird, awesome sounds Karkat made, all quiet and muffled, snaky hisses and almost birdlike trills that John had never heard before melting back into more familiar crickety clicks?

Giddy, he sucked a little harder, a little deeper. He could do this, who the hell cared--

"Aow! Stop, stop, mouth, hard, ow."

Oops, teeth. Contrite, he tried to figure out how to protect Karkat from them, managed something with his lips that was probably going to end up cutting his own mouth in the end but who cared, nanites for the win. When he sped up again Karkat had no protests, trilled for him sweet and soft and so pretty, and his thighs clenched in John's hold like he wanted to rock himself against his face, only the angle was wrong for (oh lord) face-fucking.

(Karkat fucking his mouth, holding him by the hair and pulling, he was developing a kink for it right here, right now, felt a tug and it went right to his dick and oh, Karkat thrusting in and out of his mouth, oh god, oh fuck.)

He went a little higher up (his knees hurt) and tried to swallow more, faster.

Karkat's dick moved in his mouth. The next second Karkat was pulling him off, holding him by the temples, and John coughed and blinked bewildered at it and up at Karkat's face and oh wow, it was moving. The, what, upper third? half? was curling against Karkat's belly, leaving dark pink trails on his gray skin.

(Looking for an alien pussy, like Karkat had, oh god, oh. Looking for John's mouth.)

Karkat's hands fell off his hair, onto his shoulders, and he pulled him up and moving. John stumbled after, legs all pins and needles and shaky, fell right back down on his ass, half in the shower stall, and then Karkat had lost patience and was on his lap, mouth pressed hot and hungry to his and crotch tight and hot and damp against the tent in John's jeans.

John's spine dug right into the edge of the shower stall and he didn't care at all. His arms were around Karkat, so tight he thought he might be leaving bruises, but Karkat only pushed himself closer and fucked his mouth with his tongue, hands framing his face, a thumb rubbing his cheek, his jaw.

John reached up and cupped the back of his neck, carded his fingers through hair wiry as Bec's coat, found a satiny, blood-warm horn and ran his fingers up the inner curve of it, looped his fingers around it. Karkat shuddered, ground himself harder against John's crotch, hard enough that John almost toppled backward into the shower stall. He pulled away from the kiss, leaving John blinking, shifted his hips back on John's lap, and then plunged a (clawed) (wall-piercing) hand down the front of John's jeans.

John groaned and tilted his hips into it, forehead pressed to Karkat's shoulder (he didn't remember doing that.)

Karkat's skin was rough and his hold a tad too loose and John didn't feel the claws even once. He tried to get his hand back to business, fumbled it, and then didn't know which part to go for -- but reaching between Karkat's legs right now would have broken his wrist, especially with how insistently Karkat rubbed himself against his thigh. Fingers curled around alien dick, he kissed the side of his neck blindly, nuzzled his way up to the soft place behind his ear, tried not to bite down on anything.

The sudden flood of wet heat on his lap had his eyes fly open once again. What the hell? His first thought were hot water or (ew) pee but when he looked down there was translucent red everywhere running over his jeans, seeping between his legs onto the bath mat and Karkat was still shaking himself apart. Aw hell.

John planted his heels, freed a hand to brace, managed to lift the both of them off the floor and into the shower somehow (he had the edge of the shower basin engraved in his flesh at this point.) Shaky, eyes wide, he watched -- Karkat's face, scrunched with something that looked like pain, how hard he pressed down onto John's leg -- that denim, he didn't get how that didn't hurt -- the way his grip on John's dick actually loosened, like even now he was thinking about making sure he didn't hurt him.

When he went all loose on John's lap John kissed his horn and wrapped his own hand around Karkat's hand to finish himself off.

It didn't take very long.

"We are," Karkat said eventually with his cheek smushed against John's shoulder, "bad ew asshole no."

John giggled. "Gross. Gross is the word you want. Oh my god, I'm totally going to have to go home in uniform pants."

Or, uh, considering the splash on his t-shirt, probably in uniform.

Well, maybe not the jacket. Seriously, fuck the jacket.

Okay no, fuck Karkat, Karkat was totally better to... huh. "... I wonder if that means I'm not a virgin anymore?"

Eyes closed, Karkat felt blindly around his face and pressed a hand across his mouth.

John licked his palm as wetly as he could.

--

"I think I should just throw them out," John said after a few seconds of contemplating the gross jeans currently glued to his skin and soaked through with red.

Karkat had heaved himself off John's lap a minute ago to slump against the glass wall of the shower stall, and couldn't stop stealing glances at John's lap. John would have felt sexily defiled if Karkat didn't look mortified.

"Uhn, what?"

"Pants. No good. Gonna have to burn them. Froosh."

Karkat groaned and buried his face in his hands. "That too," he said, tilting his head, horn first, at the bath mat. There was a sizeable patch of red on its creamy plushness. Welp.

"Hehe."

Karkat kicked his ankle, a little bit, face still covered. John dragged his legs inside the shower and climbed to his feet, still chuckling.

"C'mon, get up." He unbuttoned his jeans. Eww, human jizz. "Karkat, get up. Kaaarkat."

"No. I die now. Fuck you."

"You kinda just did."

"--Oh. Huhn. Yeah."

He peeked over his hand and through his hair at John, who grinned down and offered a hand to haul him up. He couldn't help but laugh, blushing, when Karkat's eyes briefly fell onto his open pants on his way up. Umm, yeah.

He kicked off his pants. His underwear was okay; he unhooked the showerhead to rinse off his hands, soak the jeans puddled on the floor. "Here, wash off. I'll try to soak the mat, see what happens."

Showerhead handed off to Karkat, he bounced off the stall, rolled up the mat, chucked it into the bath -- laughed some more at the traces of red already streaking the inside. "Oh my god, you copycat." Karkat growl-purred at him, eyes at half-mast in a way that made the growl sound more like a promise than like a threat.

John tried not to watch him in the shower as he puttered around trying to clean up all incriminating traces (and trying not to think about whether anyone would bother going forensics on the suite once they were gone, wow, what would they think about their findings. Meep.)

John tried not to watch him, for a while, but then he realized Karkat was watching him -- as he cleaned, as he led the way back outside (still no Dad, phew), as he bagged the incriminating evidence and fished his dress pants out and wriggled back in them -- and it was cat-smug and lazily satisfied and -- and.

And maybe John had a right to watch back? Maybe he did and wow did that feel awesome, strange like something he'd never expected to want but awesome anyways. Maybe he --

Oh.

"Zhann, what?"

Oh.

Wow, so that was what having your heart dropkicked felt like.

He turned back to face him -- Karkat was on the couch and John wanted to sit beside him and make out, and instead he -- had Karkat forgotten, too? He'd remember soon, and what if he remembered in public. It'd be worse to wait, but. Shit.

Shit.

"Gamzee," he said, and watched the floor between Karkat's feet.

So that meant it took him a few seconds before realizing the funny slapping noise was Karkat facepalming -- and even then, only because he did it again.

"Oh my fuckshit stupid shitdumb head, shit in head, Zhann, no. No! You are stupid stupid fuckstupid and I can do to you before?!"

"I ... think in this case 'do you' works just fine as a verb," John replied dumbly, and blinked. "Uh, what?"

--

They spent the whole way home trying to beat Alien Romance for Dummies into John's head with Karkat's very limited number of tools, though really "Gamzee is my Rhoz!" made the main point clear fairly okay.

(Also maybe holding hands, between the seats where Noir's men couldn't see.)