- Configure workspace Git repository with comprehensive .gitignore - Add Odoo as submodule for ERP reference code - Include documentation: SETUP.md, GIT-STRUCTURE.md - Add gitignore templates for projects (backend, frontend, database) - Structure supports independent repos per project/subproject level Workspace includes: - core/ - Reusable patterns, modules, orchestration system - projects/ - Active projects (erp-suite, gamilit, trading-platform, etc.) - knowledge-base/ - Reference code and patterns (includes Odoo submodule) - devtools/ - Development tools and templates - customers/ - Client implementations template 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
11 KiB
DATOS DE GAMIFICACION - GAMILIT
Versión: 1.0.0 Fecha: 2025-11-29 Fuente: Consolidado desde orchestration/inventarios/SEEDS_INVENTORY.yml Estado: PRODUCTION-READY
Resumen Ejecutivo
GAMILIT implementa un sistema completo de gamificación educativa con:
- 7 Rangos Maya (sistema de progresión jerárquica)
- 20 Achievements (logros desbloqueables)
- ML Coins (moneda virtual para comodines)
- 4 Comodines (ayudas durante ejercicios)
- 4 Leaderboards (tablas de posiciones)
- Sistema de Misiones (diarias, semanales, especiales)
1. Sistema de Rangos Maya
1.1 Jerarquía de Rangos
Los usuarios progresan a través de 7 niveles basados en XP acumulado:
| Nivel | Rango | XP Mínimo | XP Máximo | Bonus Subida | Multiplicador XP |
|---|---|---|---|---|---|
| 1 | Novato | 0 | 99 | - | 1.00x |
| 2 | Aprendiz | 100 | 299 | +50 ML | 1.05x |
| 3 | Experto | 300 | 599 | +100 ML | 1.10x |
| 4 | Maestro | 600 | 999 | +200 ML | 1.15x |
| 5 | Sabio | 1,000 | 1,499 | +350 ML | 1.20x |
| 6 | Guardián | 1,500 | 2,499 | +500 ML | 1.25x |
| 7 | Leyenda | 2,500 | ∞ | +1,000 ML | 1.30x |
1.2 Rangos Alternativos (DocumentoDeDiseño v6.5)
El documento de diseño también define rangos con nombres mayas alternativos:
| Nivel | Rango Maya | Umbral XP Mínimo | Bonus por Subida |
|---|---|---|---|
| 1 | AJAW | 0 | - |
| 2 | NACOM | 500 | +100 ML |
| 3 | AH K'IN | 1,000 | +250 ML |
| 4 | HALACH UINIC | 1,500 | +500 ML |
| 5 | K'UK'ULKAN | 1,900 | +1,000 ML |
Nota: Ambas jerarquías están implementadas. Consultar ADR correspondiente para decisión final.
1.3 Ubicación en Base de Datos
-- Schema: gamification_system
-- Tablas:
gamification_system.maya_ranks -- Definición de rangos
gamification_system.user_ranks -- Rangos asignados a usuarios
gamification_system.user_stats -- XP y estadísticas del usuario
1.4 Seeds de Producción
archivo: apps/database/seeds/prod/gamification_system/03-maya_ranks.sql
registros: 7
2. Sistema de Achievements (Logros)
2.1 Categorías de Logros
| Categoría | Descripción | Ejemplos |
|---|---|---|
| Explorador | Descubrimiento y curiosidad | Primer ejercicio, primer módulo |
| Maestro | Dominio y excelencia | 100% en ejercicio, racha perfecta |
| Colaborador | Participación social | Unirse a equipo, ayudar a compañero |
| Innovador | Creatividad y originalidad | Respuesta creativa, enfoque único |
2.2 Logros Disponibles (20 logros demo)
Los logros se otorgan automáticamente mediante triggers cuando se cumplen las condiciones.
Por Progreso:
- Primer ejercicio completado
- 5 ejercicios completados
- 10 ejercicios completados
- Primer módulo completado
- Todos los módulos completados
Por Maestría:
- Score perfecto (100%)
- Racha de 5 correctos
- Racha de 10 correctos
- Sin usar pistas
Por Colaboración:
- Unirse a un equipo
- Primer desafío peer-to-peer
- Ganar desafío
Por Constancia:
- 3 días consecutivos
- 7 días consecutivos (semana completa)
- 30 días consecutivos (mes completo)
2.3 Ubicación en Base de Datos
-- Schema: gamification_system
gamification_system.achievement_categories -- Categorías
gamification_system.achievements -- Definición de logros
gamification_system.user_achievements -- Logros desbloqueados
2.4 Funciones Relevantes
gamification_system.check_and_award_achievements(user_id)
gamification_system.claim_achievement_reward(user_id, achievement_id)
3. Sistema de ML Coins (Monedas Lectoras)
3.1 Obtención de ML Coins
| Fuente | ML Coins | Frecuencia |
|---|---|---|
| Ejercicio completado | 10-50 | Por ejercicio |
| Score perfecto (100%) | +20 bonus | Por ejercicio |
| Subida de rango | 50-1,000 | Por rango |
| Logro desbloqueado | 25-100 | Por logro |
| Misión completada | 50-200 | Por misión |
| Racha diaria | 10-50 | Diario |
3.2 Uso de ML Coins
Los ML Coins se gastan en la Tienda de Comodines:
| Comodín | Costo (ML) | Descripción |
|---|---|---|
| Pista | 25 | Revela parte de la respuesta |
| Visión Lectora | 50 | Tiempo extra (+30s) |
| Segunda Oportunidad | 75 | Reintentar sin penalización |
| Time Freeze | 100 | Pausar temporizador (30s) |
3.3 Ubicación en Base de Datos
-- Schema: gamification_system
gamification_system.user_stats -- ml_coins, ml_coins_earned_total
gamification_system.ml_coins_transactions -- Historial de transacciones
3.4 Funciones Relevantes
gamification_system.award_ml_coins(user_id, amount, reason)
gamification_system.deduct_ml_coins(user_id, amount, reason)
4. Sistema de Comodines (Power-ups)
4.1 Tipos de Comodines
| Comodín | Enum | Efecto | Duración |
|---|---|---|---|
| Pista | hint |
Revela parte de respuesta correcta | Instantáneo |
| Visión Lectora | time_freeze |
Congela temporizador | 30 segundos |
| Segunda Oportunidad | retry |
Permite reintentar ejercicio | 1 uso |
| Skip | skip |
Saltar ejercicio sin penalización | 1 uso |
4.2 Inventario de Usuario
Cada usuario tiene un inventario de comodines:
interface ComodinesInventory {
user_id: string;
hint_count: number; // Pistas disponibles
time_freeze_count: number; // Visión Lectora disponibles
retry_count: number; // Segunda Oportunidad disponibles
skip_count: number; // Skips disponibles
}
4.3 Ubicación en Base de Datos
-- Schema: gamification_system
gamification_system.comodines_inventory -- Inventario por usuario
gamification_system.active_boosts -- Comodines activos
gamification_system.inventory_transactions -- Historial de uso
gamification_system.comodin_usage_log -- Log de uso
gamification_system.comodin_usage_tracking -- Tracking detallado
-- ENUM
comodin_type: {time_freeze, hint, retry, skip}
5. Sistema de Leaderboards
5.1 Tipos de Leaderboards
| Leaderboard | Métrica | Alcance |
|---|---|---|
| Global XP | total_xp | Toda la plataforma |
| ML Coins | ml_coins_earned_total | Toda la plataforma |
| Streaks | current_streak | Toda la plataforma |
| Por Mecánica | score por exercise_type | Por tipo de ejercicio |
5.2 Vistas Materializadas
-- Vistas para performance
gamification_system.leaderboard_global -- Top global
gamification_system.leaderboard_classroom -- Por aula
gamification_system.leaderboard_weekly -- Semanal
gamification_system.leaderboard_mechanic -- Por mecánica
5.3 Ubicación en Base de Datos
gamification_system.leaderboard_metadata -- Configuración de leaderboards
6. Sistema de Misiones
6.1 Tipos de Misiones
| Tipo | Reinicio | Ejemplos |
|---|---|---|
| Diarias | Cada día a 00:00 | Completar 3 ejercicios, Obtener 100 XP |
| Semanales | Cada lunes | Completar 1 módulo, Racha de 5 días |
| Especiales | Por evento | Evento de temporada, Desafío especial |
6.2 Objetivos de Misiones
objective_types:
- complete_exercises # Completar N ejercicios
- correct_streak # Racha de N correctos
- earn_xp # Obtener N XP
- use_comodines # Usar N comodines
- daily_streak # N días consecutivos
- perfect_scores # N scores perfectos
- complete_modules # Completar N módulos
- explore_modules # Explorar N módulos
6.3 Ubicación en Base de Datos
-- Schema: gamification_system
gamification_system.missions -- Definición de misiones
-- Schema: progress_tracking
progress_tracking.scheduled_missions -- Misiones asignadas a usuarios
6.4 Triggers de Actualización
Ver docs/sistema-recompensas/07-CORRECCION-SISTEMA-MISIONES.md para los 8 triggers implementados:
trg_update_missions_on_exercisetrg_update_missions_on_streaktrg_update_missions_on_earn_xptrg_update_missions_on_use_comodinestrg_update_missions_on_daily_streaktrg_update_missions_on_perfect_scorestrg_update_missions_on_complete_modulestrg_update_missions_on_explore_modules
7. Flujo de Recompensas
7.1 Al Completar Ejercicio
1. Usuario completa ejercicio
↓
2. INSERT en exercise_attempts (xp_earned, ml_coins_earned)
↓
3. TRIGGER: update_user_stats_on_exercise_complete()
↓
4. UPDATE user_stats: total_xp, ml_coins, exercises_completed
↓
5. CHECK rank promotion
↓
6. CHECK achievement conditions
↓
7. UPDATE missions progress
↓
8. Respuesta: { score, rewards: {xp, mlCoins}, rankUp?, achievements[] }
7.2 Arquitectura Dual-Table
Ver docs/sistema-recompensas/01-ARQUITECTURA-SISTEMA.md:
- exercise_submissions: Workflow (draft → submitted → graded)
- exercise_attempts: Recompensas (XP, ML Coins, tracking)
8. Ejercicios por Módulo
Distribución de Contenido
| Módulo | Nombre | Ejercicios | XP Total | ML Total |
|---|---|---|---|---|
| M1 | Comprensión Literal | 5 | 500 | 100 |
| M2 | Comprensión Inferencial | 5 | 500 | 100 |
| M3 | Comprensión Crítica | 5 | 500 | 100 |
| M4 | Textos Digitales | 5 | 500 | 100 |
| M5 | Producción Creativa | 3 | 500 | 100 |
| Total | 23 | 2,500 | 500 |
Mecánicas por Módulo
Módulo 1 (Literal):
- Crucigrama Científico
- Línea de Tiempo
- Completar Espacios en Blanco
- Verdadero o Falso
- Sopa de Letras (BONUS)
Módulo 2 (Inferencial):
- Detective Textual
- Construcción de Hipótesis
- Predicción Narrativa
- Puzzle de Contexto
- Rueda de Inferencias
Módulo 3 (Crítica):
- Tribunal de Opiniones
- Debate Digital
- Análisis de Fuentes
- Podcast Argumentativo
- Matriz de Perspectivas
Módulo 4 (Digital): 5 ejercicios (Ver DocumentoDeDiseño v6.5)
Módulo 5 (Creativo): 3 opciones A/B/C (Ver DocumentoDeDiseño v6.5)
9. Referencias
Documentación Relacionada
- DocumentoDeDiseño_Mecanicas_GAMILIT_v6_1.md - Especificación completa
- docs/sistema-recompensas/01-ARQUITECTURA-SISTEMA.md - Arquitectura
- docs/sistema-recompensas/07-CORRECCION-SISTEMA-MISIONES.md - Misiones
Seeds de Producción
apps/database/seeds/prod/gamification_system/
├── 01-achievement_categories.sql
├── 02-leaderboard_metadata.sql
├── 03-maya_ranks.sql
├── 04-achievements.sql
├── 05-user_stats.sql
├── 06-user_ranks.sql
├── 07-ml_coins_transactions.sql
├── 08-user_achievements.sql
└── 09-comodines_inventory.sql
Inventarios de Orchestration
orchestration/inventarios/SEEDS_INVENTORY.yml- Inventario completo de seedsorchestration/inventarios/DATABASE_INVENTORY.yml- Estado de BD
Última actualización: 2025-11-29 Mantenido por: Architecture-Analyst