mantimon-tcg/backend/app/core/__init__.py
Cal Corum 3e82280efb Add game engine foundation: enums, config, and RNG modules
- Create core module structure with models and effects subdirectories
- Add enums module with CardType, EnergyType, TurnPhase, StatusCondition, etc.
- Add RulesConfig with Mantimon TCG defaults (40-card deck, 4 points to win)
- Add RandomProvider protocol with SeededRandom (testing) and SecureRandom (production)
- Include comprehensive tests for all modules (97 tests passing)

Defaults reflect GAME_RULES.md: Pokemon Pocket-style energy deck,
first turn can attack but not attach energy, 30-turn limit enabled.
2026-01-24 22:14:45 -06:00

18 lines
775 B
Python

"""Mantimon TCG - Core Game Engine.
This module contains the core game engine for Mantimon TCG, a highly configurable
Pokemon TCG-inspired card game. The engine supports both campaign mode with fixed
rules and free play mode with user-configurable rules.
Key Components:
- config: RulesConfig and sub-configs for all game rules
- models: Data models for cards, game state, and actions
- effects: Effect handler system for card abilities and attacks
- engine: Main GameEngine orchestrator
- turn_manager: Turn/phase state machine
- rules_validator: Action legality checking
- win_conditions: Win/loss detection
- visibility: Hidden information filtering for clients
- rng: Random number generation with testable seeded implementation
"""