Actions

Work Header

They Were Roommates

Work Text:

Geralt fell into his bed after an obnoxiously long workday. The apartment was usually full of music when he got home, due to his roommate Jaskier duel majoring in both music and theater. Between practicing his craft and his incessant talking, it was something of a miracle when the apartment was quiet, as it was now.

Geralt gazed at the white board, where their schedules were neatly penned by Jaskier at the beginning of each week. He never actually gave Jaskier his schedule, it seemed like an invasion of privacy. Unfortunately, his traitorous partner Yennefer made a point to text Jaskier every time it deviated from normal. This week had been an exception. Yennefer was staying with one of her other partners. Usually, one of her “vacations” didn’t line up with a schedule change, so Geralt was looking forward to his week of freedom.

It was a Wednesday, after four in the afternoon. Jaskier was at musical practice until six. He’d added a note that he’d bring home pizza.

Geralt had at least two hours. Maybe three. Jaskier’s theater club always ran overtime.

He didn’t hesitate in pulling out his laptop. A man had needs, he reasoned putting on his headphones, just in case Jaskier showed up early.

Geralt usually only gave the trending feed a glance before moving onto his recommended videos, but before he could start scrolling a thumbnail caught his eye. Gay porn didn’t usually make the trending page, that was the first thing Geralt thought as he lingered on the image. Blow job videos were pretty standard fare, but there was a distinct five o’clock shadow going on.

Well, it was the top viewed video, he decided as he clicked on it. Gender wasn’t a factor when it came to who Geralt found attractive. He hadn’t planned on watching gay porn but it wouldn’t be the first time or the last.

A username flashed across the screen. It clearly wasn't professionally produced, but they did have a small logo of a yellow flower. That coupled with the username “Bad Bard” had Geralt holding in a chuckle. Jaskier would have loved the name. The flower even reminded Geralt of a dandelion, which was a nickname he’d given his roommate during their first semester after he’d drunkenly admitted his first acting role had been a flower in a kindergarten play.

Then the video started, quite abruptly, with a close up of an ass. A blond man was caressing it gently. Boring. He smacked it a couple of times, which seemed to excite the other, before leaning in and burying his face between the two cheeks.

Geralt double clicked, fast forwarding a couple of minutes. He could appreciate foreplay in person, but it wasn’t what he watched porn for.

Finally, the blond backed off, giving the bottom a couple of loud slaps.

The other man arched his back, and Geralt caught a glimpse of curly, dark hair. Then he turned, an eye peeking out from over his shoulder.

“Take your pants off,” he ordered, voice deep with want. It sent a chill down Geralt’s back. He felt like he’d heard that voice before, but couldn’t place it. Perhaps he’d seen him in a video compilation before. Either way, he found himself getting hard at the mere words. Geralt always considered himself a dominating partner, however hearing someone who was clearly the submissive in the relationship giving commands was doing something to him.

The blond yanked his pants down as he’d been told, dick springing out of his boxers. Geralt unzipped his own pants but didn’t pull himself out. The other man was moving to knell in front of the blond. The camera jerked, and suddenly a very familiar face was looking back at Geralt through the screen.

“Hold it still, I want a good POV shot for the thumbnail.” Jaskier chided, stroking the cock in front of him slowly.

Geralt felt himself freeze. He needed to hit the back button but his hands remained still. He couldn’t tear his eyes from the video.

Jaskier, his annoyingly endearing roommate of the past three years, the man who kept him up most nights by singing show-tune and cried every time he saw a billboard advertising “Hamilton,” the guy who drank boxed wine and had written out his schedule on their shared white board, who blushed every time that Geralt called him Dandelion, his Jaskier, made porn. Gay porn. Porn that was good enough to be at top of the trending video feed.

On the screen, Jaskier finally took the other man’s cock into his mouth. He sank down on it, eyes still locked on the camera, and swallowed. The blond gasped and Geralt echoed it. Jaskier could deep throat. He did not need that information.

He bobbed his head for a few moments, before pulling off with a satisfying pop and once again stroking it. “You can’t be this close already?” Jaskier teased with a smirk before lapping at the head of the blond’s dick. “I hope you can get it up a second time to fuck me.”

“Fuck,” the other man groaned, as Jaskier mouthed at him.

That was all the encouragement he seemed to need. Jaskier’s cheeks hollowed out as he built up a steady rhythm. Geralt’s eyes were still glued to the scene, but one of his hands had managed to free itself from the temporary paralysis. He hadn’t even realized he’d untucked himself from his boxers until he was already stroking his own dick, in time with Jaskier’s head bobbing.

Some part of him was conscious enough to feel ashamed, but Geralt pushed it aside. He’d figure out how he felt later, right now he was painfully hard from only watching about five minutes of porn.

The camera jerked again. Jaskier pulled back but before he could say anything, the blond was moaning. White ropes of cum painted Jaskier’s chin, a stark contrast to the dark stubble that was coming in. The thumbnail of the video.

“That was fast,” he smirked, jerking the man through his climax.

Jaskier chuckled as the scene went black. A short text appeared, advertising the full video and a membership. Geralt finally found himself able exit fullscreen. He took a deep breath to clear his mind, muttering a curse under his breath. He hadn’t cum yet, the video hadn’t been long enough. He was grateful for that at least, until he glanced down at the suggested videos and found that it had been populated solely by Bad Bard videos.

“Fuck.” He muttered, clicking the top recommendation.

“My roommate just left,” Jaskier told the camera, winking, “you know what that means?”

Once again, his username flashed across a black background. This time when it faded, Jaskier was alone in what Geralt recognized as their dorm bathroom. There was a rather large addition though.

“A fan sent me this last week and I’ve been dying to test it out,” Jaskier said, running his fingers along the dildo suction cupped to their shower wall.

“It came with a card that said, ‘I bet this’ll shut you up,’” He giggled, pressing it against his face for comparison.

“I guess I’d better test that out.” Geralt almost choked as Jaskier wrapped his lips around it.

With it stuck to the wall, Jaskier couldn’t take the whole thing. That wasn’t going to stop him from showing off how capable he was though. He popped it off the wall and tilted his head all the way back. The way the toy filled out his throat was almost as obscene as the noises Jaskier made around it.

Geralt once again found himself following the pace Jaskier set. His roommate was brutal in fucking his own throat and it took everything Geralt had not to cum.

When he was finally satisfied, he smacked it back onto the wall.

“I prepped myself earlier,” Jaskier admitted, his voice hoarse. He placed his camera on their sink counter and turned around to give his audience a view of his ass. A sparkling blue gem peeked out from between his ass cheeks. Geralt gripped himself hard. A dildo was one thing, but the knowledge that there were multiple sex toys in his room was something else.

Unless he's taking that one out for a spin right now.

He moaned and clamped his eyes shut. Geralt counted to five and reopened his eyes. On the screen, Jaskier was teasing the butt plug out of his ass. Geralt hadn’t gotten a good view of it in the last video but Jaskier had a great ass. He knew he’d seen before, but it had always been accidental. Jaskier was a thespian, or as he’d defined it, ‘a theater nerd,’ which according to Jaskier meant that he was comfortable changing clothes at any time and in front of anyone. Of course, that didn’t mean that Geralt was looking. Jaskier changed quickly. Even if Geralt wanted to look, it wasn’t like he’d get this good of a view in real life.

