Releases: pokejgameryt-ship-it/nuzlocke-overlay
Releases · pokejgameryt-ship-it/nuzlocke-overlay
Release list
v1.1.1-beta.1 (BETA)
Nuzlocke Overlay v1.1.1-beta.1
Cascade fallback de parsers
- Cascada completa: PKHeX → parser nativo → re-detectar → alternativas Gen3 — Si un parser no encuentra Pokemon, salta al siguiente automáticamente
- Step 2: Parser nativo — Se ejecuta con el juego seleccionado por el usuario cuando PKHeX falla o devuelve 0 Pokemon
- Step 3: Re-detección — Si el parser nativo falla, re-detecta el formato del guardado y reintenta
- Step 4: Gen3 alternativos — Para guardados Gen3, prueba FRLG, RSE y Emerald independientemente de lo seleccionado (soporte CFRU/fangames)
Soporte para Radical Red / Fangames
- Parser Gen3: guardados CFRU — Detecta datos de equipo sin cifrar (checksum=0) y los lee correctamente
- Entrada de Radical Red — Añadido al desplegable de juegos bajo Gen 3
Correcciones de errores (desde v1.1.0)
- Comparación de versiones — Elimina sufijos de pre-lanzamiento antes de comparar
- Descarga .NET en NSIS — Usa curl como método principal con NSISdl como respaldo
- ZIP de registro corrupto — Corregida importación de archiver
- Endpoint de registro — Reemplazado por botón "Enviar registros al desarrollador"
- Sprites de formularios — Corregida resolución en todos los estilos gráficos
v1.1.0
Nuzlocke Overlay v1.1.0
Nuevas funciones
- Modo Manual — Selecciona tu equipo manualmente sin save file
- Busqueda de Pokemon — Busca por nombre o numero Pokedex en el selector manual
- Opciones especiales — "Ninguno" (vacio) y "Huevo" (sprite de huevo)
- Fakemon — Importa sprites personalizados, numeracion automatica F001-F999
- Formas regionales — Alola, Galar, Hisui y Paldea con IDs negativos
- Panel resizable — Arrastra el divisor entre paneles para redimensionar
- Secciones colapsables — Click en los titulos para expandir/colapsar
- Toggle de betas — Checkbox en Configuracion para recibir actualizaciones beta
Correcciones
- Modo Manual arreglado — Al cambiar a manual, se ignoran las actualizaciones del file watcher
- Preview arreglada — El overlay ahora muestra el equipo manual correcto
- File browser arreglado — Muestra todos los archivos por defecto (3DS, NDS, GBA, etc.)
- Overflow corregido — Los slots ya no se salen de su contenedor
- Instalador auto-descarga .NET 8.0 si no esta instalado
v1.1.0-beta.1 (BETA)
Nuzlocke Overlay v1.1.0-beta.1 (BETA)
NOTA: Esta es una version BETA. Puede contener errores. Reporta cualquier problema.
Nuevas funciones
- Modo Manual — Selecciona tu equipo manualmente sin save file
- Busqueda de Pokemon — Busca por nombre o numero Pokedex en el selector manual
- Opciones especiales — "Ninguno" (vacio) y "Huevo" (sprite de huevo)
- Fakemon — Importa sprites personalizados, numeracion automatica F001-F999
- Formas regionales — Alola, Galar, Hisui y Paldea con IDs negativos
- Panel resizable — Arrastra el divisor entre paneles para redimensionar
- Secciones colapsables — Click en los titulos para expandir/colapsar
- Toggle de betas — Checkbox en Configuracion para recibir actualizaciones beta
Sprites (auto-generated, do not download)
Auto-generated storage release for the Nuzlocke Overlay app. Do not download manually.
v1.0.3
Nuzlocke Overlay v1.0.3
Instalador NSIS
- Descarga automática de .NET 8.0: Si el usuario no tiene .NET 8.0 Desktop Runtime, el instalador lo descarga e instala automáticamente desde Microsoft (~60MB)
- DLLs de PKHeX incluidas: PkHexReader.dll + PKHeX.Core.dll van dentro del instalador en
resources/pkhex/ - Icono personalizado para el instalador y desinstalador
Motor de lectura: PKHeX
- PKHeX para TODAS las generaciones (Gen 1-9) — La misma biblioteca oficial de la comunidad Pokemon para leer todos los saves
- Parser nativo como respaldo — Solo se usa cuando PKHeX no está disponible (sin .NET) o devuelve equipo vacío (hackroms)
- Corrección Gen1: IDs internos de especies (Rhydon=0x01, Pikachu=0x54, Bulbasaur=0x99...) con tabla de 190 entradas
- Corrección Gen4: Decodificación de nicknames con codificación custom de caracteres (493 entradas)
- Corrección Gen4 PK5: Decryption con XOR key basada en checksum
- Corrección Gen4 HGSS: Offsets correctos (GeneralSize=0xF628, StorageSize=0x12310)
- Trimming DSV/GBA mejorado: Verifica últimos 512 bytes para footer de DeSmuME, maneja tamaños GBA (128KB/256KB) y NDS (512KB)
Detección de saves
- Validación relajada Gen3: Sector validation sin número mágico estricto para hackroms
- Límites de especies aumentados: Gen1: 151→255, Gen2: 251→255, Gen3: 386→1025, Gen4: 493→1025
- UTF-16LE para Switch/BDSP: Encoding correcto para nombres de Gen8-9
Cámara virtual
- CSP corregido:
mediastream:añadido amedia-srcpara OBS Virtual Camera - Logging detallado: Errores de cámara con mensajes amigables (NotAllowedError, NotFoundError, OverconstrainedError)
Detección de .NET
- 4 rutas de búsqueda:
%USERPROFILE%\.dotnet,%LOCALAPPDATA%\.dotnet,where dotnet,C:\Program Files\dotnet\dotnet.exe - Banner persistente: Banner rojo en la app si .NET no está detectado (i18n en 6 idiomas)
- Diálogo de descarga: Link directo a la página de descarga de Microsoft
Fuentes del sistema
- Selector de fuentes completamente rediseñado: Dropdown searchable con preview de cada fuente
- Eliminado skipPattern agresivo: Ahora usa solo
skipExact— todas las fuentes instaladas aparecen
Arquitectura
- Logger estructurado: Dual output
.log(humano-readable) +.jsonl(JSON Lines) - Metadatos de sesión: OS, .NET version, RAM, CPUs
- Auto-upload de logs:
LogUploaderenvía eventos a endpoint HTTP configurable - Limpieza automática de logs: En cada actualización de versión, logs viejos se eliminan
- Google Apps Script receptor:
scripts/log-receiver.gsalmacena en Google Sheet (Events, Sessions, Errors) - Export ZIP de diagnósticos: Incluye logs + session-info + projects + config + settings
Seguridad
- Servidor HTTP en 127.0.0.1: Solo accesible localmente
- open-external validado: Solo permite URLs
https://
Interfaz
- Settings rediseñados: Secciones Configuración, Recursos, Diagnósticos
- Links sociales con iconos SVG: Twitch, YouTube, TikTok, Discord, GitHub
- Buscador y orden en barra lateral: Filtrar/ordenar proyectos por nombre o fecha
- Tour interactivo: 11 pasos con spotlight (i18n en 6 idiomas)
- Eliminar proyecto: Doble confirmación antes de borrar
- Sistema i18n completo: 100+ claves en 6 idiomas (ES, EN, FR, DE, JA, RU)
- Selector de idioma en primera ejecución
- Changelog popup: Solo se muestra la primera vez por versión
- Sistema de updates: Notificación de nueva versión + descarga del instalador desde GitHub Releases
Fix del Update Checker
- No muestra versiones beta: Usa
/releasesy filtra pre-releases en vez de/releases/latest - Comparación semántica:
1.0.4-beta.1no se considera superior a1.0.3
v1.0.2
Nuzlocke Overlay v1.0.2 - INSTALADOR MEJORADO (AHORA DESCARGA TAMBIEN LOS RECURSOS)
Tipo de instalacion
- Windows (Instalador NSIS):
NuzlockeOverlay-Setup-1.0.2.exe— Instalador grafico con asistente. Instala enC:\Program Files\Nuzlocke Overlay\. Incluye desinstalador. - Windows (Updater):
Updater-Windows.bat— Script de actualizacion automatica. Descarga el exe + Recursos desde Google Drive. - macOS (Updater):
Updater-macOS.sh— Script bash para macOS. Descarga app + Recursos. - Linux (Updater):
Updater-Linux.sh— Script bash para Linux. Descarga app + Recursos.
Nuevas funciones
Seccion "Recursos / Sprites" en Configuracion
- Boton "Descargar Sprites" — Descarga automatica desde Google Drive (~2GB, 10,018 archivos). Usa manifiesto JSON pre-generado con IDs de archivos. Descarga 5 archivos en paralelo con reintentos automaticos.
- Boton "Abrir carpeta de Recursos" — Abre la carpeta
AppData/Roaming/nuzlocke-overlay/Recursos/en el explorador para pegar estilos manualmente. - Descarga automatica al iniciar — Al iniciar por primera vez sin Sprites, pregunta si quieres descargar.
Buscador de fuentes del sistema
- Picker de fuentes con busqueda en tiempo real, preview visual y tags de categoria (serif, sans-serif, display, handwriting).
- Detecta ~539 fuentes del sistema via registro de Windows (HKLM + HKCU).
- Fix: PowerShell via
execFileSync+ script temporal (resuelve problemas de quoting en builds empaquetados).
Sistema de actualizaciones
- Comprobacion automatica de nuevas versiones al iniciar (desde GitHub Releases).
- Popup de notificacion con opcion "Omitir esta version" (no vuelve a aparecer).
- Boton "Buscar actualizaciones" en Configuracion.
- Popup de changelog al instalar nueva version con notas de la release formateadas por secciones.
Popup de changelog
- Resumen rapido con secciones "Nuevas funciones" y "Correcciones" traducidas al idioma del usuario.
- Formato limpio con bullet points y headers en color rojo.
Ctrl+A y Shift+Click
- Ctrl+A selecciona todos los slots (sprites + nicknames) a la vez.
- Shift+Click selecciona un rango de slots del mismo tipo (como el explorador de archivos).
- Ctrl+Click permite seleccionar slots individuales de cualquier tipo.
Correcciones
NSIS Installer
- Botones del instalador no funcionaban —
init()crasheaba sin try/catch. Cadaawaitenvuelto individualmente en try/catch. setupListeners()ahora se llama PRIMERO en init() antes de cualquier operacion asincrona.
Estilos no aparecian en el selector
- El scanner tenia un umbral de 150 archivos por carpeta para detectar estilos, pero los sprites de Google Drive tienen ~50 archivos por estilo. Umbral reducido a 1.
- Despues de descargar Sprites, el selector de estilos no se actualizaba. Ahora se envia un evento
styles-refreshedal renderer para repoblar el selector. - Cache de estilos se invalida correctamente al refrescar.
Electron
- Barra de menu nativa eliminada (
mainWindow.setMenu(null)) — la app se ve limpio en OBS. - CSP corregido: anadido
'unsafe-eval'ascript-srcpara builds empaquetados.
Logger
Logger.setLogDir()ahora escribe enAppData/Roaming/nuzlocke-overlay/logs/en vez de__dirname(que fallaba con EPERM en Program Files).resolveBaseDir()devuelveapp.getPath('userData')cuandoapp.isPackagedy no hayPORTABLE_EXECUTABLE_DIR.
Sprites
scanSprites()ahora devuelve[]si la carpeta no existe (ENOENT fix).SPRITES_ROOTresolucion multi-ubicacion: userData -> beside exe -> fallback userData.- Placeholder en OBS: usa
pokemon.spriteUrlen vez depokemon.speciesId.
Google Drive Download
- Reescrito completamente. La API v3 de Google Drive requiere API key que no tenemos.
- Solucion: scraper (
scripts/scrape-gdrive.js) que generapublic/recursos-manifest.jsoncon 10,018 IDs de archivos. - App descarga manifiesto desde GitHub raw URL, luego archivos via
https://drive.google.com/uc?export=download&id=FILE_ID&confirm=t. - 5 workers en paralelo, redirect chain recursivo (301-308), reintentos automaticos (max 3).
fetchManifest()con logging de errores detallado (muestra los primeros 50 chars de la respuesta).
i18n
- Fix: string corrupto en espanol
noPreview(comillas rotas). - Anadidas keys para todas las secciones nuevas en 6 idiomas (ES, EN, FR, DE, JA, RU).
Archivos incluidos
| Archivo | Tipo | Tamano aprox. | Descripcion |
|---|---|---|---|
NuzlockeOverlay-Setup-1.0.2.exe |
Instalador Windows | ~100MB | Instalador NSIS con asistente grafico |
Updater-Windows.bat |
Script | ~5KB | Descarga exe + Recursos en Windows |
Updater-macOS.sh |
Script | ~5KB | Descarga app + Recursos en macOS |
Updater-Linux.sh |
Script | ~5KB | Descarga app + Recursos en Linux |
Requisitos
- Windows 10/11 (64-bit)
- Electron 28 / Node.js runtime incluido
- .NET 8.0 Runtime (para PKHeX, se instala automaticamente)
Enlaces
v1.0.1
Nuzlocke Overlay v1.0.1 - RELLENO AUTOMATICO (PLACEHOLDERS) y FUENTES CUSTOM (para nicknames)
Tipo de instalacion
- Windows (Instalador .bat):
Instalador-Windows.bat— Script batch que instala todo automaticamente enAppData\Local\NuzlockeOverlay. - macOS (Instalador .sh):
Instalador-macOS.sh— Script bash para macOS. - Linux (Instalador .sh):
Instalador-Linux.sh— Script bash para Linux. - Ejecutable portable:
NuzlockeOverlay-Windows-x64.exe— Ejecutable sin instalacion.
Nuevas funciones
Buscador de fuentes del sistema
- Selector de fuente con buscador en tiempo real (filter por nombre).
- Preview visual de cada fuente con su nombre renderizado en ella.
- Tags de categoria: serif, sans-serif, display, handwriting, monospace.
- Detecta fuentes del sistema via PowerShell (
Get-ItemPropertyde registro Windows HKLM y HKCU). - Fix: strip
(TrueType)de nombres, split por&, filtrar variantes bold/italic. - Fix: leer HKCU tambien (fuentes instaladas por el usuario).
Busqueda y ordenacion de proyectos
- Barra de busqueda para filtrar proyectos por nombre.
- Ordenacion: A-Z, Z-A, Mas reciente, Mas antiguo.
- Preview de sprite del Pokemon en la lista de proyectos.
Sistema de actualizaciones
- Comparacion de tamano de archivo para auto-update en scripts de instalacion.
Correcciones
Overlay
- Fix placeholder en OBS: usa
pokemon.spriteUrlen vez depokemon.speciesId. - Fix ENOENT:
scanSprites()devuelve[]si la carpeta no existe (no crashea).
Tour
- Fix backdrop con
pointer-events: nonepara que los targets sean clickeables.
Rutas
APP_DIRpara archivos bundled en builds portables (no mas confusion con__dirname).
Archivos incluidos
| Archivo | Tipo | Tamano aprox. | Descripcion |
|---|---|---|---|
NuzlockeOverlay-Windows-x64.exe |
Ejecutable portable | ~200MB | Ejecutable sin instalacion |
Instalador-Windows.bat |
Script | ~10KB | Instalador automatico para Windows |
Instalador-macOS.sh |
Script | ~5KB | Instalador para macOS |
Instalador-Linux.sh |
Script | ~5KB | Instalador para Linux |
Requisitos
- Windows 10/11 (64-bit), macOS, o Linux
- Electron 28 / Node.js runtime incluido
- .NET 8.0 Runtime (para PKHeX, Gen 6-9)
Enlaces
v1.0.0
Nuzlocke Overlay v1.0.0
Tipo de instalacion
- Windows (Instalador .bat):
Instalador-Windows.bat— Script batch que instala todo automaticamente enAppData\Local\NuzlockeOverlay. - macOS (Instalador .sh):
Instalador-macOS.sh— Script bash para macOS. - Linux (Instalador .sh):
Instalador-Linux.sh— Script bash para Linux. - Ejecutable portable:
NuzlockeOverlay-Windows-x64.exe— Ejecutable sin instalacion.
Nuevas funciones
Core: Overlay Pokemon para OBS
- Overlay en tiempo real que muestra el equipo Pokemon mientras juegas.
- Compatible con OBS Browser Source (localhost HTTP server en puerto 19896).
- Slots de equipo configurables (6 posiciones arrastrables en el canvas).
- Slots de nickname configurables debajo de cada Pokemon.
- Placeholder con Pokeball cuando no hay Pokemon en un slot.
Soporte de saves: Gen 1-9
- Gen 1 (R/B/Y): Parser nativo con soporte de Red, Blue, Yellow.
- Gen 2 (G/S/C): Parser nativo con soporte de Gold, Silver, Crystal. Deteccion de shiny.
- Gen 3 (R/S/E/FR/LG): Parser nativo con offsets para Ruby, Sapphire, Emerald, FireRed, LeafGreen.
- Gen 4 (D/P/Pt/HG/SS): Parser nativo con cifrado XOR, shuffle blocks, encoding de nombres custom.
- Gen 5 (B/W/B2/W2): Parser nativo con soporte de Black, White, Black 2, White 2.
- Gen 6 (X/Y/ORAS): Integracion con PKHeX (C# .NET 8.0).
- Gen 7 (S/M/USUM): Integracion con PKHeX. Soporte de saves de Citra (3DS emulator).
- Gen 8 (Sword/Shield/BDSP/LA): Integracion con PKHeX. Deteccion BDSP via hash.
- Gen 9 (Scarlet/Violet): Integracion con PKHeX.
- Deteccion automatica de juego: Analyza cabecera del save para detectar generacion y juego.
- PKHeX fallback: Cuando la deteccion automatica falla, permite seleccionar juego manualmente.
Sprites y estilos
- 43+ estilos de sprites organizados por generacion (Gen1-9 + Legends Arceus).
- Estilos incluyen: Overworld, Animated, Sugimori, Global Artworks, Home 3D, BDSP, Battle Trozei, Mystery Dungeon, etc.
- Deteccion automatica de tipo de sprite (static/animated), patron de nombres (numbered/named/padded), y generaciones.
- Soporte de shiny sprites con busqueda en subdirectorios.
- Soporte de genero (male/female) con merge automatico de directorios.
- Resolucion fuzzy de sprites: busca multiples formatos de nombre (guiones, guion bajo, prefijos BT, pm, conquest).
- Buscador de estilos con preview.
- Sprites alojados en Google Drive (~2GB).
Configuracion
- Panel de configuracion con opciones de idioma, modo en segundo plano, y tutorial.
- Selector de idioma con 6 opciones: Espanol, English, Francais, Deutsch, Nihongo, Russkiy.
- Full i18n system con
data-i18nattributes para traduccion automatica. - Toggle de modo en segundo plano (minimizar a bandeja del sistema).
Proyectos
- Sistema de multiples proyectos (cada proyecto = un save file).
- Crear, renombrar y eliminar proyectos.
- Busqueda y ordenacion de proyectos (A-Z, Z-A, mas reciente, mas antiguo).
- Cada proyecto guarda: ruta del save, estilo de sprite, configuracion de slots, nicknames, fuente.
Tutorial guiado
- Tour interactivo de 8 pasos con spotlight (box-shadow technique).
- Pasos: nombre de proyecto, seleccion de save, estilo de sprites, layout en canvas, nicknames, OBS.
- Botones Siguiente/Anterior con navigacion.
- Popover que evita superponer con el target (min-area scoring).
- Glow rojo en el spotlight del paso actual.
- Se puede re-iniciar desde Configuracion.
File Watcher
- Monitoreo en tiempo real del archivo de save.
- Auto-refresh cada 2 segundos cuando el save cambia.
- Parsing automatico y envio de datos al overlay via SSE (Server-Sent Events).
Correcciones
Sprites
- Fix sprite URLs para ejecutable portable (APP_DIR vs __dirname).
- Fix per-user projects/presets (no mas shares entre usuarios).
- Fix Gen2 offsets para Crystal.
- Fix shiny detection para Gen5/BDSP.
- Fix Gen6/7 level offset.
PKHeX
- Fix JSON parse error con caracteres de control en otName.
- Fix PKHeX timeout de 30s con kill timer de 35s.
- PKHeX fallback para game detection cuando auto-detect falla.
- SanitizeString() en C# para limpiar nombres con caracteres invalidos.
Instalador
- Fix installer no longer blocks on missing megacmd.
- Sprites descargables como opcional (no obligatorio).
- Replace MEGA links with Google Drive for sprites download.
- Use PowerShell para download mas fiable con verificacion de tamano.
Tour
- Tour ya no avanza automaticamente al hacer click.
- Backdrop con
pointer-events: nonepara que los targets sean clickeables. - Fix tour overlay multiple iteraciones hasta encontrar la tecnica correcta (box-shadow).
- Popover nunca cubre el target (min-overlap scoring).
Archivos incluidos
| Archivo | Tipo | Tamano aprox. | Descripcion |
|---|---|---|---|
NuzlockeOverlay-Windows-x64.exe |
Ejecutable portable | ~200MB | Ejecutable sin instalacion |
Instalador-Windows.bat |
Script | ~10KB | Instalador automatico para Windows |
Instalador-macOS.sh |
Script | ~5KB | Instalador para macOS |
Instalador-Linux.sh |
Script | ~5KB | Instalador para Linux |
Requisitos
- Windows 10/11 (64-bit), macOS, o Linux
- Electron 28 / Node.js runtime incluido
- .NET 8.0 Runtime (para PKHeX, Gen 6-9)