DungeonMaster-AI / src /game /__init__.py
bhupesh-sf's picture
first commit
f8ba6bf verified
"""
DungeonMaster AI - Game Package
Game state management, context building, event logging, and adventure loading.
This package provides:
- GameState: Basic game state dataclass (Phase 1 stub)
- GameStateManager: High-level state manager with MCP integration
- StoryContextBuilder: LLM context construction
- EventLogger: Session event logging
- AdventureLoader: Pre-made adventure loading
Models:
- SessionEvent: Event log entry
- Combatant: Combat participant
- CombatState: Active combat state
- CharacterSnapshot: Cached character data
- NPCInfo: NPC information
- SceneInfo: Location/scene data
- GameSaveData: Serializable save file
- AdventureData: Adventure module data
"""
# Original Phase 1 exports (preserved for compatibility)
from .game_state import GameState, GameStateProtocol
# New Pydantic models
from .models import (
# Enums
EventType,
CombatantStatus,
HPStatus,
# Event models
SessionEvent,
# Combat models
Combatant,
CombatState,
# Character models
CharacterSnapshot,
# NPC and Scene models
NPCInfo,
SceneInfo,
# Save/Load models
GameSaveData,
# Adventure models
AdventureMetadata,
EncounterData,
AdventureData,
)
# Manager classes
from .game_state_manager import GameStateManager
from .story_context import StoryContextBuilder
from .event_logger import EventLogger
from .adventure_loader import AdventureLoader
__all__ = [
# Original (Phase 1)
"GameState",
"GameStateProtocol",
# Enums
"EventType",
"CombatantStatus",
"HPStatus",
# Event models
"SessionEvent",
# Combat models
"Combatant",
"CombatState",
# Character models
"CharacterSnapshot",
# NPC and Scene models
"NPCInfo",
"SceneInfo",
# Save/Load models
"GameSaveData",
# Adventure models
"AdventureMetadata",
"EncounterData",
"AdventureData",
# Manager classes
"GameStateManager",
"StoryContextBuilder",
"EventLogger",
"AdventureLoader",
]