--- id: wiki-2026-0508-초인플레이션-hyperinflation title: 초인플레이션(Hyperinflation) category: 10_Wiki/Topics status: verified canonical_id: self aliases: [Hyperinflation, 초인플레이션, Game Economy Inflation] duplicate_of: none source_trust_level: A confidence_score: 0.92 verification_status: applied tags: [game-economy, mmorpg, monetization, telemetry] raw_sources: [] last_reinforced: 2026-05-10 github_commit: pending tech_stack: language: typescript framework: Telemetry/Analytics --- # 초인플레이션 (Hyperinflation) ## 매 한 줄 > **"매 currency supply > sink capacity 의 누적 결과"**. game economy 에서 매 closed loop 가 leak 되면 매 가격이 exponential 로 증가. EVE Online, Diablo 2, Path of Exile 의 매 historic crisis. 2026 의 매 design 답: 매 sink scaling + telemetry-driven faucet throttle + seasonal reset. ## 매 핵심 ### 매 정의 - **Inflation rate**: 매 (M/V) 증가율 — 매 monetary supply / velocity - **Hyperinflation threshold**: 매 50%+ price increase per month (Cagan 정의) - **Faucet**: 매 currency 발생 source (mob drop, quest reward) - **Sink**: 매 currency 소멸 destination (repair, tax, fee) - **Velocity**: 매 currency 의 unit time per transaction ### 매 hyperinflation 원인 - **Faucet > Sink imbalance**: 매 net positive money creation - **Bot farming**: 매 24/7 currency creation, real-money trading - **Item duplication exploit**: 매 supply spike - **Player-base growth**: 매 new player 의 income 이 sink 보다 빠름 - **Power creep**: 매 high-tier item price 가 inflate, 매 wealth concentration ### 매 응용 1. Live-ops dashboard — 매 inflation rate alarm. 2. Sink design — 매 luxury sink + repair sink 조합. 3. Seasonal reset (Diablo / PoE) — 매 economy 의 reset valve. ## 💻 패턴 ### Inflation index (CPI-like) ```typescript type PriceSnapshot = { itemId: string; medianPrice: number; ts: number } class InflationIndex { private basket: string[] // 매 representative items private base: Map = new Map() init(snapshots: PriceSnapshot[]) { for (const s of snapshots) if (this.basket.includes(s.itemId)) { this.base.set(s.itemId, s.medianPrice) } } current(snapshots: PriceSnapshot[]): number { let ratioSum = 0, n = 0 for (const s of snapshots) { const b = this.base.get(s.itemId) if (b) { ratioSum += s.medianPrice / b; n++ } } return n > 0 ? ratioSum / n : 1 } monthlyRate(history: number[]): number { if (history.length < 30) return 0 return history[history.length - 1] / history[history.length - 30] - 1 } } ``` ### Faucet/sink balance ```typescript type EconFlow = { faucet: number; sink: number; ts: number } function netFlow(flows: EconFlow[], windowMs: number): number { const cutoff = Date.now() - windowMs const recent = flows.filter(f => f.ts > cutoff) return recent.reduce((s, f) => s + f.faucet - f.sink, 0) } function isInflating(flows: EconFlow[]): boolean { return netFlow(flows, 24 * 3600 * 1000) > 0 } ``` ### Adaptive sink (repair scaling) ```typescript function repairCost(item: Item, econ: EconState): number { const base = item.value * 0.05 // 매 inflation index 와 비례 const adjusted = base * econ.inflationIndex // 매 high-tier 일수록 누진세 const progressive = item.tier > 5 ? adjusted * 1.5 : adjusted return Math.round(progressive) } ``` ### Bot detection (currency velocity) ```typescript function suspiciousAccount(account: Account): boolean { const tx = account.transactions const earnRate = tx.filter(t => t.type === "earn").length / 3600 // per hour const sleepGap = maxGapMs(tx) // longest no-tx gap // 매 24/7 high earn + no sleep gap = bot return earnRate > 200 && sleepGap < 6 * 3600 * 1000 } ``` ### Luxury sink design ```typescript type LuxurySink = { id: string cost: number effect: "cosmetic" | "buff" | "social" permanent: boolean } const LUXURY: LuxurySink[] = [ { id: "guild_castle_lv2", cost: 50_000_000, effect: "social", permanent: true }, { id: "name_color", cost: 5_000_000, effect: "cosmetic", permanent: false }, { id: "global_announce", cost: 1_000_000, effect: "social", permanent: false }, ] // 매 wealth-concentration drain function balancedLuxury(econ: EconState): LuxurySink[] { const target = econ.top1PctReserve * 0.05 return LUXURY.map(l => ({ ...l, cost: Math.round(l.cost * econ.inflationIndex) })) } ``` ### Seasonal reset ```typescript async function startNewSeason(seasonId: string) { await archiveCharacters("legacy") // 매 new season 은 currency 0, items 0 await createFreshLeague(seasonId) // 매 legacy economy 는 sink 처리 (item museum, retirement bonus) await migrateToLegacy("legacy", { incomeMultiplier: 0.0, allowTrade: false }) } ``` ### Real-time inflation alert ```typescript function monitorInflation(idx: InflationIndex, history: number[]) { const monthly = idx.monthlyRate(history) if (monthly > 0.5) alert("HYPERINFLATION", { rate: monthly }) else if (monthly > 0.2) alert("INFLATION_HIGH", { rate: monthly }) else if (monthly < -0.1) alert("DEFLATION", { rate: monthly }) } ``` ## 매 결정 기준 | 인플레이션 상태 | Action | |---|---| | < 5% / month | Healthy, no action | | 5-20% / month | 매 sink boost (repair, tax) | | 20-50% / month | 매 faucet throttle (drop nerf) + new sink | | > 50% / month (hyper) | 매 emergency sink + seasonal reset 검토 | | Deflation (< 0%) | 매 sink reduction, faucet boost | **기본값**: weekly inflation index check + adaptive repair cost + bi-annual season reset. ## 🔗 Graph - 부모: [[Hyperinflation-in-Closed-Loop-Systems]] - 변형: [[가차(Gacha)]] · [[부분_유료화(Free-to-Play)]] - 응용: [[EVE_온라인(EVE_Online)]] · [[디아블로_2(Diablo_II)]] · [[알비온_온라인(Albion_Online)]] - Adjacent: [[Telemetry_Balancing]] · [[배수구(Sinks)]] · [[탭과_싱크(Taps_and_Sinks)]] ## 🤖 LLM 활용 **언제**: economy crisis post-mortem, sink mechanic ideation, patch note 작성. **언제 X**: 매 real-time price aggregation — 매 SQL/Streaming 으로. ## ❌ 안티패턴 - **Static sink**: 매 fixed cost — 매 inflation 시 무력화. - **Faucet-only nerf**: sink 안 늘리고 drop 만 줄임 — 매 player frustration spike. - **No bot detection**: 매 24/7 farmer 방치 — 매 supply 폭발. - **No seasonal valve**: 매 perpetual server 의 매 wealth concentration. - **Top-down price control**: 매 NPC 가격 freeze → black market 으로 도피. ## 🧪 검증 / 중복 - Verified (CCP EVE Monthly Economic Report, GGG PoE league design talks, Cagan 1956). - 신뢰도 A. - 관련 canonical: [[Hyperinflation-in-Closed-Loop-Systems]] (general systems 관점). ## 🕓 Changelog | 날짜 | 변경 | |---|---| | 2026-05-08 | Phase 1 | | 2026-05-10 | Manual cleanup — game economy hyperinflation + sink design |