Update README for new duck types and items
This commit is contained in:
43
README.md
43
README.md
@@ -10,7 +10,7 @@ DuckHunt is an asyncio-based IRC bot that runs a classic “duck hunting” mini
|
||||
## Features
|
||||
|
||||
- Per-channel stats (same nick has separate stats per channel)
|
||||
- Multiple duck types (normal / golden / fast)
|
||||
- Multiple duck types (normal / golden / fast + special variants)
|
||||
- Shop + inventory items
|
||||
- Admin commands (rearm/disarm/ignore, spawn ducks, join/leave channels)
|
||||
- `!globalducks` totals across channels
|
||||
@@ -32,13 +32,35 @@ python3 duckhunt.py
|
||||
|
||||
## Configuration
|
||||
|
||||
Edit `config.json`:
|
||||
Copy the example config and edit it:
|
||||
|
||||
```bash
|
||||
cp config.json.example config.json
|
||||
```
|
||||
|
||||
Then edit `config.json`:
|
||||
|
||||
- `connection.server`, `connection.port`, `connection.nick`
|
||||
- `connection.channels` (list of channels to join on connect)
|
||||
- `connection.ssl` and optional password/SASL settings
|
||||
|
||||
Security note: don’t commit real IRC passwords/tokens in `config.json`.
|
||||
Security note: `config.json` is ignored by git in this repo; don’t commit real IRC passwords/tokens.
|
||||
|
||||
### Duck types
|
||||
|
||||
Duck types are configured under `duck_types` in `config.json`.
|
||||
|
||||
Built-in variants supported by the game logic:
|
||||
|
||||
- `normal`, `fast`, `golden`
|
||||
- `concrete` (multi-HP)
|
||||
- `holy_grail` (multi-HP)
|
||||
- `diamond` (multi-HP)
|
||||
- `explosive` (on kill: eliminates the shooter for 2 hours)
|
||||
- `poisonous` (on befriend: poisons the befriender for 2 hours)
|
||||
- `radioactive` (on befriend: poisons the befriender for 8 hours)
|
||||
- `couple` (spawns 2 ducks at once)
|
||||
- `family` (spawns 3–4 ducks at once)
|
||||
|
||||
## Persistence
|
||||
|
||||
@@ -62,6 +84,18 @@ Player stats are saved to `duckhunt.json`.
|
||||
- `!globalducks [player]` (totals across all configured channels)
|
||||
- `!duckhelp` (sends a PM with examples)
|
||||
|
||||
### Shop items (IDs)
|
||||
|
||||
Use `!shop` / `!buy <id>` / `!use <id>`.
|
||||
|
||||
- `10` Sniper Rifle: perfect aim for 30 minutes
|
||||
- `11` Sniper Scope: perfect aim for 60 minutes
|
||||
- `12` Duck Whistle: instantly summons a duck (if none are present)
|
||||
- `13` Duck Caller: instantly summons a duck (if none are present)
|
||||
- `14` Duck Horn: instantly summons a duck (if none are present)
|
||||
- `15` Duck Decoy: summons a duck in ~1 hour (if none are present)
|
||||
- `16` Duck Radar: DM alert when a duck spawns in that channel (6 hours)
|
||||
|
||||
### Admin commands
|
||||
|
||||
- `!rearm <player|all>`
|
||||
@@ -76,7 +110,8 @@ Player stats are saved to `duckhunt.json`.
|
||||
```
|
||||
duckhunt/
|
||||
├── duckhunt.py # Entry point
|
||||
├── config.json # Bot configuration
|
||||
├── config.json # Bot configuration (ignored by git)
|
||||
├── config.json.example # Safe template to copy
|
||||
├── duckhunt.json # Player database (generated/updated at runtime)
|
||||
└── src/
|
||||
├── duckhuntbot.py # IRC bot + command routing
|
||||
|
||||
Reference in New Issue
Block a user