🌑

Villa_MapLightAndShadow

Tutorial paso a paso · Para usuarios sin experiencia previa en RPG Maker MZ

RPG Maker MZ Plugin v1.0 · Murabito A Con valores reales listos para copiar
1

¿Qué hace este plugin? (con ejemplo visual)

Este plugin añade sombras dinámicas reales a tu mapa. Imagina que hay un sol en el cielo que ilumina la escena: los edificios, las vallas, los objetos y los personajes proyectan sombras en el suelo, y esas sombras cambian de dirección y longitud según el ángulo del sol que tú controlas.


↑ Así se ve la sombra de un personaje en el juego: se mueve y rota según el ángulo de luz que configures

El plugin genera tres tipos de sombra a la vez:

Todo se controla con números que tú pones en unas «variables» del juego. Cambiando esos números (desde un evento) puedes simular el amanecer, el atardecer, la noche o una antorcha. No hace falta saber programar: el plugin lo hace todo solo.

💡

Analogía sencilla: Es como una lámpara que puedes rotar alrededor del mapa. Tú le dices al plugin «la lámpara está a 45 grados» y él calcula todas las sombras automáticamente.

2

Instalar el plugin en tu proyecto

1
Copia el archivo .js en la carpeta del proyecto

Abre la carpeta de tu proyecto de RPG Maker MZ en el explorador de archivos de tu ordenador. Busca la subcarpeta js y dentro de ella otra subcarpeta llamada plugins. Copia el archivo Villa_MapLightAndShadow.js dentro de esa carpeta plugins.

  • 📁 TuProyecto/
  •   📁 js/
  •     📁 plugins/ ← aquí va el archivo
2
Abre el Gestor de Plugins en RPG Maker

En el menú superior del editor, haz clic en Herramientas → Plugins. También puedes pulsar la tecla F10 directamente. Se abre una ventana con una lista de plugins.

3
Añade el plugin haciendo doble clic

En la lista de plugins, haz doble clic en una fila vacía (cualquier fila que no tenga ningún plugin). Se abre una ventana de configuración.

4
Selecciona el plugin

En esa ventana verás un campo que dice «Nombre». Haz clic en él y escribe Villa_MapLightAndShadow o búscalo en el desplegable. Cuando lo selecciones, verás que debajo aparecen varios parámetros con campos de valor. De momento no toques nada, lo configuraremos en el paso 4.

5
Verifica que el estado es ON y guarda

Asegúrate de que el interruptor de estado (a la izquierda del nombre del plugin) está en ON. Haz clic en Aceptar.

⚠️

Si tienes otros plugins de iluminación (como Terrax Lighting, Khas Lighting o similares), pueden entrar en conflicto con este. Prueba primero en un proyecto vacío de prueba.

3

Crear las 8 variables de juego

En RPG Maker MZ las variables son simplemente cajones numerados donde el juego guarda números. El plugin lee esos cajones para saber cómo pintar las sombras. Necesitas reservar 8 variables específicamente para él.

Por defecto el plugin usa las variables 1, 2, 3, 4, 5, 6, 7 y 8. Si en tu proyecto ya usas esas variables para otras cosas, deberás usar otras (por ejemplo del 11 al 18) y cambiar la configuración del plugin en el paso 4.

Cómo crear y nombrar las variables

1
Abre la Base de Datos

Ve al menú Herramientas → Base de Datos o pulsa F9.

2
Ve a la pestaña «Variables del Sistema»

En la parte superior de la Base de Datos verás varias pestañas. Haz clic en la que dice Variables del Sistema (o «System Variables»).

3
Haz doble clic en la variable 0001 y ponle un nombre

Haz doble clic en la línea que dice 0001. Se abre un pequeño campo de texto. Escribe el nombre que quieras. Aquí tienes los nombres recomendados para no perderte:

