College Tennis: Origin Story (WIP) - Updated 8 Jun '25 [968k words]

I made a list with some bugs and typos.

0_prologue

If tutorial mode is ON, this option gives +3 Tactics instead of +4:

Same here, if tutorial mode is ON this option gives +3 Endurance instead of +4:

This gives +3% offensive if tutorial mode is ON, +4% if it’s OFF:

Typo (inscrutable):

Typo (raucous):

Typo (realise):

Typo (Where):

Typo (matter):

Typo (to know her answer):

1-1_meetcoaches

Typo (walk):

This check seems… a bit too easy:

*elseif (sprint_over)
  *if agility > 3
    Thankfully, your faith in your own sprinting speed is not misplaced. You make it to the tennis courts in half the time it'd have taken you to walk there, and barely break a sweat.

Typo (ricocheting):

If you choose Finesse as your greatest strength, then you can choose it again as your second skill. This happens because this line of code is missing:
*set greatest_strength "finesse"

Typo (come):

During the introductions, you can choose this option multiple times, unlike the others:

There should be a full stop after “rack”:

Missing capital letter:

Typo (difficulty):

During the jump height test, if your height is tall the calculations are wrong. You should have strength > 21 first and then strength > 19, instead you have:

*else
  *if strength > 19
    *set weights_position + 1
    *set rayyan_friendship + 1
    You manage to slap a long row of vanes at the crest of your jump, achieving impressive air-time and vertical height thanks to your reach and explosive power. When you hit the ground again and look up, you feel a rush of pride. Rayyan looks at you appreciatively for a brief second. "Impressive," ${team_he} says, before gearing up for ${team_his} own jump. 
    *goto rayyan_finish_strength
  *elseif strength > 21
    *set weights_position + 2
    *set rayyan_friendship + 1

During the 5-mile run, this should be - 9 instead of %-9, to keep the calculations consistent with the other choices:

      *else 
        *set condition %-9
        You dig deep and draw on your reserves, fully determined to make these first two miles count. Your limbs and lungs are already starting to burn, but it's a small price to pay, considering you're still in the front half of the group.

Same here, they should be - 2, - 4 and - 6 instead of %-2, %-4 and %-6:

  *if endurance > 24
    Thanks to your high level of endurance, you're still feeling relatively strong as you near the last stretch of the run.
    *goto tied_2nd_fifthmile
  *elseif endurance > 20
    *set condition %-2
    *line_break
    You're starting to tire a little, but not by much. In fact, choosing not to expend all your energy early on means that you still have something left in the tank as you near the last stretch of the run.
    *goto tied_2nd_fifthmile
  *elseif endurance > 16
    *set condition %-4
    *line_break
    You're certainly feeling it now, the lactic acid building up in your legs. Still, it's nothing too unmanageable – yet, and choosing not to expend all your energy early on means that you'll hopefully be able to make it to the last stretch of the run.
    *goto tied_2nd_fifthmile
  *else 
    *set condition %-6

Typo (cutthroat):

1-2_secondtraining

Typo (busying):

Typo (They’re):

1-3_challengematch

(I think this has already been reported though) If first_set_score against Emerson is 6-3, the text claims that “You’ve narrowly won the set, 7-5”. That’s because the code only checks for 6-4:

*if first_set_score = "6-4"
  You've won decisively, with a scoreline of 6-4. 
    *goto first_set_break 
*else
  You've narrowly won the set, 7-5.

I think you’re supposed to recover more if your endurance is higher:

*if endurance > 28
  *set condition %+2
  Thanks to your high level of physical fitness, you already feel better after the break.
  *goto emerson_serve_second_set 
*elseif endurance > 24
  *set condition %+3
  You feel better after the break, but you're certainly feeling the effects of the first set. 
  *goto emerson_serve_second_set 
*elseif endurance > 20
  *set condition %+4

Typo (Emerson has):

This option is not available even if you are an aggressive baseliner. Not sure why, maybe it’s case sensitive and should be “Aggressive baseliner” instead:

Typo (by Rayyan’s passion):

1-4_party

Typo (In one of the lulls):

If you don’t go to the party, the relationship bar for G never appears, even if you meet them later.

1-5_freshmanorientation

Typo (tomorrow):

Typo (people):

There’s a | that shouldn’t be there:

The same sentence is repeated twice (this happens if you didn’t go to the Chinese restaurant with your father):

Some of your hallmates look dubiously at the small space, clearly wondering how you'll all be able to fit in, but Mike immediately scoots in, used to this by now. "C'mon, we'll have to get 'cozy'." 

  You follow $!{D_name} into one of the bench rows, and $!{G_name} squeezes in right after you. 
  *goto menu_chinese_saturday

*label menu_chinese_saturday
*page_break
With some sort of magical sleight of hand, the woman manages to carve out enough space for all of you in an table meant for half the number of people. 
  
Some of your hallmates look dubiously at the small space, clearly wondering how you'll all be able to fit in, but Mike immediately scoots in, used to this by now. "C'mon, we'll have to get 'cozy'." 

You follow $!{D_name} into one of the bench rows, and $!{G_name} squeezes in right after you.  

Typo (shouldn’t):

Typo (you’d also brought it):

Typo (his at all):

When you skype with Sam, you can gain infinite relationship points with them if you select one of the following options and then choose #No, never mind – what are my other options?, because the relationship increase happens before you finalize your decision:
#At my first match? [2 weeks from now]
#At Sam’s first match? [4 weeks from now]
#We’ll meet at the ITA All American championships. [6 weeks from now]
#Back home during fall break? [8 weeks from now]

Here I suppose it should be “his” (or “her”):

Typo (somehow):

2-1_firstweekclasses

Typo (to run):

Typo (seems to be):

Is this “wait”?:

When you go to the gym, you are supposed to only be able to do two activities, but you can do all three of them because the last option has gym_choices_no < 3 instead of gym_choices_no < 2:

2-2b_jackschallengematch

Typo (and):

Here current_game_score should be set to 0-15, since Jacks beats you:

*else
      *rand dice_roll 0 1
      *if dice_roll = 0
        *set current_game_score "15-0"
        It makes sense in theory, definitely, but because of the spin, the ball moves slowly in the air and Jacks has time to get behind the ball. There's an efficiency to ${team_his} footwork that somehow allows ${team_him} to cover the court quickly, without seeming to move very quickly at all.  
        
        Jacks smashes a return back at you.

        It's hard to recover the lost momentum from there, and soon Jacks packs a punchy baseline shot into your backhand corner and wins the point.
        *goto secondpoint_firstgame

Typo (something):

2 Likes

HAHAHA yasss oh man, what a nightmare you are. In all seriousness, thanks for catching the rayyan_friendly bug.

:joy: :joy: :joy:

@Cloudy Thanks for the edits! Yup, the choices are usually in first person.

@kckolbe yeah, great ideas - I might start with some players getting Option A, and some players getting B, and allow a swap between those options mid-game.

Wait, but shouldn’t fairmath still increase tricky beyond 50, just that it’ll be a very small increase? Similar to the other stats like friendly, intense etc.? Or are you saying that because the fairmath increases are too small, currently it’s impossible to get tricky above 50?

