Work Header

Hearts on Fire

Chapter Text

“Oh fuck...” Lance watched the man’s mouth move to form the unmistakable shape of those inaudible words as he watched him slide down the thick shafted black vibrator. It wasn’t the thickest one he had in his array of toys but it was pretty big, big enough that Lance could feel the strain in his own body just by watching him. His opening reached halfway down the base and his mouth gaped. The man lolled his head to the side and he tried to hide his covered face in his shoulder. He was panting, gasping for air as he continued his way down.

There was something spectacularly arousing about watching the way he fit the vibrator inside of him. Not just that it fit, and man, it was big. No, it was the minutes leading up to it that had started to tighten the waistband of Lance’s pants. The strip tease, then the playful, light masturbation. The way he moved, the way that he arched his back and threw back the shoulder length flaming red hair when he bottomed out on the toy started to become too much for Lance. If he could hear him he probably would have came already. He knew what it was going to sound like, though. He’d seen enough of these videos.

Lance extended his thumb and tapped the pause button on his phone. He took a deep breath and felt the burning desire slowly turn into a slight stomach ache; his body feeling robbed of release. He made sure to make note of how far he’d made in the video so he could finish it later when he was alone. He exited the app and made sure to open up Instagram. Perfect, nobody would be able to tell he’d been lusting after a fucking camboy, watching him pleasure himself for the internet to see.

Lance hadn’t gone in with the intention of getting hooked. He thought maybe he’d look around the website and see if it was anything special, after all he was pretty open to exploring kinks and fantasies. He had watched a few users do their act whether it was masturbation, actually having sex, or something weird and off topic. One guy was playing Donkey Kong while naked. Lance watched him for a solid twenty minutes before he remembered he was looking for jack off material.

He knew he was screwed when he found him. He could have easily missed the video thumbnail or he could have passed by it, opting to click on something that looked spicier or had a better title. But he did click on it.

The deep scarlet hair was what popped out for Lance. He had been slightly disappointed when he figured out it was a wig. It wasn’t too high quality and sometimes the synthetic strands were obvious in the light, even through the reduced quality from the camera. After a bit he learned to love the fact that he wore a wig. Maybe he’d buy more of them and switch them out. That’d be hot. He also wore a pink lace lolita style mask that obscured the lower 2/3rds of his face. The only facial details left to identify by were his eyes, but they were never captured in high enough definition to be able to tell much.

He also had a body type that reminded Lance of Keith. Lance knew it was a heavy contribution to his obsession but you’d never catch him admitting it to anyone. Lance was perfectly comfortable keeping that fact locked away in his “id”, hardly trying to consciously acknowledge it himself.

The camboy’s naked body was perfect. It was lithe but strong looking, like he could be an acrobat, or a dancer, or something else that required both strength and agility. He could be my hired fuck buddy, Lance thought involuntarily. He embarrassingly shrunk down in his seat a few inches. That thought would be a difficult thought to explain to mind readers that were near him. Almost as hard as it would be for them to explain to him why they could read minds.

Lance shook his head at himself and stifled a laugh. No way he could hire anyone for anything. Any money he had went to tuition and room and board. Being in college sucked. He was poor and lonely. And horny. The only good thing about this place was Keith but even that was a bittersweet subject.

Lance and Keith had been in the same grade in middle school and had been pretty close. Lance didn’t understand back then why he was envious of the way Keith looked, the way he moved, the things he said, and his personality. Keith did certain things so effortlessly that it was beautiful and graceful.

At the time all he could figure out was that he wanted to be his friend no matter what he had to pretend to be interested in. It wasn’t until after they had gone to separate high schools and Lance had learned some lessons that he realized he had been jealous of Keith because he loved him.

Or was deeply infatuated, whatever. Lance was sure he was in love with him now, though. After finding him at orientation for the same university Lance felt the fire in his heart rekindle. It burned with nostalgia and desire. Then Keith dumped a bucket of water on it.

