Reset a *hide_reuse choice?

So I have been developing my game and I wanted to implement a save system so that a player can restart from a certain chapter. Of course, it would be a simple as just having a *goto_scene command and a few variables meant to save your stats from that chapter but my problem is with the *hide_reuse choices.

For example, in one scene, the player is chatting with a character. They have a wide array of options and they are all *hide_reuse. Should the player load a save and go back to the chapter of that scene, the player will have no options.

Is there a way to reset a *hide_reuse choice or at least a workaround for it?

2 Likes

None that I know of. *hide_reuse and *disable_reuse resets only when the player leave said chapter/scene. Maybe try adding double global *hide_reuse command at the beginning of the chapter to force reset the reuse?

*label chap21
*hide_reuse
*hide_reuse

*choice
   #A
   #B
   #Restart
      *goto chap21
1 Like

Create the save function in a separate scene.

1 Like

This is the way I use:

*label create_temps
*temp choice1 0
*temp choice2 0
*temp choice3 0
*goto choices

*label choices
*choice
  *if choice1 =0
    #choose choice 1
      *set choice1 1
      text text text
      *goto other_place / choices

  *if choice2 =0
    #choose choice 2
      *set choice2 1
      text text text
      *goto other_place / choices

  *if choice3 =0
    #choose choice 3
      *set choice3 1
      text text text
      *goto other_place / choices

If after one of the choices was selected and you want to present the rest of the non selected choices again you can use another temp variable as a counter and add +1 to each choice so when *if counter >=x (x been the number of repetitions you want the choices appear)
*goto the_story_continues.
*else
goto choices

So it doesn’t happen that you end up without choices to choose from. Otherwise you can select one of the choices that appear only if all the other choices were selected or a certain amount that goes to the_story_continues.

If I didn’t make myself clear let me know and I’ll try to explain it on a better way.

1 Like

I appreciate the input. However, I am aware of this solution my main concern is regarding the *hide_reuse choices.

Yeah I’ve considered this before. I mainly made this post in search of other, possibly more efficient ways to do so.

If you leave the scene for another scene, then return to the original scene, all *hide_reuse and *disable_reuse should be reset.

The solution would be to ensure than on re-loading a save, a separate blank/minimal scene file is traveled through before returning to the save-point.

I just tested this with csIDE and it seems to work.

1 Like

chapter_1.txt:

*label here1
*set reset 1
story story story.
*choice
  #choice 1
    etc
  #reset chapter
  *goto_scene reset

chapter_2.txt:

*label here2
*set reset 2
story story story 2.
*choice
  #choice 1
    etc
  #reset chapter
  *goto_scene reset

reset.txt:

*label resetting
*if reset = 1
  *goto_scene chapter_1
*elseif reset = 2
  *goto_scene chapter_2

Maybe this way should be more efficient then?

You could use the reset as a load savegame for the chapter too

load_saves.txt:

*label load_savegame
*set all_variables all_saved_variables

*if reset = 1
*goto_scene chapter_1
*elseif reset = 2
*goto_scene chapter_2

That should load the saved variables and reset the *hide_reuse I think.
2 Likes