Noted on the condition though - I think I either have to increase the fairmath +'s and -'s, or take out fairmath for those small boosts. I’d put fairmath in because it was getting too cumbersome to check if condition > 100 every single time, but I just might have to do that.

Thanks also for your bugs and typos, very very much appreciated - will comb through and correct them all in the next update! :slight_smile:

2 Likes

Oh, yes I meant it’s currently impossible because you start from 30 and the increases are too small. You can get it to > 40 for Emerson. For Jacks, technically if you sum all the possible Tricky choices you get 52, but I’m pretty sure at least one or two of them are mutually exclusive, so I guess you end up around > 45.

1 Like

Got it! I think I meant for you to start at 50. Will change this as well in the next update :slight_smile: Thank you!

4 Likes

I went code-diving and found other bugs. I guess that’s more than enough until the next update.

0_prologue

Typo (of):

Typo (something):

Typo (and ${team_his} grip):

Typo (his expression is a mix):

Typo (Thalia’s said it):

1-1_meetcoaches

Missing capital letter:

There are a couple of mistakes here.
*If Team = “Men’s tennis” does not work. You can try using *If Team = “men” instead, or write the sentence only once as “From the lack of bodies in the room, you suppose that this means the ${opp_team}'s team will be training separately.”
If you arrive in time (the last part of the code) you get %-5 serious, but I’m pretty sure it’s supposed to be %+5:

*if late_first_day > 7
  *set Coach_relationship %-5
  *set serious %-5
  *set intense %-5
  "Excellent," The man says, consulting his watch before frowning at you. "I'll let Coach Sýkorová know you've finally made your less-than-dramatic entrance," He says, a little snarkily.

  You look around. There are only two other freshmen in the lounge area, each sitting on a different sofa. They're both filling out some papers. 
  *if Team = "Men's tennis"
    From the lack of bodies in the room, you suppose that this means the women's team will be training separately. 
    *goto snarky_assistant_coach
  *else 
    From the lack of bodies in the room, you suppose that this means the men's team will be training separately.
    *goto snarky_assistant_coach
*elseif (late_first_day < 8) and (late_first_day > 4)
  "You're [i]late[/i]," The man says, with a small sigh, as he consults his watch. You note with slight relief that there's no real bite to his words. You're just a couple of minutes late, after all. 
  
  There are only two other freshmen in the lounge area, each sitting on a different sofa. They're both filling out some papers. 
  *if Team = "Men's tennis"
    From the lack of bodies in the room, you suppose that this means the women's team will be training separately. 
    *goto snarky_assistant_coach
  *else 
    From the lack of bodies in the room, you suppose that this means the men's team will be training separately.
    *goto snarky_assistant_coach
*else
  *set coach_relationship + 5
  *set serious %-5
  "Welcome," The man says, smiling at you. "Glad to see [i]some[/i] of you have a decent sense of punctuality, at least." 
    
  You look around you. There's only one other freshman in the lounge area. 
  *if Team = "Men's tennis"
    From the lack of people in the room, you assume that this means the women's team will be training separately.

    Your attention snaps back to the man when he extends a hand. The handshake is firm, but not overbearing. "Coach Tyrone Jones," the man says, introducing ${team_himself} as the assistant coach for the team. 

Coach Jones should always be a man:

Typo (opponents):

Here my height is shorter than average, so my reach is not helping at all during the height jump test:

Typo (unmanageable):

Typo (accelerates and widens/accelerates widening):

Typo:

Typos (footsteps, take):

Typo (milliseconds):

At the end of the 5-mile run, there are these two options:
#Just keep running, just keep running.
*selectable_if (condition < 76) #Oh god, your vision’s swimming.
The option “Just keep running” is always selectable, so the player has no reason to choose “Your vision’s swimming” instead. I would change them like this:
*selectable_if (condition >= 76)#Just keep running, just keep running.
*selectable_if (condition < 76) #Oh god, your vision’s swimming.
In this way, the player is forced to choose “Your vision’s swimming” if their condition is low, which I guess is what you intended to do.

Typo (Your hearing):

Missing capital letter:

Typo (unobstructed):

If you arrive third in the 5-miles run, Tobin arrives in second position and beats you, but Deepal’s comment implies otherwise:

    *elseif (run_position = 3)
      $!{team_he} grins at you. "Damn, it's been a long time since Tobin's been beaten by someone other than me."

Typo (and):

Full stop instead of comma:

This should be < 45:

    *elseif intense > 45
      said you seemed pretty chill."
1-2_secondtraining

Typo (and fall/falling):

Missing capital letter:

Punctuation:

Here you could change (((condition/100)*endurance) < 20) to (((condition/100)*endurance) <= 20), to include when the result is exactly 20:

  #Hit a deep volley back to her. 
    *if ((serve + agility) > 49) and (((condition/100)*endurance) > 20)
      *set coach_relationship %+5
      You react quickly, twisting your body awkwardly in order to give yourself enough space to power a down-the-line volley back at the coach. It's a good shot, with just enough sting in it to make the woman crack a smile. She hits another ball to the same side of the court, but short and close to the net, this time. "Don't stop," She says, amused. "We still have a whole eight minutes to get through. And if I may remind you, we're doing [i]drops[/i] and [i]lobs[/i]."
      
      You stifle a groan, and make an inhuman leap for the ball that she has placed so cruelly – just far enough to make you really lunge for it, close enough for you to know that you [i]should[/i] be able to get it.
      *goto coach_sy_drill 
    *elseif ((serve + agility) > 49) and (((condition/100)*endurance) < 20)
      *set coach_relationship %+3
      You react as quickly as you can, twisting your body awkwardly in order to give yourself enough space to hit a down-the-line volley back at the coach. It's a valiant effort – but you're also tired, and your reaction time is a little slower than usual. The shot ends up being a little wobbly, but goes over the net anyway.

Typo:

Typo (him):

Wrong pronouns for Sam:

Wrong pronoun for Sam:

1-3_challengematch

Here we basically have:
*if endurance > 24
*set condition %-2
*else
*set condition %-2
I guess you didn’t mean to do that.

*elseif first_set_score = "1-1"
  *set first_set_score "2-2"
  *if endurance > 24
    *set condition %-2
    The next two games follow the same tit-for-tat pattern. You're locked in a battle to establish an edge over the other.
  
    You win your service game, and Emerson wins ${team_his}, showing ${team_his} mettle as a serve-and-volleyer. 2-2.
    *goto start_fifth_game_emerson 
  *else
    *set condition %-2
    The next two games follow the same tit-for-tat pattern. You're locked in a battle to establish an edge over the other.
  
    You win your service game, and Emerson wins ${team_his}, showing ${team_his} mettle as a serve-and-volleyer. 2-2.
    *goto start_fifth_game_emerson 
