-
Notifications
You must be signed in to change notification settings - Fork 2
Directory Structure
Tyler Yep edited this page Dec 26, 2021
·
3 revisions
- const.py (Stores all constants, along with their use cases)
- main.py (Driver for game simulations)
- one_night.py (Plays one game of One Night Ultimate Werewolf)
- stats.py (Used to aggregate many GameResults into fixed statistics)
- replay.py (
python main.py -r
will replay the most recently run game) - encoder.py (Used to encode all custom WolfBot class objects)
- algorithms.py (Includes all solvers and consistency checks for groups of statements)
- generate.py (Used to generate data for many game iterations)
- predictions.py (Makes predictions given a SolverSolution)
- train.py (Used for Reinforcement Learning Wolf)
- voting.py (Used to aggregate prediction results)
- roles/
- village (Stores all good player roles and their associated methods)
- werewolf (Stores all evil player roles and their associated methods)
- statements.py (Statement class with associated methods)
- util.py (Some basic util functions)
Village Team: (Stores all Good player roles and their associated methods)
- Villager
- Mason
- Seer
- Robber
- Troublemaker
- Drunk
- Insomniac
Werewolf Team: (Stores all Evil player roles and their associated methods)
- Wolf
- Minion
Tanner Team: (Wildcard player)
- Tanner
Wolf Theory: Choose statements that do a good job, not necessarily the absolute best ones.
Simplified version (some cycles exist)
main.py (const, one_night, replay)
enums.py
const.py (enums)
|-- statements.py (const)
|-- util.py (const)
| |-- algorithms.py (const, statements)
| |-- roles/ (const, statements, util)
| | |-- stats.py (const, roles, statements)
| | | |-- solvers/ (const)
| | | |-- predictions/ (const, algorithms)
| | | |-- generate.py (const, algorithms, one_night, encoder)
| | | |-- encoder.py (const, roles, statements, stats)
| | | | |-- one_night.py (const, util, roles, encoder, voting)
| | | | |-- replay.py (const, algorithms, encoder, prediction, stats, voting)
| | | | |-- train.py (encoder, main)
| | | | |-- voting.py (const, roles, statements, stats)
player.py
|-- drunk.py
|-- insmoniac.py (imports wolf in get_statements)
|-- mason.py
|-- robber.py (imports wolf in get_statements)
|-- seer.py
|-- troublemaker.py
|-- villager.py
|-- minion.py
|-- wolf.py (imports wolf in get_statements)
| |-- center_wolf.py
| |-- expectimax_wolf.py
| |-- random_wolf.py
| |-- reg_wolf.py
| |-- rl_wolf.py