Skip to main content

Keypad

The main keypad script is in charge of handling login of the users into the different KeyPadRoles, it also handles encryption, spoof checks and other settings.

There should only be 1 of these in the instance at all times and it should never be turned off for best results.

Settings

  • DebugMode : bool - Enables extra console messages for help debugging.
  • UdonConsole : UdonConsole - (optional) reference to VUdonLogger console.
  • InstanceOwnerRol : KeyPadRol - Role to be given to the creator of the instance.
  • MasterRol : KeyPadRol - Role to be given to the instance master, this role is transfered when master change.
  • RolePersistance : bool - Saves last used password to playerdata and reuses it when joining world.
  • AntiSpoofer : bool - If enabled, the keypad will try to perform security checks to detect if a user is trying to use the name of other user for autologin purposes. Should be always ON if possible
  • SpooferRole : KeyPadRol - Role to be given to users detected to be spoofing.
  • SortTagsByRoleOrder : bool - Sorts DataLists and VRChatTags using the hierarchy order, from top to bottom.
  • AddChildTags : bool - If true also adds implicit role names to the VRChatTags, if false only adds Explicit roles.
  • TagName : string - Key Name to be used when assigning VRChatTags.
  • TagSeparator : char - Character thats used in between role names when assigning tags.
note

When we mention tags we are talking about VRChat's PlayerTags system.

Audio

  • ButtonSound : audioClip - Played on every button press.
  • AcceptedSound audioClip - Played when successfully logged in.
  • ErrorSound audioClip - Played when a wrong password is inputted.

Translations

  • AcceptedMessage : string - Text displayed on keypad when you login to a role, 0 is role name.
  • DeniedMessage : string - Text displayed on the keypad when you input an incorrect password.
  • LoggedOutMessage : string - Text displayed on the keypad when you log out.

References

These are used internally and you should never have to change these.

  • KeyPadPlayerData : KeyPadPlayerData - Used to store player data like which roles they have.
  • InputScreen : TextMeshProUGI - Text component of the keypad screen to display the password.
  • Roles : GameObject - Parent of all roles.