He could actually see Jaskier clenching down on the metal plug. Geralt was never going to be able to look at his roommate in the eyes again.

The video cut to a new angle, with finally Jaskier grinding down on the toy which had been returned to the shower wall. Did he have a tripod? Geralt glanced at the other bed wondering how much stuff Jaskier had that Geralt didn’t know existed. Their dorm room wasn’t that big, but apparently that wasn’t stopping Jaskier from hiding quite a bit.

Jaskier moaned as he pressed back into the dildo. It was the most beautiful sound Geralt had ever heard. He spit into his hand and grasped his dick again, moving slowly as he mimicked the actions playing out before him.

Jaskier shifted slightly and another moan, higher than the others, escaped his lips. Geralt shuttered. That hadn’t been fake. His roommate was a good actor, but Geralt could tell that the noise hadn’t been intentional. It had been ripped from Jaskier’s throat the way that his own moans were.

Jaskier’s pace picked up, his dick swinging between his legs. Geralt matched him, biting down hard on his lip to prolong his waning stamina.

“Fuck,” Jaskier moaned, pitch still high and melodic as he continued thrusting himself at just the right angle to hit his prostate. Finally, Jaskier reached for his neglected dick. Geralt tasted blood, he wasn’t going to last much longer, but he wasn’t going to cum until the video ended. Once it was over, he would have to confront what he’d done. He wanted to at least watch this to it’s conclusion.

Fortunately, it seemed that Jaskier was close too. His face clenched as he arched his back one last time before cumming. He jerked himself through his orgasm, dildo still buried to the hilt inside him.

Geralt just barely managed to remember he needed to grab a tissue from his bedroom table before he too was cumming. He closed his eyes, but he could still see Jaskier. He could still hear him through his headphones, as if he were panting in Geralt’s ear.

“If you’d like to send me a present, sign up for my premium and you'll be able to see my wish list.”

Geralt lazily opened his eyes and clicked escape. He shoved his laptop to the bottom of his bed. The heat that had been pooling in his gut was turning to ice. He hadn’t been meant to see that. Even if it was free and on the internet, Jaskier probably didn’t intend for people he knew to see it. Geralt bit his lip again, the sting was almost as bad as the feeling of regret that was eating away at his brain.

Without a second thought, Geralt yanked his pants back up and padded briskly over to their shared bathroom. He examined his wounded lip in the mirror and found that the bleeding had fortunately all been internal. He washed his face with cool water regardless, gaze dancing across the mirror to the shower.

Jaskier had fucked himself there. Geralt used that shower every evening before bed.

He wasn’t angry. Geralt had jacked off in the shower a couple of times. Hell, he and Yennefer usually managed to get themselves more dirty while sharing that shower. Masturbating in the shower was normal. Expected.

Somehow, it hit him differently knowing exactly how his roomie was getting off. How many videos has he filmed in here?

Geralt returned to his laptop and hesitantly typed Bad Bard into the porn site’s search.

Jaskier’s profile lacked the flavor Geralt typically expected from him. His information was left blank. A short description explained how to become a paying subscriber and encouraged viewers to buy the full versions of his longer videos. The only specifics were stats that the site generated.

Jaskier’s account had been active for six years. His most viewed video was the trending one. He had posted roughly two hundred videos.

Geralt frowned as he scrolled down to the videos. There were eleven pages worth of videos. He gritted his teeth and clicked eleven, searching for the earliest uploads. The first video was posted five years ago.

It didn’t take a genius to do the math. Jaskier had been underage when he started uploading. The early videos looked like they were mostly archived live streams of him dancing, but that didn’t ease Geralt’s discomfort.

He skipped back a few pages, looking for their first semester at school. The first few videos all looked as though they’d been filmed at Jaskier’s home. Geralt vaguely remembered his roommate visiting his parents every other weekend. At the time, Geralt had been thrilled to have the room to himself. He and Yennifer would spend the whole weekend in bed together, only bothering to put on clothes and leave the room to meet a delivery driver in the dorm lobby.

Eventually, those trips home lessened, which Geralt could see reflected in the videos. Jaskier had started filming in their room. The white board suddenly made sense. Geralt almost felt guilty for refusing to update Jaskier on his schedule. Almost.

By now, the self proclaimed bard was uploading actual porn. There was a long series of “trying to play lute while getting head” videos. These would have been amusing, except the thumbnails advertised what song he was playing. Geralt had had to tolerate hours of Jaskier learning to play pop song after pop song, and it had all been for his porn account. Geralt decided he would let this annoyance slide but only because it looked like those videos did well. He couldn’t fault Jaskier for doing what worked for him, even if it had caused Geralt countless hours of sleep.

Skipping past those, Geralt found something that made him freeze.

Fantasizing About My HAWT Roomie.

That was a title. That was a video that Jaskier posted. Geralt’s mind blanked for what was at least the second time this evening. The thumbnail was surprisingly simple. It was a close up of Jaskier’s hips, his hard cock straining against a red ribbon he’d tied around it. Even after watching two of his videos, Geralt hadn’t seen Jaskier’s dick in detail. And here it was, hard and pink with blood, standing at attention while it’s owner thought about Geralt.

He felt a tell-tale heat creep back into his stomach. Geralt glanced at the time in the corner of his laptop. He still had time before Jaskier came home, but Geralt resisted the temptation. This was an invasion of privacy... Yet, he was the subject of a video.

Geralt bookmarked the page for later, deciding he needed time to consider the morality of watching that video. He turned off his computer and visited their bathroom once more, this time to retrieve a sleeping pill.

By the time Jaskier returned, Geralt was fast asleep.

 

Geralt thanked the powers that be that Jaskier was gone by the time he woke up. He trudged to his first class of the day, knowing he was too distracted to operate a vehicle. Geralt felt dirty. Like he’d spent all day working on Roach, his motorcycle, and was left covered in grease.

It didn’t help that they were discussing ethics in his Philosophy class. Although he was rarely anxious, Geralt felt a twinge of paranoia. He felt like he could feel his classmates judging him, as if they knew exactly what he’d done.

The guilt was eating away at him.

“Shame is the last virtue that we will be discussing today,” the professor began and Geralt sank into his chair.

“Aristotle believed that you should have a sense of shame. He said that to be moral, you must know when you’ve done something unethical while also not being afraid to take risks.”

Geralt gritted his teeth and reminded himself that Aristotle also believed in slavery, so it wasn’t like he had room to judge Geralt’s morality. Also he’d been dead for over a millennia.

One class and a couple hours hiding in the campus library later, and Geralt was back in the dorm. Jaskier had left a note on the white board telling Geralt that he could help himself to the pizza in the fridge. He grabbed a slice and settled in with his laptop.

This time, Geralt was watching purely for educational reasons, or at least that was what he was telling himself. He skipped the “roommate video” for now and decided to investigate some of the newer videos.

They seemed pretty generic, all things considered. Mostly masturbation and archived streams. Jaskier seemed to have a fairly loyal following for his cam shows. Scattered throughout, were videos featuring unnamed partners. Most of these were teasers for longer videos, with provocative thumbnails of Jaskier either riding a dick or deepthroating. Not all of his “costars” were men, but they seemed to be the majority. Occasionally, a woman or femme presenting person would join him in a video.

