Keypad
El script principal del keypad se encarga de manejar el inicio de sesión de los usuarios en los diferentes KeyPadRoles, también maneja encriptación, verificaciones anti-suplantación y otras configuraciones.
Solo debería haber 1 de estos en la instancia en todo momento y nunca debería ser desactivado para mejores resultados.
Settings
- DebugMode : bool - Habilita mensajes de consola adicionales para ayudar con la depuración.
- UdonConsole : UdonConsole - Referencia (opcional) a la consola VUdonLogger.
- SavePasswords : bool - Guarda la última contraseña usada en playerdata y la reutiliza al unirse al mundo.
- TeleportToNewRoleSpawn : bool - Si está habilitado, cuando un usuario inicia sesión y su nuevo rol tiene un punto de spawn asignado, será teletransportado a él.
- InstanceOwnerRol : KeyPadRol - Rol a ser otorgado al creador de la instancia.
- MasterRol : KeyPadRol - Rol a ser otorgado al master de la instancia, este rol se transfiere cuando cambia el master.
- VRCPlusRol : KeyPadRol - Rol a ser otorgado a usuarios con VRChat Plus.

Roles
Lista de roles que maneja el keypad. Puedes usar el botón Find All Roles para poblar automáticamente la lista con todos los KeyPadRol de la escena. También puedes ordenarlos manualmente para ajustar el orden de jerarquía; esto afectará muchos aspectos del comportamiento del keypad.

Security
- MaxPasswordAttemptsPerMinute : int - Número de intentos fallidos de contraseña permitidos por minuto antes de bloquear al usuario.
- EncryptRemoteStrings : bool - Si está habilitado, todas las listas remotas de jugadores serán tratadas como cifradas.
- AntiSpoofer : bool - Si está habilitado, el keypad intentará realizar verificaciones de seguridad para detectar si un usuario está tratando de usar el nombre de otro usuario para propósitos de autologin. Debería estar siempre ACTIVADO si es posible
- SpooferRole : KeyPadRol - Rol a ser otorgado a usuarios detectados suplantando identidad.
- EncryptionKey : string - Clave usada para cifrar/descifrar datos del keypad, incluidas listas remotas.

Advanced
- SortTagsByRoleOrder : bool - Ordena DataLists y VRChatTags usando el orden de jerarquía, de arriba hacia abajo.
- AddChildTags : bool - Si es true también agrega nombres de rol implícitos a los VRChatTags, si es false solo agrega roles Explícitos.
- TagName : string - Nombre de clave a ser usado cuando se asignan VRChatTags.
- TagSeparator : char - Carácter que se usa entre nombres de rol al asignar tags.
- EventListeners : UdonBehaviour[] - Lista de UdonBehaviours que recibirán eventos cuando usuarios inicien/cerren sesión. Más info en la sección API de la wiki.
Cuando mencionamos tags estamos hablando del sistema de PlayerTags de VRChat.
Audio
- ButtonSound : audioClip - Se reproduce en cada presión de botón.
- AcceptedSound audioClip - Se reproduce cuando inicias sesión exitosamente.
- ErrorSound audioClip - Se reproduce cuando se ingresa una contraseña incorrecta.
Translations
- AcceptedMessage : string - Texto mostrado en el keypad cuando inicias sesión en un rol, 0 es el nombre del rol.
- DeniedMessage : string - Texto mostrado en el keypad cuando ingresas una contraseña incorrecta.
- LoggedOutMessage : string - Texto mostrado en el keypad cuando cierras sesión.
References
Estos se usan internamente y nunca deberías tener que cambiarlos.
- KeyPadDataSaver : KeyPadDataSaver - Usado para guardar/cargar datos persistentes como roles temporales o contraseñas.
- KeyPadPlayerData : KeyPadPlayerData - Usado para almacenar datos del jugador como qué roles tienen.
- InputScreen : TextMeshProUGI - Componente de texto de la pantalla del keypad para mostrar la contraseña.
Utility
El keypad te permite exportar/importar sus roles a/desde una cadena JSON para facilitar la copia entre instancias o para propósitos de respaldo.