Arquitectura
OhMyDialogSystem sigue una arquitectura en capas que separa claramente las responsabilidades.
// Capas del Sistema
El addon se organiza en 5 capas principales:
🎨
Editor Layer
Herramientas visuales...
model_manager_window.gd
dialogue_graph_editor.gd
🤖
AI Layer
Gestion de modelos...
prompt_builder.gd
huggingface_api.gd
ðŸ§
Core Layer
Logica principal...
dialogue_manager.gd
ai_service.gd
📦
Resources Layer
Datos serializables...
dialogue_graph.gd
character_identity.gd
âš¡
GDExtension Layer (C++)
Wrapper nativo...
llama_interface.cpp
thirdparty/llama.cpp
// Componentes Principales
Flujo de Alto Nivel
Interaccion entre componentes:
DialogueManager
Coordina todo el sistema
âž”
GraphRunner
Ejecuta el grafo de nodos
âž”
AIService
Genera respuestas IA
AIService Singleton
Singleton global para inferencia:
Singleton
Global
AIService
Gestiona el ciclo de
vida...
DialogueManager
Coordina:
- GraphRunner...
- AIService...
- PromptBuilder...
- Query System...
// Ejecucion de Grafos
Patron Strategy...
Node Executors
StartNodeExecutor
Punto de entrada
EndNodeExecutor
Fin
AIResponseExecutor
AI Res
PlayerChoiceExecutor
Choice
Estados de Ejecucion
| Estado | Descripcion |
|---|---|
| IDLE | Sin grafo |
| RUNNING | Ejecutando |
| WAITING_INPUT | Esperando input |
// Modos de Dialogo
FREE
Conversation 100% IA
- No graph
- Free typing
SCRIPTED
Grafo Tradicional
- Strict flow
- Fixed responses
HYBRID
Hybrid
- Graph skeleton
- AI enriched