Geralt was about to discount the “roommate” video as a simple clickbait title when he found a second one that mentioned him.

Jacking off to my Roommate Fucking his GF in the Shower.

Geralt felt a surge of anger as he clicked. Sure, what he was doing was a pseudo invasion of privacy, but actually spying on someone in real life? Did this mean Jaskier had filmed him and Yennefer without their consent? Geralt would murder him.

He fast forwarded through the intro, feeling disgusted and betrayed by the self proclaimed “bad bard.”

Jaskier’s face came into focus, a finger held to his lips as if the viewers would give him away somehow. In the background, Geralt could hear their shower running. A low hum came from the other side of the door, and Geralt recognized it as Yennefer.

Jaskier was smiling into what was most likely his phone. He re-angled the frame to show off the bulge in his boxers. Geralt felt a small sense of relief as Jaskier touched himself through the fabric. Jaskier had not filmed them. He’d just recorded their noises? Somehow, that felt less gross. His anger eased away as the video continued. The noises were barely audible.

Eventually Jaskier came all over his chest with a self satisfied smirk. Geralt could hear himself grunt on the film. The water stopped and after a minute, he could hear the door. Jaskier was holding his camera close, which all but confirmed it was a cellphone. He looked toward what Geralt knew was the bathroom door.

“Having fun?” He asked with a chuckle. The video ended. Geralt remembered telling Jaskier to fuck off. His roommate had teased them for weeks over the accident.

Geralt supposed he should still be angry but his ire had been replaced by an equally hot rush that flowed through his body. It was kind of hot, in a very taboo way. He’d gotten off to Jaskier’s videos. Jaskier had gotten off to listening to him, that made at least the two of them even.

Jaskier does porn. He managed to text, while skimming more of the bard’s profile.

I know. Yennefer replied instantly.

In a way, Geralt wasn’t actually surprised. He sent her a quick summary of the video he’d just watched.

Hot.

Geralt snorted at her reply.

You can fuck him as long as you give me all of the details later.

Geralt blinked at her second text. He hadn’t said anything about being attracted to Jaskier. Then again, this was Yennefer. She knew things about Geralt that even he didn’t know.

Geralt scrolled down, looking for anything else that might mention him. ”Jacking off while I wear my Roommate’s Shirt” was the next one. Geralt snorted. That one was a lie. Jaskier was wearing the oversized dandelion shirt that he wore to bed during the winter. Geralt had given it to him as a joke.

The next “roommate” video was another fake. “Jacking off Secretly while FaceTiming my Roommate.” Geralt had never “FaceTimed” Jaskier and even if he had, Geralt was sure he would have noticed if his roommate was touching himself. He watched a few minutes of it, for research purposes.

Jaskier’s fake roommate was never shown, but he made up for it by describing himself. He was supposedly FaceTiming Jaskier from a locker room after working out. Geralt couldn’t help but roll his eyes as the unseen man described his sweaty abs in great detail.

“You know I always get hard after working out,” the man said, causing Geralt to laugh. He wondered how Jaskier would react if he were to randomly say that after hitting the gym. He was tempted to repeat some of these lines, just to mess with Jaskier.

The fantasizing video was at the top of the suggested list. Geralt felt less conflicted about watching it, now that he knew most of the roommate videos were fake. If it was anything like the still playing FaceTime video, Geralt was going to have some quality prank content. He clicked it, nerves mostly settled.

The first thing he noticed was that there was no intro to this video. Geralt vaguely remembered that this was an earlier one, perhaps before he’d started trying to promote himself.

It started out simply enough, Jaskier touching himself through his boxers.

“You’re so hot,” Jaskier whispered, making Geralt roll his eyes. More acting, go figure.

“Not just because you look like a god with that body and that hair. It’s your fucking voice,” Jaskier babbled, one hand sliding under his shirt. He moaned as he played with one of his nipples. Geralt wondered how much of Jaskier’s noises were just for show. If he was playing with his nipples because they were really that sensitive or if it was just for the audience.

Geralt felt himself shutter as a rush of blood made its way south. He was already a little hot and bothered from the shower video, but this was more personal. Even if this one was fake, Geralt had a feeling that he was going to regret watching it.

“God, if I sounded half as sexy as you do when you curse, I’d be rich making ASMR porn.” Jaskier said with a laugh as he yanked his shirt up and over his head. “Fuck, it’s everything you do. It’s how you look at me and how I’m one of, like, two people who can actually make you smile, and fuck, your eyes.”

Jaskier moaned, finally unbuttoning the flap in his boxers. Geralt felt himself twitch as Jaskier began lightly stroking himself.

“Like amber,” he muttered and it took Geralt a moment to realize he was still talking about him, his eyes. “Or honey. The fancy kind they sell in those jars with the honeycomb.”

How was it possible for Jaskier to still be so elegantly full of sap while touching himself?

“Sometimes, you look at me and it’s just so intense. Like you’re three seconds away from pinning me to the wall,” Jaskier moaned and Geralt found himself biting his lower lip. It still ached from the night before.

“I know you wouldn’t hurt me but I wouldn’t mind if you were a little rough. I’d let you fuck my face. You’re always saying you want to shut me up,” Jaskier continued, spitting into his hand before he continued. “I want you to wreck me. Make it so I can’t speak for days without feeling the burn of your cock in my throat.”

Geralt felt another twitch, and he reluctantly closed his web browser. As appealing as Jaskier’s fantasy was, Geralt felt he was crossing a boundary. If he went any further, he wouldn’t be able to go back. He needed to reflect.

Jaskier was attractive, but until yesterday Geralt hadn’t actually seen him sexually. Even now, he realized, he hadn’t taken the time to consider Jaskier’s feelings for him, if any. It was possible he just wanted a quick hook up, no strings attached. Or maybe it was nothing? Maybe he’d uploaded one video about wanting to fuck his roommate, and it had done well enough that he’d just continued to fake an attraction? However, if it was more than that...

Geralt didn’t know what he wanted.

 

Jaskier was late, as always. He usually didn’t mind staying at the theater for an extra hour or two. The campus was beautiful at night, and as long as the weather was nice, Jaskier didn’t mind riding his bike back to the dorms.

Tonight was different. He took a detour through the parking lot, checking to make sure Roach was still there. Jaskier smiled at the old motorcycle’s presence. Geralt was at least on campus, if not in their room. Considering how little socializing that Geralt did, the odds of him being in the dorm were fairly high.

After chaining his own bike up at the bike rack, Jaskier scanned himself into the building. The dorm manager Triss was watching Mean Girls on the lobby’s big screen. Jaskier almost stopped and joined her, but he also hadn’t seen his roommate all day. If Geralt went missing, Yennifer would kill him.

So, Jaskier skipped the movie in favor of checking on his grumpy roommate. His very hot, anti-social, grumpy roommate.

“Geralt,” he called in a singsong as he threw open the door. His ruggedly handsome, silver haired, hot as hell, grumpy roommate glanced up at him before going back his laptop.

“Hi Jaskier, how was your day?”

That was... different.

“Who are you and where’s Geralt?” He joked, tossing his backpack onto his bed. His roommate rolled his eyes and went back to whatever he was doing on his computer.

