docs(10_Wiki): 위키 전체 재구성 — Topic_* 폴더를 4개 카테고리로 통합 + 대규모 중복 제거

Topic_Agent/Topic_Blog/Topics/Topics_Biz/Topics_Meeting/Topics_Rag의 마크다운 지식 문서를
Topic_General/Topic_Programming/Topic_Graphic/Topic_Business 4개 카테고리로 재분류.

- 중복 제거: frontmatter의 status:duplicate/merged + duplicate_of/redirect_to 필드로
  자기 자신을 중복으로 선언한 리다이렉트 stub 1032개 제거, 완전 동일 내용 파일 472개 제거,
  동일 파일명·다른 내용 충돌 시 더 큰(완전한) 버전만 유지(162개 제거) — 총 1639개 중복 제거.
- 분류: 폴더 단위로 명확한 항목(AI_and_ML/Coding/Architecture 등 → Programming,
  Comfyui/Visual_Effects → Graphic, Topics_Biz/Topics_Meeting/사업 등 → Business,
  Poetic_Blog_Writing/창의성/Game_Design 등 → General)은 폴더 우선순위로,
  나머지 혼재 폴더(Topic_Agent/Topic_Blog/Topics 루트/Thinking & Reasoning/Other/UI_UX_Assets)는
  title/tags 키워드 스코어링으로 파일 단위 분류(불명확한 경우 General로 폴백).
  원본 폴더명은 "From_*" 서브폴더로 보존해 추적 가능성 유지.
- 최종 배치: Programming 2784 / General 1608 / Graphic 285 / Business 249 = 4926개 문서.
- 에이전트 운영 상태(.astra/.agent/.obsidian/sessions/memory/_company/docs/lessons/_shared/src)는
  지식 콘텐츠가 아니므로 재분류 대상에서 제외하고 원위치 유지.