Base de Datos → Variables del Sistema — nombres que debes poner
📦0001: Sombra_Angulo   ← dirección de la luz (0 a 359)
📦0002: Sombra_Opacidad ← visibilidad de la sombra (0 a 255)
📦0003: Sombra_Rojo    ← color rojo (-255 a 255)
📦0004: Sombra_Verde   ← color verde (-255 a 255)
📦0005: Sombra_Azul    ← color azul (-255 a 255)
📦0006: Sombra_Densidad ← qué tan oscura es (recomendado: 18)
📦0007: Sombra_Desenfoque ← suavidad del borde (recomendado: 150)
📦0008: Sombra_TonoOscuro ← oscuridad del volumen (recomendado: 70)
💡

Los nombres son solo para que te organices. El juego no lee el nombre, solo el número. Si no renombras las variables funciona igual, pero te será difícil recordar cuál es cuál.

4

Configurar el plugin (cada campo explicado)

Vuelve al Gestor de Plugins (F10) y haz doble clic en el plugin Villa_MapLightAndShadow. Verás una lista de parámetros. Aquí los explico todos uno a uno con el valor recomendado:

Nombre del parámetro Qué hace Valor
por defecto
¿Cuándo cambiarlo?
shadowTerrainTagId El número de etiqueta de terreno que indica «este tile es una pared y proyecta sombra». El plugin buscará todos los tiles con ese número en el mapa. 1 Solo si ya usas la etiqueta 1 para otra cosa. Ponle cualquier número del 1 al 7.
roofTerrainTagId El número de etiqueta de terreno que indica «este tile es un tejado y no debe recibir sombra proyectada». 2 Igual que arriba, cambia solo si hay conflicto.
degreeVarId ¿En qué variable de juego leerá el plugin el ángulo de la luz? Escribe el número de tu variable «Sombra_Angulo». 1 Cámbialo si pusiste el ángulo en una variable diferente a la 1.
blightnessVarId Variable donde leerá la opacidad de la sombra. 2 Cámbialo si la opacidad está en otra variable.
shadowColorRedVarId Variable con el componente rojo del color de la sombra. 3 Si el rojo está en otra variable.
shadowColorGreenVarId Variable con el componente verde del color de la sombra. 4 Si el verde está en otra variable.
shadowColorBlueVarId Variable con el componente azul del color de la sombra. 5 Si el azul está en otra variable.
shadowDensityVarId Variable con la densidad (oscuridad) de la sombra proyectada. 6 Si la densidad está en otra variable.
shadowBlurVarId Variable con el suavizado del borde de la sombra. 7 Si el desenfoque está en otra variable.
shadeDensityVarId Variable con la oscuridad del sombreado volumétrico de los objetos. 8 Si el tono oscuro está en otra variable.

Si usas exactamente las variables 1 al 8 para las sombras, no necesitas cambiar nada en estos parámetros. Los valores por defecto ya apuntan a las variables 1–8. Solo cámbialos si decidiste usar otros números de variable.

5

Marcar los tiles del mapa (paredes y tejados)

Este es el paso más importante. El plugin necesita saber cuáles de tus tiles son paredes (que proyectan sombra) y cuáles son tejados (que no la reciben). Lo haces asignándoles etiquetas de terreno.

💡

¿Qué es una etiqueta de terreno? Es simplemente un número del 0 al 7 que puedes asignar a cualquier tile. El juego no lo usa para nada por defecto, pero los plugins pueden leerlo. En este caso, el plugin busca los tiles con etiqueta 1 (paredes) y etiqueta 2 (tejados).

Cómo asignar las etiquetas de terreno

1
Abre la Base de Datos → Tilesets

Pulsa F9 y ve a la pestaña Tilesets. Verás a la izquierda una lista de tilesets. Selecciona el que uses en tu mapa exterior.

2
Selecciona el modo «Etiqueta de Terreno»

En la parte superior del tileset verás una fila de pequeños iconos cuadrados. El último (o uno de los últimos) muestra un número pequeño dentro de un cuadro. Haz clic en ese icono. Ahora cada tile mostrará un número del 0 al 7 encima.

3
Selecciona la etiqueta 1 con clic derecho

A la derecha del tileset hay una pequeña paleta de números del 0 al 7. Haz clic derecho en el número 1. Ahora tienes «seleccionada» la etiqueta 1.

