- Python 99.3%
- Makefile 0.7%
| .gitignore | ||
| dotcom-logo-new.gif | ||
| raw-is-war-logo.png | ||
| README.md | ||
| smackdown-logo-source.png | ||
| smackdown1roster.json | ||
| smackdown2roster.json | ||
| smackdown3roster.json | ||
| smackdown_card_maker.py | ||
| test_smackdown_card_maker.py | ||
| wwfcomlogo.gif | ||
SmackDown! Match Card Maker
An interactive Python 3 terminal app for creating and running three-match cards using the uniform JSON roster files in this directory.
python3 smackdown_card_maker.py
Cards are saved as Markdown in cards/. Load a card to view it, record results,
edit unfinished matches, or add a randomized promo before the next match. A card
is saved after each edit or result, so you can stop and resume later.
When creating a show, enter a city and attendance or press r to randomize
both; entering r at the attendance prompt after typing a city randomizes only
the attendance. Venues span the US, Canada, Europe, and Japan. The location is
stored in the card and listed next to the show name in the card header and the
saved-card listing.
The promo generator gives selected wrestlers distinct voices and uses a generic
style for wrestlers without a dedicated profile. Roster files share the schema
{"game_id": "sd1", "game": "...", "wrestlers": ["..."]}.
Completed match results flash in place; the logos and card header are drawn once and stay stationary during the animation.
The WWF.com logo remains at top left. The centered logo follows the show name: SmackDown shows use the SmackDown logo, Raw shows use the Raw logo, and other shows display no centered show logo.
In the card view, use ↑/↓ (or j/k) to highlight a promo, press Enter to
expand or collapse it, and use Page Up/Page Down to scroll while the header
stays pinned. Press q or Escape to return.
The UI uses ANSI colors and true-color terminal output. Install Pillow if you want the WWF.com and SmackDown! image assets rendered in the terminal; without it, the app uses text branding instead:
python3 -m pip install Pillow
Run the built-in tests with python3 -m unittest -v.