*else
  *set first_set_score "1-3"
  *if endurance > 24
    *set condition %-2
    After losing two sets in a row, you know you'll have to fight hard to stay in it, preventing Emerson from racking too much of an early lead.
  
    Thankfully, your hardwork pays off, and you manage to defend your service game. But Emerson still wins ${team_his} service game eventually, even if you come close to routing ${team_him}. 3-1 to Emerson.
    *goto start_fifth_game_emerson 
  *else
    *set condition %-2
    After losing two sets in a row, you know you'll have to fight hard to stay in it, preventing Emerson from racking too much of an early lead.
  
    Thankfully, your hardwork pays off, and you manage to defend your service game. But Emerson still wins ${team_his} service game eventually, even if you come close to routing ${team_him}. 3-1 to Emerson.
    *goto start_fifth_game_emerson 

Typo:

Here we have:
*if ((serve + agility) > 52)
*elseif ((serve + strength) > 48)
Maybe you meant (serve + agility) > 48?

#Serve big, and use my aerial skills and fast reflexes to hit winning volleys at the net. @{tutorial_mode [[i]S/V[/i] + [i]Agility[/i]]|}
    *set offensive %+3 
    *set first_and_second_game_strat "serve"
    *if ((serve + agility) > 52)
      *set second_set_score "2-0"
      You pile on the points with the biggest weapon in your arsenal, and Emerson simply has no answer. You use your serves to crack Emerson open, then follow-up with quick sallies to the front to exploit open space with sharp volleys. It provides you with opportunities to dominate the net, and you appear to be out-serving and out-volleying Emerson. Beating ${team_him} at ${team_his} own game.
      
      You win the first two games before the junior can even blink. 
      *goto third_game_second_set 
    *elseif ((serve + strength) > 48)
      *set second_set_score "1-1"
      You apply pressure with some reasonably hard serves, and continue to press an advantage with quick sallies to the front to exploit open space with some decent volleys. Emerson is doing the same, though, and the two of you seem pretty even on the serve-and-volley front. 
      
      You both win your respective service games. 
      *goto third_game_second_set 

Here we have:
*if ((strength + endurance) > 52)
*elseif ((agility + endurance) > 48)
Maybe you meant (strength + endurance) > 48?

  #Press Emerson back with consistent groundstrokes and keep the rallies going, relying on my strength and endurance to grind Emerson down. @{tutorial_mode [[i]Strength[/i] + [i]Endurance[/i]]|}
    *set first_and_second_game_strat "endurance"
    *set offensive %-3
    *set tricky %-3
    *if ((strength + endurance) > 52)
      *set second_set_score "2-0"
      You pile on the points with the biggest weapon in your arsenal, and Emerson simply has no answer. $!{team_he}'s struggling to cope with the volume of balls deep to ${team_his} baseline. You use it to force ${team_him} to the baseline, rarely allowing ${team_him} to come up to the net. And in a game played mainly from the back, you're in your element. 

      You win the first two games before the junior can even blink.
      *goto third_game_second_set 
    *elseif ((agility + endurance) > 48)
      *set second_set_score "1-1"
      You apply pressure, content to slowly build up an advantage, relying on your decent power and stamina to force Emerson to make mistakes. It's an effective strategy that wins you the first game, especially since your hard serves put you at an advantage early on.

Typo (intimidation):

If we accept to replay the point after Emerson’s challenge, there is a *rand dice_roll 0 1, but then the dice is never used and we always lose. Was it meant to be a 50% chance to win, maybe?

  #Ah hell. Emerson's desperate, and I can't bring myself to deny ${team_him} this. 
    *set team_relationship %+3
    *rand dice_roll 0 1
    *set ball_was_out "Let go charming"
    You accede with a nonchalant roll of the shoulders. It makes no sense at all, but if Emerson's trying so hard to make it happen, then it'll be kind of cruel to refuse ${team_him} this small mercy. 
    
    There's a ripple of surprise from the sidelines, but handling the dispute graciously certainly does something for your reputation. Most of your teammates toss you incredulous smiles.

    "Thanks, man," Emerson says, relieved, belligerent tone softening. "For what it's worth, I'm not trying to pull one over you—I really do feel it was out." 
    *page_break 
    And so, Emerson takes the point. 40-40, sudden-death. 

    Then, horror of horrors, ${team_he} wins the next one as well, bagging the game. 
    *goto lose_challenge_point

Typo (You struggle/You’re struggling):

The last sentence is repeated twice, and I think it was supposed to be “But ${team_he} needs this set more than you do”:

Emerson shakes ${team_his} head, muttering something to ${team_himself} under ${team_his} breath. $!{team_he} looks shaken by your late come-back. But ${team_he} needs this set more than ${team_he} does, so the pressure's on ${team_him}. But ${team_he} needs this set more than ${team_he} does, so the pressure's on ${team_him}.

Typo (defend):

Typo (figure):

shakes his head? lowers his head?

Wrong pronouns for Coach Jones, he should always be male:

Maybe this choice was supposed to be *if (endurance > 24) and (strength > 24)?

  #Put Emerson on siege with sheer force of will. Pound baseliners at ${team_him} like a battering ram, and keep it up till ${team_he} capitulates. @{tutorial_mode [[i]Strength[/i] + [i]Endurance[/i]]|}
    *set offensive %+3
    *if (endurance > 24) or (strength > 24)

Here the tutorial hint says serve + strength or finesse, but the check is finesse + strength:

#Best defense plan is attack. Bring out the big guns and end the points as early as possible any winner I can rustle up. @{tutorial_mode [[i]S/V[/i] + [i]Strength[/i] or [i]Finesse[/i]]|} 
    *set offensive %+3
    *if (finesse > 24) and (strength > 24)

Here the tutorial hint mentions Finesse, but it’s not used:

*selectable_if ((tricky > 50) and (tactics > 23)) #Pretend to yelp and protect my face, only to swing at the last moment and hit the ball in a short dropshot. @{tutorial_mode [[i]Tactics[/i] or [i]Finesse[/i] + [i]Tricky[/i]]|}

Extra $ symbol:

Maybe this was supposed to increase serious instead of reducing it:

  #Narrow my eyes. "Nothing about that was luck, Reed."
    *set intense %+3
    *set serious %-3
    Your words have a steely edge to them.

Typo:

This part is wrong:
*if first_set_score = “5-5”
*goto deuce_first_set
It should be:
*if first_set_score = “5-4”
*set first_set_score “5-5”
*goto deuce_first_set

    *else
      You'd been able to read the dropshot in Emerson's body language, and it buys you enough time to get to the ball early. 

      When you do, you plant your feet, and unleash all your remaining strength into the swing. Your racket makes solid contact, but it doesn't have enough pace to it—Emerson manages to make a miraculous leap for the ball, and deflects it back to you in a remarkably decent volley. 

      A scuffle for the upperhand ensues, but the junior comes up tops. $!{team_he} collects the point with a beautiful sliced volley to the other side of the court. 

      There's a series of "oohs", then ringing applause.
      
      Emerson moves to the other side of the court for ${team_his} next serve. Which…is a true monstrosity. You swipe at it, but nothing you do can get you back into the game after that; Emerson soon unleashes a game-winning smash right at your feet.  

      You swing, and miss. 
      *if first_set_score = "5-5"
        *goto deuce_first_set

Emerson can win the first set 3-6, but it’s not taken into account here:

*label lose_first_set 
*page_break Lose the first set
*if first_set_score = "4-6"
  Emerson has won the set with a comfortable margin, 6-4. 
  
  *goto first_set_break 
