Symbol Dial System


The symbol dial system allows you to easily set up combination dials with any symbols of your choice. You can use numbers, letters, and even characters from different languages.

Symbol dials can be used in puzzles where players must figure out the correct combination to enter.

As an alternative to the number input which forces you to use all of the digits from 0-9, this system allows you to specify which numbers you want to use. For example maybe you only want 1-5 to be available for selection.

What can you come up with?


Script: download here


In the script editor, place this script below Materials and above Main


Creating the Dial

To create a symbol dial, use script calls to set up the characters that are available for each digit:

set_symbols(digit, symbols)

The digit is a number that represents which position the digit is in, from right to left.
Symbols is an array of symbols that the player will be able to scroll through.


Once you have set up your symbols, you can simply use an “input number” command to show the symbol dial.

You can have any number of digits, and each digit can have any number of symbols. The number of digits that will be displayed depends on how many you have set up.


Accessing the Input

Once the player has decided on what they will enter, the symbols that are displayed will be stored in the designated variable as a string. You can then perform string operations using script calls in your conditional branches to handle user input.



A simple way to check whether the player input matches what you want is to use a script call like this:

$game_variables[16] == "Hello"

Which will check whether the value stored in variable 16 is equal to the string “Hello”. Note that this system is case-sensitive.


Because all values are stored as strings, if you are working with numerical inputs, you will need to convert it to a number first before comparing it against a number:

$game_variables[16].to_i >= 1204

Which will check whether the value stored in variable 16 is greater or equal to 1204.

If you are familiar with Ruby you will be able to come up with all sorts of conditions.

You may also like...

15 Responses

  1. Max says:

    mine is showing ” wrong number of arguments …..etc.

  2. Jshg says:

    How or where do you specify the variable used?

  3. Xoey says:

    I cannot get it to work! 🙁
    I have tried for 3 hours straight and it still won’t work!
    I haven’t messed around with the script and I have everything in the
    The problem is the input number dial that comes up only
    does 0-9 even though I have specified and only does
    the amount of digits in the input number command!

    I don’t want to be a pain but could you please help?

    • Hime says:

      Can you post a screenshot of your event? And make sure you're using script calls and not comments.

  4. koldsack says:

    Another excellent script, thank you.

  5. Arsist says:

    Ooh, nice and efficient. I like it. Thanks.

Leave a Reply

Your email address will not be published. Required fields are marked *