Saltar al contenido
Docs

Reglas sin código

Cómo darle lógica a tu juego eligiendo opciones en el editor 0.4.0, con los ajustes de la Partida, los 10 disparadores, las 23 acciones, los personajes y las reglas en juegos hechos con código.

Corresponde aEditor 0.4.0 Para crear sin programar

En esta página

Una regla es una frase: Cuando pasa algo, entonces el juego hace algo. Las armas eligiendo de listas, en el panel Reglas (Alt+6). No escribes código: lo escribe el editor.

El panel tiene tres secciones: Partida, Reglas y Bot de prueba. La tercera está explicada en Bot de prueba.

La Partida arriba y la lista de reglas debajo.

La partida#

Arriba del panel está Partida, con lo que vale para todo el juego.

AjusteOpciones
RelojSin reloj, Cuenta regresiva: se pierde al llegar a cero o Cronómetro: mide cuánto tardas.
Segundos por dificultadSolo con cuenta regresiva: un valor para Fácil, otro para Normal y otro para Difícil.
Puntaje finalLos puntos del jugador (gana el más alto), El tiempo que tardó (gana el más bajo) o Puntos más el tiempo que sobró. Es lo que entra a la tabla de mejores marcas.
Mostrar los puntos en pantallaMuestra el contador de puntos durante la partida.
Mensaje al empezarUn texto que aparece al comenzar, en español y en inglés.

Anatomía de una regla#

  1. Pulsa Nueva regla.
  2. En Cuando, elige el disparador y llena sus datos.
  3. En Entonces, elige la acción y llena los suyos.
  4. Si quieres que pase más de una cosa, pulsa + Acción. Cada acción siguiente empieza con Y. La flecha sube una acción en el orden y la × la quita.

La regla queda escrita como una frase que puedes leer para comprobar que dice lo que querías. Un clic en la frase abre o cierra la regla.

Una regla abierta: el disparador arriba, sus dos acciones y, al pie, Solo una vez por partida.
ParteQué es
La casilla a la izquierda de la fraseActiva o apaga la regla. Una regla apagada se queda en la lista, pero no hace nada: sirve para probar el juego sin ella sin tener que borrarla.
CuandoEl disparador: qué tiene que pasar.
EntoncesLas acciones, en orden.
Solo una vez por partidaLa regla corre la primera vez que se cumple y no vuelve a correr hasta la partida siguiente. Úsala para avisos que no deben repetirse.
BorrarElimina la regla.

Cuando el disparador o la acción piden una pieza o una zona, puedes elegir Todo lo que tenga la etiqueta, Una pieza (o Una zona) y, en las acciones, la pieza tocada. El botón Lo elegido toma lo que tengas seleccionado en la escena.

Los textos se escriben dos veces, en español y en inglés, porque cada jugador ve el juego en su idioma.

Disparadores#

Son diez.

DisparadorQué pideEjemplo
el jugador toca…Una pieza o una etiqueta.Cuando el jugador toca algo con la etiqueta «moneda»: quitar la pieza tocada, sumar 1 punto y reproducir el sonido moneda.
el jugador entra a la zona…Una zona o una etiqueta.Cuando el jugador entra a algo con la etiqueta «meta»: terminar la partida (victoria).
el jugador sale de la zona…Una zona o una etiqueta.Avisar con un mensaje cuando el jugador deja la zona de salida.
el jugador junta…Cuántas (todas o una cantidad) y con qué etiqueta.Al juntar tres piezas con la etiqueta «llave», abrir una puerta.
pasa el tiempo…Los segundos y si se repite.Cada 10 segundos, sumar un punto.
el jugador llega a… puntosLa cantidad de puntos.Cuando el jugador llega a 5 puntos: mostrar «¡Tienes todas! Corre a la meta.» y reproducir el sonido victoria.
el jugador cae al vacíoNada.Cuando el jugador cae al vacío: reproducir el sonido caida.
el jugador aprieta un botón…Qué botón: Saltar, Acción o Acción 2.Al apretar Acción, impulsar al jugador hacia arriba.
un personaje toca al jugador…Qué personaje, o cualquier personaje.Cuando el guardia toca al jugador, reaparecer.
empieza la partidaNada.Cuando empieza la partida: hacer aparecer al personaje «Guardia» en «guardia» y que «guardia» patrulle entre 2 puntos.

Los ejemplos de «toca», «entra», «llega a», «cae al vacío» y «empieza la partida» son frases reales del editor. Los demás son ideas de uso.

Acciones#

Son veintitrés.

