---
id: wiki-2026-0508-immersive-sims-deus-ex-thief
title: Immersive Sims — Deus Ex / Thief
category: 10_Wiki/Topics
status: verified
canonical_id: self
aliases: [Immersive Sim, ImSim, Looking Glass School, Systemic Design]
duplicate_of: none
source_trust_level: A
confidence_score: 0.9
verification_status: applied
tags: [game-design, immersive-sim, systemic, level-design, genre]
raw_sources: []
last_reinforced: 2026-05-10
github_commit: pending
tech_stack:
  language: design-doc
  framework: 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)
```cpp
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)
```python
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
```python
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
```yaml
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
- 부모: [[Systemic_Design]]
- 응용: [[Dishonored]]
- Adjacent: [[Procedural-Level-Geometry]] · [[Base-Layouts-and-Kill-Zones]] · [[Biomechanics-of-Injury]]

## 🤖 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 |