*else  
  Emerson has narrowly won the set, 7-5. 

If you lose the second set 2-6, you end up winnig the second set (lol):

      *else 
        *set second_set_score "2-6"
        *goto win_second_set
1-4_party

Pretty sure this choice should increase Friendly, not decrease it:

      #Send a friendly text, ending with a cheery "Have a good weekend, see you on Monday! :)"
        *set text_rayyan "Friendly"
        *set friendly %-3
        *set rayyan_friendship %+2

Same here:

      #Send a friendly text, ending with a cheery "have a good weekend! see you on Monday :)" 
        *set friendly %-3
        *set text_tobin "Friendly"

Typo (I’m just as):

Typo (with a gruff sentence):

Mike should always be male:

Wrong pronouns for G:

Typo (excuse):

Typo ($!{G_his} smirk):

Typos (Shakespearean, embarrassing):

Typo (raucous):

After sending a flirty message to Tobin, Sam gets mentioned instead:

Typo (inundated):

Typo (There’s):

This was supposed to be Emerson, not G:

Here Emerson calls G twice and I am prompted to answer to a question they never make:

This sentence appears in game as: “The unknown makes…” This happens because if you choose Sam and G’s genders at the beginning of the game, you forgot to add *set G_boy “boy” and *set G_boy “female”, so the variable is still called “unknown”:

Typo (chuckles and shakes):

Typo (entertaining):

Typo (what the whole ruckus is about):

1 Like
1-5_freshmanorientation

Wrong pronouns assigned to G:

    #She turns towards you. (Your hallmate is [b]female[/b])
      *set G_he "he"
      *set G_his "his"
      *set G_him "him"
      *set G_himself "himself"
      *set G_name "Guillaume"

Punctuation:

Typo (androgynous):

It seems strange that both these options give +6% friendship with D. Maybe the second one was meant to be +6% with G?
#Go with Mike. $!{D_name}'s my roommate, after all.
#Stay with the rest of my group. $!{D_name}'ll be fine.

Typo (satisfied):

*if gender = “Male” does not work here. Maybe try with *If gender = “male”:

  #No space is too small for a good ol' man-spread.
    *if gender = "Male"
      You man-spread like the best of your kind. 
      *if ((build = "strong and muscular") or (build = "like a tank")) or (build = "full-bodied and ample")
        You're not exactly a 'small' person, so it's no surprise that your legs and elbows end up pushing against both $!{G_name} [i]and[/i] $!{D_name}.

Same here, these two options don’t appear in game if you’re male, they might work if you use gender = “male” instead:

  *if ((gender = "Male") or (gender = "Non-Binary")) #Wink. "Wouldn't [i]you[/i] like to know?" (♥)
    *set cocky %-4
    *set G_romantic %+2
    *set G_flirt true
    $!{G_name} laughs at this, then rolls ${G_his} eyes. "I highly doubt it needs [i]that[/i] much space." "

    Addie, on ${G_his} other side, chimes in. "Yeah man, jesus. Just move in, or I'll kick you to the floor." 
    
    You grin and oblige. In the end, all of you manage to squeeze into the two benches comfortably enough. 
    *goto order_food_formosa  
  *if ((gender = "Male") or (gender = "Non-Binary")) #Smirk. "What can I say? I pack some heat." (♥)
    *set cocky %+4
    *set G_romantic %+4
    *set G_flirt true
    $!{G_name} laughs at this, then rolls ${G_his} eyes. "That's what they always say."

Typo (is simply too much):

Typo (is truly dizzying):

Typo (reverberating):

Sentence repeated twice:

You savor the moment, watching the stars twinkle in time to your heartbeat. You turn to him, grinning, heart still beating fast.
Guillaume exhales softly. You turn to him, grinning, heart still beating fast.

Typo (dissipating):

Wrong pronoun for Sam:

Typo:

Blush?

Typo:

Amazing?

Typo (apparently):

Sleeping till lunch gives +0 condition:

*label sleep_till_lunch
*set condition + 0
*if condition > 100
  *set condition 100

Typo (extricate):

The parts “all while keeping up your constant barrage of nonsense” and “You’re not entirely sure how that happened, but you’re willing to wager your eloquent speech had something to do with it” should not be here. They were written for the rousing speech choice, but with this choice you’re just shooting them:

  #Shoot the enemy out one by one, systematically, so that there is no escape for any of them.
    *set hall_relationship + 5
    You methodologically track each person down – it's uncanny, the way you seem to know where each person will run, [i]before[/i] they even start running at all.
    
    You pick them off, one by one, pressing your team's advantage, all while keeping up your constant barrage of nonsense. 
    
    Your teammates, or at least—those still remaining—are rallying around you. "Remind me never to mess with you." $!{D_name} says, following closely behind you as you make your way deep into enemy territory.
    
    After some fierce fighting, there's only one girl left on the opposing team. You're not entirely sure how that happened, but you're willing to wager your eloquent speech had something to do with it.

This part is clearly written for when you decide to “Just hide. Maybe they’ll forget I exist”, but it also appears if you choose to do stuff like “Go out, guns a-blazing”, “Shoot the enemy out one by one, systematically” etc. and it doesn’t make much sense in those cases:

          Her eyes widen. She hadn't been expecting such a strong response from someone who'd been literally hiding in a corner behind some tires for the past minute.

          Crazily enough, you actually get her before she gets you. Perhaps it's all that rest – it must've revived some sense of competence in you.

Typo (possession):

Wrong pronoun. Jordan is speaking, not G:

"Eh…" Jordan says, holding up their snack bag once you've returned to your seats. "Anyone want my bag?"

$!{D_name} overhears ${G_him}.

Same here, Jordan is speaking:

"Eh…" Jordan says, holding up their snack bag. "Anyone want my bag?"

$!{D_name} overhears ${G_him}.

Wrong pronoun for G:

2-1_firstweekclasses

If you didn’t meet Sackler during the party, his opinion bar won’t appear when you meet him in class.

Typo (I go just to sit):

[quote]$!{D_name} grins at you. “See, the lengths I go to just to sit next to my favorite roommate?”[/details]

Typo (over):

Typo:

Typo (grumbling):

I guess this was something like “She clearly does not think that tests are meant to be collaborative, but competitive”:

This is the grumble_test version of the surprise test. Here it is never mentioned that we start talking to the boy next to us (it’s stated in the silly_test version), so the part “As the two of you whisper back-and-forth” is confusing:

  Beside you, Addie is scribbling furiously, ignoring your nonsensical comments with a single-minded focus. When you grumble about what a travesty this is, she just shushes you. "I'm enjoying myself," She tells you, and certainly doesn't look like she's lying. Her answers all seem to be crammed and spilling out of the small amount of space alloted to each question. 
  
  As the two of you whisper back-and-forth complaints to each other, Addie just glares at you.

Typo (diligently):

Capital letter:

What?

Typo (wouldn’t):

Wrong pronoun for G:

Typo:

I think this choice was supposed to increase serious:

  #Suck in a breath, and focus intently, waiting till the perfect time to swing. 
    *set serious %-3