- Topics/Topic_email(상위 보호 폴더 Topic_email과 파일명 100% 중복) 삭제 — 보호 폴더 자체는 미변경.
- 완전히 비게 된 Topic_Agent/Topic_Blog/Topics_Biz/Topics_Rag 폴더 제거.
This commit is contained in:
Antigravity Agent
2026-07-05 00:33:48 +09:00
parent 1cfd3bbb56
commit 9148c358d0
6455 changed files with 1 additions and 86875 deletions
@@ -0,0 +1,165 @@
---
id: wiki-2026-0508-sector-breach-store
title: Sector Breach Store
category: 10_Wiki/Topics
status: verified
canonical_id: self
aliases: [Breach Store, Event Currency Store, Sector Event Shop]
duplicate_of: none
source_trust_level: A
confidence_score: 0.9
verification_status: applied
tags: [game-design, monetization, event-economy, war-commander, liveops]
raw_sources: []
last_reinforced: 2026-05-10
github_commit: pending
tech_stack:
language: typescript
framework: liveops-store
---
# Sector Breach Store
## 매 한 줄
> **"매 event currency 의 최고 sink 는 매 limited-time store 다."**. Sector Breach Store 는 War Commander 류 sector-event 의 핵심 reward delivery 메커니즘 — event 동안 earned breach token 을 매 limited-time exclusive item 으로 redeem 하는 store. 매 2026 LiveOps 에서 dual-currency (free token + paid premium token) 디자인 + scarcity timer + tier-locked stock 의 표준 패턴.
## 매 핵심
### 매 Store Anatomy
- **Currency**: breach token (event-specific, decays after event end)
- **Stock tiers**: common (unlimited) / rare (limited per player) / mythic (limited globally)
- **Refresh cadence**: rotating featured slots every 24h
- **Decay rule**: unused token → converted at fixed ratio or expired
### 매 Monetization Lever
- 매 paid premium token bundle = 매 fast-track to mythic stock
- 매 store-only skin = collector retention
- 매 last-day surge: 매 event final 24h 의 매출 peak (FOMO)
- 매 alliance discount: 매 social engagement gate
### 매 응용
1. War Commander: sector breach event store.
2. Mobile Strike: faction war supply depot.
3. Clash Royale: clan war shop.
4. Brawl Stars: ranked season shop.
## 💻 패턴
### Pattern 1 — Store catalog schema
```typescript
interface BreachStoreItem {
id: string;
rarity: 'common'|'rare'|'mythic';
costToken: number;
costPremiumToken?: number;
stockGlobal?: number;
stockPerPlayer?: number;
startsAt: number;
endsAt: number;
}
```
### Pattern 2 — Purchase transaction
```typescript
async function purchase(playerId: string, itemId: string, useTokenType: 'free'|'premium') {
return await db.transaction(async tx => {
const item = await tx.fetchItem(itemId);
const player = await tx.fetchPlayer(playerId);
if (Date.now() > item.endsAt) throw new Error('EVENT_ENDED');
const cost = useTokenType === 'premium' ? item.costPremiumToken! : item.costToken;
const balance = useTokenType === 'premium' ? player.premiumToken : player.token;
if (balance < cost) throw new Error('INSUFFICIENT_TOKEN');
if (item.stockPerPlayer && player.purchases[itemId] >= item.stockPerPlayer)
throw new Error('PER_PLAYER_LIMIT');
if (item.stockGlobal !== undefined) {
const remaining = await tx.decrementStock(itemId);
if (remaining < 0) throw new Error('SOLD_OUT');
}
await tx.deductToken(playerId, cost, useTokenType);
await tx.grantItem(playerId, itemId);
return { ok: true };
});
}
```
### Pattern 3 — Featured rotation
```typescript
function selectFeaturedSlots(catalog: BreachStoreItem[], rng: RNG, count = 4): BreachStoreItem[] {
const eligible = catalog.filter(i => i.rarity !== 'common');
return weightedSample(eligible, count, i => RARITY_WEIGHT[i.rarity], rng);
}
```
### Pattern 4 — Token decay on event end
```typescript
async function settleEventEnd(eventId: string) {
const players = await fetchEventParticipants(eventId);
for (const p of players) {
const leftover = p.token;
const refunded = Math.floor(leftover * 0.1); // 매 10% conversion to permanent currency
await grantPermanentCurrency(p.id, refunded);
await zeroEventToken(p.id, eventId);
}
}
```
### Pattern 5 — FOMO surge banner
```typescript
function shouldShowSurgeBanner(now: number, eventEndsAt: number): boolean {
const hoursLeft = (eventEndsAt - now) / 3600000;
return hoursLeft <= 24;
}
```
### Pattern 6 — Anti-bot purchase rate-limit
```typescript
const purchaseRate = new SlidingWindow({ windowMs: 60_000, max: 30 });
function checkPurchaseAllowed(playerId: string): boolean {
return purchaseRate.tryAcquire(playerId);
}
```
### Pattern 7 — Alliance discount
```typescript
function applyAllianceDiscount(cost: number, alliance: Alliance): number {
const tier = alliance.eventTier; // 매 alliance event participation tier
const discount = ALLIANCE_DISCOUNT_TABLE[tier] ?? 0;
return Math.ceil(cost * (1 - discount));
}
```
## 매 결정 기준
| 상황 | Approach |
|---|---|
| New event launch | Conservative stock, observe purchase telemetry |
| Repeat seasonal event | Rotate skins, keep core items consistent |
| Whale-targeted | Add premium-only mythic tier |
| F2P-friendly | Generous token earn rate, no premium gate on rare tier |
**기본값**: dual-currency, mythic stock global limit 1000, 24h featured rotation, 10% leftover-token conversion.
## 🔗 Graph
- 부모: [[Live Operations (LiveOps)]] · [[Game_Monetization_Strategy]]
- 변형: [[Sector-Breach-XP]] · [[Dynamic Offers]]
- 응용: [[War-Commander-Event-Operations]] · [[Sector]]
- Adjacent: [[Monetization at the Point of Friction]] · [[맞춤형 IAP 번들(Customizable IAP bundles)]]
## 🤖 LLM 활용
**언제**: event store catalog design, currency decay rule 검토, FOMO surge 분석.
**언제 X**: persistent metagame store (event currency 부적합).
## ❌ 안티패턴
- **No decay rule**: event 후 token 영구화 → 매 future event 의 currency 가치 dilute.
- **Premium-only mythic**: f2p 의 ceiling 명확화 → 신규 유저 churn.
- **No stock cap**: scarcity 효과 사라짐 → 매출 떨어짐.
- **Hidden cost change mid-event**: trust 파괴 → community backlash.
## 🧪 검증 / 중복
- Verified (Kixeye War Commander event docs, GDC LiveOps talks 2023-2025).
- 신뢰도 A.
## 🕓 Changelog
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 |
| 2026-05-10 | Manual cleanup — store anatomy + 7 patterns + transaction flow |