Strange skipping over scenes

So, I am running through my book, but for what ever reason this keeps skipping over, or not going to, the correct scene.
Like, I have 2 choices that are supposed to go a label, and they send me somewhere elce. hre is the code, might make things easier.

*choice
	*hide_reuse #"What's your name?"
		*set n_relationship %+3
		*set friendly %+10
		*set stoic %-10
		*set heart %+10
		*set mind %-10
		*set expressive %+10
		*set reserved %-10
		*set n_throaty true
		"You want to know my name, do you?" The ${n_person} asks, a smirk clear in ${n_their} voice.

		"Yeah?"

		"Well, I can't falt you for that."
		*goto n_conversation_name
	#"Could I have your name?"
		*set mind %+10
		*set heart %-10
		*set stoic %+10
		*set friendly %-10
		*set n_relationship %+3
		*set reserved %+10
		*set expressive %-10
		"O, you want to know my name, do you?"

		"Yeah, that's what I said."

		"Well, you did ask nicely, so I will tell you."
		*goto n_conversation_name
	#"Could you?" I gesture at my current garment, "thank who ever gave me this?"
		*set heart %+10
		*set mind %-10
		*set n_relationship %+3
		*set stubborn %+10
		*set easyGoing %-10
		*set cautious %+10
		*set impulsive %-10
		*set thank_housecoat true
		*gosub_scene highest_calc
		"No."

		"Why not?"

		"Because ${l_name} and ${t_name} say in their own way that thanking yourself for something is stupid, and frankly, I agree most of the time."

		"Wait, you gave me this?"

		"No, the ${n_person} walking on your other side who has said fuck all this entire time gave it to you, of course." The sarcasm in the ${n_person}'s voice is obvious.

		"So, yes?"

		"Did you here the sarcasm in my voice?" I nod.

		"Granted,
		*goto n_height
	#"Please thank who ever gave me my housecoat." I say.
		*set n_relationship %+3
		*set reserved %+10
		*set expressive %-10
		*set intimidating %+10
		*set charming %-10
		*set stoic %+10
		*set friendly %-10
		*set mind %+10
		*set heart %-10
		*gosub_scene highest_calc
		"You want to know this most pressing of facts, why, exactly?"

		"They could have given me nothing, as far as I can tell. They chose to not."

		"So, that's why you want to thank them?"

		"Yes."

		"Well, ${l_name} and ${t_name} always say that thanking ones sself for something is stupid, and I agree, so no."

		.

		"You gave me the housecoat?"

		"No, the ${n_person} on the other side of you, who has said not a goddam word since we started, gave it to you."

		I walk in silence.

		"Though,
		*goto n_height

The 2 choices, the ones that are supposed to go to n_height, skip, and go directly to n_name, which happens to be right below the n_height lable for what ever reason, and I can’t figure out what’s going on. All the labels and gotos are correct as far as I know, so. Yeah, putting it up here so 1 of you can take a look and check. Anyway, you all have a good night/day/evening/what ever time-zone your in now, I’m going to eat Pizza.

Ah, I think you forgot the indentation in the flavourtext

like it should look like this

*choice
...#option
......text
......
......text
......*goto label

or another free line if you want one before continuing with the text. You won’t need extra indentation in the gosub (unless there are *ifs in there)

Could you say which line has the incorrect indent? Just ran through the choices and the text of the label, and all seems well from my end. However, here is the code of the label n_height for context:

*label n_height
*gosub_scene highest_calc
*if ((mc_height ="very short") or (mc_height ="short"))
	it's a little large for you, now I look you over.
	*goto n_answers2
*elseif(mc_height) ="average"
	it does  fit rather well on you, so that's always nice for me." The smirk in the ${n_person}'s voice is evident.
	*goto n_answers2
*elseif ((mc_height ="tall") or (mc_height ="very tall"))
	it's obviously too small for you, not that I'm complaining, mind.
	*goto n_answers2

Still not sure why it seems to be skipping that hole label, and going to the next one down, though.

What is the value of mc_height at the point in which the code goes to the height label?

Going by the copied text all empty lines miss their indents.

And what does the sub look like?

Sub? You mean the gas in?
Normally I set it to tall, there is very short, short, average, tall, and very tall.
I tried taking the Gossum out and putting it in the different choices, but that doesn’t seem to change anything. It’s almost like the code doesn’t see the label, and skips down to the next one, that being the end underline name label, which is the destinations for the first two choices. Also, aren’t all empty lines just supposed to be empty? The code skips them, or uses them as spacers?

Underneath *label n_height write the following line

Mc current height is ${mc_height}

Then run the code and see what the value of mc height is

1 Like

Generally for things like this, I’ll skip the *elseif command and use an *if command by itself

The game will cycle through the variables and the answers until it finds which variable matches what was inputted with “mc_height,” and having a *goto afterward will ensure it skips to the section that follows.

That, and I think, if I remember correctly, if you are using *elseif, then it would be:

*if
*elseif
*else

The last one in that tree would *else, as the rest above it don’t match. I think. Been a bit since I looked at the *elseif command tree. I don’t use them all that often. I also tend to have all my heights and character appearance options in separate scene files for my own peace of mind, though.

Fixed now, I had the mc_height set up with numbers below, like:

*set mc_height "short"
*set mc_height 1

Somehow managed to change the variable instead of put another thing to call it with. Now just need to figure out what’s what with the highest_calc.
Here is a sample of the code as I have it now, even when the relationship stat for 1 of the other 3 is higher, it still says the first RO in the list for some reason:

I yelp, tugging my arm back out of reflex as my head automatically turns towards
*if (highest_relationship) ="t"
	*goto t_safety