AcciónQué hace y qué pide
sumar puntosSuma la cantidad que digas. Un número negativo quita puntos.
mostrar mensajeMuestra un texto. Pide el texto en español, en inglés y un estilo: Normal, Éxito (verde) o Peligro (rojo).
reproducir sonidoToca un sonido de la lista.
terminar partidaTermina con Victoria, Derrota o Fin (sin ganar ni perder).
reaparecerDevuelve al jugador al último punto de control.
mover piezaMueve una pieza en X, Y y Z durante los segundos que digas. Con Ida y vuelta, para siempre no se detiene.
abrir puertaLa pieza que elijas sube hasta dejar libre el paso.
quitar piezaQuita una pieza de la escena. Puede ser la pieza tocada.
pintar piezaLe cambia el color a una pieza. Puede ser la pieza tocada.
guardar punto de controlDesde ahora, el jugador reaparece en el punto de aparición que elijas.
llevar al jugador a…Mueve al jugador a un punto de aparición.
impulsar hacia arribaLanza al jugador hacia arriba con la fuerza que digas. 20 es un salto alto.
quitar o dar tiempoLos segundos que se pierden del reloj. Un número negativo los regala.
hacer aparecer un personajeCrea un personaje en un punto de aparición. Pide un nombre corto, dónde aparece, un color y, si quieres, el rótulo con su nombre.
personaje: patrullar entre puntosEl personaje camina sin parar entre los puntos de aparición que marques, en orden.
personaje: seguir al jugadorEl personaje sigue al jugador y se detiene a la distancia que digas.
personaje: quitarloQuita un personaje de la partida.
toma de cámara: mostrar una piezaLa cámara muestra una pieza durante unos segundos y después vuelve sola. Pide dónde se pone la cámara, contando desde la pieza.
poner rótulo o barra sobre una piezaUn texto, una barra (de vida, de avance) o las dos cosas, sobre una pieza. El rótulo la sigue.
quitar rótulo de una piezaQuita ese rótulo.
texto flotante sobre el jugadorUn texto corto que flota sobre el jugador, como «+1».
cambiar el cielo (día, noche)Cambia el cielo a día, atardecer, noche o tinta, en los segundos que digas.
cambiar la vista (cámara y control)Pasa a otra vista, con una transición.

Las reglas que traen los prefabricados#

Varios prefabricados agregan su regla cuando los colocas, y el editor avisa: «Se agregó una regla para que funcione. Mírala en Reglas.» Son reglas como cualquier otra: puedes abrirlas, cambiarlas o borrarlas.

Al colocarAparece la regla
MonedaCuando el jugador toca algo con la etiqueta «moneda»: quitar la pieza tocada, sumar 1 punto y reproducir el sonido moneda.
Zona de peligroCuando el jugador toca algo con la etiqueta «peligro»: reproducir el sonido golpe y reaparecer en el último punto de control.
MetaCuando el jugador entra a algo con la etiqueta «meta»: terminar la partida (victoria).
Punto de controlAl entrar a su zona, guardar el punto de control.
TrampolínAl tocar algo con la etiqueta «trampolin», impulsar al jugador hacia arriba y reproducir el sonido salto.
Puerta con botónAl tocar el botón, abrir la puerta y pintar el botón de verde.
Personaje, Personaje que patrulla, Personaje que te sigueUna regla de «empieza la partida» por cada personaje colocado.
Cartel con rótuloUna regla de «empieza la partida» que pone el rótulo sobre el cartel.

Las reglas de moneda, peligro, meta y trampolín hablan de una etiqueta: se agregan una sola vez y valen para todas las piezas que la lleven. La segunda moneda no agrega otra regla. Si haces una caja y le pones la etiqueta peligro, también devuelve al jugador al último punto de control.

Las de los personajes y los carteles son una por copia, porque cada una nombra a su personaje o a su cartel.

Personajes#

Un personaje es alguien más en la escena, aparte del jugador: un vecino, un guardia, un amigo que te sigue. Siempre nace en un punto de aparición y se nombra por su nombre corto.

Lo más rápido es colocar uno de los tres prefabricados del grupo Personajes. Cada uno pone sus puntos de aparición en la escena y su regla en el panel:

PrefabricadoQué colocaQué hace su regla
PersonajeUn punto de aparición.Lo hace aparecer ahí, parado.
Personaje que patrullaDos puntos de aparición, guardia y ronda.Lo hace aparecer y patrullar entre los dos.
Personaje que te sigueUn punto de aparición.Lo hace aparecer y seguir al jugador.
La regla del Personaje que patrulla, recién colocado.

Para cambiar la ronda, mueve los puntos de aparición en el visor como cualquier pieza, o agrega más con el prefabricado Punto de aparición y márcalos en la acción personaje: patrullar entre puntos. Hacen falta al menos dos.

Cambiar la vista#

La acción cambiar la vista (cámara y control) pasa de una vista a otra en plena partida: tercera persona, primera persona, isométrica, cenital, lateral (2D) o plano (2D desde arriba). La opción la de la escena (volver) regresa a la vista original. Segundos de la transición dice cuánto tarda el cambio.

Cambia la cámara y también la forma de moverse. Si la regla la dispara un jugador, cambia solo la suya; si no, la de todos.

Para cambiar de vista al pasar por un lugar no hace falta una regla: una zona puede traer su propio cambio de vista. Está en Tipos de juego.

Cómo las reglas se vuelven código#

Las reglas no son un sistema aparte: el editor las traduce a código, el mismo que escribiría una persona. El enlace Ver el código que escriben estas reglas, al final de la lista, abre el script en el lugar exacto.

El código queda en scripts/principal.ts, entre dos marcas: // <reglas> y // </reglas>. Cada regla aparece con su frase como comentario. Este es el fragmento de las reglas 3 y 4 del juego del tutorial:

ejemplos/patio-de-monedas/scripts/principal.ts
	// Regla 3: Cuando el jugador toca algo con la etiqueta "moneda": quitar la pieza tocada, sumar 1 punto y reproducir el sonido moneda.
	mundo.alTocar('#moneda', (pieza, jugador) => {
		pieza.eliminar();
		sumarPuntos(jugador, 1);
		sonido.tocar('moneda', { para: jugador });
	});

	// Regla 4: Cuando el jugador toca algo con la etiqueta "peligro": reproducir el sonido golpe y reaparecer en el último punto de control.
	mundo.alTocar('#peligro', (pieza, jugador) => {
		sonido.tocar('golpe', { para: jugador });
		jugador.reaparecer();
	});

Y la regla 5, «llega a 5 puntos», quedó dentro de la función que suma puntos:

ejemplos/patio-de-monedas/scripts/principal.ts
/** Suma (o quita) puntos y actualiza lo que se ve. */
function sumarPuntos(jugador: Jugador, cantidad: number): void {
	const antes = jugador.puntos;
	jugador.puntos = Math.max(0, jugador.puntos + cantidad);
	mostrarPuntos(jugador);
	// Cuando el jugador llega a 5 puntos: mostrar "¡Tienes todas! Corre a la meta." y reproducir el sonido victoria.
	if (antes < 5 && jugador.puntos >= 5) {
		interfaz.mensaje(interfaz.t('r_regla_5_1'), { tipo: 'info', para: jugador });
		sonido.tocar('victoria', { para: jugador });
	}
}

No necesitas entender este código para hacer juegos. Pero si quieres aprender a programar, leer lo que escriben tus propias reglas es un buen punto de partida.

Juegos hechos con código#

La plantilla Monedas contra reloj (con código) y los ejemplos de Primera persona, Plataformas 2D, Vista cenital, Isométrico, Híbrido, Mundo abierto y Multijugador local tienen su lógica escrita a mano. En ellos el panel Reglas empieza vacío y muestra este aviso:

«Este juego está hecho con código escrito a mano (pestaña Código). Si agregas reglas, el editor las escribe en un bloque aparte dentro del mismo archivo, sin borrar lo que ya hay. Las dos cosas funcionan a la vez.»

Dos cosas cambian en estos juegos:

  • Los prefabricados no agregan su regla sin preguntar. Colocar una Moneda pone la pieza con su etiqueta moneda, pero el editor no le suma lógica a un juego hecho con código por su cuenta. Lo que hace es mirar si tu código nombra lo que colocaste (su etiqueta, su pieza o su zona). Si no lo nombra, avisa: «Este juego está hecho con código y su código no usa «Moneda»: así no hace nada. Puedes agregarle su regla o programarlo a mano.» El botón Agregar su regla, dentro del aviso, crea la regla y abre el panel Reglas. Si tu código sí lo nombra, no hay aviso.
  • La primera regla enciende las Reglas. Desde ese momento el editor escribe su bloque en el script, los ajustes de la Partida (reloj, puntaje final) pasan a valer y los prefabricados vuelven a traer su regla, como en cualquier otro proyecto.

El editor busca el nombre en el código, nada más: no sabe para qué lo usas. En el ejemplo isométrico, por ejemplo, colocar una Moneda no muestra el aviso, porque su script ya nombra moneda (es el sonido que toca). Ahí la regla de la moneda se crea a mano, con Nueva regla.

Al encender las Reglas, el editor tiene en cuenta el código que ya estaba:

  • Las tablas de puntajes de tu código se conservan. La Partida necesita su propia tabla de mejores marcas. El editor deja como están las que nombra tu código y agrega la suya al final. Hasta la 0.2.0 las reemplazaba, y el ejemplo isométrico quedaba con un error GB323: eso ya no pasa.
  • El aviso «Ninguna regla termina la partida» no sale si tu código la termina. El editor cuenta también el final que pone el código escrito a mano (una llamada a juego.terminar), además de las reglas con terminar partida y del reloj de cuenta regresiva.

Sigue con#