Mod
Viper Economy
No reviews yet
A server-side Fabric economy mod featuring dynamic virtual or physical currency toggles, multi-database drivers, cross-server Redis syncing, and custom-category interactive /servershop container GUIs with zero client-side requirements.
Fabric is a mod loader for versions 1.14+ of Minecraft, particularly popular for client side and optimization mods.
Community voices
Reviews
Click once to include, again to exclude, again to clear
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
Resources
External Links
About
Description
💰 Viper Economy 🏦
Viper Economy is a comprehensive, server-side only Fabric economy mod for Minecraft 1.21 through 1.21.11, 26.1 through 26.1.2, and 26.2.x. It provides a complete virtual/physical currency system with server shops, chest shops, daily rewards, tax mechanics, PvP balance loss, and scoreboard integration — all configurable without client mods. 🔌✨
Supported Versions
| Version | Java | Status |
|---|---|---|
| 1.21.x | 21 | ✅ Full support |
| 26.1.x | 25 | ✅ Full support |
| 26.2.x | 25 | ✅ Full support |
🛠️ Purpose & Function
The core engineering philosophy behind Viper Economy is to deliver a zero-dependency, server-side economy that works out-of-the-box on any Fabric server. By implementing asynchronous storage backends (JSON files), the mod avoids database overhead while maintaining atomic transactions. Fabric Mixins hijack player interactions (signs, chests, packets) to enforce chest-shop protection and server-shop GUIs without client-side registry synchronization. Pure server-side execution means vanilla clients connect seamlessly — no resource packs, no client mods, no version mismatch errors. 🍦
- Virtual & Physical Currency Modes: Toggle between balance-as-number (
VIRTUAL) or balance-as-items (PHYSICALwith custom currency item, default diamond). 💎 - Server Shop GUI: Paginated, category-driven shop interface opened via
/shop— fully configurable prices, categories, and display items viaprices.json. 🛍️ - Chest Shops: Players create shops by placing a sign on a chest — auto-detected via sign interaction mixin. Supports buy/sell, price display, and ownership protection. 📦
- Daily Rewards & Sell Limits: Configurable daily login bonus and per-player daily sell cap to prevent economy inflation. 📅
- Tax System: Automatic percentage tax on shop purchases, configurable via
taxRate. 💸 - PvP Balance Loss: Optional percentage of victim's balance dropped on PvP death. ⚔️
- Scoreboard Integration: Live balance display on sidebar scoreboard (toggleable). 📊
✨ Key Features
| Feature | Description |
|---|---|
| 💵 Dual Currency Modes | VIRTUAL (database balances) or PHYSICAL (currency items in inventory/ender chest). |
| 🛒 Server Shop GUI | 6-row paginated inventory with category rings, item lore pricing, shift-click stack buying. |
| 📦 Chest Shop System | Sign-on-chest detection, holographic price display via custom name, buy/sell perms, admin bypass. |
| 🔐 Chest Protection | Mixin-enforced: non-owners cannot open shop chests; shift-click bypass for admins. |
| 📅 Daily Login Rewards | Configurable dailyAmount granted on first join each day (UTC reset). |
| 🚫 Daily Sell Limit | dailySellLimit caps total sell value per player per day. |
| 💸 Purchase Tax | taxRate (default 10%) applied on all server shop buys; goes to void. |
| ⚔️ PvP Economics | pvpBalanceLossPercentage (default 0%) — loser drops % of balance to winner. |
| 📊 Sidebar Scoreboard | Real-time balance display; scoreboardEnabled toggle. |
| ⚙️ Hot-Reloadable Configs | /economy reload refreshes config.json, prices.json, permissions.json without restart. |
| 🔧 Permissions System | Granular command/shop permissions via permissions.json (LuckPerms-compatible nodes). |
🎮 Commands & Permissions
| Command | Permission | Description |
|---|---|---|
/balance / /bal |
viper.economy.balance |
View your balance (or target player's with viper.economy.balance.others). |
/pay <player> <amount> |
viper.economy.pay |
Transfer balance to another player. |
/baltop |
viper.economy.baltop |
Leaderboard of top 10 balances (paginated). |
/daily |
viper.economy.daily |
Claim daily login reward. |
/shop |
viper.economy.shop |
Open server shop GUI. |
/worth <item> |
viper.economy.worth |
Check server shop buy/sell price for held/item. |
/sell |
viper.economy.sell |
Sell held item to server shop (if enabled). |
/economy reload |
viper.economy.admin.reload |
Hot-reload all configs. |
/economy give <player> <amount> |
viper.economy.admin.give |
Add balance to player. |
/economy take <player> <amount> |
viper.economy.admin.take |
Remove balance from player. |
/economy set <player> <amount> |
viper.economy.admin.set |
Set player's exact balance. |
/economy toggle <physical|virtual> |
viper.economy.admin.toggle |
Switch economy mode at runtime. |
⚙️ Configuration Files
All configs live in <run-dir>/config/viper-economy/ and are hot-reloadable via /economy reload.
config.json (Global Settings)
{
"economyMode": "VIRTUAL",
"physicalCurrencyItem": "minecraft:diamond",
"startingBalance": 1000.0,
"dailyAmount": 100.0,
"dailySellLimit": 10000.0,
"taxRate": 0.1,
"pvpBalanceLossPercentage": 0.0,
"standaloneCommands": true,
"standaloneAdminCommands": false,
"scoreboardEnabled": true,
"serverShopEnabled": true
}
| Field | Description |
|---|---|
economyMode |
VIRTUAL (balances in storage) or PHYSICAL (currency items). |
physicalCurrencyItem |
Item ID used as currency when PHYSICAL mode active. |
startingBalance |
Balance given to new players on first join. |
dailyAmount |
Free money granted via /daily (once per UTC day). |
dailySellLimit |
Max total sell value per player per day. |
taxRate |
Fraction (0.0–1.0) taxed on server shop purchases. |
pvpBalanceLossPercentage |
% of victim's balance dropped on PvP death. |
standaloneCommands |
Allow non-op players to use basic commands. |
standaloneAdminCommands |
Allow non-op players to use admin commands. |
scoreboardEnabled |
Show balance on sidebar scoreboard. |
serverShopEnabled |
Enable /shop GUI. |
prices.json (Server Shop Items)
Defines all purchasable/sellable items, organized by category:
{
"items": {
"minecraft:diamond": {
"category": "gems",
"stack": 64,
"unit_buy": 100.0,
"unit_sell": 50.0
}
},
"categories": {
"gems": {
"name": "§6Gems",
"display_item": "minecraft:diamond"
}
}
}
| Field | Description |
|---|---|
category |
Category key (must exist in categories). |
stack |
Stack size for buy/sell operations. |
unit_buy |
Price to buy 1 from server shop (0 = not buyable). |
unit_sell |
Price to sell 1 to server shop (0 = not sellable). |
Tip: A massive default
prices.json(671 KB, 500+ items) is bundled and auto-deployed on first run.
permissions.json (LuckPerms-Compatible)
{
"default": [
"viper.economy.balance",
"viper.economy.pay",
"viper.economy.baltop",
"viper.economy.daily",
"viper.economy.shop",
"viper.economy.worth",
"viper.economy.sell"
],
"admin": [
"viper.economy.admin.reload",
"viper.economy.admin.give",
"viper.economy.admin.take",
"viper.economy.admin.set",
"viper.economy.admin.toggle"
]
}
Assign viper.economy.default group to regular players, viper.economy.admin to staff.
💡 Usage Walkthrough
1. First Run (Auto-Setup):
- Drop the mod JAR in
mods/, start server. config/viper-economy/config.jsonandprices.jsonare generated from bundled defaults.- Edit
config.jsonif you wantPHYSICALmode or different rates. - Run
/economy reloadto apply changes.
2. Virtual Economy (Default):
- Players join → get
startingBalance(1000). /shopopens GUI with 25+ categories, 500+ items.- Buy with left-click, sell with right-click, shift-click for stacks.
- Tax (
taxRate) applied automatically on purchases.
3. Chest Shops (Player-Run):
- Place a chest.
- Place a sign on it.
- Line 1:
[Shop](auto-detected). - Line 2:
B 10(buy price) orS 5(sell price) orB 10 S 5. - Line 3: Item name or
?(auto-detect from chest). - Line 4: Optional owner name (defaults to placer).
- Fill chest with stock → players interact with sign to buy/sell.
4. Physical Economy (Hardcore/Roleplay):
- Set
"economyMode": "PHYSICAL"inconfig.json. - Set
"physicalCurrencyItem": "minecraft:gold_ingot"(or custom item). - Balances stored as items in player inventory/ender chest.
/balancecounts currency items;/paymoves items.
5. PvP Server Economy:
- Set
"pvpBalanceLossPercentage": 0.05(5% loss on death). - Winner picks up dropped balance as currency items (physical) or gets credited (virtual).
⚠️ Important Notes
- Server-side only — clients need zero mods. Works with vanilla, Forge (via Fabric hybrid), or any client.
- Java 21 for 1.21.x, Java 25 for 26.x builds (enforced via
javadependency infabric.mod.json). - Storage: Default JSON file storage in
world/viper-economy/. Atomic writes, no external DB required. - Version ranges: Built on 1.21.11 / 26.1.1 / 26.2 but declared compatible with
~1.21/~26.1/~26.2. /economy reloadhot-reloads all configs — no restart needed for price/permission changes.- Chest shops use Mixin injection on
ServerGamePacketListenerImpl.handleUseItemOn— compatible with all 1.21.x and 26.x versions.
Built with Fabric Loom 1.17.x • Zero external dependencies • MIT/CC0 Licensed
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers
Statistics
Resources