<center>
a FRICTION x PANFRIED collaboration
//You must be 18 years or older to play this game.//
<span class="smalltext">Accessibility and volume controls are available at any time in the sidebar under SETTINGS.</span>
<<if settings.audioEnabled>>\
<span onmousedown="playStartSound()">[[START GAME|0.5]]</span>\
<<else>>\
[[START GAME|0.5]]
<</if>>
</center>\
<<masteraudio stop>>\
<<set $driverfucks = 0>>\
<<set $rivalfucks = 0>>\
<<set $optioncounter = 0>>\
<<set $speedo to "slow">>\<center>
<<fadein 1.5s>>\
//Gear Shift City - 20XX/09/13//
[[<<<|0.5]] [[>>>|02]]
<</fadein>>\
</center>\
<<if settings.audioEnabled>><<audio "carpassing" play >><</if>>He lives on the outskirts of the city where the desert encroaches on the streets. The gearless neighborhoods are full of scavengers, lost souls, and cops pretending to be something else. Quality parts are hard to come by for everyone, except the ghost driver who seems to have no problem maintaining his car. No one is quite sure how he manages to live without the resources or protection of a gear, but no one is able or willing to track him down to ask.
Even if they did, he wouldn’t answer. The ghost driver never speaks.
[[<<<|02]]<span class="psglinkalign">[[>>>|04.1]]</span>
<<masteraudio stop>>\Abandoned long ago by the rest of the country, G.S.C. is run by the gears—factions of people who have banded together for protection, to barter for resources, and of course, to satisfy their needs. Everything is settled on the road behind the wheel.
Without a gear you’re subject to random shake downs, you can’t barter for parts, or hire anyone reputable to fix up your car. They say it’s suicide to drive solo.
There’s only one racer who goes gearless. The ghost driver.
[[<<<|01]]<span class="psglinkalign">[[>>>|03]]</span>
<<masteraudio stop>>\
Fake Racing
//6:57 pm
Heart’s Body Shop//
Heart’s never has much in the way of parts or customers, but the single mechanic who runs the place can diagnose just about any problem in an engine.
“You again…” Heart's face falls as the ghost driver slips into his shop, narrowly avoiding setting off the bells on the door. The shop itself is cramped, though the shelves and cabinets are all empty.
Heart never seems to enjoy the sight of his only regular customer, but he never kicks the helmeted specter out either. They share a one-sided language that passes for communication.
[[<<<|04.1]]<span class="psglinkalign">[[>>>|4.5]]</span>
<<if settings.audioEnabled>><<audio "carlock" play >><</if>><span class="accent">
  Ghost
  I have parts at a good price if you’re interested in a trade.
  I’ll wait for you next to Heart’s on Tuesday night at 3 am.
  -Doll
