Persistent Wood / Timber Economy
Framework for implementing persistent wood / timber economy in games, covering the core loop, edge cases, and integration points.
Overview
The persistent wood / timber economy mechanic provides a framework that establishes rules governing player behavior and system responses. When well-implemented, this mechanic creates a satisfying feedback loop that keeps players engaged and motivated to continue playing. The key to successful implementation lies in clear communication of rules, fair outcomes, and satisfying feedback for player actions.
Game Examples
Wrestling Games
Wrestling Games use this mechanic where players balance risk and reward to express their creativity. The learning curve is steep but rewarding, resulting in risk-reward tension.
Open-World Games
Open-World Games use this mechanic where players coordinate with teammates to discover hidden content. The system supports both casual and hardcore engagement, resulting in skill differentiation.
Tycoon Games
Tycoon Games use this mechanic where players track multiple variables to support their team effectively. The mechanic respects player time and investment, resulting in cooperative synergy.
Pros & Cons
Advantages
- Encourages exploratory playstyles and experimentation
- Enables social player expression
- Creates meaningful narrative decisions for players
- Balances mechanical against economic effectively
- Enables mechanical player expression
Disadvantages
- May overwhelm accessibility-focused players with too many options
- Creates potential for min-maxing by experienced players
- Can feel grindy if progression is too slow
Implementation Patterns
Dynamic Price Calculator
A modular approach to persistent wood / timber economy that separates concerns and enables easy testing.
function calculateDynamicPrice(basePrice, supply, demand) {
const ratio = demand / Math.max(1, supply);
const modifier = Math.pow(ratio, 1.0);
const price = Math.round(basePrice * modifier);
return clamp(price, basePrice * 0.25, basePrice * 4.0);
}Auction Manager
A modular approach to persistent wood / timber economy that separates concerns and enables easy testing.
class PersistentWoodTimberEconomySystem {
gold: number = 1000;
canAfford(cost: number) {
return this.gold >= cost;
}
spend(amount: number) {
if (!this.canAfford(amount)) throw new Error("Insufficient funds");
this.gold -= amount;
return this.gold;
}
earn(amount: number) {
this.gold += amount;
if (this.gold > 999999) {
this.gold = 999999;
}
return this.gold;
}
getGold() {
return this.gold.toLocaleString();
}
}