f8b21af4be
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>
157 lines
5.4 KiB
Markdown
157 lines
5.4 KiB
Markdown
---
|
|
id: wiki-2026-0508-role-of-conflict-in-narrative
|
|
title: Role of Conflict in Narrative
|
|
category: 10_Wiki/Topics
|
|
status: verified
|
|
canonical_id: self
|
|
aliases: [Narrative Conflict, Story Conflict, Dramatic Conflict]
|
|
duplicate_of: none
|
|
source_trust_level: A
|
|
confidence_score: 0.9
|
|
verification_status: applied
|
|
tags: [storytelling, writing, narrative, drama]
|
|
raw_sources: []
|
|
last_reinforced: 2026-05-10
|
|
github_commit: pending
|
|
tech_stack:
|
|
language: english-korean
|
|
framework: narrative-craft
|
|
---
|
|
|
|
# Role of Conflict in Narrative
|
|
|
|
## 매 한 줄
|
|
> **"매 story 의 engine 의 conflict — desire vs obstacle"**. Aristotle 의 *Poetics* (335 BCE) 의 *agon* 의 origin, 매 modern beat-sheet (Save the Cat, Hero's Journey) 의 same axis 의 reuse. 매 conflict 의 absence 의 narrative 의 dead — character change 의 vehicle 의 obstacle 의 friction.
|
|
|
|
## 매 핵심
|
|
|
|
### 매 Conflict Types (Classical)
|
|
1. **Person vs Person** — 매 antagonist clash (Iliad, Breaking Bad).
|
|
2. **Person vs Self** — 매 internal moral struggle (Hamlet, Crime and Punishment).
|
|
3. **Person vs Society** — 매 institutional pressure (1984, Handmaid's Tale).
|
|
4. **Person vs Nature** — 매 survival (The Old Man and the Sea, The Martian).
|
|
5. **Person vs Technology** — 매 modern AI/system conflict (Black Mirror, Ex Machina).
|
|
6. **Person vs Fate/Supernatural** — 매 destiny challenge (Oedipus, Final Destination).
|
|
|
|
### 매 Functional Roles
|
|
- **Reveals character** — 매 pressure 의 true self.
|
|
- **Drives plot** — 매 cause-effect chain.
|
|
- **Creates stakes** — 매 reader 의 emotional investment.
|
|
- **Forces choice** — 매 character agency 의 demonstrate.
|
|
|
|
### 매 Structure (3-act + conflict escalation)
|
|
1. **Act 1 setup** — 매 inciting incident 의 conflict 의 introduce.
|
|
2. **Act 2 confrontation** — 매 rising stakes, midpoint reversal.
|
|
3. **Act 3 resolution** — 매 climax (peak conflict) → denouement.
|
|
|
|
### 매 응용
|
|
1. Novel/screenplay drafting — 매 each scene 의 micro-conflict 의 require.
|
|
2. Game narrative — 매 quest design 의 obstacle 의 core.
|
|
3. Marketing storytelling — 매 customer (hero) vs problem (villain) framing.
|
|
4. Therapy / personal narrative — 매 reframing internal conflict.
|
|
|
|
## 💻 패턴
|
|
|
|
### Beat sheet template (Markdown)
|
|
```markdown
|
|
# Story: <Title>
|
|
|
|
## Protagonist
|
|
- Name, want (external goal), need (internal lack).
|
|
|
|
## Antagonist / Obstacle
|
|
- Force opposing the want.
|
|
|
|
## Beats
|
|
1. Opening Image — status quo.
|
|
2. Inciting Incident — conflict introduced (page 10).
|
|
3. Plot Point 1 — commit to journey (page 25).
|
|
4. Midpoint — false victory or false defeat.
|
|
5. Plot Point 2 — all-is-lost moment.
|
|
6. Climax — peak conflict resolution.
|
|
7. Closing Image — mirror of opening, transformed.
|
|
```
|
|
|
|
### Conflict density check (Python)
|
|
```python
|
|
import re
|
|
def conflict_score(scene_text: str) -> float:
|
|
# crude heuristic: conflict verbs per 100 words
|
|
verbs = re.findall(r"\b(argue|fight|refuse|attack|defy|resist|escape|flee|kill|hate)\b",
|
|
scene_text, re.I)
|
|
words = len(scene_text.split())
|
|
return len(verbs) / max(words, 1) * 100
|
|
|
|
print(conflict_score(open("scene_1.txt").read()))
|
|
```
|
|
|
|
### Scene goal-conflict-disaster (template)
|
|
```markdown
|
|
**Scene 12 — The Confrontation**
|
|
- Goal: Hero wants to retrieve the key.
|
|
- Conflict: Antagonist has set a trap.
|
|
- Disaster: Hero gets the key but loses ally.
|
|
```
|
|
|
|
### Dialogue subtext (Luau-flavored example for game dev)
|
|
```lua
|
|
-- NPC reaction system
|
|
local function reactToPlayer(npc, action)
|
|
if npc.relationship < 30 and action == "ask_favor" then
|
|
npc:say("After what you did? Get out.") -- conflict surfacing
|
|
elseif npc.relationship > 70 and action == "ask_favor" then
|
|
npc:say("Anything for you.") -- conflict resolved
|
|
end
|
|
end
|
|
```
|
|
|
|
### LLM-assisted conflict generator (Python, Anthropic SDK)
|
|
```python
|
|
import anthropic
|
|
client = anthropic.Anthropic()
|
|
|
|
resp = client.messages.create(
|
|
model="claude-opus-4-7",
|
|
max_tokens=400,
|
|
messages=[{
|
|
"role": "user",
|
|
"content": "Given a protagonist who fears commitment and an antagonist who is their estranged sibling, generate 3 escalating conflict scenes."
|
|
}]
|
|
)
|
|
print(resp.content[0].text)
|
|
```
|
|
|
|
## 매 결정 기준
|
|
| 상황 | Conflict type |
|
|
|---|---|
|
|
| Character study | Person vs Self |
|
|
| Thriller | Person vs Person |
|
|
| Dystopia | Person vs Society |
|
|
| Survival | Person vs Nature |
|
|
| Tech ethics | Person vs Technology |
|
|
| Tragedy | Person vs Fate |
|
|
|
|
**기본값**: 매 layered — 매 external (P vs P) + internal (P vs Self) 의 same character 의 simultaneous.
|
|
|
|
## 🔗 Graph
|
|
|
|
## 🤖 LLM 활용
|
|
**언제**: scene 의 brainstorm, conflict beat 의 escalate, antagonist motivation 의 deepen.
|
|
**언제 X**: real human conflict 의 mediation — 매 fictional craft 의 tool, not therapy.
|
|
|
|
## ❌ 안티패턴
|
|
- **Manufactured conflict**: 매 character 의 act stupidly 의 plot 의 force — reader 의 feel manipulated.
|
|
- **No internal conflict**: 매 external action 의 only — 매 character 의 flat.
|
|
- **Resolved 의 too early**: 매 act 2 의 conflict 의 deflate — sustain 의 climax 의 reach.
|
|
- **Antagonist 의 motiveless**: 매 generic villain — 매 antagonist 의 own internal logic 의 require.
|
|
|
|
## 🧪 검증 / 중복
|
|
- Verified (Aristotle *Poetics*, McKee *Story* 1997, Snyder *Save the Cat* 2005).
|
|
- 신뢰도 A.
|
|
|
|
## 🕓 Changelog
|
|
| 날짜 | 변경 |
|
|
|---|---|
|
|
| 2026-05-08 | Phase 1 |
|
|
| 2026-05-10 | Manual cleanup — 6 conflict types + beat sheet + scene template |
|