4
Pinta de etiqueta 1 los tiles que son paredes

Haz clic (o arrastra) sobre todos los tiles que representan paredes, muros o fachadas de edificios. Verán el número 1 encima. Aplica esto a:

  • 🧱 Paredes de ladrillos o piedra
  • 🏚️ Fachadas de edificios
  • 🪨 Acantilados y elevaciones
  • 🌳 Troncos de árboles (si quieres que proyecten sombra)
5
Selecciona la etiqueta 2 y pinta los tiles de tejado

Ahora haz clic derecho en el número 2 de la paleta y pinta los tiles de tejado. Son los tiles que cubren la parte superior de edificios (donde el personaje no debería tener sombra porque está cubierto).

  • 🏠 Tejado inclinado
  • 🏢 Techo plano de edificios
  • ⛺ Marquesinas y cobertizos
6
Guarda y cierra la Base de Datos

Haz clic en Aceptar. Los cambios de etiqueta de terreno se guardan en el tileset y afectarán a todos los mapas que usen ese tileset.

Ejemplo visual de cómo quedarían los tiles marcados

Así se vería el tileset con las etiquetas asignadas (el número que aparece sobre cada tile):

0
0
1
1
1
2
2
0
0
0
1
0
1
2
0
0
Etiqueta 1 = pared (proyecta sombra)
Etiqueta 2 = tejado (no recibe sombra)
Etiqueta 0 = suelo normal
⚠️

Límite de altura: El plugin solo puede calcular sombras de edificios de hasta 6 tiles de alto. Si tienes una torre enorme de 8 tiles, la sombra se cortará en el tile 7. Diseña tus edificios teniendo esto en cuenta.

6

Tu primer evento: encender las sombras

Las sombras no se activan solas. Necesitas un evento en el mapa que primero establezca los valores de las 8 variables y luego active el plugin. Aquí te lo explico paso a paso.

Crear el evento de activación

1
Abre el mapa exterior donde quieres las sombras

Haz doble clic en el mapa en el editor para abrirlo.

2
Crea un nuevo evento vacío en cualquier tile

Haz doble clic sobre cualquier tile del mapa donde no haya nada. Se abre la ventana de edición de evento.

3
Pon el evento en modo Proceso Automático

En el campo «Condición de Activación» (abajo a la izquierda de la ventana), selecciona «Proceso Automático». Así el evento se ejecutará solo al entrar al mapa, sin que el jugador tenga que hacer nada.

4
Añade los comandos: primero asigna las 8 variables

En la lista de comandos del evento (la zona grande del centro), haz clic en la primera línea vacía. Aparece el menú de comandos. Busca «Control de Variables». Añade un comando para cada una de las 8 variables con estos valores:

Editor de Evento → Comandos a añadir (uno por uno)
 Control de Variables: #0001 Sombra_Angulo = 45  ← la sombra cae en diagonal
 Control de Variables: #0002 Sombra_Opacidad = 200 ← sombra bien visible
 Control de Variables: #0003 Sombra_Rojo = 0   ← sin tinte rojo
 Control de Variables: #0004 Sombra_Verde = 0   ← sin tinte verde
 Control de Variables: #0005 Sombra_Azul = 0   ← sin tinte azul
 Control de Variables: #0006 Sombra_Densidad = 18  ← densidad recomendada
 Control de Variables: #0007 Sombra_Desenfoque = 150 ← borde suave y natural
 Control de Variables: #0008 Sombra_TonoOscuro = 70  ← volumen recomendado
 Comando de Plugin: Villa_MapLightAndShadow → Filter ON  ← ¡ESTE ACTIVA EL EFECTO!

Cómo añadir el Comando de Plugin (Filter ON)

1
En el menú de comandos, busca «Comando de Plugin»

Está en la pestaña «3» del menú de comandos de evento (la tercera pestaña, que suele llamarse «Avanzado» o similar). Haz doble clic en «Comando de Plugin».

2
Selecciona el plugin y el comando

En el desplegable de «Plugin» elige Villa_MapLightAndShadow. En el desplegable de «Comando» elige Filter ON (o «フィルターのON» si aparece en japonés). No necesitas rellenar nada más.

