Dynamic Economy
📈 Dynamic Economy Addon
A Minecraft Bedrock Edition addon bringing a dynamic economy based on Supply & Demand, shaped by Daily Market Events, and featuring a Daily Hazards System (Hazards & Mitigation) and a Server Cooperative Project. Lightweight, safe, and 100% compatible with other addons since it never modifies player.json.
Achievement Friendly: no experimental toggles required, so achievements stay fully enabled in your world.
🆕 What's New in v1.2.0
New Major Hazard: Wood Blight
The forest is under attack from destructive termites! Chopping any tree log (Oak, Birch, Spruce, Jungle, etc.) during this hazard crushes it into a plain Stick instead. Hold Tree Medicine in your off-hand while chopping to get normal logs.
dyneco:tree_medicine: 32 uses, craftable.dyneco:super_tree_medicine: 64 uses, Black Market exclusive (500 Ducats).
4 New Minor Daily Events
- Great Harvest (
great_harvest): Crop prices drop to 0.6x. - Miners' Strike (
miners_strike): Mineral prices rise to 1.6x. - Blacksmith Holiday (
blacksmith_holiday): Equipment prices rise to 1.5x. - Mystical Eclipse (
mystical_eclipse): Mob drop prices rise to 1.4x.
Bulletin Board Crafting Recipe
The Bulletin Board can now be crafted in Survival: top row 3x Wood Planks, middle row 3x Wood Slabs, bottom row Stick + Paper + Stick.
Other Fixes & Improvements
- Stabilizer Chisel recipe changed to a shapeless recipe (1x Iron Ingot + 2x Sticks + 1x Flint) to fully resolve crafting conflicts.
- Admin chat feedback added when manually triggering an event via
/scriptevent dyneco:trigger_hazard <eventId>. - Removed the large on-screen title overlay on spawn for a less intrusive experience.
🚀 Key Features
-
Dynamic Economy (Supply & Demand) Sell an item → stock goes up → price automatically drops. Buy an item → stock goes down → price automatically rises.
-
Bulk Pricing Prevents price exploitation on large buy/sell transactions using precise accumulative price calculation.
-
Sell Tax (Spread) System Sell price is set at 80% of buy price, keeping the economy stable and preventing infinite money-printing loops.
-
Daily Market Events & Economic Hazards Random daily events affect the market, plus 4 Daily Economic Hazards that disrupt productivity and require specific mitigation tools:
- Crop Plague (
crop_plague): Harvesting without Pesticide yields Spoiled Crop. - Volcanic Eruption (
volcanic_eruption): Mining ore without a Stabilizer Chisel in your off-hand crushes it into Cobblestone. - Animal Disease (
animal_disease): Slaughtering livestock without an Animal Vaccine only drops Rotten Flesh. - Wood Blight (
wood_blight): Chopping any tree log without Tree Medicine in your off-hand crushes it into a plain Stick.
Plus 4 minor daily events that shift category prices without needing mitigation: Great Harvest (crops 0.6x), Miners' Strike (minerals 1.6x), Blacksmith Holiday (equipment 1.5x), and Mystical Eclipse (mob drops 1.4x).
- Crop Plague (
-
Server Cooperative Project A hazard won't end until the donation target is met. The target scales dynamically:
Target Per Player × Number of Online Players: still solo-player friendly. -
Black Market A secret shop that only appears while a hazard is active, selling Super Tools (64 uses) for 500 Ducats.
-
Daily News An in-UI news sheet with hazard lore and full mitigation instructions.
-
Live Hazard Visuals A chat log alert with full guidance appears when a hazard is active, plus an ActionBar ticker showing the hazard name and cooperative donation progress every 5 seconds.
-
Dynamic Translation (
displayNameFallback) Custom item names are automatically pulled fromdisplayNameinconfig.js, no extra.langfile needed.
🎮 In-Game Usage
1. Opening the Market UI
- Market Ledger: Automatically given on first join. Right-click to open the menu. If lost:
/give @s dyneco:market_ledger - Bulletin Board: Place the
dyneco:bulletin_boardblock, then right-click it to open the market instantly. - Command / Command Block:
/scriptevent economy:market
2. Displaying the Balance on Screen
/scoreboard objectives setdisplay sidebar money
3. Admin Hazard Commands (Force Trigger)
# Major Hazards
/scriptevent dyneco:trigger_hazard crop_plague
/scriptevent dyneco:trigger_hazard volcanic_eruption
/scriptevent dyneco:trigger_hazard animal_disease
/scriptevent dyneco:trigger_hazard wood_blight
# Minor Events
/scriptevent dyneco:trigger_hazard great_harvest
/scriptevent dyneco:trigger_hazard miners_strike
/scriptevent dyneco:trigger_hazard blacksmith_holiday
/scriptevent dyneco:trigger_hazard mystical_eclipse
# Other Market Events
/scriptevent dyneco:trigger_hazard monsoon_storm
/scriptevent dyneco:trigger_hazard trader_festival
/scriptevent dyneco:trigger_hazard nether_breach
Admins get instant chat feedback on whether the event triggered successfully or the ID wasn't found.
⚙️ Admin Configuration (scripts/config.js)
A. Mitigation Tool Crafting Recipes
- Pesticide: 1x Glass Bottle + 1x Spider Eye + 1x Bone Meal + 1x Iron Ingot (main hand)
- Stabilizer Chisel: 1x Iron Ingot + 2x Sticks + 1x Flint, shapeless recipe (off-hand)
- Animal Vaccine: 1x Glass Bottle + 1x Spider Eye + 1x Sugar + 1x Iron Ingot (main hand)
- Tree Medicine: 1x Glass Bottle + 1x Spider Eye + 1x Bone Meal + 1x Sugar, shapeless recipe (off-hand)
- Bulletin Board: top row 3x Wood Planks, middle row 3x Wood Slabs, bottom row Stick + Paper + Stick
B. Registering New Items & Subcategories
items: {
// VANILLA ITEM IN A STANDARD CATEGORY
"minecraft:diamond": {
displayName: "Diamond",
category: "minerals", // crops | minerals | mob_drops | woods
basePrice: 150,
baseStock: 100,
minPrice: 40,
maxPrice: 600
},
// EQUIPMENT ITEM WITH A SUBCATEGORY
"minecraft:netherite_sword": {
displayName: "Netherite Sword",
category: "equipment", // Main Equipment category
subcategory: "weapons", // weapons | armor | tools
basePrice: 1500,
baseStock: 10,
minPrice: 500,
maxPrice: 3000,
icon: "textures/items/netherite_sword.png"
}
}
🔗 Integration with Player Auction House Addon
This addon supports direct integration with the Gilded Ledger: Player Auction House Addon using a Loose Coupling system (ScriptEvents). This lets players open the auction menu directly from the main Global Market menu, and vice versa, so players only need to carry a single Ledger item in their inventory.
How to Enable the Integration
-
In Dynamic Economy (
scripts/config.js) Set the following values near the top of the config file:enableAuctionIntegration: true, auctionScriptEvent: "auction:open" -
In Player Auction House (
scripts/config.js) Set the following values in your auction addon's config file:disableLedgerGive: true(stops giving a duplicate auction ledger to new players).enableReturnToMarket: true(shows a button to return to the dynamic market from the auction menu).
Once both settings are configured, just run /reload in-game. A [PLAYER AUCTIONS] button will automatically appear in the main Global Market menu.