Skip to content

Repository files navigation

pyDuckHunt

CI Status: Beta Python 3.11+ License: CC BY-NC-SA 3.0

A Duck Hunt game bot for IRC, with English and French messages, persistent scores, a shop and private administrator tools. Both languages share the same game rules and code.

Install · Documentation · Roadmap · Report a bug

Install in English

Requires Python 3.11+, its venv module and Git. Run as your normal bot account, not root. See platform prerequisites.

git clone https://github.com/teuk/pyDuckHunt.git
cd pyDuckHunt
./install.sh --language en

This creates .venv and a private config/pyduckhunt.toml with language = "en" in [game]. It does not connect to IRC yet.

Next, edit that configuration with your IRC server, port, TLS setting, nickname and channel. Then follow configure, check and start to enable the game and launch it. No system service is installed automatically.

French: use ./install.sh --language fr. French is also the default for a new installation when --language is omitted.

Already installed? Set language = "en" in the existing [game] section of your instance's private configuration, then restart it. Scores and inventory are preserved. See switching languages. The installer preserves existing configuration and refuses a conflicting language choice.

Play

Command Action
!bang Shoot a duck
!reload Reload your weapon
!duckstats View your profile and hunting record
!inventory View your equipment and active effects
!shop / !shop <number> Browse the shop / buy an item

Command names stay the same in both languages. Exact flight planning is private to authenticated Owners; ordinary players cannot request it.

The game includes 24 daily base flights, bread and duck calls, special ducks, equipment, fatigue and persistent progression. See shop rules and channel items for the details.

Documentation

You want to… Start here
Install, configure or update a bot Installation · Troubleshooting
Understand the game Player profiles · Shop
Run and administer an instance Operator guides
Fix a bug or improve a translation Contributing · Languages

All documentation · Changelog · Security

Beta status

This is beta software, distributed from main, and no tag or GitHub Release has been published yet. Back up your private configuration and state before updating. The roadmap lists the remaining acceptance work; there is no release date yet. Linux is the current deployment target.

For development validation:

PYTHONPATH=src .venv/bin/python tools/validate.py --lane fast --progress

The full lane is run once before a final commit; see release workflow. Keep runtime data, credentials and private logs outside Git.

License and credits

CC BY-NC-SA 3.0. Credits: MenzAgitat, author of the original Duck Hunt Tcl game.

Special thanks to gaby for live testing and detailed player feedback.

About

Beta: a deterministic, replayable Duck Hunt game bot for IRC, written in Python.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages