Roblox GuidebookBase de conocimiento
Español ⌄

Desarrollo / ROBLOX

El menú de Roblox se reinicia al reaparecer: comprueba ScreenGui y ResetOnSpawn

Separa la plantilla de StarterGui de la copia del jugador en PlayerGui y compara tres ubicaciones de ScreenGui. Este ejercicio paso a paso distingue sustitución del menú, visibilidad, progreso guardado y referencias al personaje actual.

Actualizado:

Describe primero qué desaparece realmente #

La frase el menú se reinició puede describir sucesos distintos: un panel deja de verse, un texto recupera su valor inicial, se cierra una pestaña elegida o un objeto antiguo se sustituye. Empieza con una situación reproducible. Por ejemplo, abre un panel didáctico de ruta, cambia su etiqueta y haz reaparecer al personaje. Registra por separado visibilidad, valor del texto y disponibilidad del botón. Una conclusión general no sustituye esas observaciones individuales.

El ejercicio utiliza un panel ficticio cuyo texto inicial es Ninguna ruta elegida. Después de cambiarlo muestra Ruta norte elegida. Son etiquetas originales para un proyecto separado, no afirmaciones sobre funciones de nuestros cinco juegos. La guía propone una comprobación basada en condiciones oficiales. Todavía no ejecutamos este experimento concreto en Roblox Studio, por lo que sus expectativas documentadas no se presentan como resultados medidos ni como un informe de una prueba realizada.

Distingue plantilla e instancia del jugador #

La guía oficial describe StarterGui como el lugar para preparar la interfaz en pantalla. Cuando el personaje aparece por primera vez, ScreenGui y su contenido se copian a PlayerGui de ese jugador. Para el ejercicio resulta esencial distinguir ambas ubicaciones. La etiqueta preparada antes del inicio pertenece a la plantilla. Cambiar la etiqueta de la copia en ejecución aporta una marca observable para comprobar si el estado de esa sesión permanece después de reaparecer.

Anota antes de probar dos rutas: el contenedor original en StarterGui y la copia localizada bajo Players, el jugador elegido y PlayerGui. No edites un panel parecido solo porque su nombre resulte familiar. Comprueba durante el ejercicio que cambias la instancia del cliente previsto. Después de detener la prueba, revisa otra vez la jerarquía original. Los cambios temporales de ejecución no deben convertirse silenciosamente en condiciones de inicio diferentes para la comparación siguiente.

Prepara tres ubicaciones independientes #

Crea un proyecto didáctico separado con aparición normal del personaje. Coloca directamente en StarterGui un ScreenGui con nombre único RespawnA y asigna ResetOnSpawn=true. Añade a su lado RespawnB con ResetOnSpawn=false. Después crea dentro de StarterGui un Folder llamado RespawnFolder y coloca allí un tercer ScreenGui, RespawnC, también con ResetOnSpawn=false. Los nombres y la disposición son etiquetas originales del ejercicio para identificar cada caso sin ambigüedad.

Crea en cada ScreenGui un TextLabel sencillo llamado RouteLabel, con el texto inicial Ninguna ruta elegida. Sitúa las tres etiquetas en áreas diferentes para evitar superposiciones. No agregues todavía tienda, guardados, carga de recursos ni manejadores complejos. La primera tarea se limita al ciclo de vida de los contenedores. Registra antes del inicio la ruta completa y el valor de propiedad de cada caso para que la tabla posterior describa condiciones reales.

Plantilla y copia en ejecuciónAbrir imagen a tamaño completo ↗
Diagrama original para comprobar plantilla y copia.

Lee toda la condición de ResetOnSpawn #

La tabla de condiciones oficial relaciona ResetOnSpawn=true con reinicio. Para conservar el contenedor se necesita false y un ScreenGui directamente en StarterGui. Un descendiente indirecto, por ejemplo dentro de un Folder ubicado en StarterGui, también se reinicia. Por tanto, comprobar false no basta: la ubicación forma parte de la condición. Esto explica por qué mover un menú a una carpeta puede cambiar su comportamiento esperado aunque la propiedad siga igual.

Las expectativas documentadas para nuestras etiquetas son: A se reinicia, B permanece y C se reinicia. Escríbelas primero en una columna esperado, no en observado. Completa la segunda solo después de tu propia comprobación. Si el resultado difiere, conserva ambas entradas y revisa ruta, propiedad e instancia en ejecución. No cambies retrospectivamente las condiciones como si hubieras probado otra ubicación desde el principio; la diferencia puede revelar un detalle del montaje que merece investigar.

UbicaciónExpectativa
A: directo,trueContenedor se reinicia
B: directo,falseContenedor permanece
C: en Folder,falseContenedor se reinicia

Cambia el estado de la copia en ejecución #

Inicia el proyecto didáctico y espera al personaje y a etiquetas legibles. Busca los tres contenedores en PlayerGui del cliente seleccionado mediante sus nombres únicos. Cambia el valor Text de cada RouteLabel en ejecución a Ruta norte elegida. Confirma que la nueva etiqueta aparece en el panel correcto. No modifiques simultáneamente el texto de la plantilla en StarterGui: una copia nueva podría parecer una antigua conservada y ocultar la sustitución que intentas comprobar.