“Tomorrow after class, can you come by the theater? We could use some help with stage crew?” Jaskier asked, digging a pair of sweat pants out of his closet.

“I’m working until seven.”

Jaskier pouted as he yanked his T-shirt off and tossed it into his hamper.

“You didn't tell me they changed your schedule.” He whined, stripping his jeans off.

Geralt looked up but whatever come back he had died on his lips. Jaskier looked down, making sure he didn’t have a giant bug on his chest. Nothing.

Geralt continued staring as Jaskier changed into his sweats. Well, that was strange.

Jaskier wasn’t shy about his body. He changed clothes in front of other cast members all of the time during plays. Somehow, Geralt’s gaze felt different.

“Are you alright?” Jaskier asked, voice conveying a confidence he was currently lacking.

Geralt’s eyes returned to his laptop.

“Just tired. Had a frat meeting today.”

“You mean the Witchers are going to actually do something for a change?”

“Fuck off.”

Jaskier shrugged aside the strange feeling in his chest. Geralt was acting weird, or weirder than usual at least, but it was probably just exhaustion and the fact that Yennefer wasn't around.

Jaskier left him to his studying, or whatever it was that Geralt was trying to focus on, and turned his own attention to his phone. He’d been getting emails nonstop for the past two days. He’d had to actually turn off his banking notifications as his huge influx of new followers proceeded to buy up his videos.

Jaskier had a couple videos in reserve for weeks that he didn’t feel like filming. He was debating whether or not he should upload another one of them, just to keep up the momentum, when his phone buzzed in his hands. One of his past flings was in his DMs, asking if they could do another video together. Jaskier was getting a lot of those. He was still trending, which Jaskier knew he should be happy about, but it was also a little nerve wracking. The more views his last uploaded received, the more likely it was that someone he knew was going to find his account and ruin his life.

This was really something he should have thought about sooner.

Jaskier snuck another peek at Geralt. Did he...? No. Jaskier shook his head and went back to deleting emails. The odds weren’t that good, and besides Geralt would have made fun of him by now.

Unless he saw Jaskier’s whole account... Then he’d probably have beaten Jaskier up over the video with him and Yennefer in the shower.

He breathed a sigh of relief. He was safe, for now.

 

Geralt stared at his laptop’s background. He was doing a horrible job of pretending that he was busy, fortunately, Jaskier was preoccupied with his cell phone.

He just couldn’t stop staring. Geralt found himself casting glances over every few moments. How had he never just looked at Jaskier? Geralt had seen him a thousand times, and yet it felt like for the first time he was really looking.

Jaskier was lovely. His short, dark hair looked so soft in person. Geralt wondered what it would feel like if he gripped it, if he pulled it. Jaskier wanted Geralt to be rough, after all. Geralt could imagine Jaskier moaning around his cock as he yanked his hair.

Fuck. He knew exactly what noises Jaskier would make. He’d already heard his roommate make them.

Jaskier suddenly grinned and looked up. Their eyes locked for a moment, and the smile faded. He had been caught.

Geralt’s phone buzzed. Finally, the spell was broken and he was able to look away.

Give Jaskier your schedule.

No wonder he’d looked so damn satisfied with himself.

 

Geralt knew. Jaskier was sure of it. His roommate never just stared at him.

Geralt got up after getting Yennefer’s text, and went to the white board. Jaskier tried to calm down as Geralt adjusted his schedule, but even that was suspicious. He never kept Jaskier in the loop if he could help it.

“Are you feeling alright?” Jaskier asked, feigning ignorance.

Geralt didn’t look at him. Jaskier watched him set down the marker and wander across the room.

“Roach needs air.” He muttered, grabbing his jacket.

Jaskier listened as their dorm door slammed shut. He was still staring at the crude handwriting Geralt had left on their white board.

Jaskier was fucked.

 

Geralt was busted. He had fucked up and now Jaskier knew.

He didn’t actually need to put air in his tires, but that didn’t stop Geralt from racing Roach toward the nearest gas station anyway.

His silver blond hair whipped him in the face as he rode out of campus. He realized belatedly he’d left his helmet in his room, but he wasn’t going back for it. If he crashed, at least it would spare him the embarrassment of ever having to see Jaskier again.

Roach soared past the gas station and merged onto the highway. Geralt let the road take them up the nearby mountain and into the woods. He didn’t have his wallet, which meant he couldn’t make a real break for it, but he had enough fuel to get out of town for a bit.

Once he reached the top, Geralt cut the engine and walked Roach into the trees. He gave her a pat goodbye, as if to reassure her that he would return, and headed into the trees.

It didn’t take him long to find the clearing. Geralt had found it his freshman year. His biology professor had offered extra credit to anyone who went to a “frog watch” event at the pond. Geralt never did find the pond, or any frogs, but he had managed to find something even better.

Geralt had a picture perfect view of the campus, and the surrounding town. From up on the mountain, he could make out the buildings that he traversed daily. If there were students still milling about, Geralt couldn’t tell.

That was what Geralt liked about the clearing. It gave him perspective. When he was down there, on campus or at work, everything was so loud. Chaotic. Vibrant. Out here, he could see how small and insignificant it all was.

Geralt sat down and let himself finally think.

Jaskier made porn. That was fine. Geralt couldn’t shame the people making the content that he consumed.

Geralt had enjoyed watching Jaskier’s porn. That was harder to accept. He had cum after watching only two videos of it. He had gotten hard watching more that afternoon. Geralt probably would have gotten off on that fantasy video if he hadn't managed to turn it off.

That was also an issue. Geralt didn’t like to admit it, but he was very obviously attracted to his roommate. Jaskier was a mystery though. Geralt had spent the past hour before Jaskier got home trying to figure out if he was actually attracted to Geralt or if it was just an act.

It didn’t seem like a typical porn narrative, but then again, maybe Jaskier just needed someone to pretend to pine over, or rather lust after.

Jaskier never said in any of those videos that he had feelings for Geralt. Geralt was just the “hawt” guy that Jaskier may or may not want to fuck. Maybe he just needed to get it out of his system?

Maybe Geralt needed to get it out of his system?

He took a deep breath of the chilly, autumn air and returned to Roach. Geralt did not have feelings. He would ask Jaskier how he felt and they’d talk to each other like adults and maybe, hopefully, Geralt would get laid.

 

Jaskier was doing damage control the minute that the door slammed behind Geralt. Any and all videos he’d made about his roommate were now visible only to top tier followers. He was debating deleting them entirely, just in case Geralt had paid for a membership, when the door opened.

The white wolf had returned. Jaskier could only pray that he wasn’t devoured.

“I saw it.” He said, sitting on his bed across from Jaskier. At least he wasn’t angry.

“How much?”

“A lot.” Geralt admitted, absentmindedly running his fingers through his long hair. He didn’t meet Jaskier’s eyes.

“Did you see the one about you?”

Geralt finally looked at him and Jaskier didn’t need to hear it, he could tell he had been found out.

“If you wanted to hook up, you only had to ask.”

Jaskier chuckled, he hadn’t expected that.

“In the three years we’ve lived together, you’ve never once shown even an ounce of interest in anyone who didn’t have giant tits.” He teased.

“Neither did you.”

