Update README.md
This commit is contained in:
@@ -4,11 +4,25 @@ IRC cryptocurrency simulation where every nick in the channel is a tradeable coi
|
||||
|
||||
## How It Works
|
||||
|
||||
Every person in the channel is a coin. The more they chat, the higher their coin's price goes. Chatting also mines new supply — 20% goes to the miner, 80% goes to the market pool for others to buy. Mining difficulty increases as more coins are minted.
|
||||
Every person in the channel is a coin. The more they chat, the higher their coin's price goes. Chatting also mines new supply — 20% goes to the miner, 80% goes to the market pool for others to buy. Mining difficulty scales up as more coins are minted, and a nick needs at least 25 lines before their coin exists.
|
||||
|
||||
Players start with $1,000 USD and can buy/sell any coin. Large trades move prices like a real market. The last 30 days of chat activity influences price 3x more than older data.
|
||||
Players start with $1,000 USD and can buy/sell any coin. Large trades move prices via supply/demand pressure, just like a real market. The last 30 days of chat activity influences price 3x more than older data.
|
||||
|
||||
The top 10 most widely held coins earn staking interest for holders (up to 3%/day). A dynamic news system generates headlines every hour that temporarily affect coin prices.
|
||||
### Staking
|
||||
The top 10 most widely held coins earn staking interest for holders — #1 gets 3%/day, scaling down to 0.5%/day for #10. Interest accrues hourly.
|
||||
|
||||
### News
|
||||
A dynamic news system generates 3-5 headlines every hour with bull/bear/neutral sentiment. News events temporarily affect coin prices by 5-100% for 1-3 hours.
|
||||
|
||||
### Exchange Modes
|
||||
- **Maintenance** — Randomly once per day, the exchange goes down for 1 hour. No trading allowed, but `$give` still works.
|
||||
- **Fee Mode** — Activates 1-2x per day for 1 hour. A 1-5% fee on buys, sells, or both gets sent to the coin minter's wallet.
|
||||
|
||||
### Rug Pulls
|
||||
If a nick hasn't chatted for 21 days, their coin gets delisted entirely. All holder losses over $100 are announced.
|
||||
|
||||
### Blockchain
|
||||
Every trade is logged to an append-only SQLite ledger with chained SHA-256 hashes. Query it with `$blockchain`.
|
||||
|
||||
## Commands
|
||||
|
||||
@@ -18,18 +32,29 @@ The top 10 most widely held coins earn staking interest for holders (up to 3%/da
|
||||
| `$<nick> buy <usd>` | Buy a coin with USD |
|
||||
| `$<nick> sell <usd>` | Sell a coin for USD (use `*` to sell all) |
|
||||
| `$give <player> <coin> <amount>` | Transfer coins to another player (use `*` for all) |
|
||||
| `$bal` | View your portfolio & holdings |
|
||||
| `$bal` | Your portfolio & holdings |
|
||||
| `$top` | Top 15 coins by price |
|
||||
| `$rich` | Top 10 richest players |
|
||||
| `$market` | Full market overview |
|
||||
| `$market` | Full market overview + active mode status |
|
||||
| `$staking` | Coins earning staking interest |
|
||||
| `$news` | Market news (affects prices for 1-3 hours) |
|
||||
| `$news` | Market news + active price effects |
|
||||
| `$blockchain` | Last 20 trades globally |
|
||||
| `$blockchain <nick>` | Last 20 trades by a player |
|
||||
| `$blockchain $<coin>` | Last 20 trades of a coin |
|
||||
| `$help` | Help message |
|
||||
|
||||
## Data
|
||||
|
||||
| File | Purpose |
|
||||
|---|---|
|
||||
| `ircoin_data.json` | Game state (wallets, lines, supply, etc.) — saved every 5 minutes |
|
||||
| `ircoin_ledger.db` | Append-only trade ledger (SQLite) |
|
||||
| `backups/` | Daily JSON snapshots, last 7 days retained |
|
||||
|
||||
## Running
|
||||
|
||||
```
|
||||
python ircoin.py
|
||||
```
|
||||
|
||||
No dependencies beyond the Python standard library. State is persisted to `ircoin_data.json` every 5 minutes.
|
||||
No dependencies beyond the Python standard library.
|
||||
|
||||
Reference in New Issue
Block a user