BaseSystem.py
Índice
- Descripción General
- Gestión de Edificios (
Building) - Tipos de Edificios y Efectos
- Sistema de Construcción y Materiales
- Minijuegos de Entrenamiento
- Integración con Mastery System
Descripción General
BaseSystem.py permite al jugador construir y mejorar infraestructuras en su base personal. Estos edificios otorgan bonificaciones pasivas globales o permiten acceder a minijuegos que entrenan las maestrías del jugador.
Gestión de Edificios (Building)
Cada edificio es una instancia de la clase Building que rastrea su nivel actual (0 = no construido) y sus metadatos definidos en DataBuildings.json.
Propiedades Clave
- is_built: True si el nivel es > 0.
- is_max: True si ha alcanzado el nivel máximo definido.
- passive_total: El valor del efecto acumulado según el nivel.
Tipos de Edificios y Efectos
| Edificio | Efecto Pasivo | Beneficio por Nivel |
|---|---|---|
| Almacén | Espacio de Inventario | +5 slots |
| Salón de Exp. | Multiplicador de EXP | +2.5% EXP Global |
| Tesorería | Botín de Oro | +3% Oro en combates |
| Campo de Entrenamiento | Minijuego (Armas) | Desbloquea entrenamiento de armas |
| Arena de Armaduras | Minijuego (Armaduras) | Desbloquea entrenamiento de defensa |
Sistema de Construcción y Materiales
El sistema de requisitos es flexible y soporta dos modos de validación: 1. Por Tipo (Modo OR): Si el requisito es un tipo conocido (ej. "Wood"), el sistema sumará cualquier ítem que pertenezca a esa categoría (Roble, Pino, etc.). 2. Por Nombre Exacto: Si el requisito no es un tipo general, buscará el ítem específico por su nombre.
La función build_or_upgrade() deduce automáticamente los materiales del inventario y el oro del jugador al realizar la mejora.
Minijuegos de Entrenamiento
Timing (Campo de Entrenamiento)
El jugador debe presionar Enter cuando un cursor en movimiento (●) se encuentre dentro de la zona marcada con estrellas (★). El éxito otorga EXP de maestría de armas.
Endurance (Arena de Resistencia)
El jugador debe "sobrevivir" a 3 oleadas de daño simulado. La reducción de daño se calcula basándose en la defensa real del jugador. El éxito otorga EXP de maestría de armaduras.
Integración con Mastery System
Los edificios de entrenamiento están vinculados directamente al MasterySystem. Al ganar un minijuego, el BaseManager identifica todos los tipos de armas o armaduras registrados y añade experiencia a sus respectivos niveles de maestría.
Notas Técnicas
- Los edificios se guardan dentro del objeto
playerbajo la claveplayer_base. - La inyección de edificios desde mods es posible a través de la API del
ModLoader. - Los minijuegos utilizan hilos secundarios (
threading) para manejar animaciones y entrada de teclado simultáneamente.