3
Haz clic en Aceptar y guarda el evento

Cierra el editor del evento. Prueba el juego pulsando F5 (o el botón de Play). Si todo está bien, verás las sombras en el mapa.

¡Las variables primero! Es fundamental que los 8 comandos «Control de Variables» vayan antes del «Comando de Plugin Filter ON». Si el plugin se activa sin valores en las variables, usará cero en todo y las sombras serán invisibles o muy raras.

7

Los valores de cada variable: qué poner y por qué

Aquí explico con todo detalle qué significa cada valor para que puedas personalizar el efecto exactamente como quieras.

Variable 1 · Ángulo de la sombra (0 a 359)

Controla desde dónde viene la luz. Piensa en un reloj donde la luz viene de distintas direcciones:

ValorQué ves en el mapaCuándo usarlo
0La sombra cae hacia ABAJO (el sol está encima, al norte)Sol de mediodía, cielo despejado
45La sombra cae hacia abajo-izquierda (diagonal)Media mañana, sol en el este
90La sombra cae hacia la IZQUIERDAMañana, sol saliendo por el este
180La sombra cae hacia ARRIBAOtro mediodía (invertido)
270La sombra cae hacia la DERECHATarde, sol poniéndose por el oeste
315La sombra cae hacia arriba-derechaNoche con luna en el cielo
⚠️

Los valores 0, 90, 180 y 270 exactos se corrigen automáticamente a ±3° para evitar bugs gráficos. Si ves un pequeño salto al pasar por esos ángulos es normal. Usa 3, 93, 183 ó 273 si quieres esos ángulos sin corrección.

Variable 2 · Opacidad de la sombra (0 a 255)

Cuán visible es la sombra. Un valor de 0 significa que no se ve nada. Un 255 es la máxima intensidad.

ValorEfecto
0Sombra invisible (desactivada visualmente)
100Sombra muy suave, casi transparente. Útil para interiores con poca luz
180Sombra moderada, buen equilibrio para luz de tarde
200⭐ Valor recomendado para un día soleado normal
255Sombra máxima, puede verse demasiado dura

Variables 3, 4 y 5 · Color de la sombra (Rojo, Verde, Azul) (-255 a 255)

Permiten teñir la sombra de cualquier color. Un valor de 0 en los tres significa sombra gris/negra neutra, que es lo más natural. Valores positivos añaden ese color a la sombra; valores negativos lo quitan.

RojoVerdeAzulResultado
000⭐ Sombra gris natural (recomendado para empezar)
8020−60Sombra anaranjada/cálida → perfecta para atardecer
−30−1060Sombra azulada/fría → perfecta para luz de luna
100−30−80Sombra rojiza → antorcha o luz de fuego
−5080−50Sombra verdosa → luz mágica o ambiente de bosque

Variable 6 · Densidad de la sombra (valor recomendado: 18)

Cuán oscura es la sombra proyectada por los edificios sobre el suelo. El plugin recomienda un valor de 18 como punto de partida equilibrado. A más valor, sombra más oscura. No uses valores muy altos (más de 30) porque la sombra puede verse artificial.

ValorEfecto
5Sombra muy débil y sutil
18⭐ Valor recomendado — equilibrado y natural
25Sombra más pronunciada
35+Sombra muy oscura, puede verse poco natural

Variable 7 · Desenfoque del borde (recomendado: 100 a 200)

Cuán suave o duro es el borde de la sombra. Un borde duro parece artificial. Un borde muy desenfocado puede verse borroso. El rango 100–200 es el más natural.

ValorEfecto¿Cuándo usarlo?
50Borde duro, sombra nítidaEvítalo — puede verse con rayas extrañas
100Borde semiduroSolo si quieres sombra más definida
150⭐ Borde natural suavizadoRecomendado para la mayoría de situaciones
200Borde muy suaveLuz de luna, atmósferas difusas

Variable 8 · Tono oscuro del volumen (0 a 100, recomendado: 70)