I don’t think this choice was supposed to reduce serious:

  #Step forward to attack the ball early, moving forward and letting my weight move [i]through[/i] the ball. 
    *set serious %-3
    *set intense %+3

Here there is no *set misses_drill +1 if you miss, so the final count is wrong:

  *selectable_if (tired_drill < 3) #Carefully aim the ball into the final hoop. 
    *if finesse > 25
      You swing, trying your best to instinctively feel the right amount of push to give the ball. 

      Perhaps it's the thought of a break right after this, or perhaps it's simply your racket technique kicking in at just the right moment. 
      
      The ball flies up and over the net, and lands in the hoop at the far-end of the court. 
       
      Coach Sý nods at you. "Excellent last shot, $!{last_name}." 
      
      You've come to the end of the drill. 
      *goto finish_finesse_drill
    *if finesse > 20
      You swing, trying your best to instinctively feel the right amount of push to give the ball. 

      Your precision and racket technique has always been somewhat erratic – sometimes absolutely brilliant, sometimes a little more questionable. 
      *if dice_roll > 0 
        This time, it's the former. 

        The ball flies up and over the net, and lands in the hoop at the far-end of the court. 
       
        Coach Sý nods at you. "Great last shot, $!{last_name}." 
        
        You've come to the end of the drill. 
        *goto finish_finesse_drill
      *else
        This time, it's the latter, unfortunately. 

        The ball bounces about two or three inches shy of the hoop at the far-end of the court. 

        Coach Sý nods at you. You've come to the end of the drill. 
        *goto finish_finesse_drill
    *else
      *if dice_roll > 0 
        You swing, trying your best to instinctively feel the right amount of push to give the ball. 

        Unfortunately, even though you're concentrating hard, you've never quite been the most accurate – and now, already slightly fatigued, you hit the ball slightly wide. 

        The ball bounces about two or three inches shy of the hoop at the far-end of the court. 

        Coach Sý nods at you. You've come to the end of the drill. 
        *goto finish_finesse_drill
      *else
        You swing, trying your best to instinctively feel the right amount of push to give the ball. 

        You've never quite been the most accurate – but something about having everyone watch you while you do this drill seems to pull out all the skill and luck from you. 

        The ball flies up and over the net, and lands in the hoop at the far-end of the court. 
       
        Coach Sý nods at you. "Great last shot, $!{last_name}." 
        
        You've come to the end of the drill. 
        *goto finish_finesse_drill

If you receive a B for the surprise test (*if surprise_test_results = 3), this sentence is wrong (it should say B+student):

can’t add the last two chapters because I’m out of characters and can’t post consecutive replies :sweat_smile:

1 Like

@Isabel You are truly the best. :heart: Would you be interested in reading the next update a before general release? I’m nowhere near ready yet, but let me know if you’re down :joy:

2 Likes

Sure, I’d be happy to help! Last part btw. I hope the reports here are correct, the code for the matches is not exactly easy to follow :sweat_smile:.

2-2a_maxchallengematch

Typo:

The tutorial hint says Serve, but it’s Serve and Strength:

  #Sensing Max's nervousness, I go all-out to unsettle ${team_him} immediately. Serve flat and [i]hard[/i]. @{tutorial_mode [[i]Serve[/i]]|}
    *set intense %+3
    *set Offensive + 1
    *if (serve > 25) and (strength > 23)

Jacks keeps coming to help Max during the match:

  #Sprint up and hit a lob to buy myself some time to get back in the game. @{tutorial_mode [[i]Agility[/i] + [i]Finesse[/i]]|}
    *if (agility > 26) and (finesse > 26) 
      You sprint, then lunge. Out of the corner of your eye, you see ${team_his} jaw drop as you actually manage to get there and execute the shot. 

      Out of the corner of your eye, you see the Jacks's eyes widen as you make contact. $!{team_he} starts backpedaling.

      You know as soon as you hit the ball that with that lob, you'll have plenty of time to recover back to the center. The tennis equivalent of a stunning uppercut that gets a boxer off the ropes. You've managed to fight your way out of the corner.
      
      Out of the corner of your eye, you see the Max's eyes widen as you make contact. $!{team_he} backpedals frantically, cursing. $!{team_his} return ends up being decent, but ${team_he} has lost ${team_his} offensive momentum.

I think there should be *rand dice_roll 0 1 here at the beginning:

*label open_up_space_max
*choice
  #Go for it: a hard down-the-line volley, so Max has no time to cover the empty space. @{tutorial_mode [[i]S/V[/i]]|}
    *set offensive %+3
    *if serve > 23
      You whip the ball back in a stunning volley. 
      
      It flies straight and true, landing in the space that Max had left open in the other side of the court.  

      The other freshman has no answer to that.
      *if current_game_score = "15-0"
        *set first_set_score_max "1-0"
        You clinch the first game. 
        *goto secondgame_firstset_max
      *else
        You've successfully defended one gamepoint. 40-40, sudden death. 
        *if dice_roll = 0
          *set first_set_score_max "1-0"
          *line_break 
          Your serve doesn't disappoint. Off to a strong start, you hit ball after ball at Max, who refuses to give in. It takes a while, but eventually a counter lob gets the better of Max. 
          
          You clinch the first game. 
          *goto secondgame_firstset_max

Max is a freshman:

Here the tutorial hint is missing:

  *selectable_if (agility > 23) #$!{team_his} mistake. Twist, reflexes razor-sharp, to take the ball in mid-air. 
    *if serve > 25

The tutorial hint says Finesse + Tactics, but the calculation is Finesse or Tactics:

*if ((tactics > 25) or (finesse > 25)) #Use the pace on it to direct it back across the net, capitalizing on the fact that it's headed straight at me. @{tutorial_mode [[i]Finesse[/i] + [i]Tactics[/i]]|}

The *set second_set_score_max “1-3” should not be there:

*if second_set_score_max = "1-0"
  *set second_set_score_max "3-1"
  *set second_set_score_max "1-3"
  *page_break ${second_set_score_max}
  *goto fifthgame_secondset_max

Typo (hitting):

Here the scores were either 1-3 or 3-1, so they should become 1-4 or 3-2 (not 2-3).

    *else
      Max defends against wave after wave of your attacks, pulling off some incredible gets. $!{team_he} soon creeps toward game-point.

      $!{team_he} lunges for a ball that seems to already be zipping towards the chain link fence at the back of the court, and manage to muscle it back.

      Unbelievable. You lunge, but miss. Max takes the fifth game. 
      *if second_set_score_max = "1-3"
        *set second_set_score_max "1-4"
        *goto sixthgame_secondset
      *else
        *set second_set_score_max "2-3"