It was after the orientation and after Lance had smoothly and suavely asked him to hang out again after all these years. He’d glad he didn’t outright ask him on a date because Keith’s high school sweetheart showed up a few minutes later to pick him up. And he was huge. Alright, he wasn’t that big, he was just buff. Muscled enough that Lance bet he could punch him through a sheet of drywall. Keith wasn’t short by any means, but this guy had at least half a head on him. Lance had only met him a handful of times in the three years he’d been back in Keith’s life. He usually had Keith hang out in his dorm since it was right there on campus.

Where was Keith? The thought intruded on his train. Lance stopped scrolling automatically through instagram and peered across the library scene. There were students seated with books, studying and reading. Some students were sitting on their computers looking and laughing at something that was definitely not academia, and a couple of young ladies walked by which Lance tried to throw a flirty smile at but went unnoticed. He watched them walk away. They had really cute butts. He turned his head the other way to look for incoming Keiths. There were none.

He let out a bored sigh and leaned back, pulling his phone back up and started to wonder if he should watch more of the recently uploaded video. He wanted to save it for when he could touch himself, though. Lance liked to think that Keith followed these videos too. The idea of him and Keith unknowingly enjoying the same video to the extreme and possibly rubbing it out at the same time often made Lance cum before the video did. He knew for a fact that Keith used the same website, or at least that he had before. Once, in their second year, Keith opened his laptop to use in their English 2010 class and found he had forgotten to close his activities from the night before. There was no sound but the website was open clear as day. Lance gave him a lot of playful shit for it, even though be made sure to make a mental note and look it up later.

“What, watching porn in the library?” a familiar voice said dryly, although he could detect the playfully facetious undertone. Lance felt a burst of hot anxiety for a moment because he really had been watching porn a few minutes ago. He looked up to see Keith standing next to his table, seemly able to approach without being heard. Or maybe Lance was just too preoccupied. Keith had one hand placed low on his hip and one hand holding the strap of his shoulder bag. He was shaking his head disapprovingly at Lance.

“You know it,” Lance smiled, steering into the skid. He stretched his arms up over his head at an angle. “It’s my favorite public activity!”

He saw a sly grin crack its way over Keith's lips. He forced some air out of his nose in a way to substitute a real laugh. “Sorry I'm a few minutes late. The professor didn't start the pop quiz until after the hour had already ended.”

Keith rolled his eyes towards the back of his skull and let out a half groan. Lance make a mental note to remember the noise he made.

“It was stupid. Anyway, are you ready?” Keith stared at him waiting for his answer.

“Yep, all ready to go” Lance replied, quickly shoving his phone inside of his pants pocket and sliding out from the booth he was seated at. His stomach grumbled as if to agree that yes, he was ready to go and eat some lunch.

Lance and Keith started making their way out of the library. They walked side by side until they reached the doors leading outside. Keith went through first, pushing the doors open wide enough so Lance could catch them easily. They stepped out into the sunlight and Keith was blinded. He raised his arm to his eyes in defense against the sun. Lance watched the way the sleeve of his black hoodie pulled taut against his arm muscle. Lance wanted to see more of Keith but it was rare to see him outside of long pants and sleeves. He never wore anything very tight to Lance's dismay. Just once he'd like to see him in some shorts and a tank top. Or a bathing suit. Or his birthday-suit. He'd take any kind of suit.

“It's~ So~ God damn, bright out here~” Keith half attempted to sing with an agitated tune. He grumbled and turned his head toward the ground at a sharp angle, slowly moving his deliciously silhouetted arm back down to disappear in the looseness of the sleeve. His dark black bangs fell between his eyes and the sun creating a shadow across his face.

“Tell me about it.” Lance agreed also putting his head down. He wasn't quite as bothered by it as he lead on. “Hopefully our eyes will adjust before we cross the street,” He began to laugh a bit.. “Otherwise, watch, we’re gonna get smashed by a car.”

Keith had slowly started to turn his gaze back up into the light, feeling his eyes burn as they became bleached with sunlight. “Are you sure that would be such a bad thing? Let them pay for my tuition, I don’t care.”

They both laughed at Keith’s ridiculous proposal as they approached the street. They were fifty feet away from the crosswalk but it was only a small two lane road in the middle of campus. Lance decided to make a mad dash. Keith hung back for a second then followed shortly after realizing they weren’t walking the fifty feet to the light.