*elseif (highest_relationship) ="l"
	*goto l_safety
*elseif (highest_relationship) ="n"
	*goto n_safety
*elseif (highest_relationship) ="d"
	*goto d_safety
*label t_safety
${t_name},
*goto bloodwatch
*label l_safety
${l_name},
*goto bloodwatch
*label n_safety
${n_name},
*goto bloodwatch
*label d_safety
$}d_name},
*goto bloodwatch

Think it might be something to do with the highest_calc code itself, I can put the code I have in that file on here if you need/want it.

Also, you could run another sub before that to set a variable for the highest relationship to just have one bit there.

I yelp, tugging my arm back out of reflex as my head automatically turns towards $!{highest_rel_name},
1 Like

Do you put that string in to replace the *if stuff, or keep it, but put the string above?
Would have just had the highest_calc without the *goto’s, but it kept skipping it for what ever reason.

What do you mean with ‘string’ (sorry I’m a little scatterbrained today).

Could you say to WHERE it skips to, because it feels it really feels it’s either rogue indent or a variable not accounted for.

So I set it all up, and ran it, but the game skips over the variable. It’s there, it’s just not a knowledge Ing it. I’m going to put up the highest online Calc code to see if maybe that’s the reason? Because I can’t think of another reason why it’s skipping it.

Here is the calc code, as I think that might be the issue here:

*label highest_relationship_calc
*temp relationship_counter 1
*label relationship_calc_loop

*if Relationship_counter <= Total_relationships
    *if Relationship[Relationship_counter] > Highest_relationship_stat
        *set Highest_relationship_stat Relationship[Relationship_counter]
        *set highest_rel relationship_name[Relationship_counter]
    *set Relationship_counter + 1
    *goto Relationship_calc_loop
*return


Currently, the text/code reads:

"Get up!" This ${j_name} snaps, now right in my face as she grabs my left arm and starts to tug. "I don't have the time or patience to answer questions right now. Ask when we get you out of here."
I yelp, tugging my arm back out of reflex as my head automatically turns towards
$!{highest_rel}, in the hope that ${t_they} can please tell me what the hell is going on now? Sometimes, like right now, I really hate being blind.


When I run it, it’s reading as:

“Get up!” This ${j_name} snaps, now right in my face as she grabs my left arm and starts to tug. “I don’t have the time or patience to answer questions right now. Ask when we get you out of here.”
I yelp, tugging my arm back out of reflex as my head automatically turns towards
in the hope that ${t_they} can please tell me what the hell is going on now? Sometimes, like right now, I really hate being blind.
I am wondering if it has to do with not being tied to the relationship variables for what ever reason perhaps?
Also, here are the rel variables I have in startup as of now, because now I am wondering if that might have something to do with it, perhaps:

*create highest_rel ""
*create highest_relationship_stat 0
*create rel_name_1 "t"
*create rel_1 0
*create rel_name_2 "l"
*create rel_2 0
*create rel_name_3 "n"
*create rel_3 0
*create rel_name_4 "d"
*create rel_4 0
*create total_relationships 4


try putting the *temp relationship_counter 1 as a create into startup and delete the *temp

also, I think you need a few more symbols for the check, but i’m not entirely certain.

Are label names case sensitive? Because the case in the label and goto don’t match.

Yeah, I believe they are.
Think I fixed that now, though now for what ever reason it’s telling me that there is an invalid variable, but I can’t see the thing. Here is the arror/code:

“highest_calc line 4: invalid variable relationship_1”
Thing is, I can’t find the relationship_1 variable at all.

*label highest_relationship_calc
*label relationship_calc_loop
*if Relationship_counter <= Total_relationships
*if relationship[Relationship_counter] > Highest_relationship_stat
        *set Highest_relationship_stat Relationship[Relationship_counter]
        *set highest_rel relationship_name[Relationship_counter]
    *set Relationship_counter + 1
    *goto Relationship_calc_loop
*return

Code, if I somehow missed the variable.
Also, thanks for all the help with all this stuff.

I believe the variable is in this line
*if relationship[Relationship_counter] > Highest_relationship_stat
or this line
*set Highest_relationship_stat Relationship[Relationship_counter]
if the ”Relationship_counter” is 1, depending on which case is correct (there is a mismatch again).

You renamed all your variables to ‘rel_name_x’ and ‘rel_x’ - you need to update the highest relationship calc loop to use your updated names:

*label highest_relationship_calc
*label relationship_calc_loop
*if Relationship_counter <= Total_relationships
*if rel[Relationship_counter] > Highest_relationship_stat
        *set Highest_relationship_stat Rel[Relationship_counter]
        *set highest_rel rel_name[Relationship_counter]
    *set Relationship_counter + 1
    *goto Relationship_calc_loop
*return

Might have missed some and depends what other changes to variable names you made too.

That seems to have cleared that up, thanks. Didn’t think it took the relationship_counter or what ever that one was as a single variable. Still seems to be skipping though, which I am a little confused about. Currently got:

"Get up!" This ${j_name} snaps, now right in my face as she grabs my left arm and starts to tug. "I don't have the time or patience to answer questions right now. Ask when we get you out of here."
I yelp, tugging my arm back out of reflex as my head automatically turns towards $!{highest_rel}, in the hope that ${t_they} can please tell me what the hell is going on now? Sometimes, like right now, I really hate being blind.

It’s almost like it’s just not sure what the $!{highest_rel} is? As well as seemingly just skipping anytime I try to do a

*if (highest_rel ="t") ```
Any of the 4, T just being an example. I'm confused.