Browse/Economy & Resources/Fence / Stolen Goods
Economy & Resources

Fence / Stolen Goods

Framework for implementing fence / stolen goods in games, covering the core loop, edge cases, and integration points.

Low complexity
4 examples
1 patterns

Overview

Fence / Stolen Goods represents a design pattern that creates a structured experience around this game element. Designers must carefully balance the system's depth against its learning curve, ensuring that new players can engage while experienced players find room for mastery. Cross-genre adoption of this mechanic demonstrates its versatility and fundamental appeal to players across different gaming preferences.

Game Examples

Tower Defense Games

Tower Defense Games use this mechanic where players optimize their build to build a competitive advantage. The mechanic integrates seamlessly with other systems, resulting in memorable moments.

Puzzle Games

Puzzle Games use this mechanic where players interact with NPCs to achieve mastery over the system. The feedback loop reinforces player engagement, resulting in satisfying progression.

Hunting Games

Hunting Games use this mechanic where players adapt to changing conditions to unlock new abilities and options. Visual and audio feedback make the interaction satisfying, resulting in competitive depth.

First-Person Shooters

First-Person Shooters use this mechanic where players plan their approach to achieve mastery over the system. The mechanic creates natural tension and release cycles, resulting in memorable moments.

Pros & Cons

Advantages

  • Supports numerous viable strategies and approaches
  • Supports several viable strategies and approaches
  • Adds satisfaction without excessive complexity

Disadvantages

  • May create an entry barrier for new players
  • Requires extensive QA testing to avoid edge cases
  • Can create frustration if not carefully balanced
  • May reduce player enjoyment if implemented poorly
  • Can become irrelevant in the late game

Implementation Patterns

Trade Validator

Event-driven pattern that reacts to fence / stolen goods changes and updates dependent systems.

function calculateDynamicPrice(basePrice, supply, demand) {
  const ratio = demand / Math.max(1, supply);
  const modifier = Math.pow(ratio, 1.5);
  const price = Math.round(basePrice * modifier);
  return clamp(price, basePrice * 0.1, basePrice * 10.0);
}