Here we have second_set_score_jacks instead of second_set_score_max:

  #Be prudent and safe – keep trading shots with Max until I sense an opening to exploit. @{tutorial_mode [[i]Endurance[/i] + [i]Tactics[/i]]|}
    *set match_energy - 1
    *set condition %-2
    *set offensive - 1
    *if ((endurance + tactics) > 44) 
      You decide to play the long game, content to feed the other freshman a steady sequence of groundstrokes.

      Your patience pays off, forcing a mistake off Max after pushing ${team_him} left, then right, with some well-hit cross-courts. $!{team_he} hits a hard ball far out, past the baseline. The ball clangs against the chain-link fence, and the game goes to you. 
      *if second_set_score_jacks = "1-3"
        *set second_set_score_jacks "2-3"
        *goto sixthgame_secondset
      *else
        *set second_set_score_jacks "4-1"
        *goto sixthgame_secondset
    *else
      You decide to play the long game, content to feed the other freshman a steady sequence of groundstrokes.

      Max does the same, and after a while, you're starting to think this might not be a very good idea after all – or at least, not a particularly entertaining one. When you at last try something slightly more inventive, ${team_he} punishes you by cutting it off in a dropshot, winning the game a couple of shots later. The game goes to Max. 
      *if second_set_score_jacks = "1-3"
        *set second_set_score_jacks "1-4"
        *goto sixthgame_secondset
      *else
        *set second_set_score_jacks "2-3"
        *goto sixthgame_secondset

After you finish the fifth game (*label fifthgame_secondset_max), there is an automatic narration (*label sixthgame_secondset) where Max wins the sixth game and you win the seventh, but then the seventh game is called fifthgame_secondset (???) and the scores are all messed up after that.

Typo (Neither you nor Max):

Typo (the tennis Max is playing is still):

Here Max wins, but you get the point:

  Max wins point after point until the game is ${team_his}.
  *if second_set_score_max = "4-3"
    *set second_set_score_max "5-3" 
    *goto lastgame_secondset
  *else
    *set second_set_score_max "4-4" 
    *goto lastgame_secondset

Typo (Unbelievably):

Typo (its):

Typo (it’ll be out):

Typo (fifth game, not fourth):

You get an early head-start in the third set, going up 3-1 in games. 

The fourth game is proving tricky though, what with a heartbreaking double-fault from you at 30-30, allowing Max to take the lead and eventually win the game. 3-2.

Typo (clips):

Here you win the game, but then it goes to lose_tenth_thirdset (it happens if you choose “Go big or go home” or “Trick serve” with dice roll = 1):

        The point is hard-fought. Out of sheer dumb luck, Max's next shot bounces just [i]slightly[/i] out. You win the tenth game.
        *goto lose_tenth_thirdset

Typo (best):

Typo (loose):

Max played against me, not Emerson:

It should say “in the No. 6 spot”, not 5:

*elseif Player_rank = "No. 6"
  Heck yes, you think, falling asleep with a smile on your face. The match had certainly tired you out. 

  You end up dreaming about playing in your first match of the season in the No. 5 spot.
2-2b_jackschallengematch

Jacks is an all-court player:

Typo (diagonals):

Typo (making):

Wrong tutorial hint, it’s agility and endurance:

    #If Jacks wants to play ball, we'll play ball. Let's see if ${team_he} can outrun and outlast me. @{tutorial_mode [[i]Endurance[/i]]|}
      *set tricky %-3
      *set offensive %-3
      *if (agility > 28) and (endurance > 28)

Typo (rallies) and at the end there is *goto win_five_games_firstset instead of *goto lose_five_games_firstset:

      *else
        For some time, you successfully keep the raliles going for as long as Jacks wants to have them. You're fast enough to keep pace with ${team_him}, and for a while, there's only the sound of rubber trainers and the ball getting whacked around the court. 
      
        However, you're also starting to tire, and perhaps you're not used to being this defensive. Jacks is putting you under constant pressure, forcing you to bust out nearly-impossible gets. 
  
        You manage to claw back one point, but Jacks soon mops up the game with a powerful smash that you can't quite reach. 
        *goto win_five_games_firstset

The *rand dice_roll 0 1 is missing at the beginning:

*label deuce_firstset_jacks
*if match_energy > 23
  *set match_energy - 2
  *set first_set_score_jacks "7-5"
  *page_break Start the eleventh game
  Thankfully, as tired as you are, the thought of [i]losing[/i] this set after all you've been through fills you with a fire that appears to bring you past the point of exhaustion. 

  You take the next game, going up 6-5. 

  The final game is a rollercoaster of emotions, with Jacks going up early in the game only to fizzle out and allow you to clinch the setpoint. 7-5.
  *goto win_firstset_jacks
*elseif match_energy > 18
  *set match_energy - 2
  *set condition %-4
  *if dice_roll = 1
    *set first_set_score_jacks "7-5"
    *page_break Start the eleventh game
    Thankfully, as tired as you are, the thought of [i]losing[/i] this set after all you've been through fills you with a fire that appears to bring you past the point of exhaustion. 

    You take the next game, going up 6-5. 

    The final game is a rollercoaster of emotions, with Jacks going up early in the game only to fizzle out and allow you to clinch the setpoint. 7-5.
    *goto win_firstset_jacks
  *else
    *set first_set_score_jacks "5-7"
    *page_break Start the eleventh game
    You're truly ready to drop. The first set has been gargantuan so far, and the thought of having to play one, maybe two more sets sends a shiver down your spine. 

    You're losing focus, and you know it. You lose the next game, going down 6-5. 

    The final game is a rollercoaster of emotions, with you going up early in the game only to be unable to hold your advantage. Jacks clinches the game, and the set. 7-5.
    *goto lose_firstset_jacks

During 1-1_meetcoaches it’s stated that “Despite only having been a freshman last season, ${team_he}'d played at No. 4 position”, but here it’s said that he was the No. 5:

The tutorial mode hint here should be tactics + finesse or strength:

  *if (tactics > 27) #Use the pace on it to angle it back across the net, capitalizing on the fact that it's headed straight at me. @{tutorial_mode [[i]Tactics[/i] + [i]Finesse[/i]]|}
    *if finesse > 27
      *set second_set_score_jacks "2-1"
      You bring your racket face up and aim it just-so. It's a smart move, one that allows you to benefit from a sticky situation. 
      
      With very little effort on your part, the ball goes flying back across the net, and you buy yourself enough time to recover. You're back on even ground. 
      
      The next few shots are simple groundstrokes traded between you like a gambit. 
      
      Eventually, Jacks bites, and attempts a slightly impatient winner. It tangles with the net. You win the point, and soon clinch another with a hard deep ball to the backhand corner. 
      
      Third game's in the bag.
      *goto secondgame_secondset
    *elseif strength > 25
      *set second_set_score_jacks "2-1"
      You bring your racket face up and hold it firm. It's a smart move, one that allows you to benefit from a sticky situation. 
      
      You add an extra push, the ball goes flying back across the net, and you buy yourself enough time to recover. You're back on even ground. 
      
      Jacks makes a small sound of displeasure, then goes for a much harder shot to match yours. This time, it tangles with the net, and you win the point. Soon, you clinch another with a hard deep ball to the backhand corner. 
      
      Third game's in the bag.
      *goto secondgame_secondset

