Maid Defenders (Balitas)

RoadMap del proyecto — Godot 4.6 • Pixel Art • Idle estilo Task Bar Hero • Actualizado junio 2026

Visión general: Maid Defenders tiene un núcleo idle de escritorio jugable: ventana flotante con clic passthrough cuando el inventario está cerrado, combate automático por oleadas con avisos visuales (oleada siguiente / banner de jefe), inventario, formación, mansión, progresión permanente con Oro mediante un árbol de Runas (estilo Task Bar Hero) y guardado amplio. Las 13 Maids tienen nombres japoneses, sprites de combate, avatares e iconos. El combate distingue distancia / melee / AOE / estacionarias y resuelve el daño con daño_base centralizado en Stats_Manager. La ventana escala el mapa (0.75–1.50×) con el mapa anclado abajo y altura dinámica según inventario abierto/cerrado. La Zona 1 tiene oleadas balanceadas en JSON. Los cofres escalan por mapa y oleada; los jefes finales X-10 sueltan cofre Glitch (LV6). Disponible build Alpha para Windows en Google Drive. El foco inmediato pasa a animaciones, enemigos sin placeholder, waves_config mundos 2–5 y profundidad RPG (equipo completo, habilidades).
Build Alpha (Windows) — Descarga pública en Google Drive (Maids Defenders.zip). También enlazada desde index.html.
Última sesión de desarrollo (jun 2026 — balance RPG, IA de boss y escalado de mobs):
Sesión anterior (jun 2026 — runas, layout ventana y shuriken):
Sesión anterior (jun 2026 — daño, cofres, balance y Alpha):
Sesión anterior (jun 2026 — balance, UI oleadas y ventana):
Sesión anterior (jun 2026 — combate y oleadas):
Sesión anterior (jun 2026 — progresión permanente):
Sesión anterior (jun 2026 — loop mapas):

1. Lo que tenemos hoy

Entrada y escritorio

FeatureEstado
LoadingScreen.tscnMain.tscnListo (corrutina + CanvasLayer; redirige si Main directo)
Ventana borderless + transparenteListo
Always on topListo
Arrastre de ventana desde el mapaListo
Clic passthrough con inventario cerrado (no bloquea escritorio)Listo
Compatibilidad ventana embebida en editor (F5/F6 sin overflow)Listo
Posición de ventana guardadaListo
Escala del juego (0.75–1.50, paso 0.25)Listo
Música on/offListo
Layout del mapa: anclado abajo, ventana crece hacia arribaListo
Altura dinámica según inventario abierto / cerradoListo
Combate independiente de escala visual (movimiento / AS / rango)Listo

Progresión permanente (árbol de Runas con Oro)

FeatureEstado
Sección runes en progression_config.json21 nodos
Progresion_Menu.tscn + árbol interactivo (rune_tree_canvas.gd)Listo
Compra con Gold_Manager; requisitos en cadena y niveles por runaListo
Requisito de nivel Maid Principal (nivel_principal)Listo (slots 2/3: nv 5 / 15)
progression.runes en save + migración desde upgrades_compradosListo
upgrades_comprados legacy + aplicar_upgrades()Compatibilidad save
Slots Maid 2 y 3 (maid_slot_2, maid_slot_3)1000 / 5000 oro + nv 5 / 15
Almacenes 2–5 (almacen_2almacen_5)1000–10000 oro
Daño global I/II/III, Oro I/II/III, Vida I/IIAplicado en combate
Velocidad ataque I/II, Crítico I/II, Revivir I/IIAplicado en combate
Migración saves antiguos (slots_maids_desbloqueados)Listo
slots_formacion + comprar_slot() legacyEn código, no usado en UI

Progresión de mapas y partida nueva