Controla cuánto se oscurece la cara lateral de los objetos (la parte que no recibe luz directa). Da sensación de volumen 3D. Un 70 es un valor equilibrado. Ponlo a 0 si quieres desactivar este efecto completamente.

ValorEfecto
0Sin efecto de volumen (desactivado)
40Sombreado suave
70⭐ Valor recomendado
100Sombreado muy pronunciado
8

4 configuraciones listas para copiar

Aquí tienes cuatro configuraciones completas que puedes copiar directamente a tus eventos. Solo tienes que poner estos valores en los 8 comandos «Control de Variables» antes de activar el filtro.

☀️ Mediodía de verano
Variable 1 (Ángulo)180
Variable 2 (Opacidad)200
Variable 3 (Rojo)0
Variable 4 (Verde)0
Variable 5 (Azul)0
Variable 6 (Densidad)18
Variable 7 (Desenfoque)150
Variable 8 (Tono)70
🌅 Atardecer cálido
Variable 1 (Ángulo)270
Variable 2 (Opacidad)180
Variable 3 (Rojo)80
Variable 4 (Verde)20
Variable 5 (Azul)-60
Variable 6 (Densidad)22
Variable 7 (Desenfoque)120
Variable 8 (Tono)60
🌙 Noche con luna
Variable 1 (Ángulo)315
Variable 2 (Opacidad)120
Variable 3 (Rojo)-30
Variable 4 (Verde)-10
Variable 5 (Azul)60
Variable 6 (Densidad)12
Variable 7 (Desenfoque)200
Variable 8 (Tono)50
🔴 Antorcha / fuego
Variable 1 (Ángulo)45
Variable 2 (Opacidad)160
Variable 3 (Rojo)100
Variable 4 (Verde)-20
Variable 5 (Azul)-80
Variable 6 (Densidad)20
Variable 7 (Desenfoque)180
Variable 8 (Tono)80
9

Apagar las sombras al entrar en interiores

Cuando el jugador entre en una casa, cueva o cualquier interior, las sombras del exterior no deberían verse. Necesitas un evento en el mapa de interior que las desactive.

1
En el mapa de interior, crea otro evento automático

Igual que antes: doble clic en un tile vacío, Condición de Activación → Proceso Automático.

2
Añade solo el Comando de Plugin «Filter OFF»

Menú de comandos → «Comando de Plugin» → Plugin: Villa_MapLightAndShadow → Comando: Filter OFF.

No necesitas tocar las variables. Solo apagar el filtro es suficiente.

Evento automático en mapa interior — solo esta línea
 Comando de Plugin: Villa_MapLightAndShadow → Filter OFF

Al volver al exterior, el evento de ese mapa llamará de nuevo a «Filter ON» y las sombras volverán. El plugin guarda en caché la información del mapa, así que la segunda vez que entres al mapa exterior las sombras cargarán más rápido.

10

Personajes sin sombra (fantasmas, espíritus…)

Si tienes un evento que no debería proyectar sombra (un fantasma, un ser de luz, un pájaro volando…), puedes excluirlo con una etiqueta especial en el campo «Nota» del evento.

1
Abre el evento del fantasma o personaje especial

Haz doble clic sobre él en el mapa.

2
Busca el campo «Nota» (Note) en la parte superior

En la ventana del evento, encima de la zona de páginas, hay un campo de texto libre llamado «Nota». Es donde suelen ponerse etiquetas especiales para los plugins.

3
Escribe exactamente esto en ese campo:
<noShadow>

Con eso, el plugin ignorará ese evento al calcular sombras. Respeta las mayúsculas y minúsculas exactamente como aparece.

11

Preguntas frecuentes y solución de problemas

Activé el plugin pero no veo ninguna sombra. ¿Qué he hecho mal?
Comprueba estas cosas en orden:

1. ¿La Variable 2 (Opacidad) tiene un valor mayor que 0? Si está en 0, la sombra es invisible.
2. ¿La Variable 6 (Densidad) tiene un valor positivo? Con 0 no hay sombra.
3. ¿Has asignado la etiqueta de terreno 1 a los tiles de pared en el tileset? Sin eso, el plugin no sabe qué tiles proyectan sombra.
4. ¿El evento pone los valores de las variables ANTES de llamar a «Filter ON»? El orden importa.
¿Cómo hago que el sol se mueva poco a poco durante el juego (ciclo día/noche)?
Crea un evento con Condición de Activación: Evento Paralelo (no Automático). Ese tipo de evento se ejecuta en bucle mientras el jugador está en el mapa. Dentro del evento, añade estos comandos:

1. Control de Variables: #0001 += 1 (suma 1 al ángulo cada vez)
2. Condicional: si Variable #0001 ≥ 360 → Control de Variables: #0001 = 0 (lo reinicia al llegar a 360)
3. Esperar: 10 frames (pausa entre cada actualización)
4. Bucle (para que se repita solo)

Así el ángulo aumentará lentamente y las sombras rotarán como si el sol se moviera. Ajusta los «frames» de espera para que vaya más lento (más frames) o más rápido (menos frames).
La sombra aparece en lugares donde no debería (dentro de la casa, sobre el tejado…)
Probablemente falta asignar la etiqueta de terreno 2 (tejado) a los tiles correctos. Los tiles marcados con etiqueta 2 indican al plugin que NO dibuje sombra proyectada encima de ellos. Revisa el tileset y asegúrate de marcar todos los tiles de tejado.
El juego va más lento desde que activé el plugin.
Este plugin es exigente con la tarjeta gráfica. Para mejorar el rendimiento:
1. Usa «Filter OFF» en todos los mapas donde no sean necesarias las sombras (interiores, cuevas, menús).
2. Si el mapa es muy grande, el efecto es más costoso.
3. En dispositivos móviles o PC muy antiguos el plugin puede no funcionar bien.
Puse valores negativos en las variables de color y el juego da error.
Los valores negativos en las variables de color (Rojo, Verde, Azul) son completamente válidos según la documentación del plugin (el rango es de -255 a 255). Para poner un valor negativo en «Control de Variables», elige la operación «=» y escribe directamente el número negativo, por ejemplo «-60». No tiene que darte error. Si lo da, prueba a poner primero 0 y luego restar: Variable = 0 y luego Variable -= 60.
¿Puedo cambiar el color de la sombra para simular una tormenta o un amanecer gradual?
Sí. Igual que el ciclo día/noche, crea un Evento Paralelo que vaya modificando poco a poco las variables de color (3, 4 y 5) y el ángulo (1). Por ejemplo, para simular un amanecer: empieza con Rojo=−30, Verde=−20, Azul=20 (luz fría de madrugada) e incrementa el Rojo y reduce el Azul gradualmente hasta llegar a Rojo=80, Verde=20, Azul=−40 (luz cálida de mañana). El plugin actualiza el color en tiempo real con cada cambio de variable.
12

Lista de comprobación final

Antes de dar el plugin por configurado, repasa que hayas hecho todo esto:

  • Copié Villa_MapLightAndShadow.js en la carpeta js/plugins/ del proyecto
  • El plugin está activado (ON) en el Gestor de Plugins
  • Creé y nombré las 8 variables de juego (del 1 al 8, o las que elegí)
  • Los parámetros del plugin apuntan a los números de variable correctos (por defecto 1–8, no hay que cambiarlos si usé esas)
  • En el tileset exterior, los tiles de PARED tienen etiqueta de terreno 1
  • En el tileset, los tiles de TEJADO tienen etiqueta de terreno 2
  • En el mapa exterior hay un evento Automático que asigna valores a las 8 variables
  • Ese mismo evento llama a «Filter ON» después de asignar las variables
  • En los mapas de interior hay un evento Automático con «Filter OFF»
  • Los eventos que no deben proyectar sombra tienen <noShadow> en su campo Nota
  • Probé el juego con F5 y veo las sombras correctamente
🎮

¡Ya está todo! Si has seguido el tutorial hasta aquí, tu juego debería mostrar sombras dinámicas. El siguiente paso es experimentar: prueba distintos ángulos, cambia los colores, crea eventos paralelos que hagan rotar el sol. Cada pequeño ajuste transforma la atmósfera del mapa por completo.