Files
2nd/10_Wiki/Topics/Domain_General/Game_Design/Immersive-Sims-Deus-Ex-Thief.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.4 KiB
Raw Blame History

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-immersive-sims-deus-ex-thief Immersive Sims — Deus Ex / Thief 10_Wiki/Topics verified self
Immersive Sim
ImSim
Looking Glass School
Systemic Design
none A 0.9 applied
game-design
immersive-sim
systemic
level-design
genre
2026-05-10 pending
language framework
design-doc systemic-game-design

Immersive Sims — Deus Ex / Thief

매 한 줄

"매 systems × player intent = emergent solution". Immersive sim 은 매 Looking Glass / Ion Storm 계보 (Ultima Underworld 1992 → Thief 1998 → Deus Ex 2000 → System Shock 2 → Dishonored → Prey 2017 → Weird West 2022 → 매 2026 indie revival). 매 핵심: 매 designer 의 단일 path 의 X — 매 simulated systems 의 interaction 으로 매 player 의 own solution 의 emerge.

매 핵심

매 pillars (Warren Spector / Harvey Smith 의 formulation)

  1. Player choice / consequence — 매 multiple solutions per problem.
  2. Systemic interaction — 매 fire + oil + water + electricity 의 combine.
  3. Object permanence / consistency — 매 NPC 의 routine, 매 item 의 persistent state.
  4. Verbosity over scripting — 매 NPC 가 매 system rules 의 obey, 매 cutscene 의 X.
  5. Diegetic UI / immersion — 매 immersion break 의 minimize.

매 systemic affordances

  • Stealth: shadow, sound, line-of-sight.
  • Combat: hitbox, damage type, armor.
  • Tools: rope arrow, biomod, gloo cannon, mimic ability.
  • Environment: light switch, vent, water, electricity, fire.

매 응용

  1. Stealth-action design (Dishonored, Hitman WoA).
  2. RPG branching (Disco Elysium, Cyberpunk 2077 의 일부).
  3. 0451 lineage (System Shock remake, Prey, BioShock 의 일부).
  4. Indie revival (Gloomwood, Peripeteia, CYGNI: Foundation 2026).

💻 패턴

Systemic property tagging (entity-component)

struct Entity {
    Flags props;  // FLAMMABLE | CONDUCTIVE | WET | HEAVY | ALERTABLE
};

void OnFireContact(Entity& e) {
    if (e.props & FLAMMABLE) e.AddState(BURNING);
    if (e.props & ALERTABLE) e.Alert(FIRE_NEARBY);
}

void OnElectric(Entity& e) {
    if (e.props & WET && e.props & ALERTABLE)  // wet creatures take more
        e.Damage(ELECTRIC, base * 2.0f);
}

NPC schedule (Thief / Dishonored AI routine)

class GuardSchedule:
    def __init__(self):
        self.waypoints = [
            (Pos(10, 5), "patrol", dur=4.0),
            (Pos(20, 5), "look_around", dur=2.0),
            (Pos(20, 15), "patrol", dur=4.0),
            (Pos(10, 15), "chat_with_other", dur=6.0),
        ]
    def tick(self, dt, world):
        if world.alert_level > 0:
            self.transition_to_search()
        else:
            self.advance_waypoint(dt)

Vision / sound stealth check

def detected(observer, target, world):
    if not has_los(observer.pos, target.pos, world):
        return False
    light = world.light_level_at(target.pos)   # 0..1
    cover = target.crouching * 0.4
    distance_factor = clamp(1 - dist(observer, target)/observer.sight_range, 0, 1)
    score = light * distance_factor - cover
    return score > observer.detection_threshold

Multi-solution objective

objective: assassinate_target
solutions:
  - lethal_direct:    poison_drink + walk_away
  - lethal_indirect:  rig_chandelier + cause_alarm
  - non_lethal:       blackmail_evidence + spare_path
  - chaos_route:      cause_riot + target_dies_in_chaos
# matrix: chaos_score × notoriety_score → 매 ending branch

Property-based interaction matrix

Source \ Target FLAMMABLE CONDUCTIVE WET
FIRE burn melt insulation extinguish
ELECTRICITY spark→burn propagate shock+
WATER extinguish short-circuit (no-op)

매 결정 기준

상황 Approach
Linear narrative game 매 일반 scripting (imsim 의 cost 의 too high)
Sandbox / heist / stealth 매 imsim — 매 systemic 의 baseline
Multiplayer competitive 매 imsim 의 X (consistency cost)
RPG with branching 매 imsim-lite (Cyberpunk 식 — 매 일부 system 만)

기본값: 매 4-5 systems 의 deep interaction (3+ pairs 의 emergent) > 매 20 systems 의 shallow.

🔗 Graph

🤖 LLM 활용

언제: 매 systemic / stealth / RPG 의 design pillar discussion, 매 player-agency 의 framework, 매 emergent gameplay 의 recipe. 언제 X: 매 narrative-linear / cinematic action (Naughty Dog 식) — 매 imsim cost 의 burden.

안티패턴

  • System inflation: 매 30+ systems 의 shallow interaction = 매 emergent X.
  • Inconsistent rules: 매 fire 가 매 어떤 oil 만 burn = 매 player trust 의 X.
  • Designer's intended path bias: 매 stealth path 만 매 reward → 매 choice 의 illusion.

🧪 검증 / 중복

  • Verified (Spector 2000 GDC "Postmortem of Deus Ex"; Smith / Colantonio Arkane interviews 2012-2024; Looking Glass retrospective 2022).
  • 신뢰도 A.

🕓 Changelog

날짜 변경
2026-05-08 Phase 1
2026-05-10 Manual cleanup — pillar formulation, property-tagging code, multi-solution matrix