A Unity-based digital implementation of the Pathfinder Adventure Card Game.
- Advance Time → Give Card → Move → Explore → Close Location → End Turn
- Encountering Cards: Apply effects, attempt checks, resolve success/failure
- Making Checks: Determine skill/difficulty, play cards, roll dice, apply outcomes
- Card Actions: Reveal, discard, recharge, bury, or banish based on card effects
- Action Staging: Player actions are staged before commitment, allowing undo/cancel
- Resolvable System: Complex interactions broken into user-resolvable steps
- Dynamic UI: Character powers and choices adapt based on game state
- Event-Driven Updates: Clean separation between game logic and presentation
PACG.Gameplay → Pure C# game rules, managers, card logic, contexts
PACG.Presentation → Unity UI components, display logic
PACG.Data → ScriptableObject definitions
PACG.SharedAPI → Cross-layer view controllers, events, view models
- Hierarchical Processor Pattern: Game actions as
IProcessorinstances withStack<Queue<IProcessor>>for proper phase nesting - Resolvable Architecture:
BaseResolvablesystem for user interactions requiring input - GameServices: Dependency injection bundle for simplified parameter passing
- Action Staging: Request-Validate-Commit-Notify pattern with undo support
- Card Logic Integration: Logic stored on
CardInstancewith facade pattern - Convention-Based Discovery:
{cardID}Logicclass names for card behavior - Player Choice System: Dynamic choice presentation with structured options
- Expand card implementations - Add more card-specific logic
- Enhanced encounter variety - Implement location-specific behaviors
- End-to-end testing - Verify complete game scenarios
- Advanced check types - Beyond basic combat checks
Spells
- Enchant Weapon - Spell effects and recovery.
Weapons
- Quarterstaff - Combat checks and Obstacle/Trap barrier evasion.
- Unity Version: 6000.1.11f1
- Testing: Manual play mode testing
- Data: ScriptableObjects
- Architecture: Clean layer separation with dependency injection
- Patterns: Event-driven UI updates, resolvable-centric interactions
- Testing: Manual testing through Unity play mode
- Focus: Robust core systems supporting complex card interactions