Tu juego está terminado. El siguiente paso es ponerlo en las manos de los jugadores.
Esta guía cubre cómo compilar tu juego en Ren'Py 8.5.2 y publicarlo en itch.io.
Preparación para la compilación
Configuración de options.rpy
Establece la información básica de compilación en options.rpy. Se genera una plantilla al crear un proyecto — solo actualiza los valores.
define config.name = "My Visual Novel"
define build.name = "MyVisualNovel"
define config.version = "1.0"
config.name es el título de tu juego. build.name se usa para los nombres de archivo de distribución — no se permiten espacios, dos puntos ni punto y coma. config.version es el número de versión, también referenciado al subir a itch.io.
Ejecutando Lint
Siempre ejecuta Lint antes de compilar. Haz clic en "Check Script (Lint)" en el Launcher.
Lint verifica:
- Referencias a imágenes o personajes no definidos
- Labels inalcanzables
- Archivos de audio faltantes
- Otros problemas potenciales
Corrige cualquier error antes de continuar. Las advertencias no son críticas pero deberían resolverse cuando sea posible.
Cambiando el icono
Reemplaza el icono predeterminado de Ren'Py con el tuyo.
mygame/ ← Directorio base (coloca los iconos aquí)
├── icon.ico ← Windows (256x256 recomendado)
├── icon.icns ← macOS
└── game/
└── ...
Colócalos en el directorio base de tu proyecto (el padre de game/).
Ejecutando la compilación
Compilando desde el Launcher
- Selecciona tu proyecto en el Launcher de Ren'Py
- Haz clic en "Build Distributions"
- Selecciona qué paquetes compilar (todas las plataformas están seleccionadas por defecto)
- Cuando la compilación termine, se abre la carpeta de salida
Archivos de salida
Con la configuración predeterminada, se generan estos archivos:
| Archivo | Destino |
|---|---|
MyVisualNovel-1.0-pc.zip | Windows + Linux |
MyVisualNovel-1.0-mac.zip | macOS |
El paquete pc incluye ejecutables para Windows y Linux. Los jugadores simplemente ejecutan el que corresponde a su sistema operativo.
Notas específicas por plataforma
Windows
No se necesita configuración especial. Extrae el zip y haz doble clic en el .exe. La plataforma más fácil.
macOS — El problema de Gatekeeper
macOS restringe las aplicaciones no firmadas. Desde macOS Sequoia (15.0), estas restricciones se han vuelto más estrictas.
Para lanzar un juego no firmado, los jugadores necesitan ejecutar esto en Terminal:
xattr -r -d com.apple.quarantine /path/to/MyVisualNovel.app
Linux
Ejecuta el archivo .sh incluido en el paquete pc. Si no tiene permisos de ejecución, ejecuta chmod +x primero.
Android
Las compilaciones de Android usan RAPT (Ren'Py Android Packaging Tool).
- En el Launcher, ve a "Android" → "Install SDK"
- Se requiere JDK 21 (Adoptium recomendado)
- "Generate Keys" para crear claves de firma (haz respaldo de estas)
- "Configure" para establecer nombre de paquete, icono, etc.
- "Build" para generar un APK o AAB
Usa AAB (Android App Bundle) para Google Play, APK para distribución directa.
Web (Beta)
También puedes compilar una versión jugable en navegador.
- En el Launcher, ve a "Web (Beta)" → "Build Web Application"
- Abre
index.htmlen la carpeta de salida para probar
Las compilaciones web son ideales para "Jugar en navegador" en itch.io, pero los tamaños de archivo grandes significan tiempos de carga más largos. Optimiza tus imágenes y audio.
Publicando en itch.io
Subida manual
- Crea una cuenta en itch.io
- Ve a Dashboard → "Create new project"
- Completa los detalles del proyecto (título, descripción, etiquetas, etc.)
- Establece "Kind of project" en "Downloadable"
- Sube tus archivos zip compilados
- Establece etiquetas de plataforma (Windows / macOS / Linux) para cada archivo
- Haz clic en "Save & view page" para publicar
Para compilaciones web, establece "Kind of project" en "HTML", sube el zip y marca "This file will be played in the browser".
Auto-subida desde el Launcher
Agrega esto a options.rpy para subir directamente desde el Launcher:
define build.itch_project = "username/project-name"
Después de compilar, aparece un botón "Upload to itch.io". El primer uso te pedirá instalar e iniciar sesión en la herramienta CLI de itch (butler).
La auto-subida mapea archivos a canales de itch.io según patrones de nombre de archivo:
| Patrón de archivo | Canal |
|---|---|
*-pc.zip | win-linux |
*-mac.zip | osx |
*-linux.tar.bz2 | linux |
*-release.apk | android |
Controlando archivos con build.classify()
La configuración predeterminada funciona para la mayoría de los casos, pero usa build.classify() cuando necesites excluir archivos o personalizar el archivado.
Excluyendo archivos de desarrollo
init python:
# Excluir archivos de Photoshop e ilustración
build.classify("**/*.psd", None)
build.classify("**/*.clip", None)
# Excluir notas de desarrollo
build.classify("**/TODO.txt", None)
Establecer None excluye los archivos que coinciden con el patrón de la compilación.
Archivando archivos
Agrupa imágenes y audio en archivos .rpa para reducir la cantidad de archivos. Esto ayuda con el límite de 1000 archivos de itch.io para compilaciones web.
init python:
build.classify("game/**.png", "archive")
build.classify("game/**.jpg", "archive")
build.classify("game/**.ogg", "archive")
Sintaxis de patrones
| Patrón | Significado |
|---|---|
* | Cualquier carácter excepto separadores de directorio |
** | Cualquier carácter incluyendo separadores de directorio |
/ | Separador de directorio |
Los patrones se evalúan de arriba hacia abajo — la primera coincidencia gana. Coloca los patrones más específicos primero.
Conclusión
Lo que cubrimos:
- Preparación de compilación: configuración de
options.rpy, verificación Lint, reemplazo de icono - Ejecutando la compilación: unos pocos clics en el Launcher para generar archivos zip
- Notas de plataforma: problemas de Gatekeeper en macOS, gestión de claves de firma en Android, tamaño de archivo en compilación web
- Publicando en itch.io: subida manual y auto-subida desde el Launcher
- build.classify(): excluyendo archivos de desarrollo, archivando y el truco del prefijo
#
Para lo básico de Ren'Py, consulta la guía de inicio. Para opciones y ramificaciones, consulta la guía de opciones. Para agregar BGM y efectos de sonido, consulta la guía de audio.
Recursos oficiales:
- Building Distributions — referencia oficial de compilación
- Android — detalles de compilación para Android
- Web — detalles de compilación web
- itch.io — plataforma de distribución de juegos independientes
- r/RenPy — comunidad