</span>
[[<<<|4.5]]<span class="psglinkalign">[[>>>|06]]</span>
<<if settings.audioEnabled>><<audio "paper" play >><</if>><center>[img[images/hearts.png]]</center>\
The driver turns back to Heart, holding the note up in two fingers. Heart groans.
“Look, I’m not one to tell you your business, but this guy is from Lightning Gear. I wouldn’t mess with one of Luc's boys. Even if the deal’s legit, and that’s a big if, you know it’ll come with strings.”
The driver pockets the note as Heart shuffles behind the counter for more coffee.
"I'd sooner trade with Chrome Gear," Heart says, adding with a scoff, "Hell, even those circus freaks are less likely to pull one over on you than Luc's gang will. Can’t trust any of those lightning rods, no matter how pretty they are."
He gives the driver a long look over the rim of his old coffee mug. "You can leave the car with me, but I'm not letting you stay here again."
The driver only stares back through his helmet, not moving an inch. Heart fidgets in the face of the featureless black visor, and finally lets his breath out in a huff. "Fine, fine, you can have the cot. Just don't be up all night..."
[[<<<|05]]<span class="psglinkalign">[[>>>|08]]</span>
<<masteraudio stop>>\HERE'S YOUR CODE CHEAT SHEET!
TEXT STYLING:
//italics//
''bold'' (this is two single apostrophes, not quotes)
__underline__ (this is TWO underscores)
==strikethrough==
The default font I've used is called Oxanium from Google Fonts.
The secondary font I've used is Courier Prime from Google Fonts.
Let me know if you want any of these fonts changed, or if you require another font for special text. There's a guide on how to import fonts from Google in The Twine Grimoire 1 pdf if you want to know how it's done.
You can activate the secondary font as an accent by typing in any passage:
<span class="accent">THE TEXT/WORD YOU WANT TO CHANGE</span>
You can find more text styling over here: https://twinery.org/cookbook/twine1/terms/formatting.html
PASSAGE LINKS/CHOICES/OPTIONS:
Two square brackets around some text creates a new Passage Link:
[[actual passage name]]
Whatever you type between the brackets becomes the Passage Name/ID.
If you want the Passage Name to be different to what appears in the game, then use either of these methods:
[[what appears in the game|actual passage name]]
or
[[what appears in the game->actual passage name]]
or
[[actual passage name<-what appears in the game]]
If you want to move the Passage Link button to the right side of the passage, use this:
<span class="psglinkalign">[[what appears in the game|actual passage name]]</span>
To create multiple options/Passage Links, simply paste two passage links with different names below each other, with a few empty lines between them.
DRIVERFUCKS OR RIVALFUCKS values:
For every Passage Link you create that contributes to the Driver Fucks or Rival Fucks ending, needs it's own value. Copy code below and replace with your own Passage Link names. DO NOT change the $ name:
[[what appears in the game|actual passage name][$driverfucks +=1]]
[[what appears in the game|actual passage name][$rivalfucks +=1]]
[[what appears in the game|actual passage name][$passive +=1]]
The $passive value is just in case you want something else to happen that is different from the driverfucks or rivalfucks scenarios. I currently have it defaulting to the rivalfucks ending. Let me know if you ever want to use the $passive value for anything.
IMAGES IN PASSAGES:
I won't have all the images ready for you as you work, but if you check the images folder or our Wishlist spreadsheet, you'll be able to see all the image names:
<center>[img[images/REPLACEWITHIMAGENAME.png]]</center>
OR, if you want alt text on the image:
<img src="images/REPLACEWITHIMAGENAME.png" alt="Your Text Here">
IMAGES IN SIDE BAR:
This is the speedometre in the side bar!
It is set to low speed by default. But any passage you want to change it to high speed, paste this anywhere in your passage (I usually paste it underneath the Passage Link):
<<set $speedo = "fast">>
<<set $speedo = "slow">>
<<set $speedo = "mid">>
TYPEWRITER LOOK:
If you want the letters typed out one by one, use this:
<<type 60ms>>
YOUR TEXT GOES HERE
<</type>>
Lower the number value if you want to increase the speed.
AUTOSAVE:
To enable autosave on a particular passage, navigate to the top of that passage and press the +Tag button.
There should be a tag already created under the Add Tag > New Tag drop down menu that is labeled 'autosave'. Click on that. No further action required.
I haven't enabled autosave notifications, so the way to check that it's working, is if you Test From Here on the passage, and then navigate to the Saves pop up box. The very first Save is labeled A for autosave, and it should have the passage text in the description box.
Let me know if you want autosave notifications enabled.
TEXT FADE IN AND OUT
Paste the following into the desired passage:
<center>
<<fadein 2s>>
<<fadeout 2s 4s>>
YOUR TEXT GOES HERE
<</fadeout>>
<</fadein>>
</center>
The first number after 'fadein' or 'fadeout' is the duration of the fade. The second number after 'fadein' or 'fadeout' is the delay before the fade starts.
The example above will show the text fading in immediately across 2 seconds, pausing for 4 seconds, and fading out across 2 seconds. Feel free to change the numbers to get timing that feels right.
IMAGES IN GALLERY
<<if hasVisited("REPLACE WITH PASSAGE NAME")>>
[img[images/REPLACE WITH IMAGE NAME.png]]
<</if>>
This bit of code goes into the Gallery passage. You'll need to copypaste it for every single image you want to be visible. Whenever there's an illo that you want to appear in the gallery, put the passage name within the brackets. And then find the name of the image itself in the images folder.
AUDIO
In the StoryInit passage paste this bit of code:
<<cacheaudio "REPLACE" "sounds/REPLACE WITH AUDIO NAME.mp3">>
And then in whatever passage you want the audio to play, paste this:
<<if settings.audioEnabled>><<audio "REPLACE" volume 0.5 play loop>><</if>>
If you don't want it to loop, delete the 'loop' text at the very end.
If you need ALL audio to stop at a certain passage, paste this inside the passage:
<<masteraudio stop>>
If you only need ONE audio track to stop at a certain passage, paste this instead:
<<audio "REPLACE" stop>>
If you want the audio to fadeout across a certain amount of time:
<<audio "REPLACE" volume 0.5 fadeoverto 5s 0>>
If you want the audio to fade in:
<<audio "REPLACE" volume 0 fadeto 0.5>>
TEXT ANIMATION
To activate the text animation, copy this:
@@.rumble;YOUR TEXT HERE@@
VARIABLES
$REPLACE is a variable name. You can <<set>> it to hold different data.
Variables can be:
TRUE or FALSE (good for turning things ON and OFF).
= 0 (any number value. Good for measuring/comparing/counting).
+=1 and -=1 (you can add and subtract from an existing variable).
to "REPLACE" (you can put a descriptor in quotes to help with identification).
These are set up in the StoryInit passage, and then changed/set to something different within other normal passages.
IF STATEMENTS
These little guys make things happen if a certain variable is interacted with.
Types of If Statements we've used currently:
<<if hasVisited("passageID")>> (will make something happen if that passage is reached)
<<if lastVisited("BE13") = 2>> (If you were on the passage named BE13 2 turns ago)
<<if visited("passageID") = 3>> (If you've visited the passage three times.)
<<if $REPLACE == true>> (will make something happen if that variable is set to true)
<<else>> (if your If Statement hasn't happened yet, it will make this happen instead)
That's everything for now! Let me know if you want to know how to achieve anything else! :)<<set $driverfucks = 0>>
<<set $rivalfucks = 0>>
<<set $passive = 0>>
<<set $badendcounter = 0>>
<<set $optioncounter = 0>>
<<set $speedo to "slow">>
<<cacheaudio "raceradio" "sounds/oil_slick.mp3">>
<<cacheaudio "lighter" "sounds/zippo-lighter-sound.mp3">>
<<cacheaudio "cheer" "sounds/golucitsyourbirthday.mp3">>
<<cacheaudio "carstart" "sounds/car-starts.mp3">>
<<cacheaudio "keys" "sounds/coins.mp3">>
<<cacheaudio "carfast" "sounds/car-fast.mp3">>
<<cacheaudio "carcrash" "sounds/car-crash.mp3">>
<<cacheaudio "carpassing" "sounds/car-passing.mp3">>
<<cacheaudio "carlock" "sounds/car-lock.mp3">>
<<cacheaudio "start" "sounds/start.mp3">>
<<cacheaudio "restart" "sounds/restart.mp3">>
<<cacheaudio "paper" "sounds/paper.mp3">>
<<cacheaudio "rules" "sounds/rules_short.mp3">>
<<cacheaudio "radiotuning" "sounds/radiotuning.mp3">>
<<cacheaudio "2ndstrike" "sounds/2ndstrike.mp3">>
<<cacheaudio "v8start" "sounds/v8start.mp3">>Basics:
https://www.gcbaccaris.com/grimoire.html
Bits and bobs:
https://nyehilismwriting.tumblr.com/post/664644395515199488/twine-coding-masterlist-thought-id-throw
Light/Dark mode toggle:
https://nyehilism.itch.io/twine-template
Passage Link values and maths:
https://www.reddit.com/r/twinegames/comments/hvmwb2/choices_leading_to_endings_twine2_harlowe_3/
Fade in and out:
https://github.com/ChapelR/custom-macros-for-sugarcube-2/blob/master/scripts/minified/fading-macro-set.min.js
Fade in and out instructions:
https://github.com/ChapelR/custom-macros-for-sugarcube-2/blob/master/docs/fading-macros.md
Text animation:
https://twinery.org/forum/discussion/5625/any-dynamic-text-effect-macros-for-sugarcube-2-x
Return to most recent passage:
https://twinery.org/forum/discussion/6768/how-do-i-create-a-link-that-returns-to-the-previous-story-passage
Volume slider basic:
http://www.motoslave.net/sugarcube/2/docs/#setting-api-method-addrange
Volume slider advanced:
https://www.reddit.com/r/twinegames/comments/pnacww/chapels_volume_control/
Volume slider styling:
http://danielstern.ca/range.css/#/
Restart button:
https://twinery.org/forum/discussion/676/restart-link
Text Deselect:
https://www.reddit.com/r/incremental_games/comments/98gipi/disable_text_select/
Sounds play on mouse click:
https://www.reddit.com/r/twinegames/comments/hcb93m/beep_sound_effect_on_hover_sugarcube_2311/
Alt Text:
https://idrellegames.tumblr.com/post/672598937661816832/im-having-trouble-finding-anything-to-help-but
Resume game button:
https://idrellegames.tumblr.com/post/661991857770872832/so-i-had-a-coding-question-that-ive-been-trying
Scroll to top:
https://intfiction.org/t/sugarcube2-javascript-scroll-element-to-top-resize-hide-elements/42022[[Credits]]
[[Gallery]]
[[Cast]]<center>\
<span class="smalltext">STORY</span> ''Roo''
<a href="https://twitter.com/roofiction" target="_blank">twitter</a> <a href="https://subscribestar.adult/friction-press" target="_blank">subscribestar</a>
<span class="smalltext">ART</span> ''Pan''
<a href="http://www.twitter.com/hellopanfried" target="_blank">twitter</a>
<span class="smalltext">MUSIC
"OIL SPILL"</span> ''teebsly''
<a href="https://soundcloud.com/teebsly" target="_blank">soundcloud</a>
<span class="smalltext">"2ND STRIKE"</span> ''core''
<a href="https://verygood.pictures/8190/entry" target="_blank">website</a>
Thank you to our code helpers!
''Nachte
Anna''
Sound effects sourced from //freesounds// and //freesfx//
Additional sound effects by ''core''
[[Return|$return]]
</center>\
<<masteraudio stop>>\<center>\
[[Return|$return]]
<<if hasVisited("4.5")>>\
[img[images/hearts.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("10")>>\
[img[images/babyintro.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("21")>>\
[img[images/lucintro.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("37")>>\
[img[images/race_gameplay.gif]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("38.3")>>\
[img[images/race_diagonal.gif]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("BE7.1")>>\
[img[images/badend01.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("BE10")>>\
[img[images/badend02.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("BE12")>>\
[img[images/badendstinger.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("47.1")>>\
[img[images/goodend01.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("48.2")>>\
[img[images/goodend02.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("55")>>\
[img[images/heartsbaby.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
<<if hasVisited("58.1")>>\
[img[images/stinger.png]]
<<else>>\
[img[images/gallerylock.png]]
<</if>>\
[[Return|$return]]
</center>\
<<masteraudio stop>>\<center>[img[images/hearts.png]]</center>\
"Just when I thought you'd finally scared off the last of my customers, someone rang my bell this morning. I got all excited, dusted my coveralls off and you know what happened? This guy tells me he's looking for //you.//"
Heart's eyes go dull as cooled metal. "I’m not your delivery boy, ya know.”
The driver comes closer, no reaction to be found on the sleek surface of his helmet.
Heart extends a piece of paper with a rusted look on his face. “Don't be getting into fights outside my shop.”
The message is short.
[[<<<|04]]<span class="psglinkalign">[[>>>|05]]</span>
<<masteraudio stop>>\<center>
[img[images/icon_gear.png]]
<<fadein 1.5s>>\
[[<<<|06]] [[>>>|09]]
<</fadein>>
</center>
<<masteraudio stop>>\
//3:12 am
Outside Heart’s Body Shop//
Stepping out of the backdoor of Heart's, the driver finds himself in the darkened alleys beside a set of massive dumpsters. His footsteps are the only sound in the middle of the night. As he draws closer to the side street that connects to the main road, there is a sound of someone letting out a long, shaky breath, and the smell of smoke just beginning to curl under the driver's helmet. The nearest street lamp is barely enough to illuminate the brick walls; the posters for the upcoming qualifiers at the G.S.C. International Circuit; and the tall shape of a man leaning against the corner of the building, standing in a ring of discarded cigarette butts.
[[<<<|08]]<span class="psglinkalign">[[>>>|10]]</span>
<<masteraudio stop>><center>[img[images/babyintro.png]]</center>\
The driver's helmet tilts down as he gives his caller a once over, slowly taking in the thick trunks of his legs dotted with freckles, the dark curls of hair covering him head to toe, the generous width of his chest beneath the muscle shirt, and his bare arms held loose at his sides. A wreath of his loose brown curls frames a handsome face dusted with stubble, but his muted eyes seem to have lost their spark.
“Are you the Ghost?” he asks, fishing in his pocket for another cigarette. He sounds too tired to be impressed. “You’re late, so I wasn’t sure. All you drivers usually love to get everywhere first.”
The driver tilts his head. The edges of Doll’s mouth show the barest curve of a smile and he lowers the unlit cigarette to reach out his other hand.
“Call me Doll.”
<center>\
[[Light his cigarette|11.1][$driverfucks +=1]]
[[Don't move|11.2][$rivalfucks +=1, $optioncounter +=1]]
</center>\
[[<<<|09]]
<<masteraudio stop>>\When the driver pulls out a small silver lighter from his jacket pocket, Doll's eyes seem to warm up a little. He puts the cigarette in his mouth, forgoing the handshake to let the driver light him up. While Doll fills his lungs, the driver gets a better look at him. The well-worn sleeveless shirt suits the bulk of his arms and chest, but it doesn’t suit Lightning Gear’s taste. Doll isn't nearly as shiny or loud as the rest of them. Maybe this boy knows better than to fall for Lightning Luc’s flash.
“I’m sure you figured out I don’t have parts to trade,” Doll says, smoke spilling from his mouth. His entire body relaxes in the afterglow, his voice dropping lower. “Sorry for the false advertising. It was a gamble in the first place just showing up here, you know? You’re hard to find.”
The heel of Doll’s work boot begins to bounce on the ground with nervous energy. He takes another drag of his cigarette while the driver reaches for Doll's empty hand, spreading his fingers open wide, revealing soft palms.
Doll’s gaze flicks down to their hands and back to the helmet. "I tried, for what it's worth. But stealing from Luc is almost as hard as beating him in a race, and if I get branded a thief, I'm kinda fucked."
He lets out a deflated laugh while the driver slowly traces over the very tip of Doll's middle finger.
“It’s really you, right?” Doll asks quietly, his body going still once more. “You’re the only driver who’s ever beaten Luc.”
[[<<<|10][$driverfucks -=1]]<span class="psglinkalign">[[>>>|12]]</span>
<<set $goodendtracker = true>>\
<<set $speedo to "fast">>\
<<if settings.audioEnabled>><<audio "lighter" play >><</if>>The driver only crosses his arms, wary of anyone claiming to be Lightning Gear all the way out here. Only a fool would try to trade with someone without knowing what they had to offer in return. If this is a trap, it’s not a very elaborate one.
“I’m sure you figured out I don’t have parts,” Doll says, offering a sympathetic shrug. He pulls out his own lighter, a garish lightning bolt etched into the surface. “Sorry for the false advertising. It was a gamble in the first place just showing up here, you know? You’re hard to find.”
The heel of Doll’s work boot begins to bounce on the ground with nervous energy, and he finally lights up and takes a much needed drag of his cigarette while the driver looks him up and down. No weapons or keys or anything suspicious. All the driver can see is the slow burn of desperation—and maybe curiosity.
“It’s really you, right?" Doll asks. "You’re the only driver who’s ever beaten Luc.”
[[<<<|10][$rivalfucks -= 1, $optioncounter -=1]]<span class="psglinkalign">[[>>>|12]]</span>
<<set $goodendtracker = false>>\
<<set $speedo to "mid">>\
<<masteraudio stop>>\Guilt crowds Doll's face, darkening his eyes, and he hugs his arms tight to his chest.
“I’m getting ahead of myself,” he mumbles, dropping his gaze. “Sorry. I should probably tell you, I’m one of Luc’s toys. That’s how I heard about you.”
He waits as though expecting the driver to react. Whatever it is he’s looking for, he doesn’t get it.
“I know I have everything I could ever want in Lightning Gear, but, well. I want out.”
<<if $goodendtracker == true>>\
[[<<<|11.1]]<span class="psglinkalign">[[>>>|13]]</span>
<<elseif $goodendtracker == false>>
[[<<<|11.2]]<span class="psglinkalign">[[>>>|13]]</span>
<</if>>\
<<masteraudio stop>>\The driver tilts his head, and it’s all Doll needs to start spilling his guts.
“I’ve been with Luc for a while, long enough to see other toys come and go. I know what he’s after and it scares me.”
The driver inclines his helmet toward the wall where a recruiting poster for Masq Gear curls off the bricks.
“I’ve tried to join others,” Doll pleads. “Everyone’s too scared to piss off Luc. They know if they challenge him for me, they’ll have to race on his course in the tunnel. None of them think they can beat him, or maybe they do and they just don’t think I’m worth the risk. It’s not just cars that break down there. People get hurt racing Luc.”
“I can’t blame them,” Doll adds with a wry laugh. “I’m not good for much. Can’t race, can’t build. I only have my body, and let’s be honest, bodies are easy enough to find.”
[[<<<|12]]<span class="psglinkalign">[[>>>|14]]</span>
<<masteraudio stop>>\Doll pushes away from the wall, facing the driver with straightened shoulders and desperate eyes.
“There’s talk in the streets.” Doll’s voice slowly speeds up as he speaks. “Whispers from people wondering if you’re going to start your own gear or challenge him for control of the city. If it’s parts you want, I’ll steal them. If it’s me, well, I’m yours. I’d gladly be your toy instead. I just don’t want to be in Luc’s lap when this all goes south. The way he talks, I just—”
He’s practically blurred at the edges, his emotions barely contained by his body, but he makes an effort to calm down again. “Please. I know I’m not much, but you’re the only driver in the city who stands a chance against him. I know the stakes of a race like that.”
[[<<<|13]]<span class="psglinkalign">[[>>>|15]]</span>
<<masteraudio stop>>\Doll's face flushes in the dim glow of the street lamp and he returns to lean against the brick wall, relaxing his posture again in an attempt to compose himself. It's not quite working.
<center>\
[[Close the distance|16.1][$driverfucks +=1]]
[[Let him breathe|16.2][$rivalfucks +=1, $optioncounter +=1]]
</center>\
[[<<<|14]]
<<masteraudio stop>>\The driver steps between Doll’s legs, planting his hands on the bricks on either side of Doll’s chest. He makes the difference in their height feel inconsequential as Doll stares at his own reflection in the driver’s opaque visor. His lip quirks in amusement as the driver leans his hips up against the front of Doll’s shorts.
Doll brings his cigarette back to his lips. “I take it back. You are quick.”
The driver cups his gloved hand under Doll’s thigh, squeezing tight the flesh and muscle and hair. Doll’s eyelids lower as he considers the way the driver handles him, letting his breath out in a long tail of smoke. His adam’s apple bobs along the length of his throat as he swallows. There might be the slightest flicker in those dull, lifeless eyes.
“What? Afraid you'll lose to Luc and miss your chance to make him jealous?” Doll whispers, touching the edge of the black helmet. "If you take this off, maybe I'll put my cigarette out."
The driver waits another breath longer before backing off.
[[<<<|15][$driverfucks -=1]]<span class="psglinkalign">[[>>>|17]]</span>
<<set $goodendtracker = true>>\
<<set $speedo to "fast">>\
<<masteraudio stop>>\When the driver only crosses his arms, Doll gives a dejected laugh. “You have every right to be suspicious. I’m not doing a good job of selling this.”
He rubs his brow, frustration and anxiety engulfing him along with his cigarette smoke.
“I probably shouldn’t have come,” Doll admits with a sad smile. “But I guess part of me just wanted to see if you were real. Some people think the ghost driver died years ago. We all know anyone claiming to be him can’t be the real deal. I guess that’s the problem with trying to get answers out of a guy who doesn’t talk.”
Doll searches the front of the driver’s helmet for an answer, but all he gets is silence.
“Thanks for acting the part anyway," Doll says. "Even if you don’t come, I can at least pretend I met the real ghost. That's not nothing.”
[[<<<|15][$rivalfucks -=1, $optioncounter -=1]]<span class="psglinkalign">[[>>>|17]]</span>
<<set $goodendtracker = false>>\
<<set $speedo to "mid">>\
<<masteraudio stop>>\It’s impossible to know if this is a trap set by Luc, or a real offer from his fed-up toy, but one thing is true. Doll looks desperate enough to try something reckless.
“I have to get going,” Doll says, pushing off from the wall. “He’ll notice if I’m away for too long. I hope you do challenge him. You don't have to do it for me, but if you do, then I'll happily go with you."
Doll takes one more drag from his cigarette before stubbing it out on the pavement, embers crushed into the heel of his boot.
“This city is changing," Doll murmurs as he turns to walk down the darkened alley. "Luc isn’t the same man he used to be.”
<<if $goodendtracker == true>>\
[[<<<|16.1]]<span class="psglinkalign">[[>>>|19]]</span>
<<elseif $goodendtracker == false>>\
[[<<<|16.2]]<span class="psglinkalign">[[>>>|19]]</span>
<</if>>\
<<masteraudio stop>>\<center>
[img[images/icon_gear.png]]
<<fadein 1.5s>>\
[[<<<|17]] [[>>>|20]]
<</fadein>>
</center>
<<masteraudio stop>>\//A few days later
12:00 am
Lucky Strike Club//
Everyone knows where Luc holds court. The leader of Lightning Gear has no reason to hide his face, so he's always at his favorite club. The driver follows the line of cars and people making their way down the side street to the parking lot behind the Lucky Strike where music booms loud enough to drown out everyone's thoughts.
When Luc took over this neighborhood he also took over the alleys and the streets and the businesses; even the tunnel that now connects his backyard to the airport belongs to him. They say that’s how he gets all the choice parts, but Lightning Gear isn’t keen on spilling their secrets.
The crowd seems to sense the incoming challenge as the driver cuts through the throng of bodies to approach the king of G.S.C in his own home. There are whispers in the crowd about this driver with no gear branded to his back or his helmet. Looks gearless, they say, but is it //him//?
The driver doesn’t break stride until he is standing in front of his mark, waiting to catch Luc’s gaze from within the tangle of limbs.
[[<<<|19]]<span class="psglinkalign">[[>>>|21]]</span>
<<if settings.audioEnabled>><<audio "carlock" play >><</if>><center>[img[images/lucintro.png]]</center>\
Lightning Luc is quite settled on his throne, surrounded by his toys. He doesn't even acknowledge the driver until someone whispers in his ear, directing Luc's gaze onto the driver's black visor.
[[<<<|20]]<span class="psglinkalign">[[>>>|22]]</span>
<<masteraudio stop>>\“Well, well.” Luc’s eyes seem to pierce right through the driver’s helmet. “Did someone come to challenge me? Where’s he from?”
One of Luc’s toys murmurs in his ear, ”He looks gearless to me.”
Luc’s brows jump up, and a grin erupts onto his face. “I think we’ve got ourselves a ghost. That is what they call you nowadays, isn’t it?”
He looks pleased by the driver’s arrival, hopping onto the ground and hooking his arm around Doll’s waist.
“I used to know him by a different name," Luc tells Doll. "But no one seems to remember what it is. Isn’t that funny?”
[[<<<|21]]<span class="psglinkalign">[[>>>|23]]</span>
<<masteraudio stop>>\More whispers ripple through the crowd.
Lightning Luc gives a wide smile, flaunting the scar that cuts across his lips.
“Can anyone here tell me this driver’s name!?” he calls out over the music, pointing at the ghost driver.
The crowd answers him with silence.
Grinning, Luc asks next, “What about my name?”
[[<<<|22]]<span class="psglinkalign">[[>>>|24]]</span>
<<masteraudio stop>>\<center>\
<span class="bigtext">
@@.rumble;//“LIGHTNING LUC!!!”//@@
</span>
</center>\
[[<<<|23]]<span class="psglinkalign">[[>>>|25]]</span>
<<masteraudio stop>>\
<<if settings.audioEnabled>><<audio "cheer" play >><</if>>The crowd roars its answer, drowning out the music for a moment until the only thing that can be heard is Luc’s name.
Luc’s smile has gone wild, his eyes full of sparks as he looks back at the driver like a crack in his windshield.
“So, what do you want, nobody?”
<center>\
[[Pull out keys|26.1][$rivalfucks +=1, $optioncounter +=1]]
[[Point at Doll|26.2][$driverfucks +=1]]
</center>\
[[<<<|24]]
<<masteraudio stop>>\The driver pulls out his keys and Luc’s eyes flash.
“You want to challenge me to a race?” Luc asks. “You know the rules, Ghost!”
[[<<<|25][$rivalfucks -=1, $optioncounter -=1]]<span class="psglinkalign">[[>>>|27]]</span>
<<set $goodendtracker = false>>\
<<set $speedo to "mid">>\
<<masteraudio stop>>\
<<if settings.audioEnabled>><<audio "keys" play >><</if>>\The driver points at Doll, and Luc’s eyes flash.
“You want to steal my toy?” Luc asks with feigned shock as he squeezes Doll’s ass. “You think you can handle Babydoll?”
The driver's helmet turns back to Luc, still as ever.
Luc cackles at him, no less pleased. “You know the rules, Ghost!”
[[<<<|25][$driverfucks -=1]]<span class="psglinkalign">[[>>>|27]]</span>
<<set $goodendtracker = true>>\
<<set $speedo to "fast">>\
<<masteraudio stop>>\<span class="accent">THE RULES OF DRAG RACING
• Anyone can challenge the leader of a gear to a race.
• The challenger makes a demand, the opponent sets the terms.
• An opponent can always decline to race—at the cost of their reputation.
''• If a toy is on the line, the winner must claim their toy in front of their gear to officially finish the race.''
</span>\
<<if $goodendtracker == true>>\
[[<<<|26.2]]<span class="psglinkalign">[[>>>|28]]</span>
<<elseif $goodendtracker == false>>\
[[<<<|26.1]]<span class="psglinkalign">[[>>>|28]]</span>
<</if>>\
<<if settings.audioEnabled>><<audio "rules" play>><</if>>Shock ripples through the crowd now pressing in closer to watch, and thunderous whispers follow after.
Luc’s expression is a mask of smug calm, but deep in those eyes there is a shimmer of mischief. Luc slides his hand up Babydoll’s side, his fingers disappearing under the edge of the sleeveless shirt.
“If you just want to watch me play with my toy, we can skip the race,” Luc says.
Babydoll blushes, turning his face away with a whispered, “Luc…”
[[<<<|27]]<span class="psglinkalign">[[>>>|29]]</span>
<<masteraudio stop>>\The driver takes a step closer, twirling his keys on his finger. When Luc turns back to the driver, the smallest twitch of his scarred lip betrays a little of his impatience. Sidling behind Babydoll, Luc slips his entire hand underneath Babydoll’s muscle shirt, drawing a gasp from his toy.
“How many times have I lost a race this year, Doll?” Luc asks, leering at the driver over Babydoll’s shoulder.
“None,” Babydoll answers.
“And how many times did I lose last year?” Luc asks, his other hand disappearing under the thin fabric.
“N-none,” Babydoll pants, both of Luc’s hands creating sharp ridges in the shape of his knuckles beneath the t-shirt.
“And the year before that?” Luc speaks low, his tongue snaking out to taste Babydoll’s neck while he gropes his toy’s chest.
“You’ve never lost!” Babydoll wrestles his own tongue to get the words out in a strained huff.
[[<<<|28]]<span class="psglinkalign">[[>>>|30]]</span>
<<masteraudio stop>>\Satisfied, Luc pulls his hands back and approaches the driver, staring down his nose at the surface of that shiny black helmet.
“You really want to race me, Ghost?”
The driver doesn't pull away, and Luc doesn’t hesitate.
“My course. Hope your tank is full. We race tonight.”
The crowd erupts into excited cheering and hollering like lightning crackling through the ranks.
It’s time.
[[<<<|29]]<span class="psglinkalign">[[>>>|31]]</span>
<<masteraudio stop>>\
<center>
[[<<<|30]] [[>>>|32]]
</center>
<<masteraudio stop>>\
Both cars idle beside each other, noses perfectly aligned with the starting line. Luc glances over from behind the wheel of his prized possession, his long hair now in a tight bun at the back of his head. He looks like he’s enjoying the view from his imported car several inches taller than the driver’s. Rumor has it, Luc purposefully picks his cars to make sure he drives the opposite build of his opponent's, just to look them in the eye like this before each race with no empty passenger seat in the way.
Babydoll stands on the starting line. “Okay, you two. Acknowledge each other.”
[[<<<|31]]<span class="psglinkalign">[[>>>|33]]</span>
<<if settings.audioEnabled>><<audio "carstart" play >><</if>>
<<if settings.audioEnabled>><<audio "v8start" play >><</if>>When the driver rolls down his window to hold out his arm, Luc grins. He takes the driver’s hand, hauling his body closer so the two of them can meet in the middle between their two cars. Luc’s excited breath fogs up the front of the driver’s helmet.
“You know it’s not too late to change the stakes of the race. You got my attention, Ghost. You sure you don’t want to join up with us?”
The driver holds Luc’s gaze through the visor.
“Or…maybe you want to be my new toy.” Luc’s low voice slips into the driver’s helmet like fumes from an engine. “I got a collar that’d fit you. I’m happy to put you in your place without wasting any fuel.”
The driver squeezes Luc's hand tight, and lets him go.
[[<<<|32]]<span class="psglinkalign">[[>>>|35]]</span>
<<masteraudio stop>>\Luc’s laughter fills the air as the driver settles back into his car. One of Luc’s boys hands Babydoll a flag so he can signal the start of the race. The driver's heart races, blood rushing through his veins, catching quick like gasoline. The rest of the world is fading from view, nothing but the race ahead.
His fingers grip the wheel. In the moments before the flag comes down, his gaze flicks away from the road. He knows better than to get distracted before he hits the gas, but he can't help himself.
<center>\
[[The driver is angry.|36.1][$rivalfucks +=1, $optioncounter +=1]]
[[The driver is stubborn. |36.2][$driverfucks +=1]]
</center>\
[[<<<|33]]
<<masteraudio stop>>\The driver is angry. He takes one last look at his opponent settled on his throne. That smile torn across Luc's face is wrong. When Luc catches the driver's gaze, a wild spark goes off, mutating that smile into a distorted mask of adrenaline. He wants this badly enough to let it show. The driver can't look away. He doesn't want to, even when it starts to burn.
//Won't it feel good to wipe that smile off his face?//
Feet poised, two hands tight on the wheel, the Ghost Driver inhales, waiting.
[[<<<|35][$rivalfucks -=1, $optioncounter -=1]]<span class="psglinkalign">[[>>>|37]]</span>
<<set $goodendtracker = false>>\
<<set $speedo to "mid">>\
<<masteraudio stop>>\
The driver is stubborn. He must be if he's still such a sucker for a handsome face. As his hand darts into his pocket, he pulls the lighter out one more time, not for a cigarette, just to flick the lid open and watch the sparks turn to flame. It might just be the glare of the tunnel lights, but as the driver looks at Babydoll, their gazes meet through the windshield and it almost seems like Babydoll is trying to say something. He looks good up there, flag held high, all eyes on him.
//He'll look better without the hand around his throat.//
The Ghost Driver is ready.
[[<<<|35][$driverfucks -=1]]<span class="psglinkalign">[[>>>|37]]</span>
<<set $goodendtracker = true>>\
<<set $speedo to "fast">>\
<<if settings.audioEnabled>><<audio "lighter" play >><</if>>\
<center>[img[images/race_gameplay.gif]]</center>\
Babydoll snaps the flag down and both cars take off. The speed presses into the driver’s chest with two hands as all of Luc’s crew follows after them toward the finish line. The driver's fingers tighten in his gloves as his gaze flicks between the dash, the road, and Luc’s car beside him.
He is neck and neck with Lightning Luc as their cars enter the tunnel.
The mouth at the end of the tunnel is the finish line. It will be over in a blink. If he's going to try something, it's now or never.
<center>\
[[Ram into Luc's car|38.1][$rivalfucks +=1, $optioncounter +=1]]
[[Stay in your lane|38.2][$driverfucks +=1]]
</center>\
<<if $goodendtracker == true>>\
[[<<<|36.2][$optiontracker -=1]]
<<elseif $goodendtracker == false>>\
[[<<<|36.1]]
<</if>>\
<<if settings.audioEnabled>><<audio "raceradio" volume 0 fadeto 0.5>><</if>>The driver veers into the side of Luc’s boxy car with a jolt, hoping to force Luc into the wall and slow him down, but his car is so much bigger than the driver’s, it barely moves out of place.
Luc is laughing like a wild animal in the driver’s seat as he spins his wheel and slams right back into the driver's car. The sound is horrible, everything shuddering as the driver fights against the press of Luc's car and the steering wheel in his hands. Inch by inch, Luc forces the driver's car closer to the wall of the tunnel. The driver can barely keep from losing control of his car, let alone push back and regain his footing.
It takes his full focus not to get churned up in Luc's undertow, or smashed into the sides of the tunnel going fast enough to risk killing them both. The driver finally manages to put distance between him and Luc again, at the cost of his speed.
This will come down to the second.
[[<<<|37][$rivalfucks -=1, $optioncounter -=1]]<span class="psglinkalign">[[>>>|38.3]]</span>
<<set $goodendtracker = false>>\
<<set $speedo to "mid">>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>The driver avoids the temptation to ram into Luc’s car. The difference in their models is clear as day: Luc's car is built much sturdier. Every racer has their strong suit, and the ghost driver's car was built for speed, not to win a game of chicken between concrete walls and a car twice as big as his.
The tunnel lights wink by at hypnotic intervals as they scream down the road. The driver grips the wheel, not allowing himself to get distracted by the other car, or the driver he used to know. That man with the scar on his lip may as well be a stranger, but there is one thing the driver will never forget. His mind pulls ahead of his body, his feet practically numb on the pedals. Nothing else matters right now except the finish line.
This will come down to the second.
[[<<<|37][$driverfucks -=1]]<span class="psglinkalign">[[>>>|38.3]]</span>
<<set $goodendtracker = true>>\
<<set $speedo to "fast">>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>The two cars tear across the finish line, neither one bothering to break until they’re sure they’ve cleared the tunnel in full. The gathered crowd at the mouth of the tunnel bursts into motion, but the driver hardly notices. The race is over, but the driver looks over to see Luc staring back, nothing but miles of empty road in front of them. For a moment, it seems like they will both just keep driving until something, or someone, gets in their way. The driver’s hand itches on the gear shift, watching Luc's strange, unblinking gaze in the other car.
But they need to know who won.
The two of them come to a begrudgingly slow stop before turning back around to meet the crowd waiting for them. The second the driver gets out of the car, the outcome is obvious.
<<if $driverfucks == 5>>\
[[<<<|38.3]]<span class="psglinkalign">[[>>>|40]]</span>\
<<else>>\
[[<<<|38.3]]<span class="psglinkalign">[[>>>|BadEnd]]</span>\
<</if>>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>Stunned silence. A cohort of Luc’s boys are crowded around the monitor displaying the times of each racer. There are questions hurled about faulty sensors, bad cameras, cheating.
//What did that Ghost do? How did he win?//
Luc shoves past everyone to look at it himself. The driver can’t see his face, only the way his shoulders tighten as he stares at the screen.
“Maybe I should check the wiring?” One of them asks.
“No.” Luc straightens up, turning back to face the crowd with a smile tightly fixed to his face. “Sorry, Ghost. It’s been so long since I lost, I nearly forgot what it was like.”
Luc approaches the driver like he has all the time in the world, and this is just a scenic detour. He stares down at the sleek black helmet, probably one of the last people in the city who still knows the driver's real name.
“Guess you stole a little of my luck tonight,” Luc says.
The driver meets his gaze through the dark visor, probably the only person here who knows how close Luc is to losing his cool.
[[<<<|39]]<span class="psglinkalign">[[>>>|41]]</span>
<<set $speedo to "fast">>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>With a snap of his fingers, Luc summons Babydoll without looking away.
“Don’t let anyone say I’m not a gracious King,” Luc says as Babydoll approaches, unsure where to look.
The driver does not take his gaze off Luc as the leader of the largest and most dangerous gear in the city leans down toward him, until Luc's lips are nearly against the driver’s helmet.
“A real man knows when he’s been beat.”
Those words are only for the Ghost.
With a smug laugh, Luc steps backwards and throws his arms out wide with a smile to match.
“Well?” Luc calls out as the crowd surges forward, only to stop at Luc’s heels, unwilling to get any closer than their King. “What are you waiting for, Ghost?”
[[<<<|40]]<span class="psglinkalign">[[>>>|42]]</span>
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>The crowd is watching. Luc is watching.
Babydoll is waiting.
The driver doesn’t hesitate. He takes Babydoll by the waist, pulling their hips together in front of everyone. Babydoll blushes in the glow of the lights affixed to the mouth of the tunnel. He tries not to show his relief as he angles his face away from the crowd.
“Congratulations,” Doll whispers.
The driver begins to walk forward, corralling Babydoll backward toward the hood of his car. Babydoll’s breath catches, but he matches the driver’s pace, holding his gaze on the black visor. Neither of them speak as they reach the parked car. Babydoll’s hands tighten on the driver’s shoulders to lower himself down so he can sit on the still-warm hood.
The driver peels his gloves off, raising his hands up to
<center>\
[[touch Babydoll's chest.|43.1]]
[[touch Babydoll's thighs.|43.2]]
</center>\
[[<<<|41]]
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>The driver sets his hands against Babydoll’s neck to feel him breathe in a deep and shaking breath. Then he drags both hands down across the thin cotton of Babydoll’s t-shirt.
Babydoll can't help the shyness overtaking his expression even while he arches his back to push into the driver’s hands. The motions are familiar to him, but not the pace, nor the partner. It’s probably obvious that he’s not warm enough yet, and the driver slides his heated hands up under the edge of Babydoll’s shirt.
Babydoll's mouth falls open when the driver palms his chest. He tries to swallow a soft moan, but the driver's helmet quirks at the slight catch in his voice. His palms are calloused and rough against Babydoll's nipples, the skin hardening up against the driver's rough touch. When Babydoll tries to turn his face away on instinct, the driver pinches his nipple, wrenching a gasp out of him. Color floods his face, and Babydoll picks himself up on his elbows, his chest beginning to heave with each breath. The driver tugs Babydoll’s shirt up, and Babydoll takes it from him.
“Do you want it all off?” he asks quietly, trying to feel out the driver’s style.
The driver answers by reaching for Babydoll’s shorts, wasting no time unwrapping his prize.
[[<<<|42]]<span class="psglinkalign">[[>>>|44]]</span>
<<set $goodendtracker = true>>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>The driver sets his hands on Babydoll’s knees, trailing his hands up lightly through the curls of dark hair over tan skin. His muscles tense beneath the driver’s hands, and the driver wonders how long it’s been since Babydoll touched anyone outside Lightning Gear.
Babydoll looks shy even while he spreads his legs apart, picking up his heels to rest the rubber soles of his boots against the car. The motions must be familiar to him, but not the pace, and not the partner. It’s clear to see he’s not warm enough yet, so the driver slides his hands over the front of Babydoll’s shorts.
The shape of his body is plain to see with how tight Babydoll’s clothes hug his ass. He swallows a soft moan when the driver traces the tip of his bulge trapped beneath the fabric. Out here on the other side of the tunnel, only the distant smoke of the party can still be heard, and the desert silence threatens to swallow it. Babydoll’s deepening breaths are barely audible, maybe still fighting some self-consciousness with Lightning Gear watching on.
The driver pops open the button of Babydoll’s shorts, shoving his fingers between stiff fabric and thickening flesh. Babydoll’s mouth falls open, color flooding his cheeks as the driver feels his pulse.
“Do you want it all off?” Babydoll asks, quiet as he tries to feel out Ghost’s style.
The driver answers by reaching for Babydoll’s shirt, wasting no time unwrapping his prize.
[[<<<|42]]<span class="psglinkalign">[[>>>|44]]</span>
<<set $goodendtracker = false>>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>Lightning Gear cheers and howls for their king, a storm letting loose to welcome Luc back, undefeated. No one lingers near the screen displaying the finishing times. None of Luc’s boys want to dwell on just how very close the Ghost came to breaking Luc’s undefeated streak.
It doesn’t matter now. A loss is a loss.
Luc approaches Ghost with newfound energy, lording every inch he has over the Ghost Driver as if winning the race made him even taller. He closes the gap between them, his chest pressing against Ghost’s. Panting, eyes electric, Luc smiles down on his opponent like he’s ready to swallow Ghost whole.
[[<<<|39]]<span class="psglinkalign">[[>>>|BE2]]</span>
<<set $speedo to "mid">>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>\
<<audio "2ndstrike" stop>><center>[img[images/race_diagonal.gif]]</center>\
<<if $goodendtracker == true>>\
[[<<<|38.2]]<span class="psglinkalign">[[>>>|39]]</span>
<<elseif $goodendtracker == false>>\
[[<<<|38.1]]<span class="psglinkalign">[[>>>|39]]</span>
<</if>>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>\The driver takes all of Babydoll’s clothes off, except for the boots. When Babydoll’s hands graze the driver’s helmet, the driver takes his wrists and pushes them down to the hood of the car. Understanding simmers in Babydoll’s eyes, and maybe a little disappointment, but he still hooks his legs around the driver’s waist to pull him closer.
“I’d tell you to call me Baby, but I don’t think you’ll say it,” he says softly.
The driver moves a hand down to touch Baby’s lips, hot breath blooming on his fingers.
“Should I call you Ghost?” he asks.
<<if $goodendtracker == true>>\
[[<<<|43.1]]<span class="psglinkalign">[[>>>|45]]</span>
<<elseif $goodendtracker == false>>\
[[<<<|43.2]]<span class="psglinkalign">[[>>>|45]]</span>
<</if>>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>Ghost slides his fingers into Baby’s mouth, thick wet tongue parting his knuckles and chasing up his palm. He releases Baby’s wrists to trail his hand down every muscle of Baby’s arm and over his broad chest. Baby moans when Ghost thumbs his nipple, sucking Ghost’s fingers deeper into his mouth. His skin tastes like adrenaline and leather.
The crowd behind them seems to ripple like water, but Ghost's helmet doesn't move away from Baby. He runs his fingers through the hair on Baby’s chest, following the thickening trail to the base of his cock. Baby is reluctant to let Ghost go when he pulls his fingers out of Baby’s mouth. His soft pink tongue chases after Ghost’s hand until he’s too far away to taste.
Nerves crackle through Baby’s shoulders as his gaze flicks behind Ghost, snagging on the tangle of bodies behind them. Immediately, Ghost takes his chin and redirects Baby’s gaze back to him. He doesn’t need to speak for Baby to understand. Lightning Gear is behind him now. They’ll have to go through Ghost if they want him back.
“Guess I’m yours,” Baby says, a hushed awe slipping into his low voice. “You can do whatever you want.”
<center>\
[[Reward|46.1]]
[[Tease|46.2]]
</center>\
[[<<<|44]]
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>Baby's breath stutters as Ghost draws his fingers down over the length of Baby’s nerve-softened cock. Bit by bit, his pulse begins to race for Ghost’s hands. He bites his lip when Ghost traces the slit of his cock; he falls back to the hood of the car when Ghost cups his balls; he bends his legs back when Ghost presses against his slicked up hole.
The black helmet snaps back up as Ghost stares at Baby, and Baby’s entire chest blushes.
“It’s a toy’s job to be ready,” Baby sputters, his voice burned down to fumes. “No matter who wins—”
Ghost slides his fingers inside Baby before he can close his mouth. Everyone in the crowd can hear the sound of Baby’s words hitching into gasps. His brow twitches, flailing for some kind of control but Ghost doesn’t give him any room. It’s too easy to keep pressing, softening him up with agile hands until Baby stops fighting it.
Baby chokes on his own breath as he tries to speak. “You don’t have to—to do anything for a toy.”
The black helmet cocks to the side, and Ghost takes Baby’s cock in his other hand, thumbing hard over his slit. Baby’s walls tighten up around Ghost's fingers, his knees shivering so slightly until his body relaxes again, opening up for more with a hiss of breath. Ghost’s fingers glide in and out of Baby’s hole, making room one after another until he’s fucking Baby on half his hand.
Eyes wide open, Baby pops up on his hands once more, legs spread and muscles taut around Ghost. The sound he makes is quiet, a low purring moan before he tips his head back and lets his voice go.
“//More, please.//”
[[<<<|45]]<span class="psglinkalign">[[>>>|47]]</span>
<<set $goodendtracker = true>>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>
Ghost draws his fingers over Baby’s peaked nipples, black helmet dipping forward as if to watch the skin stippling over Baby’s chest. The scent of oil curls in the air, conjuring the sounds of roaring engines. Forefinger and thumb, Ghost sharply tugs on Baby’s nipple, drawing out another gasp from him. His other hand slips over the length of Baby’s nerve-softened cock, thumbing at his slit until Baby bites his lip.
Baby starts to relax on the hood of the car when Ghost cups his balls. He bends his legs back when Ghost presses against his slicked up hole.
The black helmet snaps back up as Ghost stares at Baby, and Baby’s entire chest blushes.
“It’s a toy’s job to be ready,” Baby sputters, his voice burned down to fumes. “No matter who wins—”
Ghost cuts him off with another sharp pinch of his swollen nipple, and Baby gives a low, breathy moan. Before he can close his mouth, Ghost slips his finger into Baby’s slicked hole. Everyone in the crowd can hear the sound of Baby’s words hitching into gasps as Ghost rubs a kinder circle over Baby’s nipple. His brow twitches, flailing for some kind of control but Ghost doesn’t give him any room. It’s too easy to keep playing with him, pushing and pulling with agile hands until Baby is sparking like a live wire.
“You don’t have to—to do anything for a toy.” Baby tries to tell him, but Ghost silences him with another tweak of over-sensitive nipple, another finger stretching him wider.
Baby’s mouth hangs open, his walls clenching down hard around Ghost’s finger. The look in his eyes is way over the speed limit and when Ghost plucks the bead of his nipple one more time, Baby shows his teeth as his cock drips across his own skin. His voice rattles out of him from someplace far, far away.
“//More, please.//”
[[<<<|45]]<span class="psglinkalign">[[>>>|47]]</span>
<<set $goodendtracker = false>>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>
Ghost unzips the front of his suit while Baby writhes on the hood of his car. There are murmurs and coos from their audience behind them as they work themselves up over the sounds of a moaning toy, but Baby only looks at Ghost when he pulls his cock out.
He reaches a half-limp hand for Ghost’s body as the crowd sways and groans. There are no nerves left in him as Baby threads his fingers around Ghost’s hard cock, rubbing his thumb into the drops of cum.
“I knew you would win,” Baby says quietly. “Luc said it himself. You’re the only one who could ever beat him.”
<<if $goodendtracker == true>>\
[[<<<|46.1]]<span class="psglinkalign">[[>>>|47.1]]</span>
<<elseif $goodendtracker == false>>\
[[<<<|46.2]]<span class="psglinkalign">[[>>>|47.1]]</span>
<</if>>\
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>Impulse tightens Ghost’s spine as he grabs Baby’s waist. The helmet turns steadily to look over his shoulder. Baby clenches around Ghost's cock with a plaintive moan as Ghost finds the only still body in the crowd.
Luc watches with arms crossed, eyes smoldering, his mouth neutral. It's obvious even from a distance that Luc is meeting Ghost's gaze through the shiny black visor.
Ghost shoves his cock in deeper, drawing a heavy moan from Baby's stomach. It's hard to tell from there, but it almost looks like Luc’s mouth is twitching, or maybe his tongue moved beneath his scarred lips, sliding across his teeth. When Baby tightens around Ghost’s cock, Ghost tips his head back, a breathy sigh caught behind his helmet. There’s no way Luc can hear that, he can’t see Ghost’s brow twitching in pleasure, or the way he pulls at his own lip, but //you know he knows.//
“More!” Baby pleads.
Ghost turns back to the boy spilled over his car. Time to finish the race.
<center>\
[[Fuck|48]]
</center>\
[[<<<|47.1]]
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>\Baby braces his hands on the hood, his legs locked around Ghost. He pants open-mouthed, the muscles in his chest and arms tensing beneath his skin as Ghost rocks into him, hitting deeper with every thrust. Baby's eyes roll shut and he shudders when he takes every last inch of Ghost’s cock.
All that shyness from earlier is gone and Baby’s legs fall open, splaying his arms above his head, his whole body on display. He’s just as hard as Ghost, and his cock drips onto his own stomach when Ghost plants his hands on the hood.
[[<<<|48.1]]<span class="psglinkalign">[[>>>|48.2]]</span>
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>\Ghost is running full tilt downhill. He’s half crouched on the hood of his car fucking Babydoll through the smooth glide of slick heat. Baby’s voice has crumbled into shaking gasps. His eyes are open but it’s clear he’s not seeing anything at all.
Sensation jolts through him, and Baby curses softly, only loud enough for Ghost to hear. His body tenses before he starts to come in waves, his body tightening around Ghost’s cock like a vice as he spills over his own stomach, lost in a haze of relieved pleasure.
The car shifts under the rippling weight of their bodies, but that doesn’t slow Ghost down even for a second. His nerves burn, his skin electric, the world tunneling around him as Baby clenches down, hard. Baby pulls Ghost’s helmet until his whispering breath turns to fog on the visor.
“Let me feel it.”
<center>\
[[Claim your toy|50]]
</center>\
[[<<<|48.2]]
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>Tightness seizes Ghost’s muscles, driving his body harder into Baby’s as sweat prickles beneath his suit, along the column of his neck, down the length of his thighs. The crowd has begun to melt into each other, sensing the end approaching on Ghost’s arched heels. Panting beneath his helmet, Ghost can hear it. Roaring engines, shaking chassis, pushing the mechanisms to their absolute limit. He knows where to go even while he’s barely holding onto the wheel. It doesn’t matter if the car flies apart, as long as he crosses first. No one else is on the track but him, and the body beneath him.
With a flash of heat that spears up through him—zipping up from the soles of his feet, deep in his balls, over his chest, to the crown of his head—Ghost starts to come in Baby, filling him with every pitch, fucking his own spend deeper with an animal groan of satisfaction. Baby relaxes around him, his fingers pawing at Ghost’s helmet and the side of his chest as Ghost slows his hips down to a lazy roll just to get every drop out.
Finally, Ghost goes still, and Baby pulls him closer just to kiss the front of his helmet.
“Thank you,” he breathes, exhausted solace heavy in his voice. The tops of his cheeks are still red as he runs his hands over Ghost’s chest. “You can tell them it’s over now.”
When Ghost only stares at him, Baby starts to smile.
“Right. How about I do the talking and you get us out of here?”
[[<<<|49]]<span class="psglinkalign">[[>>>|51.1]]</span>
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>><<fadein 1.5s>>
<center><span class="bigtext">THE END</span>\
<<fadein 4.5s>>\
<span class="bigtext"> ?</span>\
<</fadein>>\
</center>\
<</fadein>>\
[[<<<|51.1]]<span class="psglinkalign">[[>>>|52]]</span>
<<if settings.audioEnabled>><<audio "raceradio" volume 0.5 fadeoverto 3s 0>><</if>>
<center>
a FRICTION x PANFRIED collaboration
//You must be 18 years or older to play this game.//
</center>\
[[<<<|51]]<span class="psglinkalign">[[>>>|53]]</span>
<<masteraudio stop>><center>
<<fadein 1.5s>>\
//Gear Shift City - 09/15/20XX//
[[<<<|52]] [[>>>|54]]
<</fadein>>\
</center>\
<<if settings.audioEnabled>><<audio "carpassing" play >><</if>>//8:32 pm
Heart’s Body Shop//
“You again…” Heart heaves a sigh as the ghost driver slips into his shop, narrowly avoiding setting off the bells on the door. “Got a message for you. I’m not your delivery boy, ya know.”
Heart holds something out, a warning look in his eye. “Listen. I’m not one to tell you your business, but I wouldn’t—”
“Sorry!”
Another voice rings out from the garage, and Heart stiffens up as the door to the auto bay opens up. Heart’s new assistant rushes into the room, leaning up against the counter beside Heart, and smiles warmly at Ghost.
[[<<<|53]]<span class="psglinkalign">[[>>>|55]]</span>
<<if settings.audioEnabled>><<audio "carlock" play >><</if>><center>[img[images/heartsbaby.png]]</center>\
“Oh, it’s you. I thought you were a regular customer. I was going to ask Heart to teach me more about how to use the register.”
Heart folds his arms, his gaze very obviously snapping //away// from Baby’s tightly fitted shirt, and onto the floor. “Don’t have time to teach you everything…”
Baby takes the envelope from Heart and gives it to Ghost himself. “You know, Heart doesn’t want to say it, but you get a lot of junk mail. Can we just throw it away?”
Heart grumbles behind him, and it almost looks like he's going shy. “I didn’t say anything like that.”
Baby smiles at Ghost and lowers his voice. “Hey, can I talk to you?”
[[<<<|54]]<span class="psglinkalign">[[>>>|56]]</span>
<<masteraudio stop>>Baby pulls out a cigarette with a guilty face. “Don’t tell Heart. He told me I should quit. I’m working on it.”
Ghost watches Baby relax against the brick wall, playing with the cigarette between his fingers.
“Listen, I never really got to properly thank you for getting me out of there, and for introducing me to Heart. But I thought you should know…”
His expression goes dark, almost like the first time Ghost met him.
“Luc put me up to it, ya know? He wanted me to find you, said you’d jump at the chance to race him if the right kind of person asked. But the thing is, I really did want out. He thought I’d come back to him after, but I don’t want to go back. I like being here.”
[[<<<|55]]<span class="psglinkalign">[[>>>|57]]</span>
<<masteraudio stop>>Baby offers a sheepish smile. “Luc might come down on you now, or try to steal me back. I don’t know for sure. He runs the gears, or at least he thinks he does. He wants every gear under his thumb.”
Looking at his cigarette, Baby sighs. "I left because Luc was talking about taking over the inner city, making all of G.S.C his. I thought I could talk him out of it, but I think he's got a death wish. It all just gets more reckless. I couldn't stand it anymore."
Baby hardens up his gaze, staring at the helmet.
“You can’t stop Lightning Gear now, too many people are loyal to Luc. If you challenged him for control, he’d have no reason to say yes. But maybe if you beat enough of the other gears in the city, show them who you are, they’d have no choice but to follow you instead.”
“I’ll help you, of course,” Baby offers, relaxing his shoulders. “I learned a lot being Luc’s toy. I know you two have history, more than Luc would ever say. Maybe I'm not the only one who needs you."
Finally, Baby's gaze seems to look past his own reflection in the visor, and his eyes fill with warmth as he sees something inside the helmet.
"So..." Baby rolls the unlit cigarette between his fingers. "What do you say? Am I part of your //Ghost Gear// now?"
[[<<<|56]]<span class="psglinkalign">[[>>>|58.1]]</span>
<<masteraudio stop>><center>
<span class="bigtext">TO BE CONTINUED...</span>
''NEW COURSE RECORD''
0/5  <span class="smalltext">WRONG TURNS</span>
<<fadein 2s 0.5s>>\
[[Credits]]
<<if settings.audioEnabled>>\
<span onmousedown="playRestartSound()">[[Restart|i]]</span>\
<<else>>\
[[Restart|i]]\
<</if>>\
<</fadein>>\
</center>\
<<masteraudio stop>>\“Guess that settles it.” Luc is breathless. “I’m still the fastest driver there is.”
There’s no way to know if he can see the ghost through his helmet, or if Luc is only looking at his own smirking reflection in the black visor. The ghost can feel the heat of Luc’s body radiating through his clothes, a familiar tension that pulls at their muscles like loaded springs. But Luc’s hungry smile and wild eyes and howling need is not for the ghost.
[[<<<|BadEnd]]<span class="psglinkalign">[[>>>|BE1]]</span>
<<if settings.audioEnabled>><<audio "raceradio" volume 0.5 fadeoverto 5s 0>><</if>>
<<audio "2ndstrike" stop>>\All Luc has to do is hold out his arm and Babydoll fills in the space beside him. Luc pulls his toy close, angling his body away from the ghost to grab Babydoll by the hips. Fear simmers in Babydoll's eyes as Luc slowly slides his hands up the skin of Babydoll’s flank.
“You’re so easy, you know that?” Luc turns his leering gaze back on the ghost. “All I had to do was dangle the right bait, and here you are.”
Babydoll squirms, but Luc only squeezes him tighter, his smile widening as Babydoll’s guilt deepens.
“Don’t be cruel,” Babydoll whispers.
Luc only laughs. “Oh, Dollface, don't tell me you started feeling bad for him?”
Babydoll flashes Luc a look with history in it, weighed down with a familiar exhaustion.
“You can’t trust ghosts,” Luc says, running his thumb over Babydoll’s cheek. “They only think about themselves.”
[[<<<|BE1]]<span class="psglinkalign">[[>>>|BE4]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" volume 0 fadeto 0.5>><</if>>
<<audio "raceradio" stop>>Babydoll glances at the ghost driver one more time, but Luc threads his fingers through his curls of brown hair and pulls his toy in for a kiss. Babydoll’s eyes flash, his breath audibly catching before his lets his lids slide closed. Whether it’s pleasure or resignation, the ghost doesn’t know. Babydoll’s hands find Luc’s waist automatically, and all the ghost can do is watch.
//Losers don’t get to touch.//
[[<<<|BE3]]<span class="psglinkalign">[[>>>|BE5]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>>Luc breaks the kiss with a flick of his tongue over his scar. Is there still a chunk of flesh missing, or is it all filled up with scar tissue now? He grabs the front of Babydoll’s shirt in his fist and guides his toy across the asphalt toward his car. The ghost knows the hood is probably running way too hot—Luc always had a problem with letting his coolant stretch too thin. Why should he change his habits now, undefeated as he is?
Luc spins Babydoll around, nearly knocking his toy off balance to kiss him against the trunk of his winning car. The air is still thick with the smell of burnt rubber and gasoline but Luc probably only smells his toy as he tongues deep into Babydoll’s mouth. Babydoll’s back arches against the car as Luc pours over him, drinking deep from familiar water. Slight moans shiver out of them both, Babydoll’s deeper voice rumbling beneath Luc’s purring.
[[<<<|BE4]]<span class="psglinkalign">[[>>>|BE6]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>>Luc’s hand glides beneath Babydoll’s thigh as he lifts it up off the ground to wrap around his waist. Babydoll clings to the back of Luc’s dark jacket like he’s drowning, but Luc only dips him forward like he means to keep Babydoll beneath the water. When Luc snaps back for a breath, Babydoll pants up at him, red faced.
“Luc,” he whines.
Luc grins.
“What do you want, Doll?”
Babydoll’s eyes soften, and he lowers his gaze, answering in a hush, “I want to be your reward.”
“‘Course you do,” Luc says back, confident as ever. “You’re mine, aren’t you?”
“Yeah,” Babydoll echoes, letting his head tilt back a little further, pushing his chest up a little higher. “All yours.”
Luc runs his thumb across Babydoll’s jaw, staring down at his meal with greed.
“You’re eager, aren’t you?” Luc asks. "Maybe a little too eager."
[[<<<|BE5]]<span class="psglinkalign">[[>>>|BE7]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>>Babydoll startles when Luc spins him around again, his blush deepening as he is forced to face the crowd. Luc makes quick work of Babydoll’s shorts, tearing them open and sliding them down his thighs. Lightning Gear ripples with anticipation, licking their lips while Luc teases Babydoll’s chest beneath his shirt.
With a gasp, Babydoll turns his face back toward Luc, panting in Luc’s ear as his hands clamp down around the edge of the car. Luc’s fingers circle Babydoll’s nipples beneath his shirt, sending all the blood to Babydoll’s cock. His body flushes, his skin swelling up in plain view of the audience. His boots scratch over the road as he twitches and fidgets.
[[<<<|BE6]]<span class="psglinkalign">[[>>>|BE7.1]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>>The crowd crackles with tension, bodies undulating around the ghost as they inch closer to their King, hoping for permission, or maybe a scrap for themselves.
Luc glances at his waiting audience, that grin ripped across his face. His gaze sweeps over his eager followers, lingering a moment more on the only still body in the crowd. Luc’s eyes burn as he sets his mouth on Babydoll’s shoulder, and then his teeth. Babydoll cries out when Luc bites him.
//He never did know how to temper himself.//
Babydoll’s chest heaves with every breath as Luc’s hands crawl across his body. Long fingers slip between Babydoll’s thighs and Babydoll immediately hikes his leg up, the rubber heel of his boot catching on the edge of Luc’s car. His back arches, his torso stretching as he leans into Luc behind him.
All around the ghost, Lightning Gear begins to squeeze in closer, melding into each other, panting along with Babydoll. They're creating their own current as they press and rub against each other through their clothes, but none of them come near the ghost. He is a void in the impatient crowd, motionless and untouched. None of them can tell that Luc is looking right at that opaque visor.
[[<<<|BE7.1]]<span class="psglinkalign">[[>>>|BE9]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>>“Turn around,” Luc commands in a husky voice.
Babydoll moans through the bunched up fabric between his teeth, spinning around to face Luc with no question. When he reaches for Luc’s face, he gets stopped by Luc pulling his shirt off.
“Bottoms too,” Luc says, ruffling Babydoll’s hair before flicking his nipple with a smirk.
Babydoll shudders at the sensation jolting through him—a rubberband snapping inside his chest. He barely gets his shorts and underwear off his thighs before Luc has his hands back around Babydoll’s hips, cupping Babydoll’s ass to spread him open so all of Lightning Gear can see his toy is prepped and ready. The way Luc teases Babydoll must be second nature to him, knowing exactly where to press and fluster. They’ve put on this show before, many times.
“//Luc//,” Babydoll whines softly while Luc buries his finger inside Babydoll.
“What?” Luc breathes back, smiling as he watches his skin quickly swallowed up by his toy. He doesn't bother going slowly, not after such a tense win.
Babydoll shakes his head, grabbing the back of Luc’s jacket to steady himself. His stance steadily widens as Luc ruthlessly opens him up, grinding his hips against Luc’s for some kind of relief. Babydoll pulls on Luc’s hair with a curse, tanned fingers tensed through blond streaks, with nearly all of Luc’s fingers plunging into him. Babydoll’s gasping echoes through the crowd, parroted back to him as the rest of the gear pitch and roll in a hazy wave.
Bit by bit, the audience approaches the King and his toy. When Luc turns his back to force Babydoll’s hands onto the car, the audience takes advantage of his distraction. They pour forward, carrying the ghost with them to watch Luc unzip his pants, revealing the pale skin of his hips pocked with old scars. Luc is already hard as metal when he pulls his cock out, the adrenaline of the race no doubt still coursing through him like a gasoline fire. His toy is ready, Babydoll’s skin shiny with slick that Luc wastes no time shoving into.
[[<<<|BE8]]<span class="psglinkalign">[[>>>|BE10]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>><center>[img[images/badend02.png]]</center>\
There’s nothing to see here on the other side of the tunnel except the distant silhouette of the airport, and miles of empty road cutting through the desert. The undefeated King of Gear Shift City looks just like a wild animal on the outskirts of his kingdom, his hands clamped down tight around Babydoll’s hips, his mouth torn open in pleasure.
Babydoll clings to the trunk of Luc’s car, gasping into his own arm. His body strains against Luc’s ruthless pace, muscles tensed beneath his skin. Nothing but clipped, desperate noises spill out of his open mouth. There is no warning when Babydoll comes. His voice drops low with a shudder and he buries his face in his elbow as he loses himself across Luc’s bumper in uneven white streaks.
Luc doesn’t relent, scarred hips pistoning into Babydoll even as his toy struggles to keep himself propped up. Tremors shiver through Babydoll’s legs like he might collapse at any moment, but Luc only fucks him harder. Luc's voice groans out of him, metal on metal, tension building through his legs as his boots scrape across the asphalt. He bends toward Babydoll with a wicked smile, looking down at his toy like he wants to rip into Babydoll with teeth.
Luc’s hips stutter and he snarls as he starts to come, filling Babydoll with vicious thrusts until the mess is spilling out onto the pavement between them. Babydoll gives a mournful moan, his tailbone twitching as Luc empties himself. Their panting fills the quiet air for a single moment, until Luc pulls out with a breathy laugh, patting Babydoll’s bare hip.
[[<<<|BE9]]<span class="psglinkalign">[[>>>|BE11]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>>Luc leans down over Babydoll’s back, running a hand down his flank. “Still the best.”
Babydoll only nods, trying to catch his breath.
Luc pushes his fingers up through his toy’s hair, his mouth hovering over Babydoll’s neck like he might bite, or kiss.
“You stay right there like a good boy,” Luc tells him, tendrils of his long hair trailing over Babydoll's skin.
With a smile, Luc turns back to the crowd and squeezes Babydoll’s ass.
“Who wants a turn?”
It’s all he needs to say. The crowd surges forward, eager to follow their boss’s orders.
“First come, first serve!” Luc calls as one of his boys takes Luc’s place behind Babydoll. “Don’t let anyone say I’m not a generous King.”
The audience overtakes the car, everyone slithering around their leader, waiting to see how many of them will get a chance to fuck the boss’s toys. Babydoll whimpers when another guy grabs his ass, hardly even glancing at Luc for a nod of permission before he shoves his cock right into Luc’s mess.
Luc pets Babydoll’s hair, another of his toys worming up behind him to kiss Luc's neck. The rest of Lightning Gear begins to turn toward each other, pinning one another against the winning car, or dragging each other down to the road for a chance to get out some of their tension.
Everyone except the ghost. When the dust settles, and Lightning Gear loses itself to its carnal celebration, the ghost driver has already retreated back to his car. There is nothing for him here, not anymore.
//You don’t belong here.//
[[<<<|BE10]]<span class="psglinkalign">[[>>>|BE12]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>><center>
<span class="bigtext">STALLED OUT</span>
$optioncounter/5  <span class="smalltext">WRONG TURNS</span>
<<fadein 2s>>\
[[Credits]]
<<if settings.audioEnabled>>\
<span onmousedown="playRestartSound()">[[Restart|i]]</span>\
<<else>>\
[[Restart|i]]\
<</if>>\
<span id="HintText"><<link "Make a call">>\
<<replace "#HintText">>\
[img[images/icon_phone.png]] //"Focus up!
What are you racing for?
Who are you racing for?
Keep it steady."//
Baby needs a driver who doesn't back down.
But Luc is too dangerous for reckless stunts.
<</replace>>\
<</link>>\
</span>\
<</fadein>>\
</center>\
<<masteraudio stop>>\
<center>\
[img[images/badend01.png]]
</center>\
Luc’s teeth flash the moment before he pinches Babydoll’s nipples hard enough to make his toy jolt forward. Just as fast, Babydoll slams his eyes closed, rolling his naked hips against Luc behind him. Sparks fly up behind Luc’s eyes when he wrenches up the edge of Babydoll’s shirt to pull into his toy’s open mouth. Babydoll huffs, teeth sinking into it. His voice dampens around the fabric bit, and he lets out a whine when Luc deigns to touch his cock.
Babydoll’s thighs shiver while Luc plays with his slit, drawing out dew drops of cum only to let them fall uselessly onto the pavement.
[[<<<|BE7]]<span class="psglinkalign">[[>>>|BE8]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" play loop>><</if>><center>[img[images/goodend01.png]]</center>\
Ghost’s hands snap to Baby’s legs, pushing the trunks of his thighs backward. He stares at Ghost, a halo of curls, panting with the head of Ghost’s cock flush to his hole. Just a little deeper, an inch of wet heat pressing tightly to Ghost’s hard skin, and Baby throws his head back, eyes closed.
“//Ghost,//” he sighs. He’s ready.
[[<<<|47]]<span class="psglinkalign">[[>>>|48.1]]</span>
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>\<center>[img[images/goodend02.png]]</center>\
Baby’s chest jostles when Ghost fucks into him, his breath leaving him in stuttering gasps. Impatience grips Ghost by the hips, electric impulse guiding his hands back to squeeze Baby’s chest. Baby’s mouth pries open with a curse and his voice squeezes out of him as Ghost picks up his pace. Baby tenses around Ghost’s cock, pulling a satisfied groan from under the helmet. Latching his hand onto the back of the smooth carbon, Baby pulls Ghost closer to hear the quiet, ragged breathing spilling out of him.
All of Lightning Gear can see Baby's thighs shaking from Ghost’s relentless pace, his boots swaying in the air, his tanned fingers splayed over the black helmet. The onlookers simmer in the low sounds of Baby’s panting, and Ghost's car groaning beneath him. The urge to join in is like a storm crackling through the air, but they can’t, not until the winner has finished staking his claim. They think he must be close with how fast he’s fucking his new toy. He must have been starving before he got here. Either that or he just can’t help himself.
[[<<<|48]]<span class="psglinkalign">[[>>>|49]]</span>
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>>\Ghost takes another long look at Baby, a naked mess sprawled over the hood of his car, and slowly pulls away. Baby closes his eyes when Ghost’s cock slips from his body, the mess dripping onto the hood. While Ghost fixes the front of his racing suit, Baby pushes up to hook his arm around Ghost’s shoulder. He faces the roiling crowd and blows a kiss to Luc.
“See you later.”
Ghost doesn’t have to look. He can feel Luc watching them.
[[<<<|50]]<span class="psglinkalign">[[>>>|51]]</span>
<<if settings.audioEnabled>><<audio "raceradio" play loop>><</if>><center>\
<img src="images/cast_ghost.png" alt="The Ghost Driver">
</center>\
A nameless, faceless driver with no gear. No one knows where he came from or why he still races.<<if hasVisited("40")>> He's the only driver who's ever beaten Lightning Luc behind the wheel.<</if>>
<center>\
<img src="images/cast_heart.png" alt="Heart">
</center>\
<<if hasVisited("04")>>Owner of Heart's Body Shop, a gearless automechanic who has trouble saying no to certain customers.<</if>> <<if hasVisited("55")>>He has recently taken on a young, new apprentice.<</if>>
<center>\
<img src="images/cast_babydoll.png" alt="Babydoll">
</center>\
<<if hasVisited("12")>>One of Lightning Luc's toys with a bad habit of chain smoking, he claims he wants out of his gear. <</if>><<if hasVisited("55")>>Now, he is the newest apprentice at Heart's Body Shop.<</if>>
<center>\
<img src="images/cast_luc.png" alt="Lightning Luc">
</center>\
<<if hasVisited("17")>>Leader of Lightning Gear, the biggest and most influential gear in the city. Not many drivers are brave enough to challenge him anymore. He has a reputation for ruthlessness after a number of opponents wound up in the hospital after losing to him.<</if>> <<if hasVisited("BE12")>>Luc is the only person that knows who Ghost used to be.<</if>>
<center>\
[[Return|$return]]
</center>\
<<masteraudio stop>>\<center>\
[img[images/stinger.png]]
</center>\
[[<<<|57]]<span class="psglinkalign">[[>>>|58]]</span>
<<if settings.audioEnabled>><<audio "lighter" play >><</if>>
<<audio "raceradio" stop>><center>
[img[images/icon_gear.png]]
<<fadein 1.5s>>\
[[<<<|03]] [[>>>|04]]
<</fadein>>
</center>
<<masteraudio stop>>\
<center>
''DISCLAIMER''
All Friction x Panfried projects are intended for adults only. Works may contain a range of potentially upsetting themes, including but not limited to sexual assault, graphic violence, and other scenarios not condoned in real life. Player discretion is advised.
<span class="smalltext">Ready</span>
SET
<span class="bigtext">[[GO!|01]]</span>
</center>
<<masteraudio stop>>\
<center>[img[images/badendstinger.png]]</center>
[[<<<|BE11]]<span class="psglinkalign">[[>>>|BE13]]</span>
<<if settings.audioEnabled>><<audio "2ndstrike" volume 0.5 fadeoverto 3s 0>><</if>>\<<if $speedo == "mid">>\
[img[images/speedomid.png]]\
<<elseif $speedo == "fast">>\
[img[images/speedofast.png]]\
<<else>>\
[img[images/speedoslow.png]]\
<</if>>\"What are you waiting for?" Luc turns to his gear, the waiting crowd of cars and people that followed him through the tunnel. "Turn the fucking music up! It's time to celebrate."
[[<<<|BE2]]<span class="psglinkalign">[[>>>|BE3]]</span>
<<if settings.audioEnabled>><<audio "radiotuning" volume 0.5 fadeoverto 8s 0>><</if>>
<<audio "2ndstrike" stop>>\