Autotest Question


#1

These questions don’t seem to have already been asked, so:

  1. What does autotest do when it comes to a *input_text?
  2. What does autotest do when it comes to a *input_text?

#2

The autotests will insert ‘blah blah’ for *input_text, and a random number within the specified range for *input_number.


#3

Huh, I didn’t realize that. So if you had a sort of password protected section, auto test wouldn’t be able to cover it?


#4

Unless the password is blah blah I guess.


#5

@CJW @Fiogan Do either of you know if there is a way to keep variables after the ending screen? I know that achievements stay and you can check if an achievement is met, but is there another way to (for example) keep track of how many endings a player has reached?

Maybe I’d want an achievement that is given when the player has ended at least one game by dying and another by eating a slice of pineapple without having to have one achievement for getting each ending and then another for having them all.

Any ideas?


#6

A similar discussion took place recently in this forum thread, so that may be of some interest.

But to answer the wider question of carrying (non-achievement) game information from one playthrough to the next, the only certain way is to devise your own save system using something like Javascript and a database, and ChoiceScript’s *script command. Its only practical purpose would be for beta testing though (i.e. it probably wouldn’t survive the publication process via CoG) so is probably not worth implementing for just the purpose you mention there.


#7

Umm… do you want to award a same achievement if the player end the game no matter how they ended it?
Just use one *achieve blabla command and paste it on all over the place.


#8

I can think of a couple of ways to address that (with Randomtest anyway), which I think will work? The first should reroute the autotest to the correct solution after three tries with ‘blah blah’—or unlock it for a really patient human who randomly tried ‘blah blah’ thrice, I suppose. The second would automatically reroute Randomtest but not Quicktest.

*temp count 0
*label password
*input_text password
*if (password = "supercalifragilisticexpialidocious")
    *goto poppins
*elseif (password = "blah blah")
    *set count +1
    *if (count = 3)
        *goto poppins
    *else
        *goto password
*else
    *goto try_again
*label try_again
Do you want to try again?
*choice
    #Yes.
        *goto password
    #No, let me move on.
        *goto no_poppins

And I think that way would work for Quicktest too, since it tries all the paths, right?

Or it should be possible to use the randomtest command, if I’m not mistaken:

*label password
*input_text password
*if choice_randomtest
    *set password "supercalifragilisticexpialidocious"
*if (password = "supercalifragilisticexpialidocious")
    *goto poppins
*else
    *goto try_again
*label try_again
Do you want to try again?
*choice
    #Yes.
        *goto password
    #No, let me move on.
        *goto no_poppins