@jarrodmedrano/claude-skills 1.0.2 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/bevy/SKILL.md +406 -0
- package/.claude/skills/bevy/references/bevy_specific_tips.md +385 -0
- package/.claude/skills/bevy/references/common_pitfalls.md +217 -0
- package/.claude/skills/bevy/references/ecs_patterns.md +277 -0
- package/.claude/skills/bevy/references/project_structure.md +116 -0
- package/.claude/skills/bevy/references/ui_development.md +147 -0
- package/.claude/skills/domain-driven-design/SKILL.md +459 -0
- package/.claude/skills/domain-driven-design/references/ddd_foundations_and_patterns.md +664 -0
- package/.claude/skills/domain-driven-design/references/rich_hickey_principles.md +406 -0
- package/.claude/skills/domain-driven-design/references/visualization_examples.md +790 -0
- package/.claude/skills/domain-driven-design/references/wlaschin_patterns.md +639 -0
- package/.claude/skills/game-design-theory/SKILL.md +102 -0
- package/.claude/skills/game-design-theory/design-principles.md +308 -0
- package/.claude/skills/game-design-theory/gameplay-elements.md +213 -0
- package/.claude/skills/game-design-theory/player-psychology.md +175 -0
- package/.claude/skills/game-design-theory/playtesting.md +321 -0
- package/.claude/skills/game-design-theory/storytelling.md +219 -0
- package/.claude/skills/game-feel/SKILL.md +305 -0
- package/.claude/skills/game-feel/references/adsr-tuning.md +271 -0
- package/.claude/skills/game-feel/references/classic-profiles.md +279 -0
- package/.claude/skills/game-feel/references/perception-thresholds.md +160 -0
- package/.claude/skills/game-feel/references/polish-effects.md +246 -0
- package/.claude/skills/game-feel/references/simulation-recipes.md +306 -0
- package/.claude/skills/game-feel/references/six-metrics.md +239 -0
- package/.claude/skills/godot/SKILL.md +728 -0
- package/.claude/skills/godot/assets/templates/attribute_template.gd +109 -0
- package/.claude/skills/godot/assets/templates/component_template.gd +76 -0
- package/.claude/skills/godot/assets/templates/interaction_template.gd +108 -0
- package/.claude/skills/godot/assets/templates/item_resource.tres +11 -0
- package/.claude/skills/godot/assets/templates/spell_resource.tres +20 -0
- package/.claude/skills/godot/references/architecture-patterns.md +608 -0
- package/.claude/skills/godot/references/common-pitfalls.md +518 -0
- package/.claude/skills/godot/references/file-formats.md +491 -0
- package/.claude/skills/godot/references/godot4-physics-api.md +302 -0
- package/.claude/skills/godot/scripts/validate_tres.py +145 -0
- package/.claude/skills/godot/scripts/validate_tscn.py +170 -0
- package/.claude/skills/level-design/SKILL.md +249 -0
- package/.claude/skills/level-design/anticipatory-play.md +223 -0
- package/.claude/skills/level-design/hiding-linearity.md +181 -0
- package/.claude/skills/level-design/indie-practices.md +286 -0
- package/.claude/skills/level-design/open-world-planning.md +294 -0
- package/.claude/skills/level-design/play-personas.md +240 -0
- package/.claude/skills/level-design/procedural-handmade.md +271 -0
- package/.claude/skills/level-design/themed-environments.md +264 -0
- package/.claude/skills/react-three-fiber/SKILL.md +2055 -0
- package/.claude/skills/react-three-fiber/scripts/build-scene.ts +171 -0
- package/package.json +3 -1
- package/scripts/install.js +16 -1
- package/templates/github-actions/README.md +36 -0
- /package/.claude/{commands/design-review → agents}/design-review-agent.md +0 -0
- /package/.claude/{commands/code-review → agents}/pragmatic-code-review-subagent.md +0 -0
- /package/{.claude/commands/code-review → templates/github-actions}/claude-code-review-custom.yml +0 -0
- /package/{.claude/commands/code-review → templates/github-actions}/claude-code-review.yml +0 -0
- /package/{.claude/commands/security-review → templates/github-actions}/security.yml +0 -0
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: level-design
|
|
3
|
+
description: >
|
|
4
|
+
Level design consulting based on "Level Design: Processes and Experiences"
|
|
5
|
+
(CRC Press). Use when helping with spatial game design, environment layout,
|
|
6
|
+
player guidance, pacing, open-world planning, hiding linearity, themed
|
|
7
|
+
environments, procedural vs handmade content, play-personas, or evaluating
|
|
8
|
+
level quality. Covers horror level design, indie game practices, and
|
|
9
|
+
AAA open-world techniques. NOT for coding - focused on design philosophy
|
|
10
|
+
and player spatial experience.
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Level Design Skill
|
|
14
|
+
|
|
15
|
+
A design consulting framework based on "Level Design: Processes and Experiences" edited by Christopher W. Totten (CRC Press, 2017).
|
|
16
|
+
|
|
17
|
+
## Core Philosophy
|
|
18
|
+
|
|
19
|
+
Level design is the **thoughtful execution of gameplay into gamespace for players to dwell in**. It sits at the intersection of programming, design, and art—implementing the game design vision while leading players through experiences without revealing the designer's presence.
|
|
20
|
+
|
|
21
|
+
> "Level designers don't merely create things for players to do. They create situations that invite players to interpret who they are." — Brian Upton
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## The Designer's Core Tasks
|
|
26
|
+
|
|
27
|
+
1. **Guide without forcing** — Lead players through intended experiences while maintaining illusion of freedom
|
|
28
|
+
2. **Teach through space** — Use environment to communicate mechanics, not tutorials
|
|
29
|
+
3. **Control pacing** — Modulate intensity through spatial rhythm and stillness
|
|
30
|
+
4. **Support narrative** — Align levels within overall game progression
|
|
31
|
+
5. **Create consistency** — Establish and honor environmental rules players can rely on
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Quick Reference: Level Types
|
|
36
|
+
|
|
37
|
+
| Type | Key Considerations |
|
|
38
|
+
|------|-------------------|
|
|
39
|
+
| **Linear** | Hide linearity through visual choice, narrative lures, environmental storytelling |
|
|
40
|
+
| **Open-World** | POI density, anchor locations, subregions, orientation landmarks |
|
|
41
|
+
| **Horror** | Anticipatory play, corners, one-way doors, visible-but-blocked escape |
|
|
42
|
+
| **Procedural** | Horizontal vs vertical integration of handmade content |
|
|
43
|
+
| **Indie/Focused** | Expand single core mechanic through level variation |
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Hiding Linearity
|
|
48
|
+
|
|
49
|
+
Players must feel in control even when following a predetermined path.
|
|
50
|
+
|
|
51
|
+
### Techniques
|
|
52
|
+
|
|
53
|
+
| Technique | Description |
|
|
54
|
+
|-----------|-------------|
|
|
55
|
+
| **Coerced Progression** | Time pressure, pursuing enemies—no time to question the path |
|
|
56
|
+
| **Environmental Signage** | In-world signs, color coding (Mirror's Edge red) |
|
|
57
|
+
| **NPC Guides** | Companions who lead, escort targets who follow, enemies to chase |
|
|
58
|
+
| **Narrative Lures** | Visible objectives, story hooks that pull forward |
|
|
59
|
+
| **Forced Choice Illusion** | Block one path as player approaches, making "choice" feel organic |
|
|
60
|
+
|
|
61
|
+
### What Breaks the Illusion
|
|
62
|
+
|
|
63
|
+
- Arbitrary locked doors
|
|
64
|
+
- Invisible walls
|
|
65
|
+
- Flimsy barriers (yellow police tape blocking a superhero)
|
|
66
|
+
- Clear artificial constraints without narrative justification
|
|
67
|
+
|
|
68
|
+
**See**: `references/hiding-linearity.md`
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Anticipatory Play & Horror Design
|
|
73
|
+
|
|
74
|
+
Horror isn't about jump scares—it's about **dread before the corner**.
|
|
75
|
+
|
|
76
|
+
### The P.T. Framework
|
|
77
|
+
|
|
78
|
+
- **Corners** — Hide what's ahead; players imagine horrors worse than you could show
|
|
79
|
+
- **Ratchet Doors** — One-way progress; can't retreat, must face what's ahead
|
|
80
|
+
- **Valve Doors** — Block progress temporarily; visible state reduces uncertainty about *if* blocked
|
|
81
|
+
- **Visible Escape** — Show impossible exits to amplify feeling of being trapped
|
|
82
|
+
|
|
83
|
+
### Key Principle
|
|
84
|
+
|
|
85
|
+
> "Anticipatory play requires variety—the situation must evolve so players continually reassess. Static horrors become played out."
|
|
86
|
+
|
|
87
|
+
**See**: `references/anticipatory-play.md`
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Open-World Planning (Burgess Method)
|
|
92
|
+
|
|
93
|
+
Three living documents for large-scale world design:
|
|
94
|
+
|
|
95
|
+
### 1. The World Map
|
|
96
|
+
- Establish setting, scale, subregions
|
|
97
|
+
- Plot anchor locations (story-critical, landmarks)
|
|
98
|
+
- Include orienting features (visible from anywhere)
|
|
99
|
+
- Plan natural boundaries (water, cliffs) over artificial walls
|
|
100
|
+
|
|
101
|
+
### 2. The Master List (Excel)
|
|
102
|
+
- Every location with X/Y coordinates
|
|
103
|
+
- Columns for: designer, quest associations, footprint size, difficulty, encounter type
|
|
104
|
+
- Scatter graph overlay on map image
|
|
105
|
+
- Filter to visualize distribution patterns
|
|
106
|
+
|
|
107
|
+
### 3. The Directory (Wiki)
|
|
108
|
+
- Per-location pages with: status, goals, walkthrough, known issues, to-do
|
|
109
|
+
- Category tags for filtering (by designer, by pass, by type)
|
|
110
|
+
- Living documentation updated throughout development
|
|
111
|
+
|
|
112
|
+
### POI Density
|
|
113
|
+
|
|
114
|
+
The frequency of points of interest defines exploration feel:
|
|
115
|
+
- **High density** = Theme park feel (GTA cities)
|
|
116
|
+
- **Low density** = Vast, sparse exploration (Just Cause countryside)
|
|
117
|
+
- **Non-uniform** = Urban cores dense, rural areas sparse (Fallout 4)
|
|
118
|
+
|
|
119
|
+
**See**: `references/open-world-planning.md`
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## Play-Personas
|
|
124
|
+
|
|
125
|
+
Model player behavior before and after implementation.
|
|
126
|
+
|
|
127
|
+
### The Process
|
|
128
|
+
|
|
129
|
+
1. **Analyze mechanics** → Derive high-level behaviors from low-level actions
|
|
130
|
+
2. **Create matrix** → Plot all behavioral combinations (2^n personas)
|
|
131
|
+
3. **Select cast** → Choose 2-3 personas aligned with design vision
|
|
132
|
+
4. **Associate affordances** → Link behaviors to spatial/ludic elements
|
|
133
|
+
5. **Orchestrate** — Modulate which personas are viable throughout level
|
|
134
|
+
6. **Validate** — Use telemetry to confirm players match expected personas
|
|
135
|
+
|
|
136
|
+
### Example: Pac-Man
|
|
137
|
+
|
|
138
|
+
High-level behaviors: Center vs periphery dwelling, early vs late pill eating, linear vs broken paths
|
|
139
|
+
|
|
140
|
+
→ 8 persona combinations including "Fraidy Cat" (periphery, early pills, linear) and "Risk Taker" (center, late pills, broken)
|
|
141
|
+
|
|
142
|
+
**See**: `references/play-personas.md`
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Themed Level Tropes
|
|
147
|
+
|
|
148
|
+
Classic environmental themes with established mechanics and expectations:
|
|
149
|
+
|
|
150
|
+
| Trope | Core Elements | Design Advantages |
|
|
151
|
+
|-------|---------------|-------------------|
|
|
152
|
+
| **Fire/Ice** | Environmental hazards, timing puzzles | Color variety, physics tweaks |
|
|
153
|
+
| **Dungeon/Cavern** | Tileable textures, traps, treasure | Easily repeatable, expected danger |
|
|
154
|
+
| **Factory** | Moving platforms, conveyers, gears | Repurposable mechanics, scalable difficulty |
|
|
155
|
+
| **Jungle** | Vines, branches, water, wildlife | Fluid movement, colorful outdoor |
|
|
156
|
+
| **Spooky** | Atmosphere, surprise, undead | Combines with any theme |
|
|
157
|
+
| **Pirate** | Ships, treasure, melee, water | Action-ready, clear rewards |
|
|
158
|
+
| **Urban** | Verticality, cover, vehicles | Real-world familiarity |
|
|
159
|
+
| **Space Station** | Tech hazards, airlocks, zero-G | Sci-fi dungeon equivalent |
|
|
160
|
+
| **Sewer** | Pipes, rats, rising water | Modern dungeon stand-in |
|
|
161
|
+
|
|
162
|
+
**Mexican Pizza Technique**: Combine two tropes for fresh results (fire + graveyard, jungle + urban ruins)
|
|
163
|
+
|
|
164
|
+
**See**: `references/themed-environments.md`
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## Indie Level Design Practices
|
|
169
|
+
|
|
170
|
+
When working with limited resources:
|
|
171
|
+
|
|
172
|
+
| Practice | Description |
|
|
173
|
+
|----------|-------------|
|
|
174
|
+
| **Expand Core Mechanic** | One strong mechanic explored through level variation (VVVVVV) |
|
|
175
|
+
| **Iterative Level Design** | Rapid prototyping, playtest early and often |
|
|
176
|
+
| **Design Modes Not Levels** | Create systems that generate challenge (endless runners) |
|
|
177
|
+
| **Embrace Emergence** | Simple rules, complex interactions |
|
|
178
|
+
| **Object-Oriented Design** | Modular elements that combine predictably |
|
|
179
|
+
|
|
180
|
+
### Qualities of Good Level Design
|
|
181
|
+
|
|
182
|
+
- Maintain flow: challenge without anxiety or boredom
|
|
183
|
+
- Balance freedom with constraints (illusion of control)
|
|
184
|
+
- Enable mastery and emergent solutions
|
|
185
|
+
- Balance risk and reward proportionally
|
|
186
|
+
- Guide without being obvious
|
|
187
|
+
|
|
188
|
+
**See**: `references/indie-practices.md`
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## Procedural vs Handmade Integration
|
|
193
|
+
|
|
194
|
+
Two integration models:
|
|
195
|
+
|
|
196
|
+
### Vertical Integration
|
|
197
|
+
Handmade thread runs through procedural content (FTL quest chains, Spelunky secrets)
|
|
198
|
+
|
|
199
|
+
**Best for**: Narrative, puzzle sequences, coherent story beats
|
|
200
|
+
|
|
201
|
+
### Horizontal Integration
|
|
202
|
+
Procedural and handmade content interchangeable in same slot (Dungeon Crawl vaults, URR buildings)
|
|
203
|
+
|
|
204
|
+
**Best for**: Ensuring specific gameplay moments, quality floors
|
|
205
|
+
|
|
206
|
+
### Key Decision
|
|
207
|
+
**Should players see which is which?**
|
|
208
|
+
- **Yes** (DCSS): Visual variety, risk/reward clarity
|
|
209
|
+
- **No** (URR): Quality perception, seamless experience
|
|
210
|
+
|
|
211
|
+
**See**: `references/procedural-handmade.md`
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
## Level Evaluation Framework
|
|
216
|
+
|
|
217
|
+
When evaluating a level design:
|
|
218
|
+
|
|
219
|
+
1. **Player Guidance**: Can players find their way without obvious signposting?
|
|
220
|
+
2. **Pacing**: Does intensity modulate appropriately? Are there moments of stillness?
|
|
221
|
+
3. **Teaching**: Does the space teach mechanics before testing them?
|
|
222
|
+
4. **Consistency**: Do environmental rules remain predictable?
|
|
223
|
+
5. **Persona Fit**: Does the level support intended play styles?
|
|
224
|
+
6. **Density**: Is POI distribution appropriate for the experience?
|
|
225
|
+
7. **Linearity Illusion**: Do players feel in control of their path?
|
|
226
|
+
|
|
227
|
+
---
|
|
228
|
+
|
|
229
|
+
## Common Pitfalls
|
|
230
|
+
|
|
231
|
+
| Pitfall | Symptom | Solution |
|
|
232
|
+
|---------|---------|----------|
|
|
233
|
+
| Obvious Rails | Player comments on being "on rails" | Add visual choice, narrative justification |
|
|
234
|
+
| Empty Space | Players comment on emptiness | Increase POI density or justify sparseness |
|
|
235
|
+
| Lost Players | Players wander aimlessly | Add orientation landmarks, environmental cues |
|
|
236
|
+
| Played-Out Scares | Horror stops being scary | Keep threats evolving, limit exposure time |
|
|
237
|
+
| Arbitrary Barriers | Players frustrated by blocked paths | Use narrative-justified or natural boundaries |
|
|
238
|
+
| Tutorial Overload | Players skip to "real game" | Teach through safe early gameplay |
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## Key Mantras
|
|
243
|
+
|
|
244
|
+
- **"Hide the designer's hand."** Players should feel they're discovering, not being led.
|
|
245
|
+
- **"Corners are always significant."** Transitions between visible and hidden create anticipation.
|
|
246
|
+
- **"POI density defines feel."** Sparse = vast exploration; dense = action-packed.
|
|
247
|
+
- **"Static threats become furniture."** Evolve dangers or limit exposure.
|
|
248
|
+
- **"The illusion of choice is enough."** Players interpret forced choices as agency.
|
|
249
|
+
- **"Mexican pizza your themes."** Combine familiar tropes for fresh experiences.
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
# Anticipatory Play & Horror Level Design
|
|
2
|
+
|
|
3
|
+
Based on Chapter 9: "P.T. and the Play of Stillness" by Brian Upton.
|
|
4
|
+
|
|
5
|
+
## Core Insight
|
|
6
|
+
|
|
7
|
+
Horror games are scary not because of what happens, but because of what players **imagine** will happen. The best horror level design creates **anticipatory play**—moments of stillness where players' minds race with possibilities.
|
|
8
|
+
|
|
9
|
+
> "We don't win a scary game by overcoming its challenges. We win by allowing it to thwart us."
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## The Five Principles of Anticipatory Play
|
|
14
|
+
|
|
15
|
+
### 1. Invitation
|
|
16
|
+
Create situations where players feel invited to engage with ambiguity. Visible choices with unclear outcomes.
|
|
17
|
+
|
|
18
|
+
### 2. Elaboration
|
|
19
|
+
Choices should have clear, elaborated consequences. If you take path A, you can imagine what might happen.
|
|
20
|
+
|
|
21
|
+
### 3. Predictability
|
|
22
|
+
Some outcomes should be predictable—players need anchors to build expectations from.
|
|
23
|
+
|
|
24
|
+
### 4. Uncertainty
|
|
25
|
+
But not everything predictable. The tension between knowing and not-knowing creates anticipation.
|
|
26
|
+
|
|
27
|
+
### 5. Satisfaction
|
|
28
|
+
Even in horror, players need to feel resolution is possible. "Maybe this is it!" beats "I have no idea."
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## The P.T. Level Analysis
|
|
33
|
+
|
|
34
|
+
### The Layout
|
|
35
|
+
A simple L-shaped corridor, looped infinitely:
|
|
36
|
+
- Entrance door (one-way ratchet)
|
|
37
|
+
- First half: visible, safe-feeling
|
|
38
|
+
- Corner: hides second half
|
|
39
|
+
- Second half: where bad things happen
|
|
40
|
+
- Bathroom door: sometimes open, sometimes locked
|
|
41
|
+
- Exit door (valve): blocks or allows progress
|
|
42
|
+
- Front door: permanently locked—visible escape that's impossible
|
|
43
|
+
|
|
44
|
+
### The Corner
|
|
45
|
+
|
|
46
|
+
The most important element in the entire game.
|
|
47
|
+
|
|
48
|
+
**Why corners work:**
|
|
49
|
+
- Binary: Can't see around them, then can
|
|
50
|
+
- Analog: You can peek, retreat, approach slowly
|
|
51
|
+
- Ambiguous: Anything could be waiting
|
|
52
|
+
- Controllable: Player chooses when to turn
|
|
53
|
+
|
|
54
|
+
> "Just walking toward the corner and making the turn is enough to fill us with dread. It doesn't matter that most of the time nothing at all is waiting."
|
|
55
|
+
|
|
56
|
+
**Corner vs. Door:**
|
|
57
|
+
- Doors are abrupt reveals (open/closed)
|
|
58
|
+
- Corners are gradual reveals (continuous unfolding)
|
|
59
|
+
- Corners allow hesitation; doors demand commitment
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## The Four Doors of P.T.
|
|
64
|
+
|
|
65
|
+
### 1. The Ratchet Door (Entrance/Exit)
|
|
66
|
+
One-way passage. You can only go forward.
|
|
67
|
+
|
|
68
|
+
**Purpose:**
|
|
69
|
+
- Eliminates backtracking as possibility
|
|
70
|
+
- Forces players to face what's ahead
|
|
71
|
+
- Removes problem-solving distraction ("maybe there's another way")
|
|
72
|
+
- Focuses attention entirely on dread
|
|
73
|
+
|
|
74
|
+
> "The implacable barrier of the one-way door behind us removes the temptation to treat our situation as a puzzle to be solved."
|
|
75
|
+
|
|
76
|
+
### 2. The Valve Door
|
|
77
|
+
Blocks progress sometimes. Visually obvious when locked.
|
|
78
|
+
|
|
79
|
+
**Why separate from ratchet:**
|
|
80
|
+
- Clear visual state (locked or open) from anywhere
|
|
81
|
+
- Player knows immediately if blocked
|
|
82
|
+
- No wasted time checking
|
|
83
|
+
- Keeps attention on *what to do*, not *whether blocked*
|
|
84
|
+
|
|
85
|
+
### 3. The Bathroom Door
|
|
86
|
+
Source of specific horrors. Sometimes open, sometimes locked.
|
|
87
|
+
|
|
88
|
+
**The Bathroom as Intensified Corner:**
|
|
89
|
+
- Everything bad comes from here
|
|
90
|
+
- Opening it requires crossing threshold into darkness
|
|
91
|
+
- Game trains players to fear it through early jump scares
|
|
92
|
+
- When forced inside, door closes—player feels they're *hiding*, not *trapped*
|
|
93
|
+
|
|
94
|
+
### 4. The Front Door (Impossible Escape)
|
|
95
|
+
Never opens. Permanently locked. But always visible.
|
|
96
|
+
|
|
97
|
+
**Purpose:**
|
|
98
|
+
- Reminder that escape *exists* as a concept
|
|
99
|
+
- Tantalizingly close, never achievable
|
|
100
|
+
- Amplifies horror by showing what you can't have
|
|
101
|
+
- Without it, players might forget escape is even possible
|
|
102
|
+
|
|
103
|
+
> "If you want players to feel trapped, you need to tantalize them with escape routes."
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Repetition and Training
|
|
108
|
+
|
|
109
|
+
### The Loop Mechanism
|
|
110
|
+
P.T. sends players through the same corridor repeatedly. At first, this is boring. Then:
|
|
111
|
+
|
|
112
|
+
1. Something changes (jump scare)
|
|
113
|
+
2. Players learn: changes happen in second half
|
|
114
|
+
3. Future loops: anticipation builds before corner
|
|
115
|
+
4. The corridor itself becomes the scare
|
|
116
|
+
|
|
117
|
+
### Training Dread
|
|
118
|
+
Early loops establish expectations:
|
|
119
|
+
- First half = safe
|
|
120
|
+
- Corner = transition
|
|
121
|
+
- Second half = danger
|
|
122
|
+
- Bathroom = source of danger
|
|
123
|
+
|
|
124
|
+
Once trained, the game can scare without doing anything. The player's imagination does the work.
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## The "Played Out" Problem
|
|
129
|
+
|
|
130
|
+
### Static Threats Lose Power
|
|
131
|
+
|
|
132
|
+
The fetus in the sink:
|
|
133
|
+
- First glimpse: genuinely horrifying
|
|
134
|
+
- After 30 seconds: unsettling
|
|
135
|
+
- After 2 minutes: just furniture
|
|
136
|
+
|
|
137
|
+
> "The longer we're trapped in the bathroom with it, the less scary the fetus becomes—it's played out as a locus of interpretive play."
|
|
138
|
+
|
|
139
|
+
### Preventing Play-Out
|
|
140
|
+
|
|
141
|
+
1. **Evolve the threat** — Movement, change, escalation
|
|
142
|
+
2. **Limit exposure** — Brief glimpses, then gone
|
|
143
|
+
3. **Keep it ambiguous** — Never fully explained
|
|
144
|
+
4. **Multiple encounters** — Same threat in different contexts
|
|
145
|
+
|
|
146
|
+
### The Lisa Ghost (Done Right)
|
|
147
|
+
- Appears in multiple places
|
|
148
|
+
- Always brief encounters
|
|
149
|
+
- Retreats into darkness before becoming familiar
|
|
150
|
+
- On balcony: visible only if you look up at right moment
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## Architectural Horror Techniques
|
|
155
|
+
|
|
156
|
+
### Visible/Invisible Balance
|
|
157
|
+
- Balcony: Not in normal sightline, but visible if you look
|
|
158
|
+
- Creates paranoia about unseen spaces
|
|
159
|
+
- When something appears there, retroactive fear ("it was there all along")
|
|
160
|
+
|
|
161
|
+
### Darkness as Canvas
|
|
162
|
+
- Black windows in corridor
|
|
163
|
+
- Dark back of balcony
|
|
164
|
+
- These are blank spaces for imagination to fill
|
|
165
|
+
|
|
166
|
+
### Misdirection Objects
|
|
167
|
+
- Coat rack positioned to look human from corner of eye
|
|
168
|
+
- Cluttered surfaces invite close inspection (reducing peripheral awareness)
|
|
169
|
+
- Environmental details that distract from actual threats
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## The Metaphysical Claustrophobia
|
|
174
|
+
|
|
175
|
+
Horror games thwart agency deliberately:
|
|
176
|
+
- Movement is slow
|
|
177
|
+
- Aiming is inaccurate
|
|
178
|
+
- Weapons are ineffective
|
|
179
|
+
- Escape is impossible
|
|
180
|
+
|
|
181
|
+
**This creates "possibility space claustrophobia":**
|
|
182
|
+
- Not just trapped in space
|
|
183
|
+
- Trapped in *options*
|
|
184
|
+
- All choices feel bad
|
|
185
|
+
- No good move exists
|
|
186
|
+
|
|
187
|
+
> "You feel trapped in a too-small possibility space. Your options for action all feel dangerous and uncertain."
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Design Framework for Horror Levels
|
|
192
|
+
|
|
193
|
+
### 1. Create Stillness
|
|
194
|
+
Reduce interactive demands. Let players think, imagine, dread.
|
|
195
|
+
|
|
196
|
+
### 2. Hide What's Ahead
|
|
197
|
+
Corners, darkness, closed doors. The unknown is scarier than the known.
|
|
198
|
+
|
|
199
|
+
### 3. Establish Then Subvert
|
|
200
|
+
Train expectations, then break them. But not too often.
|
|
201
|
+
|
|
202
|
+
### 4. Limit Exposure
|
|
203
|
+
Brief glimpses of horror, not extended encounters.
|
|
204
|
+
|
|
205
|
+
### 5. Show Impossible Escape
|
|
206
|
+
Tantalize with exits that can't be used.
|
|
207
|
+
|
|
208
|
+
### 6. Use One-Way Progress
|
|
209
|
+
Eliminate backtracking as an option.
|
|
210
|
+
|
|
211
|
+
### 7. Make Blocking Visible
|
|
212
|
+
If players can't progress, make that clear—don't waste dread on uncertainty about state.
|
|
213
|
+
|
|
214
|
+
### 8. Interpret Actions for Players
|
|
215
|
+
When players can't act, design so their inaction *feels* like a choice.
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Key Principle
|
|
220
|
+
|
|
221
|
+
> "Level design is not merely a matter of arranging things for players to do. It's also a matter of constructing situations that encourage players to hold still while they plan or interpret."
|
|
222
|
+
|
|
223
|
+
The scariest moments in horror games aren't jump scares. They're the seconds before the jump scare that never comes.
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# Hiding Linearity in Level Design
|
|
2
|
+
|
|
3
|
+
Based on Chapter 10: "The Illusion of Choice" by João Raza and Benjamin Carter.
|
|
4
|
+
|
|
5
|
+
## Core Principle
|
|
6
|
+
|
|
7
|
+
A successful narrative-driven game must sustain the illusion of free will. The designer's job is to hide the contrivances of level design—go down *this* corridor, open *this* door—without making players feel their hand is forced.
|
|
8
|
+
|
|
9
|
+
> "The illusion of motion in film is a trick of the brain that works every time. Hiding the artifice in a game depends on distraction and psychological suggestion."
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Coerced Progression
|
|
14
|
+
|
|
15
|
+
The simplest approach: give players no time to question their path.
|
|
16
|
+
|
|
17
|
+
### Time Pressure
|
|
18
|
+
- Scrolling screens that push players forward (Super Mario Bros. 3 airship levels)
|
|
19
|
+
- Collapsing environments
|
|
20
|
+
- Pursuing enemies (Half-Life 2 opening)
|
|
21
|
+
|
|
22
|
+
### The Call of Duty Stalingrad Technique
|
|
23
|
+
Players queue for ammunition but are pushed onto the battlefield unarmed. Retreat means death from commanding officers. Players are too busy surviving to question direction.
|
|
24
|
+
|
|
25
|
+
**Key insight**: When players are struggling to stay alive, they don't debate whether to backtrack.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Environmental Guidance
|
|
30
|
+
|
|
31
|
+
### Signage Systems
|
|
32
|
+
- Painted arrows, floor markings
|
|
33
|
+
- Color-coded paths (Mirror's Edge red highlights)
|
|
34
|
+
- In-world signs that make sense contextually
|
|
35
|
+
|
|
36
|
+
### Half-Life Approach
|
|
37
|
+
Opening sequence has players navigate benign corridors. Security guards provide narrative excuses for blocked paths ("You don't have clearance"). Players follow painted lines to destinations—feeling like navigation, not railroading.
|
|
38
|
+
|
|
39
|
+
### Highway 17 (Half-Life 2)
|
|
40
|
+
The level is literally a road. Players know the destination is at the end of Highway 17. The road always leads forward. Simple, elegant, invisible guidance.
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## NPC-Based Guidance
|
|
45
|
+
|
|
46
|
+
### Escort Missions
|
|
47
|
+
Vulnerable NPCs guide players while needing protection:
|
|
48
|
+
- NPCs unlock doors players cannot (Half-Life retinal scanners)
|
|
49
|
+
- NPCs know the route and lead the way
|
|
50
|
+
- Players feel protective, not led
|
|
51
|
+
|
|
52
|
+
### Companion Characters
|
|
53
|
+
- Alyx Vance (Half-Life 2) guides without feeling like a guide
|
|
54
|
+
- Ellie (The Last of Us) comments when players idle too long or explore pointlessly
|
|
55
|
+
- Companions create social pressure to move forward
|
|
56
|
+
|
|
57
|
+
### The Chase
|
|
58
|
+
Instead of following a guide, chase an enemy:
|
|
59
|
+
- Mirror's Edge: Faith chases an equally-capable enemy
|
|
60
|
+
- Creates urgency without pursuit threat
|
|
61
|
+
- Tarrying means losing the target
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Narrative Lures
|
|
66
|
+
|
|
67
|
+
### Visual Objectives
|
|
68
|
+
- Distant landmarks that players want to reach
|
|
69
|
+
- Lit areas drawing attention through darkness
|
|
70
|
+
- Unique architecture standing out from environment
|
|
71
|
+
|
|
72
|
+
### Architectural Hierarchy
|
|
73
|
+
Important paths should be:
|
|
74
|
+
- More visually interesting
|
|
75
|
+
- Better lit
|
|
76
|
+
- More open
|
|
77
|
+
- Feature unique elements
|
|
78
|
+
|
|
79
|
+
Dead ends should be:
|
|
80
|
+
- Visually less interesting
|
|
81
|
+
- Darker
|
|
82
|
+
- Narrower
|
|
83
|
+
- More generic
|
|
84
|
+
|
|
85
|
+
### The Door Metaphor
|
|
86
|
+
- Open doors invite
|
|
87
|
+
- Locked doors close off
|
|
88
|
+
- But make sure locked doors have narrative justification
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## What Breaks the Illusion
|
|
93
|
+
|
|
94
|
+
### Arbitrary Barriers
|
|
95
|
+
| Bad Example | Why It Fails |
|
|
96
|
+
|-------------|--------------|
|
|
97
|
+
| Yellow police tape | A superhero can't cross tape? |
|
|
98
|
+
| Waist-high walls | Player can jump buildings but not fences |
|
|
99
|
+
| Locked doors without context | Why is this door special? |
|
|
100
|
+
| Invisible walls | No explanation at all |
|
|
101
|
+
|
|
102
|
+
### Better Alternatives
|
|
103
|
+
- Natural barriers (cliffs, water, fire)
|
|
104
|
+
- Narrative barriers (guards, lockdowns, collapsed structures)
|
|
105
|
+
- Overwhelming force (too many enemies in wrong direction)
|
|
106
|
+
- Environmental hazards (radiation, toxic air)
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## The Forced Choice
|
|
111
|
+
|
|
112
|
+
When there's only one real option, design the moment so players interpret constraint as choice.
|
|
113
|
+
|
|
114
|
+
### P.T. Bathroom Example
|
|
115
|
+
The player is trapped in the bathroom. The door is mechanically locked—player can't open it. But because the handle rattles as if something's trying to get in, players feel like they're *hiding*, not *trapped*.
|
|
116
|
+
|
|
117
|
+
> "The game creates a situation where there's a particular action we want to take. It then responds as though we had done what we wanted to do, even though there's no way for us to do it."
|
|
118
|
+
|
|
119
|
+
### RPG Main Quests
|
|
120
|
+
Players feel they *choose* to storm the castle and rescue the princess. In reality, there's no other option. The illusion of agency is enough.
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## Branching Illusions
|
|
125
|
+
|
|
126
|
+
### The Fork Technique
|
|
127
|
+
1. Present players with two paths
|
|
128
|
+
2. As player approaches one, block it (enemies appear, door locks, explosion)
|
|
129
|
+
3. Player "chooses" the remaining path
|
|
130
|
+
4. Both paths lead to the same destination anyway
|
|
131
|
+
|
|
132
|
+
### The Hub-and-Spoke
|
|
133
|
+
Players can explore "freely" but:
|
|
134
|
+
- All paths return to a central hub
|
|
135
|
+
- True progress gates require specific items/actions
|
|
136
|
+
- Exploration feels optional but forward path is singular
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Audio and Attention Cues
|
|
141
|
+
|
|
142
|
+
### Sound Design
|
|
143
|
+
- Distant sounds draw attention toward objectives
|
|
144
|
+
- Ambient audio creates "safe" vs "dangerous" zones
|
|
145
|
+
- Music intensifies toward correct paths
|
|
146
|
+
|
|
147
|
+
### Lighting
|
|
148
|
+
- Brighter areas feel more inviting
|
|
149
|
+
- Players naturally move toward light
|
|
150
|
+
- Use darkness to discourage wrong paths
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## Testing Linearity Hiding
|
|
155
|
+
|
|
156
|
+
### Player Observation
|
|
157
|
+
Watch for:
|
|
158
|
+
- Players commenting on feeling "on rails"
|
|
159
|
+
- Players attempting to go backward or off-path
|
|
160
|
+
- Frustration at barriers
|
|
161
|
+
- Questions about why paths are blocked
|
|
162
|
+
|
|
163
|
+
### Successful Hiding
|
|
164
|
+
Players should:
|
|
165
|
+
- Feel like they're exploring
|
|
166
|
+
- Not notice most blocked paths
|
|
167
|
+
- Accept narrative barriers without question
|
|
168
|
+
- Report feeling "in control"
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## Summary Framework
|
|
173
|
+
|
|
174
|
+
1. **Time pressure** eliminates questioning
|
|
175
|
+
2. **Environmental cues** guide without forcing
|
|
176
|
+
3. **NPCs** provide social and narrative direction
|
|
177
|
+
4. **Narrative lures** pull players forward
|
|
178
|
+
5. **Forced choices** feel like agency
|
|
179
|
+
6. **Barriers need justification**—narrative or natural
|
|
180
|
+
|
|
181
|
+
The goal isn't to give players freedom—it's to make them *feel* free while experiencing your intended sequence.
|