In this section, this part is wrong (it happens 4 times):
*elseif second_set_score_jacks = “4-3”
*set second_set_score_jacks “5-2”
It should be:
*elseif second_set_score_jacks = “4-2”
*set second_set_score_jacks “4-3”

    *elseif (agility > 26) and ((match_energy < 18) or (endurance < 24))
      You're still moving back when Jacks hits the sliced dropshot. 

      You lurch forward, cursing your gullibility. You're usually fast, but you're also [i]tired[/i], and it takes a split-second longer to change directions. 

      You get the ball over the net, but Jacks slams the ball into the other side of the court next, and there's nothing you can do about it. 

      $!{team_he} wins the game; a cut-and-dry gamepoint clinched. Jacks lets out a short, sharp shout, clenching ${team_his} fists – a pivotal win for ${team_him}.  
      *if second_set_score_jacks = "3-3"
        *set second_set_score_jacks "3-4"
        *goto eighthgame_secondset_jacks
      *elseif second_set_score_jacks = "4-3"
        *set second_set_score_jacks "5-2"
        *goto eighthgame_secondset_jacks 
      *else 
        *set second_set_score_jacks "2-5"
        *goto eighthgame_secondset_jacks
    *else
      You're still moving back when Jacks hits the sliced dropshot. 

      You lurch forward, cursing your gullibility. And… you're not fast enough – it doesn't help that you're [i]tired[/i], and your motions are more sluggish than usual as you struggle to change directions. 

      You get the ball over the net, but Jacks slams the ball into the other side of the court next, and there's nothing you can do about it. 

      $!{team_he} wins the game; a cut-and-dry gamepoint clinched. Jacks lets out a short, sharp shout, clenching ${team_his} fists – a pivotal win for ${team_him}.
      *if second_set_score_jacks = "3-3"
        *set second_set_score_jacks "3-4"
        *goto eighthgame_secondset_jacks
      *elseif second_set_score_jacks = "4-3"
        *set second_set_score_jacks "5-2"
        *goto eighthgame_secondset_jacks 
      *else 
        *set second_set_score_jacks "2-5"
[...]
    *else
      And your hunch is right. 
      
      Jacks hits a sliced dropshot. You sprint for it, glad that you had already been leaning forward slightly. 

      You're still not fast enough. A sliding, scraping lunge takes you to the ball, but you only just barely get it over the net. 

      Jacks slams the ball into the other side of the court next, and there's nothing you can do about it. 

      $!{team_he} wins the game; a cut-and-dry gamepoint clinched. Jacks lets out a short, sharp shout, clenching ${team_his} fists – a pivotal win for ${team_him}.
      *if second_set_score_jacks = "3-3"
        *set second_set_score_jacks "3-4"
        *goto eighthgame_secondset_jacks
      *elseif second_set_score_jacks = "4-3"
        *set second_set_score_jacks "5-2"
        *goto eighthgame_secondset_jacks 
      *else 
        *set second_set_score_jacks "2-5"
        *goto eighthgame_secondset_jacks 
[...]
    *else
      And you're right. Your keen eye for detail certainly hasn't let you down this time.
      
      Jacks hits a sliced dropshot. You sprint for it, glad that you had already been leaning forward slightly. 

      Unfortunately, you're [i]still[/i] not fast enough. A sliding, scraping lunge takes you to the ball, but you only just barely get it over the net. 

      Jacks slams the ball into the other side of the court next, and there's nothing you can do about it. 

      $!{team_he} wins the game; a cut-and-dry gamepoint clinched. Jacks lets out a short, sharp shout, clenching ${team_his} fists – a pivotal win for ${team_him}. 
      *if second_set_score_jacks = "3-3"
        *set second_set_score_jacks "3-4"
        *goto eighthgame_secondset_jacks
      *elseif second_set_score_jacks = "4-3"
        *set second_set_score_jacks "5-2"
        *goto eighthgame_secondset_jacks 
      *else 
        *set second_set_score_jacks "2-5"
        *goto eighthgame_secondset_jacks 

Typo (bluffing):

Typo (trickery):

Typo (help):

Typo (mistake):

Typo (your):

Typo (keep):

I think here it’s supposed to be *goto_final_deuce_secondset instead of *goto final_test_second test:

  *else
    *set second_set_score_jacks "5-5"
    *page_break 
    You make it happen. After a miraculous get, you haul yourself back onto your feet, and scramble back to centre of the court. 
    
    Your entire body is buzzing, and though Jacks sends you a reasonably good shot, you manage to hit a curling winner into the back corner. Immaculate.

    Deuce. 
    *goto final_test_secondset

Here it should be *set second_set_score_jacks “5-6”:

  *else
    *page_break 
    *set second_set_score_jacks "6-5"
    Jacks clinches the next game, 6-5. Looks like you'll need to fight once more to put the game to a tie-breaker. 
    *goto final_test_secondset

You can reach *label final_test_secondset with a score of 5-6, but that score is not taken into account when calculating the outcomes.

This should have *goto lose_tenthgame_thirdset instead of *goto win_tenthgame_thirdset:

      *else
        The sophomore struggles to return the shot; ${team_he} hadn't been expecting that much power, and only barely gets to it. 

        Unfortunately, it's not enough to clinch you the game, as Jacks soon claws back ${team_his} advantage with a flurry of shots, then gets the better of you completely with a dropshot. 
        *goto win_tenthgame_thirdset

We’re in the third set here, but one of the outcomes brings you to back in time to the second set (*goto final_test_secondset):

*label win_tenthgame_thirdset
*if third_set_score_jacks = "5-3"
  *set third_set_score_jacks "6-3"
  *goto win_Jacks_challengematch
*elseif third_set_score_jacks = "5-4"
  *set third_set_score_jacks "6-4"
  *goto win_Jacks_challengematch
*elseif third_set_score_jacks = "3-5"
  *set third_set_score_jacks "4-5"
  *goto final_test_secondset
*elseif third_set_score_jacks = "4-5"
  *set third_set_score_jacks "5-5"
  *goto last_game_thirdset

Here if the score is 5-5 you go to either 6-5 or 5-6, depending on your match_energy, but the score is not updated…

*label last_game_thirdset
*page_break ${third_set_score_jacks}
*if third_set_score_jacks = "5-5"
  Deuce. 
  
  Sucking in a deep breath, you try to get a grip. Here's where you make your stand.

  *if match_energy > 19
    It helps, somewhat, that you're not completely dead on your feet yet. After clinching the next game, you're at 6-5. 
    *goto final_test_thirdset
  *else
    It doesn't help that you're almost completely dead on your feet. After Jacks clinches the next game, you're at 5-6. 
    *goto final_test_thirdset

… and during the final_test_thirdset you’re still at 5-5, instead of 6-5 or 5-6, so you basically play the eleventh game twice, nullifying the previous match_energy check:

*label win_final_test_thirdset 
*if third_set_score_jacks = "5-4"
  *set third_set_score_jacks "6-5"
  *goto win_Jacks_challengematch
*elseif third_set_score_jacks = "5-5"
  *set condition %-4
  *set third_set_score_jacks "7-5"
  You see the light at the end of the long, long tunnel. 6-5. 
  *page_break Start the twelfth game
  Pumped up, you start the next game with a service ace. Jacks tries to stay with you, but it seems there's no stopping you now. 
  
  Something has clicked into place, and even the usually-calm sophomore groans a little when you pull off another overhead smash to win the game and set. 
  *goto win_Jacks_challengematch