FeatureEstado
Progression_Manager (autoload)Listo
data/progression_config.jsonListo
Mapa actual persistido (current_map)Listo
Mapas desbloqueados persistidosListo
Recompensa de oro al completar mapa (1-1 … 1-10 + fórmula por defecto)Listo
Recompensas “una vez” no duplicablesListo
Maid Principal + slots de formación desbloqueadosGuardado
Partida nueva: Akari en slot 0 automáticamenteListo
Menú selección inicial (SeleccionMaidInicial_Menu)En proyecto, no usado
Inicio de oleadas al tener Maid en formaciónListo

Formación y economía de Maids

FeatureEstado
13 Maids en data/maids.json (nombres JP + kanji)Listo
Elegir cualquier Maid en formación sin costo de oroListo
Slot 1 gratis; slots 2–3 vía menú ProgresiónListo
Slots bloqueados: “Comprar en Progresión”Listo
Comprar Maids con oro (cost en JSON)Descartado (campo legacy)
Iconos en grid de formación (*_Icon.png)Listo
Avatares en inventario (*_Avatar.png)Listo

Combate

FeatureEstado
Formación hasta 3 Maids (según upgrades)Listo
Movimiento, disparo, críticos, muerte, revivir (base 60 s, mín. 10 s)Listo
Daño min/max por Maid (damage_min / damage_max)Listo (13/13 en JSON)
daño_base + resolver_dano_maid() (Stats_Manager)Listo (base → atk → arma → % → crit → DEF; piso 20%)
atk / matk stat contribuye al daño de MaidNuevo — jun 2026
Piso de daño 20% (evita muros de DEF permanentes)Nuevo — jun 2026
Bonos globales de upgrades en daño / oro / vida / AS / crítico / reviveListo
Velocidad de ataque: escala con nivel Maid PrincipalListo (0% nv1 → 100% nv15+)
Oro por enemigo: escala con nivel Maid PrincipalListo (35% nv1 → 100% nv20)
Disparo sin animación si SpriteFrames vacío (fix Pistola)Listo
Game Over si toda la formación caeListo
Balas + perdigones (escopeta)Listo
Bazuka AOE (bala_bazuka.tscn, explosion_radius)Listo
Melee (tipo_ataque: "melee", sin Bala, sin anim)Listo (Akane)
Maids estacionarias (puede_moverse: false)Listo (Minigun, Francotirador)
Reinicio oleada al cambiar Maid en formaciónListo
Progresión nivel/EXP por MaidListo
Mensaje oleada siguiente (WaveMessage + Next_wave.png)Listo
Banner jefe / mini boss (BossBanner + BANER_BOSS.png)Listo (centrado en mapa)
Animaciones de ataque (DISPARANDO / MOVIENDO)Pendiente (no bloquean gameplay)

Mapas y enemigos

FeatureEstado
50 mapas (5 mundos × 10) en maps_config.jsonConfig listo
Oleadas 1–9 normales, 10 = mini boss, X-10 = bossListo
waves_config.json Zona 1 — intervalos 1-1 … 1-9 balanceadosListo (1-4→1-9 rebalanceados jun 2026)
waves_config.json Mundos 2–5Pendiente (spawner procedural)
Fin de oleada solo si spawn completo + 0 enemigos vivosListo
Escalado de nivel enemigos Zona 1 (Z1_BONUS_LV)Corregido — jun 2026 (0.40/mapa + 0.25/oleada)
Multiplicador daño mobs desde mapa 1-5 (dano_mult)Nuevo — jun 2026 (×1.5 → ×3.0)
Multiplicador defensa mobs desde mapa 1-5 (def_mult)Nuevo — jun 2026 (×1.4 → ×2.5)
5 bosses con escena propiaListo
Rey Ratón — state machine IA (AVANZAR/ATACAR/RETROCEDER/INVOCAR)Nuevo — jun 2026 (furia <30% HP)
Ratas invocadas por boss (es_invocado, no cierran oleada)Nuevo — jun 2026
Bosses 2–5 — IA / state machinePendiente
9 tipos de enemigo en JSONListo
Escenas de enemigo reales3/9
Resto de enemigosplaceholder + missingno
Fondos de mapa10 únicos (mundo 1); W2–5 reutilizan
Mansión: elegir mapa y reiniciar runListo (refresh mapas desbloqueados)

