How bzitko/bis works
This is a terminal version of a two-round word-and-numbers game. The principal workflow is player setup and turn management, followed by generating a challenge, collecting and validating player input, awarding points, and continuing or ending the game. The letters round uses a Croatian lexicon and language-model support; the numbers round generates operands and evaluates arithmetic solutions. The excerpts establish the main game/model responsibilities, but do not show all imports or asset-loading configuration, so uncertain UI and data wiring is omitted.
Main entry points: game.py Game coordinator · model_letters.py Letters model · view.py Terminal view · view_ansi.py ANSI view
Components 12
Game flow
- Game coordinator
game.py - Letters turn
game.py - Numbers turn
game.py - Terminal view
view.py - ANSI view
view_ansi.py
Letters round
- Letters model
model_letters.py - Language model
languagemodel4.txt
Numbers round
- Numbers model
model_numbers.py
Language data
- Lexicon model
model_language.py - Lexicon data
hml.csv - Morphology specs
morphspec.txt
Other components
- Players
Connections 14
- Players → Game coordinator: starts game
- Game coordinator → Terminal view: collects setup
- Game coordinator → Letters turn: runs turn
- Game coordinator → Numbers turn: runs turn
- Game coordinator → Terminal view: shows scores
- Letters turn → Letters model: generates and validates
- Letters turn → Terminal view: gets input, shows round
- Numbers turn → Numbers model: generates and evaluates
- Numbers turn → Terminal view: gets input, shows round
- Letters model → Lexicon model: uses language methods
- Letters model → Language model: loads model
- Letters model → Lexicon data: loads lexicon
- Letters model → Morphology specs: loads specifications
- ANSI view → Terminal view: extends terminal UI