9148c358d0
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 폴더 제거.
6.6 KiB
6.6 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-프리미엄-통화-브릿지-premium-currency-bri | 프리미엄 통화 브릿지(Premium Currency Bridge) | 10_Wiki/Topics | verified | self |
|
none | A | 0.9 | applied |
|
2026-05-10 | pending |
|
프리미엄 통화 브릿지(Premium Currency Bridge)
매 한 줄
"매 hard currency 매 직접 의 모든 item 매 구매 X — 매 bridge layer 의 의 의 soft currency / premium feature 의 의 conversion". 매 Genshin (Genesis Crystal → Primogem → Wishes), 매 Clash Royale (Gem → Gold/Chest), 매 Honkai Star Rail (Oneiric Shard → Stellar Jade), 매 매 매 동일한 design — 매 conversion friction 매 hard purchase 의 의 의 deliberate distance 의 의 의 의 의 create.
매 핵심
매 typical 3-tier currency stack
- Hard currency (premium): 매 IRL 매 buy. 매 Genesis Crystal, Gem, Robux 등.
- Bridge / mixed currency: 매 hard 매 의 → 매 의 의 의 convert 가능 + 매 free 의 의 earn 가능. 매 Primogem, Stellar Jade.
- Soft / earnable: 매 gameplay 의 grind. 매 Mora, Credit, Gold.
매 bridge 매 functions
- delay psychology: 매 IRL → in-game gain 의 의 두 step. 매 impulse buy 매 lower-friction.
- regulatory cushion: 매 jurisdictions 매 의 conversion 매 indirect 의 의 의 loot-box law 의 의 의 navigate.
- f2p parity perception: 매 free player 매 same Primogem 의 earn 의 → 매 perceived fairness.
- bundle accounting: 매 store offers (60+10 bonus) 매 visible 의 의 conversion 의 의 의 의.
매 응용
- Genshin Impact: Genesis Crystal → Primogem (1:1 + bonus). Primogem → Fate (160:1 wish).
- Honkai Star Rail: Oneiric Shard → Stellar Jade. SJ → Star Rail Pass (warp).
- Clash Royale: Gem → Gold (변동 rate). Gem → Chest (직접).
- PUBG Mobile: UC → BP / event token.
- Fortnite: V-Bucks (single-tier, no bridge — 매 unique).
💻 패턴
Currency type definitions
type Currency = "USD" | "GenesisCrystal" | "Primogem" | "Mora";
interface Wallet {
balances: Record<Currency, number>;
}
const FX: Record<string, number> = {
"USD->GenesisCrystal": 99, // $0.99 → 60 + 0 bonus baseline
"GenesisCrystal->Primogem": 1, // 1:1 baseline
"Primogem->IntertwinedFate": 1/160, // 160 primo per wish
};
Bridge conversion (with bonus tiers)
const BUNDLE_BONUS = [
{ spend: 0.99, base: 60, bonus: 0 },
{ spend: 4.99, base: 300, bonus: 30 }, // first-time x2 separately
{ spend: 14.99, base: 980, bonus: 110 },
{ spend: 29.99, base: 1980, bonus: 260 },
{ spend: 49.99, base: 3280, bonus: 600 },
{ spend: 99.99, base: 6480, bonus: 1600 },
];
function purchaseGenesis(usd: number): number {
const tier = BUNDLE_BONUS.find(t => Math.abs(t.spend - usd) < 0.01);
if (!tier) throw new Error("Invalid SKU");
return tier.base + tier.bonus;
}
function genesisToPrimogem(gc: number): number {
return gc * FX["GenesisCrystal->Primogem"];
}
Wallet ledger (audit-safe)
interface LedgerEntry {
ts: number;
userId: string;
currency: Currency;
delta: number;
reason: "purchase" | "convert" | "spend" | "grant" | "refund";
refTxId?: string;
}
class Ledger {
entries: LedgerEntry[] = [];
apply(e: Omit<LedgerEntry, "ts">) {
this.entries.push({ ...e, ts: Date.now() });
}
balance(userId: string, c: Currency): number {
return this.entries
.filter(e => e.userId === userId && e.currency === c)
.reduce((s, e) => s + e.delta, 0);
}
}
Bridge spend with anti-double-spend
async function spendPrimogem(
ledger: Ledger,
userId: string,
amount: number,
txId: string // idempotency key
): Promise<{ ok: boolean; reason?: string }> {
if (ledger.entries.some(e => e.refTxId === txId)) {
return { ok: true }; // idempotent replay
}
if (ledger.balance(userId, "Primogem") < amount) {
return { ok: false, reason: "insufficient" };
}
ledger.apply({ userId, currency: "Primogem", delta: -amount,
reason: "spend", refTxId: txId });
return { ok: true };
}
F2P-vs-whale parity tracking
function monthlyEarnableBridge(): number {
// Daily commissions (60) + abyss (~600/cycle) + events (~1500) + bp (~680)
const daily = 60 * 30;
const abyss = 1200; // 2 cycles
const events = 1500;
const bp = 680;
return daily + abyss + events + bp; // ~5180 primogem ≈ 32 wishes
}
Regional pricing matrix
const REGION_FX: Record<string, number> = {
"US": 1.0, "EU": 0.95, "JP": 0.90,
"TR": 0.30, // historical PPP discount
"AR": 0.25, "BR": 0.50, "IN": 0.60,
};
function regionalUSD(usd: number, region: string): number {
return usd * (REGION_FX[region] ?? 1.0);
}
매 결정 기준
| 상황 | currency stack |
|---|---|
| 매 simple cosmetic store | single-tier (V-Bucks) |
| 매 gacha + grind dual loop | 3-tier with bridge |
| 매 light monetization indie | hard-only or single-tier |
| 매 enterprise / regulatory-sensitive | bridge layer + clear ToS |
기본값: 매 gacha + progression hybrid 매 → 매 3-tier (hard → bridge → soft) 매 standard.
🔗 Graph
- 부모: Game Economy
- 변형: Hard Currency
- 응용: 자원 로지스틱스(Resource Logistics) · 유니버스 LTV(Universe LTV) · ARPU
- Adjacent: Idempotency
🤖 LLM 활용
언제: 매 f2p / gacha / live-service 매 economy 매 design 시, 매 conversion-funnel 매 friction 의 의 의 calibrate 시. 언제 X: 매 premium one-time-purchase (no IAP) — 매 bridge unnecessary, 매 just confuses player.
❌ 안티패턴
- 매 4+ tiers: 매 player 매 confused. 매 store screen 매 cluttered.
- 매 hidden conversion rate: 매 ToS-buried rate → 매 trust 의 of erode + regulatory risk.
- 매 bridge ↔ hard 매 reversible: 매 refund / arbitrage 의 의 의 의 의 의 의 expose.
- 매 no idempotency on spend: 매 double-spend 매 의 의 race condition. 매 audit ledger 매 must.
🧪 검증 / 중복
- Verified (HoYoverse store ToS, Supercell economy 의 talks, GDC F2P monetization talks 2023-2025, Deconstructor of Fun analyses).
- 신뢰도 A.
🕓 Changelog
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 |
| 2026-05-10 | Manual cleanup — 3-tier stack + bundle bonus tiers + idempotent ledger code |