“Lance!” he lectured and ran after him. “I don’t think we can sue them for tuition money if we’re jaywalking!”

They reached the other side and Keith took a single deep breath after his unexpected sprint across the road.

“Look at what you did, Lance!” Keith threw his arms up and gestured around him in a very hyperbolic fashion. “We almost died and we’d have no ghost money to show for it, because as you know, we broke the law.” He tone was very matter-of-fact which made his display even more hilarious.

A single back sedan turned left from the oncoming street into the road they had just crossed. It was only car that had come down that road so far. Both Keith and Lance started to laugh. “I see what you mean! That car was so close, I didn’t think we were gonna make it out of there.”

Keith shook his head disappointingly but couldn’t dissolve the smile that was forcing its way through his lips. He stifled a laugh. “Wreckless.”

The rest of the trip down campus was full of inside jokes and imagining more ridiculous scenarios happening. They approached the second road which was much larger than the first. All jokes aside, they angled their walking path towards the crosswalk and used the button to cross. Lance couldn’t justify just running across this one seeing as how there were many more cars that used it. After waiting for the cars to actually pay attention and stop for pedestrians they made their way over and off of campus.

In front of them was a street that ran downhill. It was lined with many, many food shops and restaurants available for students who preferred not to cook, or were too lazy to. They walked past the first two doors when they reached their usual lunch spot.

“Alright!” Lance jumped ahead and turned back around to face Keith. “What do you wanna eat today? Sushi,” Lance used both arms to point finger guns at the door a few steps behind him. “...or underground pizza?”

He contorted his body at a ridiculous angle, twisting his spine and raising his arms in a C shape, pointing his finger guns at a cement staircase leading to what was in fact an underground pizza parlor.

“Pizza, for sure. I need some garlic knots.” Lance watch Keith look him up and down. “And don’t break your back.”

Keith tried to stifle another laugh at him then headed to the staircase. Lance waited for him to get about three steps down before he followed. He watched the end of his dark mullet style hair bounce with each step. Lance wanted nothing more than to reach out and run his fingers over the nape of his neck into his thick hair. He’d grab a handful and pull him back, pressing his body against his...

He continued daydreaming while Keith reached the end of the staircase and opened the door to the restaurant. A small bell rang when the door opened, it was rigged to pull a string to signal the arrival of customers. The parlor was small; four small tables with only enough space for two people were scattered unorganized across the floor. As if they'd been moved by the people getting out of their chairs, they seemed lightweight and cheap.

Keith placed one hand on his hip and looked up at the menu having above the counter. Lance waited for him to decide what he was getting. It always took him no less than three full minutes to decide which pizza he wanted. Lance always got the same thing.

Lance wondered if he was picky and that's why it took him forever to choose. Would it be hard making sure Keith had something to eat every night if they were ever together? Lance let his mind wander. It didn't matter if he was picky. He would give Keith whatever he asked for.

He watched Keith approach the counter and give his food order. He pulled himself out of his stupor to follow. It's a good thing Lance's pizza order was automatic at this point, he wasn't sure he would have said it straight otherwise. He had too much on his mind right now. The regular stressors from school were always at the back of his mind but that was easy stress for him. He didn't get the best of grades but he made sure to turn everything in so it at least showed he was trying. It was the other more personal stressors that were raging at the forefront.

He wanted Keith. He wanted him so bad he's surprised random strangers on the side of the road didn't call him out on it. Did Keith know? Could he tell? Lance tried to act inconspicuous and casual around him. He was sure he had failed at times but Keith never said anything. He never acted any differently.

He'd love to hold him, to embrace him fully. He’d love to wake up to his beautiful eyes, the deep indigo that promised blue at a glance, but delivered a uniquely purple hue when viewed directly. He’d love to promise his heart to him, to be able to call him his.

There was only one problem in all of this. The boyfriend. Shiro.

“I forgot to tell you,” Keith said while pulling his order off the counter bringing Lance back to earth. “Shiro and I are going to go pick up our new couch today so he’s picking me up in a little bit. He’s already off work but there’s traffic so probably about 20 minutes.”