Economía e items

FeatureEstado
Oro por enemigosListo (escala por nivel Maid Principal)
Recompensas de mapa 1-xRebalanceadas (~40% menos en primeros mapas)
143 armas + 18 piezas de equipo en JSONCatálogo listo
7 rarezas (común → demoníaca)Listo
Cofres en oleadas paresListo (clic para reclamar; prob. escalada por mapa)
Nivel de cofre según mapa + oleada (calcular_nivel_cofre_progresivo)Listo (1-1…1-3 → LV1; progresivo por mundo)
Cofre Glitch (LV6) al matar jefe en mapas X-10 (is_boss_map)Listo (1-10, 2-10, 3-10…)
Equipar arma por Maid (drag & drop)Listo
Equipo no-arma (traje, guantes, etc.)Backend listo, sin UI ni loot

UI / menús

MenúEstado
Inventario (tecla I / mini menú)Listo
Formación (sobre inventario)Listo
Progresión (árbol de Runas permanentes con Oro)Listo
Almacén (5 secciones; solo 1 al inicio, resto en Progresión)Listo
Mansión (zonas 1–5, mapas 1–10)Listo
Ajustes, Mensajes, Ayuda, SalirListo
Stats detalladas de MaidListo
Mini menú en combate (mapa + progreso oleada)Listo

Guardado (user://save_game.json)

Se guardaNotas
Oro, inventario, almacén por sección (1–5), formación, Maids desbloqueadas, EXP/nivel, armas equipadas, ajustes, mensajes, posición ventana Estable
Progresión mapas: current_map, desbloqueos, recompensas, maid principal Listo
Progresión permanente: progression.runes (niveles por runa); migración desde upgrades_comprados Nuevo — jun 2026
almacen como dict {"1":[],…} Listo

2. Roster de Maids (nombres y arte)

IDNombreArmaSprite combateAvatar / IconoAnimación
maid_pistolaAkari 明莉PistolaAkari.pngListoSpriteFrames vacíos
maid_revolverRin 凛RevólverRin.pngListoSin anim (dispara directo)
maid_escopetaRan 蘭EscopetaRan.pngListoRevisar
maid_uziHina 陽菜UziHina.pngListoSin anim
maid_minigunTsubaki 椿MinigunTsubaki.pngListoEstacionaria / sin anim
maid_rifle_asaltoMisaki 美咲RifleMisaki.pngListoSin anim
maid_meleeAkane 茜MeleeAkane.pngListoMelee funcional / sin anim
maid_bazukaHibiki 響BazukaHibiki.pngListoAOE listo / sin anim
maid_ninjaYoru 夜NinjaYoru.pngListoShuriken animado (estrella.tscn)
maid_francotiradorShizuka 静香FrancotiradorShizuka.pngListoEstacionaria / sin anim
maid_tanqueMamori 守TanqueMamori.pngListo600 HP / sin anim
maid_arizakaChiyo 千代ArizakaChiyo.pngListoRevisar
maid_escopeta_especialKurumi 胡桃Escopeta esp.Kurumi.pngListoSin anim

Enemigos

3 con escena real • 6 con placeholder • 5 bosses completos

3. Corto plazo — prioridades

Prioridad 1 — Loop de progresión de mapas Completado

  1. Guardar mapa actual y desbloqueos
  2. Desbloqueo progresivo de mapas
  3. Recompensas de oro por mapa
  4. Maids gratis en formación

Prioridad 1b — Progresión permanente (árbol de Runas) Completado jun 2026

  1. 21 runas en JSON — slots, almacenes, bonos de combate con posiciones en canvas.
  2. Menú Progresión con árbol interactivo, compra por Oro y panel de detalle por runa.
  3. Integración en Formación, Almacén, maid_base.gd, EnemyBase.gd.
  4. Guardado de progression.runes y migración desde saves antiguos.

Pendiente menor: iconos/arte dedicado por runa; limpiar slots_formacion legacy del JSON/código.

Prioridad 1e — Layout ventana y escala Completado jun 2026

  1. Mapa anclado abajo con margen inferior y centrado horizontal.
  2. Ventana dinámica que crece hacia arriba al escalar o abrir inventario.
  3. Escala máxima 1.50× (antes 1.75×); saves antiguos se clampan al cargar.
  4. Gameplay independiente de escala (movimiento, rango y velocidad de ataque).
  5. Shuriken animado para Maid Ninja (estrella.tscn).

Prioridad 1c — Balance Zona 1 y tipos de ataque Completado jun 2026

  1. waves_config.json mapas 1-1 … 1-9 — oleadas progresivas para Pistolera inicial.
  2. Daño min/max en todas las Maids.
  3. Melee sin Bala (tipo_ataque).
  4. Bazuka AOE (bala_bazuka).
  5. Francotirador / Minigun estacionarias.

Pendiente en esta línea: waves_config para mundos 2–5; animaciones melee/disparo; Tanque como melee opcional (tipo_ataque aún distancia).

Prioridad 1d — Balance de progresión y economía Completado jun 2026

  1. Slots Maid 2/3 — compra en Progresión (1000 / 5000 oro) + requisito nivel 5 / 15.
  2. daño_base centralizado en Stats_Manager con pipeline unificado.
  3. Cofres por mapa/oleada (no por nivel Maid); Glitch LV6 en todos los jefes X-10.
  4. Oro y velocidad de ataque escalados según nivel de Maid Principal.
  5. Balance mobs Zona 1 (dex / str ajustados para early game).
  6. UI oleadas: sprite siguiente oleada + banner WARNING de jefe centrado.
  7. Fix ventana: passthrough de mouse con inventario cerrado.
  8. Build Alpha Windows publicada en Google Drive.

Prioridad 1f — Balance RPG, IA de boss y escalado de mobs Completado jun 2026

  1. Sistema de stats RPGatk/matk contribuye al daño de Maid; piso del 20% elimina muros de DEF.
  2. Escalado de nivel Zona 1 — bug de truncamiento corregido; +0.40 lv/mapa y +0.25 lv/oleada funcionan.
  3. Intervalos wave 1-4 → 1-9 — cliff de dificultad eliminado; progresión suave de 3.7 s a 1.6 s.
  4. Rey Ratón — state machine — AVANZAR → ATACAR → RETROCEDER → INVOCAR; fase furia <30% HP.
  5. Ratas invocadases_invocado evita cierre prematuro de oleada del boss.
  6. Multiplicador daño mobs 1-5+ — ×1.5 a ×3.0 escalado por mapa.
  7. Multiplicador defensa mobs 1-5+ — ×1.4 a ×2.5 escalado por mapa.
  8. vit_growth reducido en mobs tánkeros para no superar el piso de daño.
  9. UI Progresión — texto marrón en panel info; arrastre de árbol con mouse.
  10. Logs de depuraciónDEBUG_ENEMY := false silencia prints de cada frame.

Prioridad 2 — Contenido visual y animación (1–2 semanas)

  1. 6 escenas de enemigo faltantes (66% del roster usa placeholder).
  2. Animaciones de combate para Maids con SpriteFrames vacíos (empezar por Akari); luego melee y bazuka. Shuriken de Yoru ya animado.
  3. Fondos únicos para mundos 2–5 (ahora reutilizan mundo 1).
  4. waves_config.json mundos 2–5 (misma estructura que Zona 1).
  5. Limpiar escena SeleccionMaidInicial_Menu (usar o eliminar del proyecto).
  6. Tooltip de Formación: mostrar rango de daño (damage_min–damage_max).

Prioridad 3 — Profundidad RPG (2–3 semanas)

  1. Equipamiento completo en UI (cabeza, traje, guantes, botas, accesorios, reliquia).
  2. Loot mixto en cofres (no solo armas).
  3. Habilidades o pasivas por Maid (vinculadas a nombre/tipo).
  4. Auto-recogida de cofres (opcional idle).
  5. Mostrar número de oleada actual en mini menú (hoy solo mapa).

Prioridad 4 — Pulido Task Bar Hero

  1. Toggle “siempre arriba” en menú Ajustes (hoy solo por código / save).
  2. SFX / feedback de sonido (disparo, crítico, cofre, UI).
  3. Tutorial breve en primera partida.
  4. LoadingScreen — funcional con respaldo; opcional simplificar o saltar en dev.
  5. Afinar bosses 2–5 (colisión, barra de vida, spawn).
  6. Pruebas en GPU con driver D3D12 (pantalla transparente en algunos equipos).

4. Resumen numérico

ÁreaHechoParcialFalta
Maids (combate por tipo)distancia + melee + AOE + 2 estacionariasanimacionespasivas / tanque melee
Maids (animación combate)varias sin animAkari framesDISPARANDO / MOVIENDO global
Oleadas config JSONZona 1 balanceada (1-1→1-9 + intervalos)mini boss vía maps_configW2–5
Escalado de mobs (daño + def)Zona 1 (×1.4–×3.0 desde 1-5)validar W2+
Enemigos (escenas)36 placeholder
Bosses5 escenasRey Ratón IA completaIA bosses 2–5
Mapas (config + progresión)50fondos W1fondos W2–5
Items en catálogo16118 sin UI
Menús UI11/11
Upgrades permanentes (árbol de runas)21/21iconos por runamás runas futuras
Layout ventana / escalaanclado abajo + 1.50× max
Save (dominios)15+
Loop progresión P1 + P1b + P1c + P1d + P1e + P1f29/29

5. Arquitectura clave (referencia rápida)

SistemaArchivo principal
EntradaLoadingScreen.gdMain.tscn
Progresión mapas + runasprogression_manager.gd, progression_config.json
Menú Progresión / árbol RunasProgresion_Menu.tscn, rune_tree_canvas.gd, rune_icon_button.gd
GuardadoSave_Manager.gd
Maids datos/UImaids.json, Maid_Manager.gd
FormaciónFormation_Manager.gd, Formacion_Menu.gd
Combate / oleadasenemy_spawner.gd, maid_base.gd, waves_config.json
Stats y dañoStats_Manager.gd (resolver_dano_maid, daño_base)
UI oleadas / jefeWaveMessage.gd, BossBanner.gd
Cofres y lootchest_manager.gd, item_factory.gd, chests.json
Ventana / inputwindow_controller.gd, main.gd, inventory_menu.gd
Proyectilesbala.gd, perdigon.gd, bala_bazuka.gd, estrella.tscn (shuriken)
Mapasmaps_config.json, mansion_menu.gd

6. Conclusión

Lo sólido: idle de escritorio completo con input passthrough, ventana con mapa anclado abajo y escala hasta 1.50×, 13 Maids con identidad japonesa, combate por oleadas (distancia, melee, AOE, estacionarias), sistema RPG de stats (atk/matk + piso 20% de daño), Zona 1 balanceada con escalado de nivel corregido e intervalos suaves (1-1 a 1-9), mobs más fuertes desde 1-5 (daño ×1.5→3.0, defensa ×1.4→2.5), Rey Ratón con IA completa (avanza, ataca, retrocede, invoca ratas + fase furia), cofres por mapa/oleada y Glitch en jefes X-10, árbol de 21 Runas con arrastre de mouse, save robusto con migración, shuriken animado para Ninja, y build Alpha Windows disponible.

Lo más urgente ahora: 6 enemigos sin placeholder, waves_config mundos 2–5, animaciones de combate (Maids), fondos únicos W2–5, IA de bosses 2–5, equipamiento RPG en UI, SFX.