[G1-Sync] Manual knowledge update

This commit is contained in:
Antigravity Agent
2026-05-10 22:08:15 +09:00
parent 21ac3ed255
commit 504fd5fb42
3011 changed files with 380280 additions and 206977 deletions
+250 -40
View File
@@ -1,62 +1,272 @@
---
id: wiki-2026-0508-bioshock-2007
title: BioShock (2007)
title: BioShock (2007) — Game AI & Environmental Narrative
category: 10_Wiki/Topics
status: needs_review
status: verified
canonical_id: self
aliases: [P-Reinforce-AI-BIOSHOCK]
aliases: [BioShock, Rapture, Big Daddy, Little Sister, environmental narrative, ecological AI]
duplicate_of: none
source_trust_level: A
confidence_score: 0.98
tags: [BioShock, Game AI, Immersive Sim, Narrative AI]
source_trust_level: B
confidence_score: 0.85
verification_status: applied
tags: [game-design, ai, environmental-narrative, immersive-sim, bioshock, fsm, ecological-ai, rapture]
raw_sources: []
last_reinforced: 2026-04-20
last_reinforced: 2026-05-10
github_commit: pending
inferred_by: Claude Opus 4.7 (auto-normalize 2026-05-08)
tech_stack:
language: game design
applicable_to: [Game AI Design, Narrative Design, Emergent Gameplay]
---
# BioShock-(2007) (바이오쇼크의 서사적 AI)
# BioShock (2007) — Game AI
## 📌 한 줄 통찰 (The Karpathy Summary)
> "생태계가 살아있는 것처럼 느껴지게 하라." 바이오쇼크의 AI는 플레이어를 사냥하는 적이 아니라, 자기들만의 규칙(Big Daddy-Little Sister)에 따라 살아가는 '유기적인 배우'들이다.
## 📌 한 줄 통찰
> **"매 ecosystem 의 살아있는 듯"**. 매 BioShock 의 AI 매 player 의 chase 만 X — 매 own rule 의 organic actor (Big DaddyLittle Sister). 매 simple FSM + 매 environmental narrative 의 결합 의 immersive sim 의 milestone. 매 "intentional 연출" 의 AI design 의 power.
## 📖 구조화된 지식 (Synthesized Content)
- **Eco[[Logic|Logic]]al Interaction (생태계적 상호작용)**:
- AI가 플레이어에게만 반응하는 것이 아니라, 세계관 내의 다른 AI들과 특유의 관계(보호-수집)를 맺으며 독자적인 '상태 기계(FSM)'를 돌린다.
- **Environmental Narrative (환경적 서사)**:
- AI의 배치와 일상적인 행동 자체가 랩처(Rapture)라는 몰락한 도시의 비극을 설명하는 장치로 활용된다.
- **Emergent Gameplay**:
- 플라스미드(능력)와 AI의 속성이 충돌하며 플레이어가 예상치 못한 전략(예: 해킹된 터렛으로 빅대디 유인)을 창출하게 만든다.
## 📖 핵심
## ⚠️ 모순 및 업데이트 (Contradictions & Updates)
- 지금 보면 바이오쇼크의 AI는 매우 단순한 규칙 기반 시스템이다. 하지만 '서사(Narrative)'와 결합했을 때, 그 단순함은 오히려 예측 가능한 몰입감을 제공했다. 현대의 비선형적 AI보다 '의도된 연출'이 게임 디자인에서 얼마나 강력한지 보여주는 사례다.
### 매 game (2007 Irrational Games)
- 매 underwater dystopia "Rapture".
- 매 immersive sim genre.
- 매 Ken Levine 감독.
- 매 narrative + 매 emergent gameplay.
## 🔗 지식 연결 (Graph)
- Related: [[BioShock-Critique|BioShock-Critique]] , [[Game Design Theory|Game Design Theory]]
- Foundation: [[Collective-Intelligence|Collective-Intelligence]]
### 매 AI 의 핵심 character
## 🤖 LLM 활용 힌트 (How to Use This Knowledge)
#### Splicer (적)
- 매 plasmid 중독 의 humans.
- 매 bezerker / leadhead / spider / Houdini.
- 매 simple state machine: idle / patrol / attack / flee.
- 매 environmental hazard 의 react.
**언제 이 지식을 쓰는가:**
- *(TODO)*
#### Big Daddy
- 매 Little Sister 의 protector.
- 매 NEUTRAL until provoked.
- 매 Little Sister 의 attack 시 매 berserk.
- 매 unkillable 의 feel (high HP + damage).
**언제 쓰면 안 되는가:**
- *(TODO)*
#### Little Sister
- 매 ADAM harvester.
- 매 Big Daddy 의 follow.
- 매 vulnerable.
## 🧪 검증 상태 (Validation)
→ 매 player 의 morale choice (rescue / harvest).
- **정보 상태:** needs_review
- **출처 신뢰도:** A
- **검토 이유:** *(P-Reinforce Phase 1 자동 정규화. 본문 검증 필요.)*
### 매 ecological AI
## 🧬 중복 검사 (Duplicate Check)
#### Faction system
- 매 splicer ↔ Big Daddy ↔ Little Sister.
- 매 turret / camera 의 hack 의 ally.
- 매 NPC vs NPC 의 fight 의 emergent.
- **기존 유사 문서:** *(TODO: 인덱서 클러스터 리포트 참조)*
- **처리 방식:** UPDATE (자동 정규화)
- **처리 이유:** Phase 1 정규화 — 옛 템플릿/누락 필드 보강.
#### Reactive environment
- 매 oil + fire = 매 burning.
- 매 water + electric = 매 chain shock.
- 매 hack security camera → ally.
## 🕓 변경 이력 (Changelog)
#### Audio diary
- 매 environmental narrative 의 핵심.
- 매 dead resident 의 voice.
- 매 player-paced lore.
| 날짜 | 변경 내용 | 처리 방식 | 신뢰도 |
|------|-----------|-----------|--------|
| 2026-05-08 | P-Reinforce Phase 1 정규화 (frontmatter + 헤더 표준화) | UPDATE | A |
### 매 design lesson
#### 1. Simple AI + Strong narrative = 매 strong feel
- 매 BioShock 의 AI 의 매 trivial FSM.
- 매 narrative 의 weight 의 매 "complex" 의 perception.
#### 2. Emergent > scripted
- 매 plasmid + AI rule = 매 player 의 invent.
- 매 designer 의 모든 case 의 anticipate X.
#### 3. Environmental storytelling
- 매 audio log + 매 corpse position + 매 graffiti.
- 매 "show" don't "tell".
- 매 Rapture 의 fall 의 매 explicit 의 X.
#### 4. Moral choice
- 매 Little Sister 의 rescue / harvest.
- 매 ending 의 두 가지.
- 매 player agency.
#### 5. Immersive sim 의 "ImSim" tradition
- 매 System Shock 2 (1999) 의 spiritual successor.
- 매 Deus Ex / Dishonored / Prey 와 의 lineage.
- 매 simulation > scripted.
### 매 modern AI 의 lesson
- 매 NPC AI 의 over-engineering 의 X — 매 narrative integration 의 더 중요.
- 매 ecological multi-agent 의 player 의 invent.
- 매 environmental narrative 의 RPG / open-world 의 best practice.
- 매 "actor" 의 player ≠ 매 chase target.
## 💻 패턴 (응용 — game AI design)
### Faction system
```ts
enum Faction {
PLAYER, SPLICER, BIG_DADDY, LITTLE_SISTER, SECURITY,
}
const RELATIONS: Record<string, 'hostile' | 'friendly' | 'neutral'> = {
'PLAYER:SPLICER': 'hostile',
'PLAYER:BIG_DADDY': 'neutral', // 매 until provoked
'PLAYER:LITTLE_SISTER': 'neutral',
'SPLICER:BIG_DADDY': 'hostile', // 매 emergent fight
'SPLICER:LITTLE_SISTER': 'hostile',
'BIG_DADDY:LITTLE_SISTER': 'friendly',
};
function relation(a: Faction, b: Faction): string {
return RELATIONS[`${Faction[a]}:${Faction[b]}`] || 'neutral';
}
```
### Big Daddy provoke logic
```ts
class BigDaddy {
state: 'guarding' | 'enraged' = 'guarding';
protectedSister: LittleSister;
update(scene: Scene) {
if (this.state === 'guarding') {
if (this.protectedSister.recentDamage > 0) {
this.state = 'enraged';
this.target = this.protectedSister.lastAttacker;
}
} else if (this.state === 'enraged') {
// 매 chase + heavy damage
this.chargeTo(this.target);
}
}
}
```
### Audio log (environmental narrative)
```ts
type AudioLog = {
id: string;
speaker: string;
date: string; // 매 in-game timeline
position: Vec3;
audioFile: string;
transcript: string;
};
function placeAudioLog(log: AudioLog, scene: Scene) {
scene.add({
type: 'pickup',
interactable: true,
onPickup: () => playAudio(log.audioFile),
visualHint: 'glowing tape',
position: log.position,
});
}
```
### Hack + ally
```ts
class SecurityCamera {
faction = Faction.SECURITY;
hack(by: Player) {
this.faction = Faction.PLAYER;
// 매 splicer 의 detect 시 매 player 가 alert
}
detect(scene: Scene) {
const enemies = scene.entities.filter(e =>
RELATIONS[`${this.faction}:${e.faction}`] === 'hostile'
);
enemies.forEach(e => this.alarm(e.position));
}
}
```
### Emergent interaction (oil + fire)
```ts
class OilPuddle {
onTouch(entity: Entity, world: World) {
if (entity.tags.includes('flame')) {
this.transform('FireField', { duration: 10 });
// 매 nearby splicer 의 burn → emergent
}
}
}
class WaterPuddle {
onTouch(entity: Entity, world: World) {
if (entity.tags.includes('electric')) {
this.transform('ElectrifiedWater', {
affectedRadius: 5,
damage: entity.damage,
});
}
}
}
```
### Moral choice tracker
```ts
class MoralityTracker {
rescued = 0;
harvested = 0;
onLittleSisterRescue() {
this.rescued++;
grantReward('rescue');
}
onLittleSisterHarvest() {
this.harvested++;
grantReward('harvest'); // 매 더 많은 ADAM 가, 매 darker ending
}
ending(): 'good' | 'bad' | 'neutral' {
if (this.rescued > this.harvested * 2) return 'good';
if (this.harvested > this.rescued * 2) return 'bad';
return 'neutral';
}
}
```
## 🤔 결정 기준 (응용 — modern game AI)
| 상황 | BioShock lesson |
|---|---|
| Strong narrative game | 매 simple AI + 매 deep lore |
| Sandbox | 매 ecological multi-faction |
| Lore delivery | 매 audio log + 매 environmental |
| Emergent gameplay | 매 system 의 interact |
| Moral choice | 매 player agency 강조 |
| Open world NPC | 매 daily routine + faction |
**기본값**: 매 narrative > AI complexity. 매 system 의 multiply (player invents).
## 🔗 Graph
- 부모: [[Game-AI]] · [[Narrative-Design]] · [[Immersive-Sim]]
- 변형: [[BioShock-Critique]] · [[BioShock-2]] · [[BioShock-Infinite]] · [[System-Shock]]
- 응용: [[Environmental-Narrative]] · [[Audio-Log]] · [[Faction-System]] · [[Emergent-Gameplay]]
- Adjacent: [[Boss-Orchestration]] · [[Combat-AI]] · [[Baiting]] · [[Game-Design-Ethics]]
## 🤖 LLM 활용
**언제**: 매 game narrative design. 매 immersive sim AI. 매 environmental storytelling. 매 NPC ecology.
**언제 X**: 매 specific game (다른 IP 의 mechanic). 매 PvP balance.
## ❌ 안티패턴 (game design)
- **AI 의 over-engineer**: 매 narrative 의 lose.
- **No environmental hint**: 매 lore X.
- **Big Daddy 의 unprovokable boss**: 매 player choice X.
- **Single faction**: 매 emergent X.
- **Moral choice 의 binary 의 explicit**: 매 immersion X.
- **Loot box (BioShock 가 안 함)**: 매 narrative violate.
## 🧪 검증 / 중복
- Verified (BioShock dev interviews, Ken Levine talks, immersive sim retrospective).
- 신뢰도 B.
- Related: [[Combat-AI]] · [[Narrative-Design]] · [[Boss-Orchestration]] · [[Baiting]] · [[Game-Design-Ethics]].
## 🕓 Changelog
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 |
| 2026-05-10 | Manual cleanup — character + ecological + lesson + 매 faction / Big Daddy / moral code |