Lance’s spirit fell a little. That wasn’t as much time as he wanted to spend with him today. He tried to shrug it off, it wasn’t everyday they got new furniture. Earlier that week Keith had told him about how their new hybrid wolf pup’s black fur was shedding all over their white couch, contrasting harshly and driving Shiro nuts.

“I convinced him to keep the old couch at least,” Keith had sat at one of the tables and continued talking. “it’s going in the spare room.” Lance nodded in agreement, it seemed like a waste to throw an entire couch away because of something so trivial. Lance and Keith were the same in that aspect. They both tried not to waste anything that wasn’t an absolute loss. Lance hadn’t grown up very poor, but he grew up in a large family. That meant more money had to be spent which meant everything got used. Lance knew it had been just Keith and his father until he’d died with Keith was ten, and then he moved to a foster home which Lance guessed both environments contributed to Keith’s lack of ability to waste things.

Lance couldn’t help but think he understood Keith more than Shiro did. From what Lance had heard Shiro had always been well off, so of course it was him that wanted a new couch.

“Well that sucks that he's almost here, basically,” Lance lifted the large slice of stuffed pizza in his hands only making contact with his fingertips “you’ll have to come hang out tomorrow then, we can play that new game I downloaded. It’s actually not that bad. There’s always Smash, too.”

Video games was another thing they both enjoyed. Lance had been gaming all his life and had his siblings to play against and hone his skills. Keith on the other hand had only played a bit with him back in middle school and then stopped until they reconnected. It was Lance’s go-to way of getting Keith to come over.

“Tomorrow’s Shiro’s only day off before he leaves,” Keith placed his pizza back down as Lance mentally rolled his eyes. “I’ll probably want to spend it with him.”

Apparently Shiro had to travel for one weekend of the month. Lance wasn’t positive what he did for work, just that he had an entire region he had to fly around and attend to.

“You should come over when he leaves then. It’ll be an all night game and cartoon marathon!” Lance tried to hype.

“I’ll come over on Friday, probably.” Keith swallowed the pizza he’d bitten off and chewed. “But I can’t stay the night, I’ve got to deep clean the house, plus I don’t want to leave Kosmo alone. He gets nervous when he’s alone for too long and I don’t want him tearing up the new couch.”

Lance just could not catch a break. Not only could he not have Keith in general but now their time spent together was declining? And all for Shiro. What a waste. It was a jealous thought.

“Alright so then, Friday for sure?” he tried to wring a promise out of Keith.

“Yeah, I guess. Friday.” There was a look of contemplation, a slight concerning expression and something else Lance couldn’t identify that flashed across his face for a split second. Keith quickly took another bite of his almost depleted pizza slice and dropped the expression. Lance was about to ask him if everything was alright when the bell on rigged to the door of the restaurant rang out.

They both looked toward the door, prompted by the bell demanding their attention. Keith’s face lit up. It was Shiro.

A soft smile spread across Shiro’s lips as he immediately located them as the only other two people inside and began making his way over. Lance didn’t bother watching him approach the rest of the way, instead angrily chewing on the crust of his slice. His entire body was filled with a stinging rage. Not enough to make him act out, but enough to burn his soul. Lance tried not to project his aura of insane jealousy.

“You’re a bit earlier than I was expecting.” Keith said gleefully, his voice unintentionally softer when he spoke. He reached his hand up and lifted his face to beckon Shiro for a kiss. He obliged, leaning down as Lance directed his eyes back towards his crust. Just another display for something that was impossible for him to have himself. Lance felt like a turd, like a jealous turd.

Shiro gave his hello smooch and pulled a chair from the closest table close and sat down. “Traffic was really light for some reason. Pretty unusual, but I’m not complaining.”

His voice was strong but not harsh by any means. It had gentle undertones and was almost melodic. He sounded like a leader or like a public speaker. The charisma surrounding his character was mouth watering. Lance wondered how much of it was fake.

“I’m almost done eating.” Keith answered a question Shiro hadn’t asked. He picked up his still half a slice and prepared to take a bite. “We were talking about this weekend, Lance is going to keep me company while you’re gone.”

