Jump to content

Recommended Posts

More Choices

Version 1.0

by Fomar0153

 

Introduction

This script allows you to exceed the four choices limit, this script sets a variable to equal the choice the player makes.

 

Features

+ Can have as many choices as you like

 

Screenshot

SS0013.png

 

How to Use

First copy the script into your scripts section then consult further instructions located at the top of the script.

Also here's an example of how to utilise the script in the editor.

 

SS0014.png

 

Script

The most update version of this script can always be found on my blog.

 

F.A.Q.

No questions asked.

 

Credits and Thanks

Fomar0153

 

Author's Notes

Funny how people complain that 63 regions or 999 maps etc are not enough, but 4 choices now that's enough.

Share this post


Link to post
Share on other sites

A very useful script indeed. I'm already using it.

 

I never quite understood the 4 choices limit Enterbrain uses. I think it's not enough.

 

If you plan to keep adding features to this script, a good one would be to make some options not selectable unless switch X is ON/OFF or variable X is equal to 10. Just to make sure the player doesn't select some choices before actually having to.

Share this post


Link to post
Share on other sites

If I want several long choices during the game (Like a quiz but there are several quiz's within the game)... how do I go about it? Do I edit this section?

 

def more_choice(p)

case p

when "???"

$game_message.choices.push("???)

$game_message.choices.push("???")

$game_message.choices.push("???")

$game_message.choices.push("???")

$game_message.choices.push("???")

$game_message.choices.push("???")

$game_message.choices.push("???")

else

$game_message.choices.push(p)

end

end

 

Or do I copy another version of the script?

 

Also Balthier99's suggestion of having some option unavailable unless switch X is on/off or Variable X is equal to 10, or even until a specific item is in the inventory. a good idea, and I I too hope if you do keep adding features to this script that will be one of them.

Share this post


Link to post
Share on other sites

A very useful script indeed. I'm already using it.

 

I never quite understood the 4 choices limit Enterbrain uses. I think it's not enough.

 

If you plan to keep adding features to this script, a good one would be to make some options not selectable unless switch X is ON/OFF or variable X is equal to 10. Just to make sure the player doesn't select some choices before actually having to.

 

Thanks but no I don't intend to add anything like that. You can either through events or scripting however selectively add what you want to the list.

If I want several long choices during the game (Like a quiz but there are several quiz's within the game)... how do I go about it? Do I edit this section?

 

def more_choice(p)

case p

when "???"

$game_message.choices.push("???)

$game_message.choices.push("???")

$game_message.choices.push("???")

$game_message.choices.push("???")

$game_message.choices.push("???")

$game_message.choices.push("???")

$game_message.choices.push("???")

else

$game_message.choices.push(p)

end

end

 

Or do I copy another version of the script?

 

Also Balthier99's suggestion of having some option unavailable unless switch X is on/off or Variable X is equal to 10, or even until a specific item is in the inventory. a good idea, and I I too hope if you do keep adding features to this script that will be one of them.

 

You would set it up like so:

  def more_choice(p)
case p
when "MC1"
  $game_message.choices.push("1")
  $game_message.choices.push("2")
when "MC2"
  $game_message.choices.push("3")
else
  $game_message.choices.push(p)
end
 end

Share this post


Link to post
Share on other sites

I see. Thank you.

I don't know if this question is allowed to be asked in the forum and I would have asked this via pm, but I am unable to do so...

 

Since you not adding extra features to your script, are we allowed to modify them ourselves (or get help to do so) for our own game projects?

Share this post


Link to post
Share on other sites

How would I be able to make choice selections?

 

I seem to trigger the first option when picking the second option and so on.

 

Also, the option seems to be permanently available, even though I've used markers within conditional branches to cancel the event once the choice has been made.

I recommend just having the one choice (unless you want a cancel option). And then your chosen variable contain the option they clicked on.

So if I select the first option (eric) the variable equals 0.

If they select the second option (natalie) the variable equals 1.

And so on.

So you need to make a conditional branch checking what the variable equals like in the picture in the instructions in this thread.

 

If you're still having trouble show me a copy of your event.

Share this post


Link to post
Share on other sites

How would I be able to make choice selections?

 

I seem to trigger the first option when picking the second option and so on.

 

Also, the option seems to be permanently available, even though I've used markers within conditional branches to cancel the event once the choice has been made.

I recommend just having the one choice (unless you want a cancel option). And then your chosen variable contain the option they clicked on.

So if I select the first option (eric) the variable equals 0.

If they select the second option (natalie) the variable equals 1.

And so on.

So you need to make a conditional branch checking what the variable equals like in the picture in the instructions in this thread.

 

If you're still having trouble show me a copy of your event.

 

I was able to correct the issue of targeting specific options by using a conditional branch variable just as in the picture. I'm having a problem with the options though still. Choice one and choice two share a link. Choice one cycles through all of the set events and when the last one finishes, it then calls the second choice automatically. It doesn't work this way with the other choices, only with the first. The other choices work as they should.

 

I checked the script for duplicates but it's clean. I checked the variable constants but their clean too.

Edited by Chimera

Share this post


Link to post
Share on other sites

Can I see a picture of the event. If you hold alt when hitting print screen it'll just be the event window.

 

Otherwise I'm not sure what you meant by "The script works but it seems to only work correctly with the variables (option choices) inserted on the default list of event commands and not inside of other conditional branches. "

Share this post


Link to post
Share on other sites

Can I see a picture of the event. If you hold alt when hitting print screen it'll just be the event window.

 

Otherwise I'm not sure what you meant by "The script works but it seems to only work correctly with the variables (option choices) inserted on the default list of event commands and not inside of other conditional branches. "

 

That part I edited. I was mistaken.

 

There is an issue though with the option choices. The problem seems to be that choice one is linked with choice two. I did a bare bones trial and error of the script, excluding any errors I may have made in the events:

 

ScreenHunter_04Feb191417.jpg

 

What happens is, when I choose option one and pick "No" then choice two automatically gets called.

Share this post


Link to post
Share on other sites

Ah I see, what you need to do is copy variable 101 into another variable after:

When [MC 1]

Branch end

So for example

 

When [MC 1]

Branch end
$game_vairables[102] = $game_variables[101]

And then update the conditionals to use variable 102.

 

This is caused because when you call the yes and no choice, it's answer goes into 101 before you're done using it.

Share this post


Link to post
Share on other sites

Ah I see, what you need to do is copy variable 101 into another variable after:

When [MC 1]

Branch end

So for example

 

When [MC 1]

Branch end
$game_vairables[102] = $game_variables[101]

And then update the conditionals to use variable 102.

 

This is caused because when you call the yes and no choice, it's answer goes into 101 before you're done using it.

 

Thank you for the support.

 

Initially I did $game_variables[102] = $game_variables[101] = index. Then realized it was $game_variables[x] = $game_variables[x]. Works great.

 

I'll be using this script a lot so if something else may come up I'll bring it up.

 

It's been said already, but I think that adding switches to this script would be essential in making it ideal for use. Being able to use x amount of options is great. Having complete control to display or remove them is crucial.

Please add optional switches?

Edited by Chimera

Share this post


Link to post
Share on other sites
It's been said already, but I think that adding switches to this script would be essential in making it ideal for use. Being able to use x amount of options is great. Having complete control to display or remove them is crucial.

Please add optional switches?

I do not intend to add this feature. You can implement it through events or a small amount of scripting where you add the options; use something like:

$game_message.choices.push("2") if $game_switches[2]

Share this post


Link to post
Share on other sites

Edit: Works great now.

 

I ran into an issue though. I found a workaround but I thought I should mention...

 

The default choice handler in RMVX Ace is set up with a "branch" function at the bottom. While using the "More Choices" script I found that if you use the "branch" option and have upto 5 or more choices set up in the "More Choices" script, the game will call the "branch" selection in place of choice 5.

 

As a work around I used the "disallow" function and just added an additional choice to the "More Choices" script.

 

Initially I had "branch" set up with "End Event Processing" and I could never select choice 5.

 

Any thoughts on fixing this issue in the script?

Edited by Sly

Share this post


Link to post
Share on other sites

yunoget.png

 

Edit: Don't edit your post after I've replied if you want me to notice it.

 

Edit: Works great now.

 

I ran into an issue though. I found a workaround but I thought I should mention...

 

The default choice handler in RMVX Ace is set up with a "branch" function at the bottom. While using the "More Choices" script I found that if you use the "branch" option and have upto 5 or more choices set up in the "More Choices" script, the game will call the "branch" selection in place of choice 5.

 

As a work around I used the "disallow" function and just added an additional choice to the "More Choices" script.

 

Initially I had "branch" set up with "End Event Processing" and I could never select choice 5.

 

Any thoughts on fixing this issue in the script?

 

When using this script disallow should be dealt with like the other options So if I had 5 choices I would check the variable equalled 5.

Edited by Fomar0153

Share this post


Link to post
Share on other sites

I'm sorry but I am having a hard time with this script. When I put in a first choice or whatever it repeats the first choice and will not let me proceed

 

 

 

 

Here is an attached picture. What did I do wrong. Also please help me this is not easy for me at all.

 

 

post-1980-0-92993600-1330636852_thumb.png

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×