Files
2nd/10_Wiki/Topics/AI_and_ML/Fate War.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

6.0 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-fate-war Fate War 10_Wiki/Topics verified self
Fate War game
Fate franchise war
Type-Moon Holy Grail War
none B 0.85 applied
game
fate
type-moon
holy-grail-war
narrative
gacha
2026-05-10 pending
language applicable_to
Game / Narrative
Game Design
Narrative AI
Lore

Fate War (Holy Grail War)

매 한 줄

"매 Type-Moon Fate franchise 의 core conflict — 매 7 master + 7 servant 의 Holy Grail 의 의 의 battle royale". Fate/stay night (2004) 시작 — 매 Visual Novel + 매 anime + 매 Fate/Grand Order (gacha) 등 expand. 매 narrative AI / 매 game design 의 reference.

매 핵심

매 setup

  • 7 masters (mages) + 7 servants (heroic spirits).
  • Holy Grail: 매 wish-granting.
  • Fuyuki city (or variant) 의 setting.
  • Battle royale: 매 last 1 의 wins.

매 7 servant class

  • Saber: 매 sword.
  • Archer: 매 bow / range.
  • Lancer: 매 spear.
  • Rider: 매 mount.
  • Caster: 매 magic.
  • Berserker: 매 mad enhancement.
  • Assassin: 매 stealth.

매 Fate franchise

  • Fate/stay night (2004): 매 origin VN.
  • Fate/Zero (2011): 매 prequel.
  • Fate/Apocrypha: 매 14-servant variant.
  • Fate/Grand Order (2015+): 매 mobile gacha — 매 commercial 매 다수.
  • Fate/Extra: 매 Moon Cell variant.

매 narrative pattern

  • Master-servant bond: 매 strategic + emotional.
  • Class triangle: 매 rock-paper-scissors style.
  • Heroic spirit: 매 historical / mythological figure.
  • Noble Phantasm: 매 servant 의 ultimate.
  • Command Spell: 매 master 의 3-use control.

매 game design 응용

  1. Battle royale narrative.
  2. Gacha: 매 character + rarity.
  3. Class-based combat triangle.
  4. Boss raid: 매 servant 의 mythic scale.
  5. Visual novel: 매 branching.

💻 패턴 (응용)

Class triangle

CLASS_ADVANTAGE = {
    'Saber': ['Lancer'],
    'Lancer': ['Archer'],
    'Archer': ['Saber'],
    'Rider': ['Caster'],
    'Caster': ['Assassin'],
    'Assassin': ['Rider'],
    'Berserker': [],  # 매 매 class 의 advantage but takes 2x damage
}

def damage_modifier(attacker_class, defender_class):
    if defender_class in CLASS_ADVANTAGE.get(attacker_class, []): return 1.5
    if attacker_class in CLASS_ADVANTAGE.get(defender_class, []): return 0.5
    if attacker_class == 'Berserker': return 1.5  # 매 매 매 class
    return 1.0

Servant data

@dataclass
class Servant:
    true_name: str
    class_: str
    skills: list[str]
    noble_phantasm: dict
    parameters: dict  # 매 STR/END/AGI/MAG/LCK/NP — 매 E~A++
    alignment: str

Noble Phantasm trigger

def noble_phantasm(servant, master_mp, charge):
    if charge < servant.np.threshold:
        return 'insufficient_charge'
    if not master_mp.has(servant.np.cost):
        return 'mp_drain_master'
    return execute(servant.np)

Command Spell (3-use)

class Master:
    def __init__(self):
        self.command_spells = 3
    
    def use_command_spell(self, command):
        if self.command_spells == 0: raise NoSpellsError()
        self.command_spells -= 1
        # 매 absolute order 의 servant 의 force
        # 매 1: location-jump, 2: instant-restore, 3: kill-self-NP
        return self.servant.execute_absolute(command)

Battle royale logic

def grail_war_round(masters):
    alive = [m for m in masters if m.alive and m.servant.alive]
    if len(alive) <= 1: return alive[0] if alive else None
    
    # 매 territorial expansion + alliances
    encounters = pair_encounters(alive)
    for m1, m2 in encounters:
        outcome = simulate_combat(m1, m2)
        if outcome == 'm1_win': m2.alive = False
        elif outcome == 'm2_win': m1.alive = False
        else: break_alliance(m1, m2)

Visual novel branching (Ren'Py-like)

label crossroads:
    "Saber waits for orders."
    menu:
        "Engage Lancer":
            jump engage_lancer
        "Retreat":
            jump retreat_route
        "Attempt alliance":
            jump alliance_route

Gacha rarity (Fate/GO-style)

RARITY_RATES = {1: 0.40, 2: 0.30, 3: 0.20, 4: 0.07, 5: 0.03}

def gacha_pull(rates=RARITY_RATES):
    r = random.random(); cum = 0
    for rarity, rate in sorted(rates.items()):
        cum += rate
        if r <= cum: return draw_servant(rarity)

Heroic spirit lore (LLM-aided)

def generate_servant(historical_figure, class_):
    prompt = f"""Design a Fate-style servant.

Historical figure: {historical_figure}
Class: {class_}

Output JSON:
- true_name
- class
- 3 skills (with grade)
- noble_phantasm (name, type, effect, rank)
- parameters (STR/END/AGI/MAG/LCK)
- one-line summary"""
    return llm.generate(prompt)

매 결정 기준 (응용)

상황 Approach
Battle royale game 매 alliances + 매 reduction
Class system Triangle
Mobile gacha Tiered rarity + pity
Narrative game VN branching
LLM character Heroic spirit gen

기본값: 매 lore-rich character + 매 class triangle + 매 multi-route narrative + 매 (mobile) gacha pity.

🔗 Graph

🤖 LLM 활용

언제: 매 narrative-rich game. 매 character generation. 매 lore wiki. 언제 X: 매 actual Fate IP licensing 의 strict.

안티패턴

  • No class differentiation: 매 strategic depth lose.
  • Pure RNG gacha: 매 burn-out.
  • No Noble Phantasm uniqueness: 매 character bland.

🧪 검증 / 중복

  • Verified (Type-Moon official, Fate wiki).
  • 신뢰도 B.

🕓 Changelog

날짜 변경
2026-05-08 Phase 1
2026-05-10 Manual cleanup — Fate framework + 매 game design 응용 code