Jaskier snorted, “I’m a theater major.”

“I don’t stereotype.”

“I spent our entire second semester singing dirty ballads at you.”

They laughed for a moment. Geralt still had a strange look in his eyes, but Jaskier felt like a weight had been lifted from his shoulders.

“I guess that should have been a hint,” Geralt agreed.

“You, on the other hand, I still can’t believe you’re bi.” Jaskier said, shaking his head.

“Pan. I think?” Geralt shrugged. “I’ve never actually had sex with another dude. I don’t really have a preference though.”

“It’s not that different,” Jaskier said, his voice much lower than he’d intended it to be. “You’ve done anal?”

Geralt shook his head and Jaskier actually sputtered.

“You’re lying.”

A pair of honey colored eyes glared at him. “From what I understand, it isn’t all that enjoyable for a woman. I’m not going to push someone into something they aren’t going to enjoy.”

“Fair enough,” Jaskier replied. “I just didn’t expect you of all people to be a prude.”

“Are you done teasing me?”

“Never.” Jaskier answered playfully, much to Geralt’s dismay.

His white wolf sighed. “Dandelion, do you have feelings for me?”

The bard felt his eye brows lift.

“Sorry. Stupid question.” Geralt muttered.

“It’s fine,” Jaskier said, looking down at the floor. “I think you’re hot but that’s it.”

“Good. That’s good.” Geralt sounded relieved. Jaskier tried not to let that sting. “I don't want things to be weird if we hook up.”

“You think that me catching feels would be the weird part?” Jaskier teased. “Not, oh I don’t know, the morning after?”

“Well, I mean, we don’t have to stop,” Geralt said nonchalantly. “We’re adults. We can have casual sex and still annoy each other until we graduate.”

Jaskier opened his mouth to argue and promptly shut it again. Was Geralt seriously offering...?

“Think it over and let me know,” his roommate said, pulling his blankets up around him.

Jaskier watched as his roommate easily fell asleep, his own mind still reeling. He had wanted Geralt since the night they moved in, and now his roommate was offering- what was he even offering? Casual sex, no strings attached? Was this to be a regular thing, or was Jaskier just going to be a substitute whenever Yennifer was away? Was Geralt going to stop sleeping around once he had two partners, or did he still plan to bring home random ladies? Or even eventually men?

I need your advice.

About fucking my bf?

Jaskier winced. Yennefer was blunt, as usual, and apparently all knowing.

Should I?

We’re in an open relationship. Geralt can do whoever he wants.

what if I don’t want that

He thinks we can still be friends

I don’t think I can

He doesn’t know I Jaskier tried to start his response several times but ultimately deleted all of them.

 

After a long, chaotic shift, the last thing Geralt wanted to do was visit the campus theater. He had told Jaskier that he wouldn’t make it, but that was before. Before everything.

The lights were still on and music was drifting into the parking lot. Geralt could escape if he wanted. No one saw him out there. No one would know he had stopped in their parking lot. Regardless of all this, Geralt still walked around the building to its entrance and let himself in.

It never ceased to amaze him how completely in his element Jaskier was when he was on stage. Even now, with dried paint in his hair, Jaskier managed to outshine his peers.

When he finally noticed Geralt, Jaskier’s face lit up like the sun. He was beautiful. How had Geralt never noticed?

“You’re here!” He said happily, thrusting a paint bucket into Geralt’s hands.

“If I didn’t help, you’d be here all night.” He deadpanned.

“I’ve slept here before, I can do it again.”

Geralt rolled his eyes before setting off toward an unpainted section of set.

 

“Bye!” Jaskier called after his last volunteer. Gerald was the only one left, and his section was almost complete.

“We can finish that tomorrow,” he said, heading over to where his roommate was still painting.

“You need to put on the second coat tomorrow.” Geralt replied.

“It’s fine. Really.” Jaskier told him, putting a hand on his shoulder. That was usually enough to send his night owl freshmen scurrying home, but not Geralt.

“Go nap. I’ll wake you when I’m done.”

Jaskier grumbled but did as Geralt had directed. He slumped into one of the padded seats and let his eye lids sink. His phone was still in the audio booth, it’s music pouring from every speaker.

Before he could even realize he’d fallen asleep, Geralt was nudging him awake.

“I finished my section and touched up a few others.”

“So good to me,” Jaskier yawned, making Geralt blush.

“It was nothing. You need a ride home?”

“You’re going to let me ride Roach?” Jaskier sat up, suddenly fully awake.

“Well, it’s that or you pass out while walking home and then I have to go find you.” He grumbled.

“My hero,” Jaskier cheered, throwing his arms around Geralt’s hips and pulling him in for an awkward, almost-hug.

Geralt’s face turned even more red as he pulled away. Jaskier pouted but let him go.

“I’ll just grab my phone-“ he started before being cut off by Christina Aguilera belting her heart out. Both of them froze for a moment, shocked by the sudden shift in music.

Geralt raised an eyebrow as Jaskier jumped out of his seat and rushed toward the booth. Burlesque was still being adapted for the stage, but that hadn’t stopped Jaskier from including it in his playlist of show tunes.

Listening to Christina sing about wanting a “tough lover” wouldn’t have been awkward a few days ago, but things were different now. Geralt knew. He had seen the stupid video of Jaskier practically begging Geralt to use him as rough as he wanted. Jaskier was never going to live that down.

He managed to rip the aux cord out of phone before his phone started playing any other embarrassing tracks that might be on there.

Geralt, fortunately, didn’t comment when Jaskier found him in the lobby. He just handed him his helmet and headed off toward the lot while Jaskier locked the building up.

Geralt’s leather jacket was cool against Jaskier’s skin, almost as cool as the chilly wind that beat against the back of his neck. Despite all this, Jaskier didn’t feel anything but warmth radiating from Geralt’s back.

 

Geralt dropped Jaskier off at the front of their building before cruising into the lot and setting his alarm. He was fairly certain that no one would bother with his old, beaten up motorcycle but it didn’t hurt to be careful.

He went in the back way, closer to the stairwell. The elevator might have been faster, but the stairs were almost always empty and Geralt preferred the quiet, especially after a day full of forced socializing. It was such a regular part of his routine that he almost didn’t notice the scene playing out in the lobby.

“Stop it.”

Geralt whipped his head around, recognizing his roommate’s voice instantly. Jaskier was backed up against the wall between elevators, surrounded by a group of angry men.

“Shut up, slut.”

“What the fuck are you doing?” Geralt growled, stalking over to the group. A couple of the students took a step back as he approached. Geralt would bet that the majority of them were freshmen. They hadn’t been stripped of their fighting spirit yet. The few that Geralt recognized were frat bros. Go figure.

“He makes porn,” one of the guys said, as if that explained everything.

“And? You watched it.”

One of the frat brothers shoved the pledge who’d spoken. “Dude, that’s Geralt. He’s a Witcher.”

“So what?” The freshman asked, eyes narrowing.

Most of the group groaned. The pledge was shoved again.

“I’m sorry, dude,” an older frat member told Geralt. He didn’t sound very sincere, but at least the group was starting to back off. “We can’t haze pledges anymore, so they have to find other ways to impress us. Sometimes they make dumb decisions.”

“Jaskier is my roommate. Don’t mess with him.”

