💰 Villager Wallet
A realistic economy mod for Minecraft 1.20.1 (Forge)
📖 What does this mod do?
Ever felt like villager trading was too easy? Just spam-sell one item and get infinite emeralds forever?
Villager Wallet fixes that by giving every villager a personal emerald wallet. When you sell items to a villager, they pay you from their wallet. When the wallet runs dry — the trade is blocked. Villagers are no longer infinite money machines. They earn, spend, and save — just like a real economy.
⚙️ Core Mechanics
💼 Wallet System
Every villager spawns with a wallet filled with emeralds. The starting balance is randomized around a configurable base value, so each villager feels unique.
- Sell items → villager pays emeralds from their wallet
- Buy items → villager receives emeralds into their wallet
- Wallet empty → trade is blocked until they restock
📈 Wallet Refills Over Time
Villagers aren't permanently broke — they recover emeralds through several sources:
- Daily restock — every in-game day, villagers receive a small income
- Workstation bonus — restocking at their job site gives an extra top-up
- Level-up bonus — when a villager levels up (Novice → Master), they receive a one-time boost
🎲 Random Starting Balance
Each villager's wallet is slightly different. A configurable random factor is applied to the base starting balance, so no two villagers are exactly the same. The rich butcher down the road might have more to offer than the novice farmer next to him.
🖥️ HUD
A small wallet indicator appears above the trade screen whenever you open the trading GUI. It shows the current emerald balance of the villager you're trading with.

Large values are automatically shortened: 1500 → 1.5K, 100000 → 100K, 1500000 → 1.5M
The HUD position can be adjusted in the config if it conflicts with other mods.
⚙️ Configuration
All settings are found in villagerwallet-common.toml inside your config folder.
[wallet]
| Option | Default | Description |
|---|---|---|
initialWalletSize |
32 |
Base starting emerald balance for every villager |
restockAmount |
8 |
Emeralds added to the wallet each in-game day |
[gameplay]
| Option | Default | Description |
|---|---|---|
randomFactorMin |
-10 |
Minimum random adjustment to starting balance |
randomFactorMax |
10 |
Maximum random adjustment to starting balance |
levelUpBonus |
10 |
Emeralds awarded when a villager levels up |
vanillaBlockingEnabled |
false |
Keep vanilla use-count trade blocking alongside wallet blocking |
[advancement]
| Option | Default | Description |
|---|---|---|
stonksThreshold |
100000 |
Wallet balance required to trigger the Stonks! advancement |
🔧 Compatibility
- ✅ Minecraft 1.20.1
- ✅ Forge 47.2.0+
- ✅ Multiplayer / dedicated servers
- ✅ Works alongside most economy and villager trade mods
- ⚠️ Wandering Traders are not affected (wallets are villager-only)
Found a bug or have a suggestion? Open an issue on the project page!

