📋 Información General

Propiedad Valor
ID del Mod RPGtowapo
Versión 1.0.0
Autor Kalaur
Package Base com.kalaur.rpgtowapo

⚡ Funcionalidades Implementadas

1. Sistema de Niveles y Experiencia

El mod implementa un sistema de progresión exponencial:

  • Fórmula de XP: BASE_XP * nivel^1.5
  • Puntos de Stat: Otorga 2 puntos asignables por cada nivel subido.
  • Comandos: /addxp para testear la subida de nivel.

2. Stats y Atributos

Tipo Stats Efecto Actual
Stats Nativas Salud, Estamina, Maná Modifican directamente los valores máximos del jugador (usando StaticModifier).
Atributos de Rol Fuerza, Destreza, Constitución, Inteligencia, Sabiduría, Carisma Se almacenan y persisten, pero aún no afectan mecánicas de daño/defensa (WIP).

3. Interfaz de Usuario (UI)

El mod incluye interfaces personalizadas para la gestión del personaje:

  • HUD Permanente: Barra de progreso de nivel visible en pantalla.
  • Hoja de Personaje: UI interactiva (Personaje.ui) accesible mediante item o comando. Permite:
    • Ver stats actuales.
    • Asignar puntos disponibles usando botones +/-.
    • Guardar cambios manualmente.

🏗️ Arquitectura Técnica

Persistencia Dual (Dual Storage)

Para garantizar que los datos no se pierdan y sean rápidos de acceder, se usa un patrón híbrido:

💾
1. EntityStore (ECS): Datos en tiempo real asociados a la entidad en el mundo. Permite acceso rápido y efectos inmediatos.
2. Player Holder: Datos persistentes asociados a la cuenta del jugador. Asegura que los datos se guarden al cambiar de mundo o desconectarse.

Componentes Clave

  • RPGtowapoPlugin.java Clase principal. Gestiona eventos de conexión y configuración inicial.
  • PlayerRPGData.java Componente ECS con Codec para serialización de niveles y stats.
  • StatsService.java Lógica de negocio para asignación de puntos y cálculo de modificadores.
  • PersonajePage.java Lógica de la UI interactiva (Eventos de botones, actualización visual).

🚧 Próximos Pasos (Roadmap)

  • Conectar Atributos (Fuerza, Const, etc.) al sistema de daño y defensa.
  • Implementar sistema de Clases y Habilidades.
  • Añadir equipamiento con requisitos de stats.