“Oh, we weren’t going to hurt him.”

“Damn right you weren’t,” came a hiss from behind them. Geralt had never been so happy to see Triss.

As if right on cue, the elevator dinged and it’s steel doors slid open. Jaskier grabbed Geralt’s arm and yanked both of them inside. The “door close” button was broken, but it didn’t matter. None of the crowd dared step foot inside with a seething Geralt.

“That was amazing,” Jaskier said excitedly as soon as they began ascending.

“You getting beaten up by a pack of homophobic freshmen?”

Jaskier snorted, “I don’t think they knew what it was. They just knew I was in porn.”

“I doubt it.”

“The guy in the video is their president.” Jaskier replied as the door opened. He slipped outside with a wink and left Geralt rooted in shock.

The doors almost closed with him still inside.

“That’s why you weren’t afraid.” He said, once he’d caught up. The pieces were starting to come together.

“Well, that and my roommate is the white wolf. The Witchers may not be a big group, or even that popular, but you’re still one of them.”

“I told you not to call me that.” He muttered, stepping in front of Jaskier to unlock the door.

“Yes, and I told you not to call me Dandelion but you still slip.”

Geralt hummed, “I think I could be persuaded to stop calling you that.”

Jaskier visibly shivered.

“Just let me know.”

 

Jaskier couldn’t sleep. He tried, really tried, but he couldn’t stop thinking about how easily Geralt had flirted with him. It had been one throw away comment, and Jaskier knew he was being silly for dwelling on it, but he couldn't stop replaying it in his mind. Each time he did, it became more explicit until eventually he was picturing Geralt whispering exactly how he wanted to be persuaded.

He sat up. Geralt glanced over at the sudden movement, but went back to reading his textbook.

“I want to record it.”

Honey colored eyes looked at him in bewilderment.

“Tomorrow. We can do it tomorrow, as long as you let me film it.” Jaskier stammered out.

“Alright.”

“Alright?”

“Alright,” Geralt replied, going back to his book.

 

Geralt hated working morning shifts. His insomnia kept him up late even on nights where Jaskier was out or miraculously quiet.

It didn’t help that he was distracted by Jaskier’s proposal. Geralt wasn’t actually sure why he’d agreed. He didn’t necessarily want to be on camera. Geralt figured that was one of the reasons that Jaskier requested it. It was a sort of challenge. Do you want this enough that you’ll agree to something uncomfortable?

Geralt was choosing to see it as terms of agreement, instead of manipulation.

Either way, it consumed his thoughts as he counted down the hours until he could go home.

 

Jaskier spent his morning uploading one of the videos he had in reserve and doing some personal grooming. He took a long bath, making sure to inspect every inch of his own body. Unsightly hair was shaved away. Skin was moisturized. Jaskier spent a little extra time on his hair, despite knowing it was going to get destroyed sooner rather than later.

He debated whether or not he wanted to be ready when Geralt got home. Jaskier didn’t try to fool himself into thinking that this would be anything. This was his only opportunity and he wanted everything to be perfect, but he also wanted to drag it out. He wanted Geralt to take him apart slowly, brick by brick, until he couldn’t be put back together without remembering how Geralt had ruined him.

Eventually, Jaskier decided to just let Geralt handle it. He set a bottle of lube on the bedside table, along with a few condoms. All that was left was just to wait.

.

Geralt returned late from work. Jaskier pretended not to notice.

“I picked up condoms, but I guess you already have those.” He said awkwardly, nodding at the supplies Jaskier had set up.

“How sweet,” Jaskier replied sarcastically, taking the box that Geralt was awkwardly holding and tossing them onto the bed. “Before I set up the camera, we need to talk. Make sure we both have realistic expectations here.”

“I didn’t actually finish that video. I got as far as you talking about blowing me, so no expectations.”

Well, that made things less embarrassing.

“That’s good, because if you thought that I wanted everything I mentioned, we’d be here forever.

“I also need written consent to film and post this video. I know, paperwork is super unsexy but I had a dude try to claim half of my profits once, which at the time was about the same as asking me to buy him a six pack.”

Geralt snorted, “when was this?”

“I dunno, around the time I started uploading more than just my streams. I was only getting ad revenue so I just demonetized it and sent him a couple screenshots proving that I wasn’t profiting from it.”

“How old were you?”

Jaskier winced and muttered, “I don’t remember,” as if Geralt wasn’t smart enough to see through it.

“Anyway, before that we should discuss what we’re both comfortable with. Obviously, we’re using protection. Have you been tested recently?”

Geralt just blinked at him. “I donated blood a couple months ago, if I had something they’d call me.”

“Have you had unprotected sex since then?”

“Only with Yennefer?”

He sighed, “I don’t suppose you know the last time she’s been tested?”

“Are you implying-“

“No,” Jaskier cut him off quickly. “I ask everyone these questions. It’s not personal, I’m just trying to figure out if I can blow you before you put the condom on.”

“You were right, this is incredibly un-sexy,” Geralt grumbled.

“I am clean. I can show you my test results if you’re interested.”

“I believe you.”

“Wonderful.” Jaskier said cheerfully. “So, here’s my idea for the video: I’m going to call it ‘getting fucked by my straight roommate.’ I know, you’re not straight, but its a fetish so just roll with it okay?”

Geralt shrugged.

“I have very few boundaries,” Jaskier continued, “first, we’re only going this once.”

Geralt lifted one of his silver blond eyebrows. “Only once?”

“Is that a problem?”

“No, it’s fine. I don’t care.” He replied, with a smile. He’d heard that one before. Jaskier would be back, they always came back.

“Good. Next, don’t try to kiss me. It makes things really awkward, just trust me.”

Geralt nodded. “I don’t want my face on camera anyway.”

“That’s fine. I can keep it out of frame. Anything else?”

“You have more experience with this, are you sure you don’t want to fuck me?”

Jaskier felt his brain short circuit.

“Sorry. You okay?”

Jaskier just blinked at him. “I wish I could, but we already agreed this was a one time thing and that’s like, something you should really work up to.”

Geralt shrugged, “well, just let me know if you ever want a repeat.”

“Fuck.” He laughed.

“You have any other restrictions?”

“No. Wait, yes. Don’t say my real name.” Jaskier warned. “Most of the time, the guys I’m with don’t actually know it but you do so yeah. Don’t say it.”

“Can I sign your papers now, Mr Grey?”

“Fourth rule, never reference Fifty Shades again.”

 

Paper signed and tripod set up, Jaskier finally hit record on his camera. Geralt’s face was out of view but he still felt an unexpected pang of excitement as he waited, back against the hard headboard of his bed.

Jaskier settled between his thighs, tossing both calves over Geralt’s shoulders so that he had easy access to, well, everything.

Geralt pumped a generous amount of lube into his palm before leaning in to stroke Jaskier’s cock in slow, even strokes. He may not have been with other men, but he knew what felt good for him and he knew how to draw things out.

Jaskier pouted impatiently, a look that Geralt had seen a hundred times over the years. It was familiar, and for some reason that sent a rush of blood down to his gut. Everything about Jaskier was familiar. There was something about that, as if he’d been studying and cataloguing details about his roommate without even recognizing it.