Lance heard his name which reminded him he was supposed to be participating in the socialization. He’d been busy in his own cloud of envy.

“Oh yeah, we’re gonna play games and watch all sorts of cartoons.” Lance tried not the let the coldness in his tone show. It did come out kind of rude, though. He threw in a fake laugh to mull over any awkwardness. “Ha, not like Keith ever wins at any of the games anyway.”

Keith’s eyebrows scrunched. “I win all the time!”

Lance elongated his neck, sticking his chin out and turning his head like he wasn’t audible. “I’m sorry, what was that? When was the last time you won a game of Smash?” He brought Super Smash Bros up again. Keith wasn’t very good but they always had immeasurable amounts of fun from the experience.

“You won’t tell me how to grab or use the items!” Keith blamed him. Lance laughed at him because it was true. He doubted Keith would get much of a performance boost from using items in the game anyway.

“Are you going to be hanging out at the house? I don’t want Kosmo to be left alone too long.” Lance momentarily forgot Shiro was there. Go to their house? Lance had only been there a couple times before and never for more than enough time for Keith to grab something real quick. Lance had always felt super uncomfortable there because of his feelings towards Keith and the obvious tension he felt around Shiro.

“Well, we were actually going to play games at his dorm.” Keith pressed as Lance shook his head. “Just for a few hours.”

“I’m going to be gone for a couple of days, you guys would have the entire house to yourself. Minus one wolf pup.” Shiro’s short cut black hair had some silver strands that stood out against the rest of the dark color. Lance thought they were just hairs that were super reflecting the lights above, but when Shiro’s head turned they remained the same hue. He had a large scar that crossed the bridge of his nose and stretched halfway under each eye. Lance guessed something had fallen on his face when he was younger, the scar looked old. Underneath all of that was a bright and comforting smile. Well, comforting for Keith.

“Hey, that sounds nice,” Lance interjected before Keith could protest. Keith had never really offered to study or game at his place. Lance thought it was because of Shiro but here he was one step short of mailing him an invitation to their house. “I could kick my feet up, sit back, relax in a room bigger than eight square feet. Your TV is way bigger than mine is anyway.”

Keith raised what remained of his pizza and ate the rest in a sizable bite. He stared at Lance while he spoke of cemented the idea of going over to his house this weekend.

Shiro was smiling at Lance now. “Well, I’m sure Keith would love to have you.”

Keith tongued the rest of the pizza grease off of his fingers. Oof. That was difficult to witness without taking it to unholy places.

“We should probably get going.” Keith said, wiping the rest of the grease and saliva off his fingers onto a napkin.

“I was thinking the same thing. Traffic isn’t going to stay light forever.” Both of them stood and Keith grabbed his messenger style bag off of the floor and placed the strap over his shoulder. Shiro placed the chair back where he’d gotten it from.

“It was nice to see you again, Lance. Have a nice day!” Shiro addressed him unexpectedly. There was that smile again.

Keith offered his goodbye as well. Less smiley, but more Keith. “I’ll see you later.”

“Peace out guys, drive safe.” It was an automatic response Lance had filed away in his brain, not that he didn’t mean it.

They left and Lance sat there feeling empty. The boy he was in love with wouldn’t love him back, not while Shiro was there. It sucked. Lance knew he wasn’t going to get anything real from Keith, but he wanted whatever he could get. He didn’t plan on being sleazy. He wouldn’t ever purposely try to lure Keith away from his beefy boyfriend.

He kept telling himself maybe the feelings would fade, maybe he’d realize Keith wasn’t that great after all. But years had passed and he still felt the same. He was stuck.

He got up from his chair after a few minutes to make sure Keith and Shiro had already driven away. Nothing more awkward than saying goodbye to someone then continuing to walk the same direction.

The walk back up the hill to campus was filled with taking an introspective look at his feelings. By the time he reached his dorm he still didn’t have any answers. His room was a small single, just enough space for himself. He’d requested to have his own room instead of share with a roommate this year. Too much grief to deal with.

He closed the door behind him as he was still thinking about Keith. Lance was sure he would end up spending eternity alone just watching others be happy. He turned his TV on to one of his shows and sat down in his lounge chair. He pulled out his phone, ready to scroll down Twitter, and unlocked the screen.

