Files
2nd/10_Wiki/Topics/Architecture/부분_유료화(Free-to-Play).md
T
Antigravity Agent f8b21af4be Wiki cleanup: error-doc removal, dedup merge, link normalization
10_Wiki/Topics 대규모 정리:
- 오류 캡처/미완성 stub 문서 227개 제거
- 교차폴더 중복 43클러스터 병합 (63파일 → redirect)
- 링크명 정규화: 깨진 링크 수정·redirect 직결·개념 매핑 ~2,400건
- 카테고리 MOC 6개 신규 생성
- Graph 섹션 미해결 related-keyword 링크 10,058건 제거

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 23:52:15 +09:00

5.8 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-부분-유료화-free-to-play 부분 유료화 (Free-to-Play) 10_Wiki/Topics verified self
Free-to-Play
F2P
Freemium
부분유료화
프리투플레이
none A 0.9 applied
game-design
monetization
business-model
economy
2026-05-10 pending
language framework
language-agnostic monetization

부분 유료화 (Free-to-Play)

매 한 줄

"매 무료 entry, 매 in-game purchase 의 통한 monetize.". 2010s mobile gaming 의 explosion 의 driver — 매 Candy Crush, Clash of Clans, Genshin Impact, Fortnite 의 backbone. 2026 의 매 cosmetics-only (Fortnite, Valorant) 와 매 progression-gated (gacha) 의 split — 매 EU/KR regulation (gambling disclosure, 매 odds publication) 의 매 design 의 reshape.

매 핵심

매 monetization 의 종류

  • Cosmetic: 매 skin · emote · nameplate — 매 power 의 X.
  • Battle pass: 매 seasonal progression — 매 paid + free track.
  • Gacha / loot box: 매 randomized reward — 매 rarity tier.
  • Energy / wait gate: 매 stamina · timer — 매 pay-to-skip.
  • Pay-to-win (P2W): 매 power 의 직접 sell — 매 controversial.
  • Subscription: 매 monthly perk (Apple Arcade, Game Pass — F2P 의 hybrid).

매 metric

  • ARPU: average revenue per user.
  • ARPPU: average revenue per paying user.
  • Conversion rate: 매 free → paying %.
  • Whale concentration: 매 top 1% 의 50%+ revenue 의 contribute (typical).
  • D1/D7/D30 retention: 매 monetization 의 prerequisite.

매 응용

  1. 매 economy design — 매 sink/source balance 의 inflation 의 prevent.
  2. 매 A/B test — 매 price point · 매 offer cadence.
  3. 매 ethical disclosure — 매 gacha odds publication (KR · CN law).

💻 패턴

Pricing tier (server config)

products:
  - id: gem_pack_small
    price_usd: 4.99
    gems: 500
    bonus: 0
  - id: gem_pack_medium
    price_usd: 19.99
    gems: 2200       # 매 10% bonus
    bonus: 200
    badge: "best_value"
  - id: gem_pack_large
    price_usd: 99.99
    gems: 13000      # 매 30% bonus, whale tier
    bonus: 3000

Gacha pull with pity

import random

def pull(banner, pity_counter):
    rates = banner.rates  # {"5★": 0.006, "4★": 0.051, "3★": 0.943}
    if pity_counter >= banner.hard_pity:  # 매 90 pulls 의 5★ guarantee
        return banner.featured_5star, 0
    r = random.random()
    if r < rates["5★"]: return random_5star(), 0
    if r < rates["5★"] + rates["4★"]: return random_4star(), pity_counter + 1
    return random_3star(), pity_counter + 1

Battle pass progression

interface BattlePass {
  season: number;
  currentXP: number;
  tiers: Tier[];          // 매 100 tiers
  ownsPaid: boolean;
}

function unlockedRewards(bp: BattlePass): Reward[] {
  const tier = Math.floor(bp.currentXP / 1000);
  return bp.tiers.slice(0, tier).flatMap(t =>
    bp.ownsPaid ? [t.free, t.paid] : [t.free]
  );
}

Energy/stamina regen

function currentStamina(user: User, now: Date): number {
  const elapsed = (now.getTime() - user.lastStaminaUpdate.getTime()) / 1000;
  const regen = Math.floor(elapsed / 360); // 매 6 min/point
  return Math.min(user.stamina + regen, user.maxStamina);
}
// pay 의 instant refill: refill_cost = 50 gems

Whale-friendly bundle

bundle_starter:
  one_time_only: true
  price_usd: 0.99
  contents:
    - hero_card_5star: 1
    - gems: 1000
  rationale: "low-friction first purchase — 매 conversion driver"

Disclosure (KR/CN law compliance)

{
  "banner": "limited_5star_featured",
  "rates_disclosed": {
    "5★_featured": 0.0030,
    "5★_other": 0.0030,
    "4★_any": 0.0510,
    "3★_any": 0.9430
  },
  "pity_disclosed": { "soft_pity_at": 75, "hard_pity_at": 90 }
}

Live ops calendar (offers)

events:
  - id: "weekend_sale"
    cadence: "Fri 18:00 → Sun 23:59 KST"
    discount: 0.20
  - id: "comeback_offer"
    trigger: "user.daysSinceLastSession >= 7"
    contents: [gems: 500, hero_token: 1]

매 결정 기준

상황 Approach
매 competitive PvP Cosmetic-only — 매 P2W 의 player exodus 의 cause
매 RPG/gacha audience Banner + pity + battle pass
매 casual puzzle Energy gate + remove-ad IAP
매 EU/KR market Disclosure 의 mandatory · 매 gambling-like 의 minor restriction
매 retention < D7 매 monetize 의 premature — 매 retention 의 fix first

기본값: 매 cosmetic + battle pass — 매 controversy 의 minimize, 매 long-term retention 의 protect.

🔗 Graph

🤖 LLM 활용

언제: 매 economy simulation — 매 sink/source balance 의 model, 매 offer copy 의 generate. 언제 X: 매 ethical decision — 매 manipulative dark pattern 의 design 의 X.

안티패턴

  • Pay-to-win in PvP: 매 competitive integrity 의 destroy → 매 churn.
  • Hidden gacha rates: 매 KR/CN illegal · 매 trust 의 destroy.
  • Inflation: 매 currency source > sink — 매 economy 의 break.
  • Monetize early: 매 D1 popup 의 IAP — 매 retention 의 tank.
  • Whale-only design: 매 top 1% 의 only 의 fun — 매 base 의 hollow out.

🧪 검증 / 중복

  • Verified (Schell Art of Game Design; KR Game Industry Promotion Act 2024 amend; Sensor Tower 2026 mobile report).
  • 신뢰도 A.

🕓 Changelog

날짜 변경
2026-05-08 Phase 1
2026-05-10 Manual cleanup — monetization types, gacha mechanics, regulation