Jaskier reached over to grab the lube for himself, but Geralt’s free hand stopped him before he could reach the end table.

“Don’t.” He warned, golden eyes stern.

Jaskier whimpered. It sent more blood racing down to pool low in Geralt’s body.

He gave Jaskier a look that demanded authority before letting go of his arm in favor of running his hand up the bard’s chest. His skin was soft and pale from spending most of his time inside. Running his hand back down, he took a detour to tease against a nipple. His roommate gasped softly, his pupils dilating.

“I thought that might have just been an act,” Geralt admitted, his voice lower than he’d intended. He brushed past the other nipple, his dominant hand still lazily stroking Jaskier’s cock.

“You think I wear silk tops all the time because they're so affordable?” Jaskier teased, voice dripping with sarcasm.

Geralt felt one of his eyebrows arch on its own accord.

“Sit up,” he ordered. He was only mildly surprised when Jaskier actually did as he was told. Geralt pulled him onto his lap, leaning forward to capture one of the nipples in his mouth. Jaskier would just have to crop the top of his head out when he edited, he decided, though he was no longer concerned about anonymity.

Jaskier moaned, eyes wincing shut as Geralt lapped at the sensitive nubs, one at a time until Jaskier slumped forward and panted into his ear.

“Can I touch you now?” The bard asked, voice breathy and deep with want.

Geralt hummed in approval, lips too busy sucking a quick hickey below one of his nipples to speak.

Once again, Jaskier reached over to his end table for lube. He pumped a couple squirts into his hand before leaving the container next to them. Geralt was about to ask if he was trying to hint something, when he felt a slick hand closing around him and something else.

A shiver ran down his back. He didn’t need to glance down to know that Jaskier was jerking both of them off at the same time. It was strangely erotic, despite being such a simple action. With each stroke of Jaskier’s hand, he could feel how hard both of them were. Each movement brought a new wave of pleasure, which caused a never ending feedback loop as both of them got riled up over the other’s excitement.

Geralt felt as though he could lose himself, just doing this, but that wasn’t what they’d been working toward. He mustered up all of his concentration to focus on finding the lube, which Jaskier had been, thankfully, kind enough to leave right next to them.

Once he’d gotten his fingers nice and slick, he reached back behind Jaskier, feeling his way lower. His roommate moaned directly into his ear and Geralt felt himself twitch in the bard’s hand, his own fingers finally finding their target.

The first digit slipped in easily enough. Jaskier was hot and tight in a way that Geralt hadn’t experienced before. He added some more lube, making sure that the passageway was slick enough before he added a second finger. Jaskier was still panting into his ear, his moans turning a little more needy as Geralt stretched him out.

“Please, fuck,” he whined, his back arching suddenly as Geralt brushed against a soft organ. He smirked as he stroked over the spot again, making Jaskier moan and clench around his digits. His fist stuttered around them.

“Oh, is this too much for you?” Geralt teased, as if he wasn’t just as eager. Jaskier’s cheeks turned pink and Geralt wondered how he had enough blood still in his face to blush. Regardless, Jaskier rolled his eyes as he reached over to grab a condom.

He tore it open with his teeth. Geralt shuttered, despite himself. He’d done that before, why was it so hot all of a sudden?

Jaskier rolled it onto Geralt for him, the confidence that he oozed on camera showing through. Geralt watched as he moved his tripod and then let Jaskier reposition him so that he could lay down.

Jaskier slung a leg over his lap once more, this time angled so that he could grind his ass against Geralt’s dick.

“Fuck,” the blond muttered, watching Jaskier rock back and forth, teasingly, in his lap.

“I’ve wanted this for so long,” Jaskier admitted in a whisper, his eyes shining as if he were about to weep.

Geralt wasn’t sure how to respond. He traced a line down Jaskier’s side, all the way down to his thigh. Jaskier wasn’t as muscular as he was, but Geralt could feel the strength hiding just beneath the skin. He was used to soft, pliant skin, like Yennefer. She was strong, he’d never think otherwise, but it was a different kind of strength.

“I want you,” Geralt wasn’t sure where the words had come from, but they felt right.

“Beg for me,” Jaskier challenged, his eyes blaring into his soul despite how watery they appeared.

Geralt tightened his grip on Jaskier’s leg, recognizing a challenge when it was issued to him.

“Aren’t you the one who should be-“

“Prove that you want me,” Jaskier cut him off.

“Dandelion, I have never been this hard in my entire life,” Geralt growled, rutting up against him. “So either you fuck me now, or leave me to jack off in peace.”

“Good enough,” Jaskier chuckled, finally lining himself up and pumping some more lube directly into Geralt’s cock.

Jaskier was just as warm and tight as he’d been when Geralt had pulled out his fingers. Geralt wasn’t sure he’d done enough, but Jaskier didn’t seem to be in pain. If anything, he appeared to be fully in his element now.

Strong thighs gently flexed as Jaskier moved, hips undulating in a smooth rhythm.

 

Geralt watched him with lustful eyes, his lower lip caught between his teeth. He always bit his lip when he was focusing on something difficult. Jaskier wondered if he was close already, or perhaps his mind was elsewhere entirely. Jaskier knew he was a little too tight, but he hadn’t wanted wanted to wait. He had hoped it would hurt a bit, he wanted to feel the ache wen he went to sleep. He wanted to remember this evening every time he made a sudden movement tomorrow. He hoped it would last longer than a day, that the burn would last.

Jaskier was in too deep. He hadn’t been entirely sure why he was so dead set on recording this, but perhaps it too was a form of masochism. When the physical pain ended, he’d still have this to fall back on.

Suddenly, as if he’d sensed Jaskier was stuck in his own head, Geralt’s hands closed around Jaskier’s hips. Jaskier let him set the pace, he’d give Geralt whatever it was he wanted.

Geralt bucked up, meeting Jaskier’s next downstroke, finally hitting deep enough to rub against his prostate. Jaskier couldn’t help but cry out, instinctively reaching for his own cock.

A large hand grabbed his wrist, stopping him mere centimeters from his own dick. Jaskier opened eyes he hadn’t realized he’d closed, meeting Geralt’s honey colored gaze.

“I didn’t give you permission to touch yourself,” Geralt chided, yanking him closer.

Jaskier groaned, unable keep track of the changing power dynamics, but he was too far gone to try to regain control now. If Geralt keep hitting that spot, he wouldn’t need to touch himself anyway.

As if he’d read his mind, Geralt released his wrist, opting instead to grip the base of Jaskier’s cock. Jaskier could do nothing but hold on as Geralt continued to pound into him.

He moaned as Geralt sucked a bruise into his collar. Even with the hand around him, it was getting hard for Jaskier to hold back.

So, when Geralt leaned in and whispered, “you’re perfect,” into his ear, Jaskier couldn’t help but cry out as the pressure in his gut suddenly released.

 

Geralt wasn’t far behind, not with how Jaskier was clenching so tight around him. Before he could stop himself, he pulled his roommate closer and locked their lips together. It was sloppy and rough, but Geralt was too far gone to care. Jaskier didn’t miss a beat, he road Geralt through his orgasm, kissing him back just as fiercely.

Once, he’d come down enough to let go of his roommate, Jaskier got up to turn off his camera.

Geralt ties off his condom and tossed it into the closest bin. He felt like the world was crashing down around him.