The video from before was still paused at the moment he’d stopped. His eyes widened. “Oh duh!” he exclaimed to himself, speaking aloud. “How did I forget?”

He was always forgetting. It’s why he almost always managed to miss the live stream of his videos and had to watch them on his own time. The account updated pretty sporadically, giving only a short notice of when he was going to go live, so Lance had troubles making sure he was watching at that moment. He’d seen a couple of them live, however. It was... exhilarating.

He turned the TV up louder to drown out any noises that might make their way to the hall. He clicked on the fullscreen button and flipped his phone sideways now that he was securely alone. He turned the volume up and hit play.

The beautiful, face-covered camboy lifted himself up off the ground by his knees, his ass slowly pulling away from the vibrator below. He let out short, panting gasps. There was a slight whine in between them. So slight but very present, Lance felt his pants get tighter from his voice alone. He undid his pants button and slid down his jeans and boxers enough to let his dick out comfortably. He held in his hand and tried to match the rhythm of the video. Maybe he could pretend he was the one fucking him instead of that vibrator. Maybe he could pretend he was fucking Keith.

The man in the video started moving faster, panting harder, taking more effort to slam himself down like gravity wasn’t working well enough to satisfy him. He gave up on words for a few minutes as he pounded the thick shaft of the vibrating cock. Lance kept pace, stroking himself to the video, trying his hardest to pretend he was there.

At one point during the video the male placed his arms behind his back and used only his hips to raise him up and down, bouncing on the vibrator faster and faster until he let out a loud, histrionic, “Please! Fuck me!”

That was it for Lance. He dropped his phone by his side and quickly reached for some toilet paper from the roll sitting next to his bed but it was too late. He cleaned off his other hand with the paper. That was a little too fast.

He sat there exposed and blank minded for a moment waiting for the rest of the erection to go away. He could still hear the guy moaning away. He picked his phone back up and paused the video. The track bar showed it wasn’t even half way over. Lance felt both excited by the fact there was more to come, and also disappointed there was so much left and he’d already blown his load. Oh well, it’s not like he wouldn’t be ready to go again in just a little bit.

Lance scrolled down to find the comment section, then signed into his profile to leave his feedback. He typed in what he thought would be encouraging for someone who did camming.

blue_leo: started watching earlier but had 2 pause because i was in public and that ass is way 2 powerful!! nearly made me drop dead!!! JK! i havent finished yet but u bet im gonna be coming back to his one for a while!

Lance re-read his words. They were blunt but honest. He didn’t think he would be offended at his lack of subtlety though. He hit send, then scrolled down to read other comments and see if there were any trolls trying to harass him. It was a pretty common occurrence if you were popular. This account only had around forty subscribers so the antagonizing comments were more uncommon.

There were 94 in total, most from the live stream. Lance didn’t think he’d be the first one. Even if most of his videos didn’t have blue_leo comments at the top he was probably still his biggest fan. He scrolled through the comments glancing over them. Mostly just people saying they were horny, they’d like to fuck him, donating money, and requesting him to do things with certain toys/vibrators. There were a couple of seriously rude troll comments but they were being ignored so he left them alone.

Not much else happened the rest of the night until Lance was getting ready for bed. Already feeling the desire again he pulled out his phone and found the video. Still logged in from before there was a notification bobble at the top. Lance clicked on it questioningly. It was a reply.

Lance let out a partial gasp. He loved it when he replied to him. It didn’t happen every time but it happened often enough. It excited him that he was a real person out there somewhere. Maybe he’d met other people who did stuff like this in their secret spare time.

Lance had had a long day, complete with unrequited pining. Also having to see Shiro face to face. It was weighing on him. The entire Keith situation was too much to think about right now. All he wanted to do was read the comment and finish his video. Keith was going to have to take the back seat in his mind while he took in the beautiful camboy’s reply in all its glory.

guardian-of-fire: I’m really glad you liked it! I hope you enjoy it as many time as your heart desires ;)

guardian-of-fire: and I hope you’re excited, I’ve got something big planned for my next one!