*else
  *set condition %-4
  *set third_set_score_jacks "5-7"
  You see a glimmer of hope. 5-5, deuce. 
  *page_break Start the eleventh game
  Alas, something seems to have clicked for the sophomore – there's no stopping ${team_him} now, it seems. 
  
  Jacks is playing with absolute panache – busting out impossible winners with alarming frequency. $!{team_he} wins the next game, going up 6-5, looking set to take the final game as well. 
  
  It's the best you've seen ${team_him} play all match. You suppose it's true, what they say about the best players being able not just to win points, but win points when they matter the [i] most[/i]. 
  
  $!{team_he} deflects a shot you could've sworn would be a winner, then follows-up with a drop-shot winner to win the game and set. 
  *goto lose_Jacks_challengematch 

*label lose_final_test_thirdset 
*if third_set_score_jacks = "5-4"
  *set third_set_score_jacks "5-5"
  5-5, deuce. The final game you need to end the match has once again eluded you, and you know you've squandered many good opportunities today. Jacks is back on even ground.
  *page_break Start the eleventh game
  Alas, something seems to have clicked for the sophomore – there's no stopping ${team_him} now, it seems. 
  
  Jacks is playing with absolute panache – busting out impossible winners with alarming frequency. $!{team_he} wins the next game, going up 6-5, looking set to take the final game as well. 
  
  It's the best you've seen ${team_him} play all match. You suppose it's true, what they say about the best players being able not just to win points, but win points when they matter the [i] most[/i]. 
  
  $!{team_he} deflects a shot you could've sworn would be a winner, then follows-up with a drop-shot winner to win the game and set. 
  *goto lose_Jacks_challengematch
2 Likes

Can I say I love this game sooooo much? And the match between MC and Jack has so many possible strategies and routes! I cannot imagine the huge amount of work and the effort you put in this game​:sob::sob: Great game!

9 Likes

I feel bad for Blake, having to play Rayyan as the bottom seed, even though it’s a friendly :sweat_smile:

2 Likes

I think you you should make cheat option available to make the playtest to be more easier to see more option story outcomes

3 Likes

@burninglights i think this idea have some merit, some cheat options to max the player stat endurance or strength or anything is good to see all the choice results in the story more easily on this playtest🤔

1 Like

I’m really enjoying the sociology class. I have to say though, coming from a school system where 75% can sometimes get you the top grade, the grading system is going to take a little getting used to.

1 Like

Progress update [cross-posted to Tumblr]

Unfortunately, my full-time job has been kicking my ass the past couple of weeks, mostly because I’m going on vacation leave most of December to visit my family and partner. This means that all the remaining time I have at night has been spent on brainless nonsense, but I did make some big strides on Merry Crisis, my other WIP.

Completed: Photography club scene (with G) and the café scene with Tobin, adding up to roughly 7-8k words.

Goals

  • For the end of November: Add in a function to skip the tennis matches with a password, to make replays for the story slightly more gratifying (i.e. you won’t have to speed-read the matches anymore.
  • For the end of December: Add two cheat functions for ko-fi supporters - allow all choices to succeed (beast mode), or display stat check requirements for each choice (crystal bal mode).
  • For the end of January: Early-release of the update for supporters/beta-testers. Includes weekend club activities and café hangout plus friendly doubles matches, partnering Rayyan / Tobin.
  • For the end of Feb: Tweak based on beta-tester feedback, and release the update to public.

@Isabel Again, can’t thank you enough!

@lilachu Thank you, glad you enjoyed it - the branches / scenes I write for each tennis match are bordering on absurd, hence the occasional error or bug, but so happy to hear that it’s paid off!

@Cloudy HAHA!! Absolutely, poor Blake was quaking in their shoes.

@Zen1 @Saf11 Working on it :slight_smile:

36 Likes

I just wanted to say that I really like how your relationship stats with your dad and Sam go down over time. It’s sad (and makes achieving everything in the game harder) but it reflects how life is.

17 Likes
Screenshot

This screenshot comes from the Jacks challenge match. Is the highlighted part supposed to be that way (as in the MC just makes a lucky guess), or should it be “tactics > 27” instead, to show that they know what Jacks is likely to do next?

Screenshot 2

The results here don’t account for the possibility of winning or losing the first set 6-3, so if the score was 6-3, it says that it was 7-5.

Another thing is that condition doesn’t seem to be going up when the fairmath is used, but it still goes down.

Party

I don’t think the truth or dare game in the party scene is working properly.
Since the game makes you text one of your teammates to get added to the group chat, they will always be the last person you texted, like in this screenshot here:

This means that the part where you see your dad’s message never shows up.

The next slide is this:

Sam’s text here knocks out his first text from the top 3, so it doesn’t change anything.

After that, we get to choose who to marry, but Mike isn’t there despite being in the top 3 texts, and the MC’s dad is there despite having not been mentioned before.

I think the best way to resolve this would be to have the original 3 (from least to most recent) be Mike, Tobin/Rayyan, then MC’s dad, then when Sam’s text comes in, it knocks Mike’s out, so the 3 when you’re picking are the options in the last screenshot.

Also, for some reason, this text shows up when I choose to send a flirty message to Sam, even though I haven’t kissed him -

I can see that you separated the two in the code, so I’m not sure why that happened.

5 Likes

I like the idea but I’d also say it’s a bit dramatic given the timeframe involved. It’s like two or three weeks after you leave home. If that. There’s a lot of content but it doesn’t cover a lot of time. That shouldn’t represent some kind of crazy “you don’t send me flowers anymore” flux.

1 Like

I get what you mean, but it’s a really small decrease iirc so I think it’s alright.

1 Like

@Cloudy
Ah, thank you so much for the detailed comments! They were really helpful. For the first one, the option is meant to be something like a “I have a hunch and I don’t know why” kind of situation, hence (tactics < 27) → if you’re more tactical, you’ll be given an option that sounds smarter.

For the second screenshot, thanks for the spot! And finally, your analysis of the party scene makes sense, I had forgotten that your father has essentially no chance to shine - as Sam’s text will come in regardless, I think I’ll have to pick between Mike and dad. I’m thinking… Mike…? Thanks for letting me know that you got the ‘kiss’ text for Sam, I’ll double-check the code!

As for the fairmath - I’m probably going to have to change all the condition increases/decreases to pure mathematical + - instead, since all the changes are so minimal.

Finally, @phimseto and @cloudy - yeah, the aim is to have Sam’s r’ship bar go down really gradually over time, so that it does matter if you consistently choose to do something else instead of texting/calling/thinking about Sam, but not if you make an effort. Of course, it’s not meant to cause some drastic reaction from Sam if you don’t call once - it’s more a mechanism to reflect the reality that sometimes best friends do drift apart over time.

Once again, I’d really like to thank everyone for reading/supporting CT:OS, and hope everyone’s having an awesome holiday season (if you have it where you are!)

25 Likes

Oh I definitely agree that it should go down. I have very distinct freshman year memories of being called out for being bad about staying in touch. It just didn’t start happening until late October or so. With my parents, it was admittedly earlier. :smiley:

1 Like