He had broken their agreement. There was no way that Jaskier was going to have sex with him again now, even if he had reconsidered his past statement. That wasn’t the only issue, he reminded the selfish part of him that wanted nothing more than to take anything Jaskier was willing to give him.

He’d also let Jaskier down, broke the agreement, and that was what would make things awkward in the future.

“Fuck,” Jaskier whined, collapsing back onto bed next to Geralt. That was at least a positive sign.

“You okay?”

“Just a little sore. Give me two minutes.”

“You need me to get you anything?” Geralt asked, propping himself up.

“Wet wipes, in the drawer.”

He fetched them quickly, trying to figure out if he was supposed to apologize or pretend it didn’t happen.

“Thanks,” the bard said, breath still heavy. Geralt watched him wipe the cum off of his stomach, eyes lingering on a bright, red love bite he’d left. His eyes flicked up to Jaskier’s throat. The mark there was a dark purple. It was going to be hard to cover up.

“Hey, you got some on you too,” Jaskier said, handing him a fresh wipe. Geralt busied himself with scrubbing at the mess his roommate had left on his chest.

He’d promised not to make things awkward, but that was when this was still a hypothetical. Now that it was reality, Geralt realized he was fucked.

He’d remained friends with several past flings, why did it feel different now?

“Hey, you mind if I shower first?” Jaskier asked. Geralt shook his head, letting Jaskier wander off to their shared bathroom. He listened to the water, brain dragging up memories of the video Jaskier had made when he was in the shower. Then, the video of him faking himself in the shower.

Geralt was truly fucked.

 

Things were awkward. Jaskier knee that it was going to happen but he managed to treat Geralt as though nothing had happened.

The next morning, Jaskier focused on editing the video. It felt like it took a million years, but at least it meant he had an excuse to ignore the tense feelings.

Yennefer texted him a couple times, asking for increasingly vulgar details.

“Hey, tell your girlfriend that she has to pay for my premium content just like everybody else.”

Geralt grunted.

Maybe things could go back to normal after all.

 

I’m staying another week.

Geralt glared at his phone, if it were to blame for Yennefer’s continued absence.

He felt like he was falling apart.

Another trip to the clearing was necessary.

Jaskier didn’t even notice when he left.

 

I fucked up. Geralt texted Yennefer from his hideout in the forest. He could see the campus below him, he avoided looking at his dorm building.

You’re even dumber than I thought.

Yen, I’m serious.

He watched the dots that I dictated she was typing appear and disappear until finally his phone began buzzing.

“You’re an idiot.” She said as soon as he picked up.

“I love you too.”

She giggled, “okay, what happened?”

“I kissed him.”

She laughed again.

“He asked me not to, and now things are awkward between us-“

“Well obviously,” she sighed. “Is that it?”

“Yeah.”

“Both of you are so aggravatingly dull,” she muttered. “Listen, Jaskier has had a giant crush on you since you moved in together.”

“You’re lying.”

“No, I just know things. Trust me, he loves you, and if you ever bother analyzing your own feelings, you’ll realize that you feel the same.”

“This isn’t funny.”

“Gods, you’re dense,” she spat. “I’m going now. See you.”

The call ended. Geralt groaned as he laid back, trying to think through his feelings.

He still wanted Jaskier. That was obvious.

He also wanted Jaskier to want him.

Fuck. Yennefer was probably right. Aside from her, Jaskier was the only person he actually cared about. Geralt had never been this obsessed with a one night stand, and there had to be a reason for that.

But did Jaskier actually feel the same way?

 

Geralt returned to the dorm, a bag of take out hanging from one of Roach’s handles.

“Wish me luck,” he told the motorcycle. The engine purred at him, until he yanked out his keys and set up his alarm.

“Hey, I brought your favorite,” he called, letting himself in.

Jaskier startled, clearly he’d been too engrossed in work to notice he was alone.

“Gen Tso?” He asked, face lighting up. “How did you know?”

“I pay attention,” Geralt replied. “Sometimes.”

“This doesn’t mean I’m fucking you again,” he warned.

“I respect that,” Garelt said forcing himself to smile.

“Good.” Jaskier hopped out of bed to steal the carton of food from his roommate.

“I was hoping we could talk.” He said, handing the bard a pair of chopsticks. Jaskier froze, nearly dropping his utensils. “Fuck, I didn’t mean that it sound so bad.”

Jaskier raised one of his flawless eyebrows, returning to his desk. It looked like he was in the process of uploading.

“So, what’s going on?”

“I’m sorry for kissing you,” he started.

Jaskier laughed, “don’t worry about it.”

“I want to do it again.”

 

They sat in silence for a few moments. Jaskier wasn’t sure how he was supposed to react to that. This was so surreal, he felt like he was dreaming.

“It’s okay if you’re not interested,” Geralt continued, “I guess I just wanted you to know.”

Jaskier felt his mouth go dry. He wasn’t used to Geralt being this open and honest. Unless... unless he just wants something...

“I’m sorry, I can’t-“

“I understand,” Geralt said, cutting him off before he had a chance to finish speaking.

“No, you don’t,” Jaskier said, a tinge of anger in his voice. “I told you, it was a one time thing. You agreed, but now you’re, what? Trying to bribe me with my favorite take out so that I’ll sleep with you again.”

Geralt opened his mouth to argue but Jaskier cut him off.

“No. Don’t give me another ‘I understand’ or ‘it won’t be weird’ because it is weird. It’s weird and obviously you don’t understand.” He spat. “I can’t sleep with you again, Geralt. I shouldn’t have done it to begin with.”

The white wolf couldn’t even meet his eyes.

Good.

“I’m sorry,” the blond said after giving Jaskier a couple moments to fume.

Eyes the color of warm amber finally looked up at him.

“I wasn’t trying to sleep with you again. I didn’t want that.”

“Oh? What did you want then?” He challenged.

“You?” He answered earnestly.

Jaskier felt like his heart had dropped into his gut at the words.

“I want to be with you.” Geralt’s voice was barely above a whisper. “I realized that you matter to me.”

“Geralt, please, if this is some sort of joke-” Jaskier felt like he was about to choke.

“Dandelion,” Geralt stepped forward to take one of his hands, “can I kiss you?”

Jaskier nodded, feeling tears well up in his eyes. This wasn’t real. He was going to wake up at any moment and realize it had all been a dream.

He allowed Geralt to draw him up out of his seat. Jaskier leaned in to the kiss, this one much softer than the last. Geralt brushed their lips together gently, as if he was afraid they’d shatter. Jaskier certainly felt as thought he could shatter at a moment’s notice.

It ended before it could heat up. Jaskier would have been disappointed if his roommate wasn’t caressing his cheek and admiring him like he was the most beautiful person he’d ever seen.

You’re perfect. The words echoed in his brain.

“I think I love you.” He admitted. “I think I’ve loved you since the day we met.”

“Yennifer told me that an hour ago.”

They both chuckled, it was still a little awkward. They ate together in a comfortable silence. Jaskier wasn’t sure where exactly their relationship was going, but he knew that he was going to get plenty of content at the very least. Content that thousands of other people would get to enjoy, and if Geralt didn’t work out, perhaps the next person to discover his alter ego would.