Style choice: Selectable if vs hide reuse


According to your experience, is there a time to use one versus the other? Is there a reason you’d want options to be grayed out versus hidden? How do you decide which method to use?

(I realize this is probably personal opinion about style preferences, though there could be practical aspects to consider as well.)


I’m going to be lazy and quote myself. :slight_smile:

Edit: Oops I misread the question. I thought it was *selectable_if vs *if on choices. So whether you can see a choice as greyed out, or just not see it at all. Hide_Reuse is something else entirely.


Though they do seem similar. I used selectable if in the following construction when hide_reuse would have worked too. I didn’t know about hide_reuse at the time.

	*selectable_if (humility_select) #humility
		*set humility_select false
*goto story01
*selectable_if (ambition_select) #ambition
		*set ambition_select false
*goto story01

Incidentally, how do you get code to tab in quote?


Can’t tab in a quote. Need to

How to format your code so it can be seen on the forum.

Paste code into window.
Highlight all of the code.
Click the preformatted text button. (It looks like </> and is next to the quote one and on the same bar as the other formatting and smilies choice.)
Click reply.


Yeah, I misread the question.

Hide Reuse is cleared every time you leave the scene and then return to it. Selectable if won’t be cleared. I think that’s the main difference. Other than selectable if will take a lot more coding and involves having more variables. .


You can also use *ifs in #options and *disable_reuse which the the basics of the question reversed.

If we’re looping, well, it depends on what we’re trying to accomplish with the loop, and how it’s going to look. That said, looping is generally not great game design, but it rarely includes real choices with moving the story forward.


Well, your question is not… what you’re trying to ask. It’s like… What should I do? Drink or Eat? :stuck_out_tongue:

Quoting yourself [quote=“MasqCrew, post:1, topic:23467”]
…Is there a reason you’d want options to be grayed out versus hidden?..
[/quote]You’re actually comparing *disable_reuse vs *hide_reuse

Which is what the two basically do is either gray out or remove (hide) an already selected choice

However, if what you mean is this:

You’re comparing *selectable_if vs *if

Which is what the two basically do is… do a condition check. If it fails, the following choice will be either grayed out (unselectable) or removed (hidden)


I’ve read somewhere about things to consider between *selectable_if and normal *if

Graying out choices will knock a sense of weak, helplessness, which is one of the best way to immerse the reader/player into the story,

Like this
*set strength 100
*set speed 0
  *selectable_if (strength = 100) #Lift the boulder
  *selectable_if (speed = 100) #Run over the boulder

If you build your character into strength-based, you’ll see the “Run over” option grayed out, emphasize the feeling that “I can’t run it over”

P.S.: Oh, holy fairy pigeon already quoted himself. It’s the example of the bad sides of the *selectable_if, tho


Perhaps I still don’t understand, but the four options all basically do the same thing, but in different ways. It’s all about looping through choices and about how previously selected choices look.

And whether you want the choices to be grayed out or hidden is all about style, what you want to convey to the player.

So, when to use reuse commands vs if commands?



*disable_reuse and *hide_reuse are effectively used in looping a choices, by eliminating chosen options.

*if and *selectable_if are used to allow players to choose an option or not.


I understand. However, I coded a loop with IF statements, which I think is a obtuse way of doing disable_reuse.


If that’s the case, you might want to rethink yourself about the whole choices
Why I should do this?
What will happen when I do this? What if I’m not?
Should this option available?

I encountered an exact, same problem as yours actually. Coded a loop with *if.
In the end, I trim some lines, remove some options, “merge” some options, and left the others as it is.
Even I found a more brutal approach on the choice that makes me creating a new scene file :stuck_out_tongue_closed_eyes:

I personally don’t think a loop with *if is necessarily that bad.


In other words, there’s more than one way to skin a cat.


Yes, basically using *if / *selectable_if is the long way of creating a variable, adding the *set to the #option, and then adding the *if to the option. *hide_reuse is just easy, less likely to hit bugs, and more manageable.