Choose more than one option?

Just wondering. Is it possible to code a choice in order for the reader to choose 2 or more options instead of just one?

Not to my knowledge, I’ve never seen a way to do that! :thinking: The best I think you could do would be to put each combination of the two choices into one choice?

I thought about putting two choices on the same page, but it would definitely be better if there was a way to choose more than one option…

What about a looping choice and you could disable or hide the one already selected?

I haven’t tested this, but maybe you could do this and then *set whatever you need to?

edit: you might have to combine it with if statements or something so that if you only want 2 choices selected, then it moves you on. but… I have never done this is practice, so I can’t say for sure if this would suit your needs.

3 Likes

There is no current way to pick multiple choices in a single choice group.

However there are two ways around it;

option one have a multiple choice group like this.

*choice optiona optionb
    #Option One.
        #Option A.
            text.
            *goto next_scene
        #Option B.
            text.
            *goto next_scene
        #Option C.
            text.
            *goto next_scene
    #Option Two.
        #Option A.
            text.
            *goto next_scene
        #Option B.
            text.
            *goto next_scene
        #Option C.
            text.
            *goto next_scene
    #Option Three.
        #Option A.
            text.
            *goto next_scene
        #Option B.
            text.
            *goto next_scene
        #Option C.
            text.
            *goto next_scene

This lets you choose two options in a single choice but the second lot of choices have to be the same. I use this in my game when people pick their guns and ammo.

The second option is like @spunkycatninja suggested and just have the code loop back to the choice like this;

*label choice_group
*choice
    *hide_reuse #Option One.
        text.
        *goto choice_group
    *hide_reuse #Option Two.
        text.
        *goto choice_group
    *hide_reuse #Option Three.
        text.
        *goto choice_group
    #I'm finished.
        *goto next_scene

With this the player makes one choice and then they are sent back to the choice minus the one they have picked and they can keep doing that until the only option left is “I’m finished” which send the game to the next scene.

Hope this helps.

1 Like

It doesn’t really allow you to pick more than 2 items in the same list, though. If you do, you have to consider about ppl picking all As at every choice group.

The best way is to make the choice loops back, IMO.

Oh I agree the choice loop is the better option but for some choices its quite useful.

:grin:

Pick two:

*fake_choice
 #Red and Blue
  You picked red and blue.
  *set color1 "red"
  *set color2 "blue"
 #Red and White
  You picked red and white.
  *set color1 "red"
  *set color2 "white"
 #White and Red
  You picked white and red.
  *set color1 "white"
  *set color2 "red"
 #White and Blue
  You picked white and blue.
  *set color1 "white"
  *set color2 "blue"

Wouldn’t it be

  • red blue
  • red white
  • blue red
  • blue white
  • white red
  • white blue

?

It depends.

If color1 and color2 don’t need to be in any specific order, then some combinations overlap.

Yup! It’s either three options if the order doesn’t matter or six options if the order matters.

Or nine options if you throw in replacement as well.

But you know what, I bet you could create a code that asks the reader to input two things, and then have a text parser figure out what those things are.

@will Here is a simple example. This code will sort a text input into thing1 and thing2 provided that there are only two things and that they are separated by a space. So if you entered “blue milk” without quotations, thing1 would be blue and thing2 would be milk.

*temp thing0 ""
*temp thing1 ""
*temp thing2 ""
*temp things ""
*temp counter 1
*temp limit 0

Input two things.
*input_text things
*set limit length(things)

*label main
*if counter <= limit
 *if thing0 != " "
  *set thing0 (things#counter)
  *set thing1 &thing0
  *set counter +1
  *goto main

*label main2
*if counter <= limit
 *if thing0 != " "
  *set thing0 (things#counter)
  *set thing2 &thing0
  *set counter +1
  *goto main2
 *if thing0 = " "
  *set thing0 (things#counter)
  *goto main2

thing1 = ${thing1}

thing2 = ${thing2}
1 Like

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.