Skip to content
Brandt Homan edited this page May 8, 2026 · 5 revisions

Pan's Trial Wiki

Pan's Trial title art

Pan's Trial is a two-player tactical card-and-labyrinth game built for ECE 348. Players draft high-value cards, reveal Omens that assign each suit a changing role, move through a 6x6 wraparound labyrinth, fight with weapon cards, and enter Appeasing Pan to reshape the board or health state.

This wiki is the digital report for the project. It reorganizes the written report into GitHub pages with direct links between rules, architecture, testing evidence, publication goals, code, media, and references.

Live Links

Report Goal

The written report argues that Pan's Trial is more than a class prototype: it is a playable, web-ready vertical slice that can continue toward public release. The wiki keeps that argument navigable:

  • Publication Case explains the problem, design hook, market strategy, and recommended next steps.
  • Gameplay and Rules documents the player-facing rules and links rule behavior back to the implementation.
  • Project Architecture shows how the code is split into engine, UI, multiplayer, build, and test layers.
  • Testing and Balance summarizes the regression suite and the AI-vs-AI balance study.
  • Media and References collects images, video, audio, and the references cited by the report.

Project Snapshot

  • The full gameplay loop is implemented: coin flip, draft, Omen reveal, Traversing, Appeasing Pan, all four Pan requests, post-Appeasing hole placement, victory resolution, match summary, and rematch flow.
  • The project supports single player against AI, two-player room-code multiplayer, desktop play from source, a Windows executable path, and a browser build.
  • The codebase is split into a headless rules engine, a Pygame UI, multiplayer transport layers, browser build tooling, and automated regression tests.
  • The same engine powers gameplay, tests, multiplayer state, and headless balance simulations.
  • The web-first strategy lets the game become a one-link demo before later desktop, itch.io, Steam, or mobile/tablet releases.

Start Here

Suggested Reading Paths

Core Code Links

  • main.py starts the desktop and browser game.
  • engine/ contains the headless game rules.
  • ui/ contains screens, rendering, input, and audio.
  • multiplayer/ contains room clients, room state helpers, and serialization.
  • room_server.py hosts the room API and can also serve the web build.
  • build_web.py creates the browser package and deployment site.
  • tests/test_rules.py contains the main regression suite.
  • balance_testing.py runs AI-vs-AI balance studies without the UI.

Clone this wiki locally