# Guía de motores soportados NovelasVM soporta varios motores de novelas visuales. Esta guía describe cómo preparar y publicar cada uno. ## Tabla de motores | Motor | Extensión/detección | Build | URL resultante | |-------|---------------------|-------|----------------| | Ren'Py | `project.json`, `game/script.rpy` | Compilación web | `/games//` | | Unity WebGL | `Build/`, `TemplateData/`, `index.html` | Copia directa | `/games//` | | Web genérico | `index.html` | Copia directa | `/games//` | | ONScripter | `0.txt`, `nscript.dat`, `ons.cfg` | Copia + OnscripterYuri | `/games//` | | ONScripter-RU / Umineko | `*.file`, `default.cfg`, `chiru.file` | Contenedor Docker | `/games/umineko/` | --- ## Ren'Py ### Estructura esperada ``` mi-novela/ ├── project.json ├── game/ │ ├── script.rpy │ ├── images/ │ └── audio/ └── meta.json ``` ### Comando ```bash sudo /opt/novelas/bin/build-novela.sh mi-novela /opt/novelas/projects/mi-novela renpy ``` ### Consideraciones - Requiere `xvfb` para compilar sin display. - El build puede tardar varios minutos. - Se generan `index.html`, `renpy.js`, `renpy.wasm`, `renpy.data`, `game.zip`. - Recibe headers `COOP`/`COEP` automáticamente. --- ## Unity WebGL ### Estructura esperada ``` mi-juego/ ├── index.html ├── Build/ │ ├── mi-juego.data.gz │ ├── mi-juego.framework.js.gz │ ├── mi-juego.loader.js │ └── mi-juego.wasm.gz └── TemplateData/ ├── style.css └── UnityProgress.js ``` ### Comando ```bash sudo /opt/novelas/bin/build-novela.sh mi-juego /opt/novelas/projects/mi-juego unity ``` ### Consideraciones - No requiere compilación adicional. - Asegúrate de que los nombres de archivo en `index.html` coincidan con los de `Build/`. --- ## Web genérico ### Estructura esperada ``` mi-web/ ├── index.html ├── css/ ├── js/ └── assets/ ``` ### Comando ```bash sudo /opt/novelas/bin/build-novela.sh mi-web /opt/novelas/projects/mi-web web ``` ### Consideraciones - Cualquier proyecto con un `index.html` funciona. - Si carga recursos externos, asegúrate de que CORS lo permita. --- ## ONScripter (genérico) ### Estructura esperada ``` mi-ons/ ├── 0.txt # o nscript.dat ├── default.ttf ├── ons.cfg ├── backgrounds/ ├── sprites/ └── sound/ ``` ### Comando ```bash sudo /opt/novelas/bin/build-novela.sh mi-ons /opt/novelas/projects/mi-ons onscripter ``` ### Consideraciones - Usa OnscripterYuri web. - Si el script está en `nscript.dat`, OnscripterYuri debería soportarlo. - No soporta los archivos `.file` encriptados de ONScripter-RU (ver Umineko). --- ## ONScripter-RU / Umineko Ver [`docs/UMINEKO.md`](UMINEKO.md) para la guía completa. Resumen: ```bash sudo /opt/novelas/bin/umineko-web.sh start ``` - Se sirve desde contenedor Docker en `http://IP:8081/`. - El portal redirige desde `/games/umineko/`.