Registra texto inicial, texto cambiado y forma de modificación. Si no encuentras el objeto correcto o la etiqueta visible no cambia, investiga primero ese paso. Sin un estado inicial confirmado, la comparación posterior resulta ambigua. Basta una marca clara para este ejercicio. Varias opciones ocultas y múltiples menús que interactúan añaden causas difíciles de distinguir de una sustitución de ScreenGui y complican innecesariamente la repetición del mismo caso.

Haz reaparecer al personaje y compara #

Utiliza la acción de reaparición disponible en la prueba y espera a recuperar un personaje controlable y la interfaz. Lee A, B y C por separado. Registra si permanece el texto cambiado, vuelve la etiqueta inicial o el panel ni siquiera se ve. Importa el estado posterior a la reaparición, no solamente una desaparición breve durante la transición. Una pantalla de espera todavía no es el resultado final que deseas comparar.

Repite la comparación una vez más después de asignar de nuevo una etiqueta modificada clara a las instancias actuales. Si los dos resultados difieren, no conviertas un intento en regla universal. Conserva el contexto: objetos presentes, lugar de modificación y otros scripts activos. Aquí se propone una secuencia de comprobación. Los textos reales y tiempos de aparición deben proceder de tu ejecución, en lugar de copiarse de la tabla de expectativas.

Expectativas documentadasAbrir imagen a tamaño completo ↗
Condiciones documentadas;experimento todavía sin ejecutar.

No confundas Enabled con sustitución #

Enabled controla visibilidad y actividad del contenedor de pantalla. La guía oficial explica que un contenedor desactivado no dibuja su contenido ni procesa entrada. Es una pregunta distinta de su eliminación y clonación al reaparecer. Si no ves la etiqueta, examina Enabled del ScreenGui actual. Después investiga otras causas de visibilidad: posición del elemento hijo, panel superpuesto o lógica propia de mostrar y ocultar, antes de atribuir toda ausencia a una sustitución.

Añade una columna separada para Enabled; no la utilices en lugar de texto conservado. Un panel oculto puede contener la etiqueta cambiada, mientras que uno visible recién creado puede contener la inicial. Un nombre idéntico tampoco demuestra que sea la misma instancia. Comparar referencias rigurosamente requiere otra prueba instrumentada. Nuestra marca textual comprueba el estado observable del panel y no se ofrece como demostración completa de identidad de objetos.

Revisa dependencias del personaje actual #

Un menú conservado no significa que todo lo relacionado con él se actualice automáticamente. Su código podría mantener una referencia al personaje anterior a la reaparición. Separa conservar la pestaña elegida y renovar los datos del personaje nuevo. Son tareas distintas de desarrollo. Identifica primero qué datos representan una elección del usuario y cuáles deben seguir a un objeto actual del juego, en lugar de su versión anterior.

Prepara para el panel una lista de dependencias: ruta seleccionada, etiqueta de salud, referencia Character y eventos conectados. Solo la primera corresponde directamente a nuestra marca textual. Las otras necesitan comprobaciones separadas en la implementación real. No prometas reparar referencias antiguas solo con ResetOnSpawn=false. Las nuevas conexiones de eventos también necesitan un propietario claro y limpieza de la conexión anterior, para que arreglar el panel no introduzca reacciones repetidas por accidente.

Distingue interfaz conservada y progreso guardado #

Una observación después de reaparecer describe la interfaz dentro de la ejecución actual. No demuestra que la ruta elegida permanezca después de salir, acceder desde otro dispositivo o cambiar de servidor. Esos requisitos necesitan datos propios y pruebas del mecanismo de guardado. No llames a ResetOnSpawn sistema de guardados. En este ejercicio, el cambio de texto marca estado del menú, no un logro del jugador registrado en almacenamiento persistente.

Si CharacterAutoLoads está desactivado, la guía relaciona la copia inicial de StarterGui con una llamada a LoadCharacterAsync. Ese proyecto difiere de nuestro montaje sencillo. Registra primero el modo y después comprueba cuándo aparece inicialmente la interfaz. No mezcles ausencia de la primera copia con desaparición tras otra aparición posterior. Para empezar utiliza el comportamiento normal y añade otros modos como casos independientes, con expectativas y observaciones propias claramente especificadas.

Termina con una tabla de comparación clara #

Conserva para A, B y C la ruta, ResetOnSpawn, comportamiento esperado, texto observado tras cada intento y Enabled. Añade que la comparación no cubre guardados, todos los manejadores ni referencias al Character nuevo. Así otro desarrollador puede reproducir la situación y entender los límites de la conclusión. Si solo probaste la ubicación directa B, no describas su resultado como una comprobación ejecutada de los tres casos.

Después del contraste, elige un ciclo de vida adecuado para tu menú. Introducción de una sola vez, ajustes e información del personaje pueden requerir políticas de estado distintas. Define el comportamiento deseado antes de configurar contenedor y código. El ejercicio original no modifica juegos publicados ni utiliza capturas ajenas. Revisa las condiciones actuales en las fuentes oficiales e incluye en el informe final solo observaciones realmente obtenidas en tu propia implementación.

CampoQué registrar
RutaRuta completa
ResetOnSpawnValor real
Texto tras reaparecerObservación,no expectativa
EnabledAparte del texto conservado

Fuentes originales

Roblox Creator Hub — On-screen UI containers
Roblox Creator Hub — LayerCollector