48 lines
No EOL
1.1 KiB
Markdown
48 lines
No EOL
1.1 KiB
Markdown
# WarChron
|
|
|
|
A simple local app to track players' campaigns for tabletop wargames.
|
|
|
|
## Features
|
|
|
|
### Main logic
|
|
|
|
Manage a list of players to sign them up to be selectable for war(s) and campaign(s).
|
|
A "war" year contains several "campaign" events which contain several "battle" games organised in successive rounds.
|
|
Battle results determine campaign score which determines the war score.
|
|
Wars are independent.
|
|
|
|
### Design notes
|
|
|
|
* Players are global identities
|
|
* Influence tokens are scoped to a war
|
|
* Campaign order enables historical tie-breakers
|
|
* Effects are generic → future-proof
|
|
|
|
## Installation
|
|
|
|
### Requirements
|
|
|
|
- Python >= 3.12
|
|
- pip
|
|
|
|
### Setup
|
|
|
|
```bash
|
|
git clone <your-forge-address>/warchron_app.git
|
|
cd warchron_app
|
|
python -m venv .venv
|
|
source .venv/bin/activate # Windows: .venv\Scripts\activate
|
|
pip install -r requirements.txt
|
|
pip install -e .
|
|
```
|
|
|
|
### Run
|
|
|
|
`python main.py`
|
|
|
|
## Dev
|
|
|
|
### UI with QT Designer
|
|
|
|
Save UI design from QT designer as `ui_*_.ui` file and then convert them to python using :
|
|
`pyuic6 -x <file_path>.ui -o <file_path>.py ` |