changelog.md

This commit is contained in:
2026-04-03 11:25:52 +02:00
parent f8166787a6
commit efd1227b8b

View File

@@ -1,170 +1,204 @@
# Changelog # Changelog
All notable changes to JailDoctor's Dilemma are documented here. Tots els canvis notables de JailDoctor's Dilemma es documenten ací.
---
## [v1.13] - 2026-04-03
### Novetats
- **Editor de mapes (mode debug):** editor complet de nivells integrat en el joc
- Drag & drop de jugador, enemics, boundaries i ítems
- Editor de tiles amb TilePicker (amb spacing_in i spacing_out)
- Edició de propietats d'enemics i d'habitacions
- MiniMapa amb visualització de tiles i càlcul correcte de minipíxels
- Rejilla configurable
- Navegació entre habitacions (left, right, up, down)
- Guardat automàtic dels canvis en l'habitació
- Creació i eliminació d'habitacions
- Nova font específica per a l'editor
- Opcions persistents de l'editor
- Tecla 9 per a entrar i eixir de l'editor
- Al eixir de l'editor, recarrega l'habitació amb els canvis
- Mostra les rutes dels enemics
- RoomSaver millorat (ja no corromp els fitxers YAML)
- Status bar de l'editor reorganitzada
- **Àmbits en la consola:** filtratge de comandos per mode (editor, debug, global)
- **Nou format per a assets.yaml:** ResourceList gestiona addAsset i removeAsset
- Eliminats fitxers sobrants de frameworks
- Arreglos en stats.cpp
- Posat un poc d'ordre en els comandos de la consola
### Correccions
- Fix: bug que feia que en l'editor, al canviar d'habitació el renderInfo tornara a eixir
- Fix: faltava propietat mirror en els enemics
- Fix: al fer clic es tanca la consola
- Arreglat el càlcul dels minipíxels en els tiles amb transparent
- Verificació que l'habitació de debug.yaml existisca
--- ---
## [v1.12] - 2026-04-02 ## [v1.12] - 2026-04-02
### Novedades ### Novetats
- **Color del jugador configurable:** se puede cambiar desde la consola (persistente), con comprobación automática para evitar que coincida con el color de fondo - **Color del jugador configurable:** es pot canviar des de la consola (persistent), amb comprovació automàtica per a evitar que coincidisca amb el color de fons
- **Skins de enemigos para el jugador:** posibilidad de usar skins de enemigos en el jugador, con cambio en caliente en el marcador - **Skins d'enemics per al jugador:** possibilitat d'utilitzar skins d'enemics en el jugador, amb canvi en calent en el marcador
- **Indicador de trucos mejorado:** ya no usa el color del jugador, ahora se muestra en el marcador - **Indicador de trucs millorat:** ja no gasta el color del jugador, ara es mostra al marcador
- **Shader presets por nombre:** se puede establecer un shader preset directamente por nombre desde la consola, con autocompletado - **Shader presets per nom:** es pot establir un shader preset directament per nom des de la consola, amb autocompletat
- **Comandos externos en consola:** la consola lee los comandos desde un fichero externo - **Comandos externs en consola:** la consola llig els comandos des d'un fitxer extern
- **Gestión de paletas mejorada:** - **Gestió de paletes millorada:**
- Nuevas paletas añadidas - Noves paletes afegides
- Restaurado el orden original de las paletas - Restaurat l'ordre original de les paletes
- Opción de reordenar paletas automáticamente por luminosidad o parecido a la paleta de Spectrum - Opció de reordenar paletes automàticament per luminositat o paregut a la paleta d'Spectrum
- Nombres "pretty" para las paletas (cambia los `-` por ` `) - Noms "pretty" per a les paletes (canvia els `-` per ` `)
- Eliminadas responsabilidades de `Options` sobre las paletas - Eliminades responsabilitats d'`Options` sobre les paletes
- Nueva herramienta en Python para reordenar paletas - Nova ferramenta en Python per a reordenar paletes
- **Aceleración hardware configurable:** posibilidad de desactivar la aceleración hardware desde el fichero de configuración; si no hay aceleración, se deshabilitan teclas y comandos de shaders - **Acceleració hardware configurable:** possibilitat de desactivar l'acceleració hardware des del fitxer de configuració; si no hi ha acceleració, es deshabiliten tecles i comandos de shaders
- **Autocompletado mejorado:** shader preset y palette autocompletan con la lista de nombres - **Autocompletat millorat:** shader preset i palette autocompleten amb la llista de noms
- Reestructuración de comandos de consola - Reestructuració de comandos de consola
- Reestructuración del apartado de vídeo en `config.yaml` - Reestructuració de l'apartat de vídeo en `config.yaml`
- Optimizaciones en `Surface` - Optimitzacions en `Surface`
### Correcciones ### Correccions
- Fix: entrar y salir del modo debug mantiene el estado previo del jugador - Fix: entrar i eixir del mode debug manté l'estat previ del jugador
- Corregido Makefile: migración completa a cmake, detección automática de SO para release - Corregit Makefile: migració completa a cmake, detecció automàtica de SO per a release
--- ---
## [v1.11] - 2026-03-31 ## [v1.11] - 2026-03-31
### Novedades ### Novetats
- **PaletteManager:** refactorización de `Screen`, responsabilidades de gestión de paletas extraídas a clase propia - **PaletteManager:** refactorització de `Screen`, responsabilitats de gestió de paletes extretes a classe pròpia
- **Consola 2.1:** la consola puede cambiar de paleta por nombre (`Screen` devuelve lista de paletas) - **Consola 2.1:** la consola pot canviar de paleta per nom (`Screen` torna llista de paletes)
- **Zoom configurable:** `Screen` permite establecer el nivel de zoom directamente desde consola - **Zoom configurable:** `Screen` permet establir el nivell de zoom directament des de la consola
- **Autocompletar en consola:** autocompletado de comandos con Tab (incluyendo soporte para armadura de lagarto) - **Autocompletar en consola:** autocompletat de comandos amb Tab (incloent suport per a armadura de lagarto)
- Generación automática de tabla de tab-completions en la consola - Generació automàtica de taula de tab-completions en la consola
### Correcciones ### Correccions
- Fix: al entrar a GAME con la consola abierta, el jugador no tenía los inputs deshabilitados - Fix: al entrar a GAME amb la consola oberta, el jugador no tenia els inputs deshabilitats
- Fix: al hacer restart con la música del attract mode sonando, la música no paraba al ir al logo - Fix: al fer restart amb la música de l'attract mode sonant, la música no parava al anar al logo
- Fix: en modo debug, protección para que el jugador no caiga infinitamente si sale de pantalla - Fix: en mode debug, protecció per a que el jugador no caiga infinitament si ix de la pantalla
- Corregido el case en algunas respuestas de la consola - Corregit el case en algunes respostes de la consola
- Corregido Makefile - Corregit Makefile
--- ---
## [v1.10] - 2026-03-30 ## [v1.10] - 2026-03-30
### Novedades ### Novetats
- **Consola 2.0:** rediseño completo de la consola de desarrollador - **Consola 2.0:** redisseny complet de la consola de desenvolupador
- Efecto typewriter al mostrar texto - Efecte typewriter al mostrar text
- Separación de líneas automática - Separació de línies automàtica
- Cambio de skin - Canvi de skin
- Historial y navegación mejorada - Historial i navegació millorada
- Comandos para cheats, control de escena, debug, audio y shaders - Comandos per a cheats, control d'escena, debug, àudio i shaders
- Teclas de función operativas con la consola abierta - Tecles de funció operatives amb la consola oberta
- Límite de caracteres ampliado - Límit de caràcters ampliat
- La consola ya no pausa al jugador - La consola ja no pausa al jugador
- Reorganización del sistema de comandos y aliases (`show info`, `hide info`, etc.) - Reorganització del sistema de comandos i aliases (`show info`, `hide info`, etc.)
- **RenderInfo:** nueva clase con animación para mostrar info de renderizado en pantalla - **RenderInfo:** nova classe amb animació per a mostrar info de renderitzat en pantalla
- **Soporte multi-shader:** comandos y teclas para manejar el nuevo diseño de shaders (SPIRV/SPIR-V) - **Suport multi-shader:** comandos i tecles per a manejar el nou disseny de shaders (SPIRV/SPIR-V)
- **Modo kiosko:** defaults y restricciones de comandos para modo kiosk - **Mode kiosc:** defaults i restriccions de comandos per a mode kiosc
- **Supersampling Lanczos:** implementación de escalado Lanczos en el supersampling - **Supersampling Lanczos:** implementació d'escalat Lanczos en el supersampling
- **Driver GPU configurable:** permite elegir driver de GPU o ninguno desde consola - **Driver GPU configurable:** permet triar driver de GPU o cap des de la consola
- Cheats accesibles desde la consola - Cheats accessibles des de la consola
- Cambio y reinicio de escena desde la consola - Canvi i reinici d'escena des de la consola
- Posición e habitación inicial de debug configurables desde consola y fichero - Posició i habitació inicial de debug configurables des de la consola i fitxer
- `Debug` carga posición e habitación inicial desde fichero - `Debug` carrega posició i habitació inicial des de fitxer
- Comandos de audio configurables desde consola - Comandos dudio configurables des de la consola
- Renderizado del dispositivo GPU en info_debug - Renderitzat del dispositiu GPU en info_debug
- `Screen` optimizado (`textureToRenderer()`) - `Screen` optimitzat (`textureToRenderer()`)
- Eliminado soporte para argumentos de línea de comandos - Eliminat suport per a arguments de línia de comandos
- Eliminado `Options::console` - Eliminat `Options::console`
- Help de consola organizado - Help de consola organitzat
### Correcciones ### Correccions
- Fix: vsync off no funcionaba en Wayland - Fix: vsync off no funcionava en Wayland
- Fix: en TITLE, la consola no bloqueaba la pulsación del 1 al 4 y entraba a opciones - Fix: en TITLE, la consola no bloquejava la pulsació de l'1 al 4 i entrava a opcions
- Fix: dos logs de consola con formato incorrecto - Fix: dos logs de consola amb format incorrecte
- Fix: lógica para abrir y entrar a la jail (ahora usa número de habitación, no nombre) - Fix: lògica per a obrir i entrar a la jail (ara gasta número d'habitació, no nom)
- Corregido `compile_spirv.cmake` y la `system_folder` para shaders - Corregit `compile_spirv.cmake` i la `system_folder` per a shaders
- Corregido carácter de caret que se había perdido - Corregit caràcter de caret que s'havia perdut
- Eliminados acentos en títulos de habitaciones que causaban problemas con fuentes - Eliminats accents en títols d'habitacions que causaven problemes amb fonts
- Revisadas y corregidas traducciones - Revisades i corregides traduccions
- Corregidos ficheros `.fnt` - Corregits fitxers `.fnt`
- Corrección en `Screen` para `std::setprecision()` (faltaba `#include <iomanip>`) - Correcció en `Screen` per a `std::setprecision()` (faltava `#include <iomanip>`)
--- ---
## [v1.09] - 2025-03-01 ## [v1.09] - 2025-03-01
### Novedades ### Novetats
- **Refactorización a singletons:** `Screen`, `Input`, `Audio`, `Resource::Cache`, `Resource::List`, `Director`, `Cheevos`, `Debug` convertidos a singletons thread-safe - **Refactorització a singletons:** `Screen`, `Input`, `Audio`, `Resource::Cache`, `Resource::List`, `Director`, `Cheevos`, `Debug` convertits a singletons thread-safe
- **Smart pointers:** uso de `std::shared_ptr` y `std::unique_ptr` para gestión de recursos y sprites - **Smart pointers:** ús de `std::shared_ptr` i `std::unique_ptr` per a gestió de recursos i sprites
- **Surfaces 8-bit indexadas:** nuevo sistema de renderizado con color indexado y paletas intercambiables - **Surfaces 8-bit indexades:** nou sistema de renderitzat amb color indexat i paletes intercanviables
- **Sistema de notificaciones rediseñado:** nuevo engine de notificaciones con control de offset - **Sistema de notificacions redissenyat:** nou engine de notificacions amb control d'offset
- **Modos de vídeo mejorados:** la ventana mantiene posición al cambiar tamaño o activar borde; puede crecer según el escritorio - **Modes de vídeo millorats:** la finestra manté posició al canviar tamany o activar borde; pot créixer segons l'escriptori
- **ItemTracker:** nuevo singleton para rastrear ítems recogidos - **ItemTracker:** nou singleton per a rastrejar ítems arreplegats
- **globalEvents:** nuevo sistema de eventos globales SDL - **globalEvents:** nou sistema d'events globals SDL
- **Barra de progreso en carga de recursos** (actualización cada 5 ítems para mayor rendimiento con vsync) - **Barra de progrés en càrrega de recursos** (actualització cada 5 ítems per a major rendiment amb vsync)
- **Métodos show/hide ventana:** métodos para mostrar u ocultar la ventana - **Mètodes show/hide finestra:** mètodes per a mostrar o amagar la finestra
- Afinada la clase `Options` - Afinada la classe `Options`
- Actualizada a la última versión de `jail_audio` - Actualitzada a l'última versió de `jail_audio`
- Implementados shaders - Implementats shaders
- Nueva tipografía añadida - Nova tipografia afegida
- Parametros de ficheros `.ani` migrados a snake_case - Paràmetres de fitxers `.ani` migrats a snake_case
- Música de Title y attract mode restaurada - Música de Title i attract mode restaurada
- Eliminado sistema online completo - Eliminat sistema online complet
### Correcciones ### Correccions
- Fix: notificaciones ya no ensucian la pantalla de carga - Fix: notificacions ja no embruten la pantalla de càrrega
- Fix: no pintaba el efecto de carga del borde en `LoadingScreen` - Fix: no pintava l'efecte de càrrega del borde en `LoadingScreen`
- Fix: bug con el puntero a `ScoreboardData` - Fix: bug amb el punter a `ScoreboardData`
- Fix: carga de opciones y recursos corregida - Fix: càrrega d'opcions i recursos corregida
- Eliminados acentos problemáticos - Eliminats accents problemàtics
--- ---
## [v1.08] - 2024-02-22 ## [v1.08] - 2024-02-22
### Novedades ### Novetats
- Posibilidad de saltar la pantalla de carga ya completada desde el menú de título - Possibilitat de saltar la pantalla de càrrega ja completada des del menú de títol
- El `gamestate_title` puede empezar en diferentes estados - El `gamestate_title` pot començar en diferents estats
- Pantalla de carga con fade de paleta - Pantalla de càrrega amb fade de paleta
- GIF loader: dibujado correcto de GIFs en pantalla - GIF loader: dibuixat correcte de GIFs en pantalla
- Añadida `paleta.cpp`/`.h` y `gif.c` - Afegida `paleta.cpp`/`.h` i `gif.c`
### Correcciones ### Correccions
- Corregido bug en el fade de paleta (el canal azul no se propagaba) - Corregit bug en el fade de paleta (el canal blau no es propagava)
- Arreglada la separación entre el título y el fade - Arreglada la separació entre el títol i el fade
- Online deshabilitado por defecto al crear el fichero de configuración - Online deshabilitat per defecte al crear el fitxer de configuració
- Tiempo de la pantalla de carga aumentado - Temps de la pantalla de càrrega augmentat
--- ---
## [v1.07] - 2022-12-02 ## [v1.07] - 2022-12-02
### Novedades ### Novetats
- El nombre de la habitación se pinta a partir de una textura - El nom de l'habitació es pinta a partir d'una textura
- Añadido Batman a FEEL THE HEAT - Afegit Batman a FEEL THE HEAT
- Cielo de la Jail actualizado - Cel de la Jail actualitzat
- Retocada la pantalla de título - Retocada la pantalla de títol
- Sprite de PACO modificado - Sprite de PACO modificat
- Nombre del enemigo diskette cambiado a floppy - Nom de l'enemic diskette canviat a floppy
- Cambios cosméticos en algunas habitaciones (BE CAREFUL WITH THE FUSE renombrado) - Canvis cosmètics en algunes habitacions (BE CAREFUL WITH THE FUSE reanomenat)
- El color de fondo de la habitación se pinta en la textura del mapa - El color de fons de l'habitació es pinta en la textura del mapa
- Optimizaciones en intro y title - Optimitzacions en intro i title
- Preparación para compatibilidad con consolas - Preparació per a compatibilitat amb consoles
- Actualizado `jail_audio` a la última versión - Actualitzat `jail_audio` a l'última versió
- Eliminados la mayor parte de accesos a `vector::at()` - Eliminats la major part d'accessos a `vector::at()`
### Correcciones ### Correccions
- Corregido bug: en la jail se rellenaban las vidas mientras estaba activa la pausa - Corregit bug: en la jail es rellenaven les vides mentre estava activa la pausa
- Corregido memory leak en `texture.cpp` - Corregit memory leak en `texture.cpp`
- Corregido bug en apertura de la Jail - Corregit bug en obertura de la Jail
--- ---
## [v1.0] - 2022-11-13 ## [v1.0] - 2022-11-13
Versión de lanzamiento inicial. Versió de llançament inicial.
--- ---
*El formato de este changelog sigue [Keep a Changelog](https://keepachangelog.com/).* *El format d'este changelog seguix [Keep a Changelog](https://keepachangelog.com/).*