Files
2nd/10_Wiki/Topics/Domain_General/Game_Design/Structural-Dynamics-and-Tactical-Evolution-of-the-Combat-Ecosystem.md
T
Antigravity Agent c24165b8bc refactor(topics): 멀티 에이전트용 지식 재편 — _Common(공통 기본기) + Domain_* 구조
에이전트 8종(대화형/프로그래머 C·S/디자이너/설계자/기획자/QA/PD/PM)에게
[공통 기본 능력 + 롤별 Specialty] 2층으로 지식을 주입하기 위한 재분류.
문서 내용·포맷은 무수정, 폴더 이동만 (6,372개 문서 수 보존 확인).

- Topic_Programming → Domain_Programming (내부 구조 보존)
- Topic_Graphic → Domain_Design
- Topic_Business → Domain_Product
- Topic_General → Domain_General
- _Common 신설: Math(구 Topic_Math_Specialty), Reasoning(구 General/From_Thinking & Reasoning),
  Reasoning_Creativity(구 General/From_창의성), Communication(Poetic_Blog_Writing + From_writing)
- 타 도메인의 From_* 폴더는 유지 (출처 표기일 뿐, 이미 도메인에 맞게 분류된 문서)
- 빈 폴더 정리 (memory/procedures)
- 에이전트→폴더 매핑은 workspace의 .astra/agent-knowledge-map.json (9개 에이전트)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-11 11:05:56 +09:00

5.7 KiB

id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
id title category status canonical_id aliases duplicate_of source_trust_level confidence_score verification_status tags raw_sources last_reinforced github_commit tech_stack
wiki-2026-0508-structural-dynamics-and-tactical Structural Dynamics and Tactical Evolution of the Combat Ecosystem 10_Wiki/Topics verified self
Tactical Evolution
Meta Evolution
Combat Tactical Dynamics
none A 0.9 applied
game-design
meta
tactics
evolution
balance
2026-05-10 pending
language framework
typescript nodejs

Structural Dynamics and Tactical Evolution of the Combat Ecosystem

매 한 줄

"매 tactical layer 의 time-axis evolution 의 분석". 매 Structural-Dynamics-of-Combat-Ecosystem 의 4-layer model 의 temporal extension — 매 patch cadence, player-discovery curve, esports refinement, content drop 의 cumulative effect 의 modeling. 매 multi-year title 의 living balance 의 frame.

매 핵심

매 4 axis (temporal)

  1. Patch axis: 매 dev-driven adjustment 의 timeline.
  2. Discovery axis: 매 player community 의 strategy uncover.
  3. Esports axis: 매 pro scene 의 refinement.
  4. Content axis: 매 new unit/map 의 drop.

매 evolution phase

  • Launch: 매 dev-intended meta — fragile equilibrium.
  • Discovery: 매 community 의 tech 의 surface — 1st meta shift.
  • Refinement: 매 pro 의 micro 의 polish — 매 meta convergence.
  • Stagnation: 매 dominant strategy 의 lock-in — 매 churn risk.
  • Refresh: 매 patch/content 의 inject — 매 cycle restart.

매 응용

  1. Patch cadence design — 매 stagnation 의 prevention.
  2. Esports league season planning.
  3. Telemetry-driven predict-vs-actual meta delta.

💻 패턴

Meta state tracker

type MetaPhase = 'launch' | 'discovery' | 'refinement' | 'stagnation' | 'refresh';

interface MetaSnapshot { date: string; topUnits: string[]; diversity: number; phase: MetaPhase; }

export function classifyPhase(snapshot: MetaSnapshot, prev: MetaSnapshot[]): MetaPhase {
  if (prev.length < 2) return 'launch';
  const trend = snapshot.diversity - prev.at(-1)!.diversity;
  if (snapshot.diversity < 0.3 && Math.abs(trend) < 0.02) return 'stagnation';
  if (trend > 0.1) return 'refresh';
  if (snapshot.diversity > 0.6) return 'discovery';
  return 'refinement';
}

Diversity index (Shannon)

export function diversityIndex(pickCounts: Record<string, number>): number {
  const total = Object.values(pickCounts).reduce((a, b) => a + b, 0);
  if (total === 0) return 0;
  return -Object.values(pickCounts).reduce((s, c) => {
    const p = c / total;
    return p > 0 ? s + p * Math.log2(p) : s;
  }, 0);
}

Discovery rate model

// 매 logistic curve 의 strategy discovery
export function discoveryProgress(daysSinceLaunch: number, complexity: number): number {
  const k = 0.05 / complexity; // higher complexity → slower
  return 1 / (1 + Math.exp(-k * (daysSinceLaunch - 30 * complexity)));
}

Patch impact decay

export function patchDecay(daysSincePatch: number, halfLifeDays = 14): number {
  return Math.pow(0.5, daysSincePatch / halfLifeDays);
}

Esports vs ladder delta

interface PickStats { ladder: Record<string, number>; pro: Record<string, number>; }

export function esportsDelta(p: PickStats): { unit: string; delta: number }[] {
  const all = new Set([...Object.keys(p.ladder), ...Object.keys(p.pro)]);
  return [...all].map(u => ({
    unit: u,
    delta: (p.pro[u] ?? 0) - (p.ladder[u] ?? 0),
  })).sort((a, b) => Math.abs(b.delta) - Math.abs(a.delta));
}

Content drop scheduler

interface ContentPlan { name: string; date: string; type: 'unit' | 'map' | 'mode'; expectedDiversityDelta: number; }

export function planNextDrop(currentDiversity: number, history: ContentPlan[]): ContentPlan | null {
  if (currentDiversity > 0.5) return null; // healthy
  const last = history.at(-1);
  if (last && Date.now() - new Date(last.date).getTime() < 30 * 86400_000) return null;
  return { name: 'TBD', date: new Date().toISOString(), type: 'unit', expectedDiversityDelta: 0.15 };
}

매 결정 기준

상황 Approach
매 launch phase Light-touch patches — let discovery breathe.
매 stagnation 의 detected Major content drop or rework patch.
매 esports vs ladder split Mode-specific balance (esp. fast/slow).
매 mature title (5+ yr) Focus on QOL + cosmetic content over balance churn.

기본값: monthly diversity check + quarterly content drop + biweekly micro-patch.

🔗 Graph

🤖 LLM 활용

언제: meta narrative 의 summary, content roadmap 의 brainstorm, patch announcement 의 draft. 언제 X: 매 telemetry pipeline (Shannon entropy 의 deterministic).

안티패턴

  • Patch fatigue: 매 weekly major change — pro/community whiplash.
  • No diversity metric: 매 stagnation 의 invisible.
  • Ignoring esports delta: 매 ladder-vs-pro 의 split-meta blind.
  • Content as balance crutch: 매 power creep 의 inevitable.

🧪 검증 / 중복

  • Verified: SC2 LotV balance history, Smash Ultimate community tier list evolution, DOTA 2 7.x patches.
  • 신뢰도 A.

🕓 Changelog

날짜 변경
2026-05-08 Phase 1
2026-05-10 Manual cleanup — temporal 4-axis + Shannon diversity 추가