@jarrodmedrano/claude-skills 1.0.2 → 1.0.3

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.
Files changed (29) hide show
  1. package/.claude/skills/game-design-theory/SKILL.md +102 -0
  2. package/.claude/skills/game-design-theory/design-principles.md +308 -0
  3. package/.claude/skills/game-design-theory/gameplay-elements.md +213 -0
  4. package/.claude/skills/game-design-theory/player-psychology.md +175 -0
  5. package/.claude/skills/game-design-theory/playtesting.md +321 -0
  6. package/.claude/skills/game-design-theory/storytelling.md +219 -0
  7. package/.claude/skills/game-feel/SKILL.md +305 -0
  8. package/.claude/skills/game-feel/references/adsr-tuning.md +271 -0
  9. package/.claude/skills/game-feel/references/classic-profiles.md +279 -0
  10. package/.claude/skills/game-feel/references/perception-thresholds.md +160 -0
  11. package/.claude/skills/game-feel/references/polish-effects.md +246 -0
  12. package/.claude/skills/game-feel/references/simulation-recipes.md +306 -0
  13. package/.claude/skills/game-feel/references/six-metrics.md +239 -0
  14. package/.claude/skills/level-design/SKILL.md +249 -0
  15. package/.claude/skills/level-design/anticipatory-play.md +223 -0
  16. package/.claude/skills/level-design/hiding-linearity.md +181 -0
  17. package/.claude/skills/level-design/indie-practices.md +286 -0
  18. package/.claude/skills/level-design/open-world-planning.md +294 -0
  19. package/.claude/skills/level-design/play-personas.md +240 -0
  20. package/.claude/skills/level-design/procedural-handmade.md +271 -0
  21. package/.claude/skills/level-design/themed-environments.md +264 -0
  22. package/package.json +3 -1
  23. package/scripts/install.js +16 -1
  24. package/templates/github-actions/README.md +36 -0
  25. /package/.claude/{commands/design-review → agents}/design-review-agent.md +0 -0
  26. /package/.claude/{commands/code-review → agents}/pragmatic-code-review-subagent.md +0 -0
  27. /package/{.claude/commands/code-review → templates/github-actions}/claude-code-review-custom.yml +0 -0
  28. /package/{.claude/commands/code-review → templates/github-actions}/claude-code-review.yml +0 -0
  29. /package/{.claude/commands/security-review → templates/github-actions}/security.yml +0 -0
@@ -0,0 +1,175 @@
1
+ # Player Psychology
2
+
3
+ Understanding why players play and what they expect is fundamental to good game design.
4
+
5
+ ## Why Do Players Play?
6
+
7
+ ### 1. Challenge
8
+
9
+ Players enjoy games because they provide challenges that engage the mind differently than other media. Like solving a Rubik's Cube, games force players to:
10
+ - Think actively
11
+ - Try different solutions
12
+ - Understand game mechanisms
13
+ - Learn through experimentation
14
+
15
+ **Key insight**: Players are enriched by the learning that follows overcoming challenges. They may apply problem-solving methods to work, use improved spatial skills in life, or learn greater empathy through role-playing.
16
+
17
+ ### 2. Socialization
18
+
19
+ Gaming arose as a communal activity millennia ago. Most non-computer games require a social group to function—chess, Monopoly, bridge, Scrabble. The social element is more important than many designers realize:
20
+
21
+ - **Multi-player action games**: Even in high-velocity games like Quake, players still try to chat, demonstrating the desire to socialize
22
+ - **Persistent worlds**: MUDs and MMOs draw players primarily for social interaction—many players would never play single-player games
23
+ - **The human advantage**: Human opponents are unpredictable and challenging, but more importantly, they make the experience social
24
+
25
+ ### 3. Dynamic Solitary Experience
26
+
27
+ Sometimes players want interactive engagement without social demands:
28
+ - Friends aren't available
29
+ - Tired of talking to people
30
+ - Want something that reacts like a human without the annoyances
31
+ - Always in control—can start and stop at any time
32
+
33
+ **Key insight**: Single-player games "fake" the interesting part of human interaction while letting players remain in control.
34
+
35
+ ### 4. Bragging Rights
36
+
37
+ Particularly in multi-player gaming, players play to win respect:
38
+ - High score tables in arcades
39
+ - Being able to defeat all your friends
40
+ - Sense of self-satisfaction from victory
41
+ - Proving they can do something well
42
+
43
+ **Key insight**: Players who may not excel at sports or academics can find mastery and pride in games.
44
+
45
+ ### 5. Emotional Experience
46
+
47
+ Players seek emotional payoff:
48
+ - **Simple emotions**: Adrenaline rush, tension of action games
49
+ - **Complex emotions**: Loss when a companion character sacrifices themselves
50
+ - **Catharsis**: Tragedy and despair can be compelling (arcade games are "lessons in defeat")
51
+
52
+ **Key insight**: Many games' emotional range is limited to excitement/tension, despair at failure, and elation at success. There's vast unexplored emotional territory.
53
+
54
+ ### 6. Fantasy
55
+
56
+ Games enable escapism and role-playing:
57
+ - Become someone more exciting
58
+ - Live glamorous lives without mundane details (no eating, sleeping, bathroom breaks)
59
+ - Engage in socially unacceptable behavior safely (being a criminal in a game)
60
+ - See the world through someone else's eyes
61
+ - Explore "what if" scenarios (historical what-ifs)
62
+
63
+ **Key insight**: The level of fantasy immersion is heightened by interactivity—players don't just watch adventures, they have them.
64
+
65
+ ---
66
+
67
+ ## What Do Players Expect?
68
+
69
+ Once players start playing, they have gameplay expectations. Failing to meet these causes frustration.
70
+
71
+ ### Consistent World
72
+
73
+ Players must be able to predict what actions produce what results:
74
+ - Same cause → same effect
75
+ - If a kick works in one situation, it should work in similar situations
76
+ - Failure should have perceivable reasons
77
+
78
+ **Example**: In fighting games, if a kick misses, it must be because the opponent jumped, blocked, or was too far away—reasons the player can perceive.
79
+
80
+ **Pinball problem**: Novice players can't see the connection between their actions and outcomes, so they call it "luck" and stop playing.
81
+
82
+ ### Understanding the Game-World's Bounds
83
+
84
+ Players need to know what actions are possible vs. impossible:
85
+ - In Doom, players know they can't negotiate with demons
86
+ - Don't introduce entirely new mechanisms late in the game
87
+ - Players learn "how this game works" and expect that to remain true
88
+
89
+ **Violation example**: If Doom suddenly required befriending a monster through conversation, players would be frustrated—that's completely outside the established scope.
90
+
91
+ ### Reasonable Solutions to Work
92
+
93
+ Once players understand the game, their reasonable solution attempts should succeed:
94
+ - Real-world problems have multiple solutions
95
+ - Games modeling reality should too
96
+ - The designer provides one solution, but must anticipate alternatives
97
+
98
+ **Key insight**: Every "You can't do that" or failed reasonable attempt breaks immersion and frustrates players.
99
+
100
+ ### Direction
101
+
102
+ Players need goals and some idea how to achieve them:
103
+ - Without a goal, there's no game
104
+ - Without knowing the goal, might as well not have one
105
+ - Need direction without feeling hand-held
106
+
107
+ **SimCity exception**: Players impose their own goals based on real-world understanding of "what makes a good city." The game's grounding in reality provides implicit direction.
108
+
109
+ ### Incremental Accomplishment
110
+
111
+ Players want to feel progress:
112
+ - Provide sub-goals along the way
113
+ - Reward achievement of sub-goals proportionally
114
+ - Without positive reinforcement, players will abandon the correct path
115
+
116
+ ### Immersion
117
+
118
+ Anything that reminds players they're "just playing a game" damages the experience:
119
+ - Bugs and crashes
120
+ - Puzzles with solutions that don't work (even if reasonable)
121
+ - Characters they can't identify with
122
+ - UI elements that feel artificial
123
+
124
+ **Character identification**: Mario works because he's a blank slate. Characters with annoying personalities constantly remind players they're not in control.
125
+
126
+ ### Failure is Expected
127
+
128
+ Players expect to fail sometimes—it's part of the challenge. But failure should feel fair.
129
+
130
+ ### Fair Chance
131
+
132
+ Players expect the game to give them an opportunity to succeed:
133
+ - Difficulty should come from the challenge, not hidden information
134
+ - Don't require precognition
135
+ - Provide tools and information needed to make progress
136
+
137
+ ### Not Repeating Themselves
138
+
139
+ Players hate redoing completed work:
140
+ - Save systems should be generous
141
+ - Don't punish players by making them replay large sections
142
+ - Respect the player's time
143
+
144
+ ### Not Getting Hopelessly Stuck
145
+
146
+ Players need escape routes:
147
+ - Multiple solutions prevent dead ends
148
+ - Hints for struggling players
149
+ - "Non-linearity is about preventing players from getting stuck"
150
+
151
+ ### To Do, Not Watch
152
+
153
+ Players play games for interactivity:
154
+ - Every non-interactive moment is time they could be playing
155
+ - Cut-scenes should be skippable
156
+ - The more passive content, the less it's a game
157
+
158
+ **Key insight**: Players who wanted passive entertainment would have watched a movie.
159
+
160
+ ---
161
+
162
+ ## Player Types: The Audience Consideration
163
+
164
+ Not all players want the same thing. Consider your target audience:
165
+
166
+ | Player Type | Primary Motivation | Design Consideration |
167
+ |-------------|-------------------|----------------------|
168
+ | Hardcore Gamer | Challenge, Mastery | Complex systems, high difficulty |
169
+ | Social Player | Connection | Multi-player, sharing features |
170
+ | Casual Player | Relaxation, Fantasy | Simple controls, forgiving difficulty |
171
+ | Explorer | Discovery | Hidden content, non-linear worlds |
172
+ | Achiever | Completion | Clear goals, rewards, collections |
173
+ | Storyteller | Narrative | Rich characters, meaningful choices |
174
+
175
+ **Critical insight**: You cannot please everyone. Better to delight some players deeply than satisfy all players marginally.
@@ -0,0 +1,321 @@
1
+ # Playtesting
2
+
3
+ Playtesting is where average games become excellent. It's not optional polish—it's essential design work.
4
+
5
+ > "The common denominator, I would guess, is passion. Everyone says, 'Well, why aren't games better—why aren't there more really good games?' And I think that the answer is that what this industry doesn't do, amazingly, is play the games it makes. We create a game, we ask the teams to work all the hours God sends, and we don't give them time to play the game. That's really what makes the difference—sitting down and playing for hours and hours and hours." — Peter Molyneux
6
+
7
+ ## Playtesting vs. Debugging
8
+
9
+ **Debugging**: Finding and fixing code problems (crashes, broken features, graphical glitches). A programming task.
10
+
11
+ **Playtesting**: Evaluating whether the game is *fun* and finding faults in game mechanics. A design task.
12
+
13
+ Examples of playtesting concerns:
14
+ - Unit too powerful, dominates game
15
+ - Enemy AI behaves illogically
16
+ - Controls feel unintuitive
17
+ - Difficulty spike too severe
18
+ - Puzzle solutions unclear
19
+
20
+ ---
21
+
22
+ ## Types of Testers
23
+
24
+ ### 1. Development Team
25
+ - Should play constantly throughout development
26
+ - Know the game intimately, motivated to improve it
27
+ - **Drawbacks**: Too close to be objective, too skilled from practice, personal attachments to their own work
28
+
29
+ ### 2. Traditional Testers
30
+ - Start at alpha, continue until ship
31
+ - Mix of bug hunting and gameplay feedback
32
+ - Full-time, paid employees who love games
33
+ - **Drawback**: Skewed toward hardcore gamer perspective
34
+
35
+ ### 3. First-Impression Testers
36
+ - Fresh players who have never seen the game
37
+ - Single-session testing (30-60 minutes)
38
+ - "Kleenex testers"—use once, discard
39
+ - **Purpose**: Test learnability, initial experience, control intuitiveness
40
+
41
+ ### 4. Fellow Game Designers
42
+ - Designers from other projects
43
+ - Can look past obvious early-stage problems
44
+ - Provide insight on fundamental design issues
45
+ - Best for early prototypes and "is this fun?" questions
46
+ - **Drawback**: Too busy to test extensively
47
+
48
+ ### 5. Non-Gamers
49
+ - People who don't play games regularly
50
+ - High intolerance for traditional game problems
51
+ - Expose fundamental usability issues
52
+ - "The guy who fixes the coffee machine"
53
+ - **Drawback**: Can't provide constructive solutions
54
+
55
+ ---
56
+
57
+ ## Who Should NOT Test
58
+
59
+ ### Your Boss
60
+ - Tester must feel free to speak honestly
61
+ - Boss has different goals (budget, timeline)
62
+ - Power dynamic corrupts feedback
63
+
64
+ ### Marketing
65
+ - Believes they know what anonymous audiences want
66
+ - Second-guessing based on market trends
67
+ - Often wrong as often as right about gameplay
68
+
69
+ ### Close Friends/Family
70
+ - Want to strengthen relationship, not criticize
71
+ - Will sugarcoat opinions
72
+ - Can work if relationship is brutally honest
73
+
74
+ ### Idiots
75
+ - Say idiotic things with idiotic opinions
76
+ - Identify early, isolate, ignore
77
+
78
+ ### Would-Be Designers
79
+ - Want to change things to "how I would do it"
80
+ - Suggestions based on personal preference, not improvement
81
+ - Try to design through you
82
+
83
+ ---
84
+
85
+ ## When to Test
86
+
87
+ ### Phase: Early Prototype
88
+ **Who**: Fellow game designers, development team
89
+ **Focus**: Is the core concept fun? Does it show promise?
90
+ **Expectations**: Game will crash, art is placeholder, features incomplete
91
+
92
+ ### Phase: Alpha
93
+ **Who**: Traditional testers, first-impression testers
94
+ **Focus**: Gameplay evaluation, interface testing
95
+ **Expectations**: Most features complete, significant bugs remain
96
+
97
+ ### Phase: Beta
98
+ **Who**: Traditional testers, extensive first-impression testing
99
+ **Focus**: Final polish, difficulty balancing
100
+ **Expectations**: Feature-complete, bug-fixing priority
101
+
102
+ **Warning**: Don't bring in testers too early expecting to accelerate by finding bugs before alpha. Testers will find obvious bugs you already know about, wasting everyone's time. The game needs to be playable first.
103
+
104
+ ---
105
+
106
+ ## How to Test
107
+
108
+ ### Watch, Don't Coach
109
+
110
+ The temptation: "Go over there," "Use strafe buttons," "Try the power-foozle!"
111
+
112
+ **The problem**: Designer can't ship in the box with the game.
113
+
114
+ **Correct approach**:
115
+ - Sit behind tester, silent
116
+ - Watch their natural play
117
+ - Note where they struggle
118
+ - Resist urge to teach
119
+
120
+ If the player gets stuck or can't master controls, ask: "What's causing this?" not "Let me show you."
121
+
122
+ ### Listen Honestly
123
+
124
+ Common designer defenses when hearing criticism:
125
+ - "That tester is a fool"
126
+ - "Not our target audience"
127
+ - "Just complaining for the sake of it"
128
+
129
+ **Reality check**: When multiple testers raise the same issue, there's a problem. Period.
130
+
131
+ ### Guided vs. Unguided Testing
132
+
133
+ **Guided**: "Please test the new inventory system"
134
+ - Useful for specific features
135
+ - Risk: Miss larger problems elsewhere
136
+
137
+ **Unguided**: "Play the game however you want"
138
+ - Reveals problems designer overlooked
139
+ - Tests game holistically
140
+ - Essential complement to guided testing
141
+
142
+ **Best practice**: Do both. Note off-topic feedback for later even if focusing on specific system.
143
+
144
+ ---
145
+
146
+ ## Balancing
147
+
148
+ Only possible when most of the game is complete. Balancing incomplete games wastes effort—everything changes when remaining features are added.
149
+
150
+ ### The Balancing Loop
151
+ 1. Make a pass adjusting values
152
+ 2. You and testers play the game
153
+ 3. Gather feedback
154
+ 4. Adjust values
155
+ 5. Repeat until shipping
156
+
157
+ ### System Attributes
158
+
159
+ Break gameplay into tunable numbers:
160
+
161
+ **Weapon example** (baseball bat):
162
+ - Damage per hit
163
+ - Attack speed
164
+ - Durability (hits before breaking)
165
+ - Cost
166
+ - Hands required
167
+
168
+ **Enemy example**:
169
+ - Health
170
+ - Damage
171
+ - Movement speed
172
+ - Detection range
173
+ - Aggression level
174
+
175
+ ### Interconnected Systems
176
+
177
+ Changing one value affects others:
178
+ - Making one weapon stronger might break a later combat encounter
179
+ - Adjusting enemy health changes pacing of entire game
180
+
181
+ **Requirement**: Playtest every change across entire game, not just locally.
182
+
183
+ ### Accessibility
184
+
185
+ Balancing data must be editable without programmer intervention:
186
+ - Configuration files
187
+ - Level editor tools
188
+ - Designer-accessible formats
189
+
190
+ ---
191
+
192
+ ## Your Game Is Too Hard
193
+
194
+ This is not a guess. This is a law.
195
+
196
+ ### Why It's Always True
197
+
198
+ 1. Development team has played for 9-18 months
199
+ 2. Team is in top 10% of skill for this game
200
+ 3. To stay entertained, team tuned game challenging for themselves
201
+ 4. 90% of eventual players are worse than the team
202
+
203
+ ### The Denial Cycle
204
+
205
+ 1. Testers say "This game is too hard"
206
+ 2. Designer thinks "They'll get better"
207
+ 3. Testers DO get better over 3 months
208
+ 4. Testers stop thinking it's hard
209
+ 5. Game ships brutally difficult
210
+
211
+ ### Counter-Measures
212
+
213
+ **The Marathon Technique** (Jason Jones):
214
+ - Can development team beat entire game on hardest setting using only the fist weapon?
215
+ - If yes, normal players with guns on normal difficulty have a fair chance
216
+
217
+ **The Handicap Principle**:
218
+ - If designer can win with both arms tied behind back, regular players can win normally
219
+
220
+ **Explicit Difficulty Awareness**:
221
+ - Assume difficulty is overtuned
222
+ - Bias toward "too easy" (players rarely complain about this)
223
+ - Multiple difficulty settings as safety valve
224
+
225
+ ---
226
+
227
+ ## Focus Groups vs. Playtesting
228
+
229
+ ### Focus Groups
230
+ - "Off the street" participants
231
+ - 1-2 hour presentation on multiple games
232
+ - Often can't play (games not developed yet)
233
+ - Hear descriptions, say if they'd buy
234
+ - Run by marketing
235
+
236
+ ### Playtesting
237
+ - Known testers with established trust
238
+ - Play actual games
239
+ - Provide actionable feedback
240
+ - Run by development team
241
+
242
+ ### Why Focus Groups Are Dangerous
243
+
244
+ Imagine a focus group for:
245
+ - Pac-Man
246
+ - Tetris
247
+ - Civilization
248
+ - The Sims
249
+
250
+ Will Wright: The Sims focus group went so poorly the game was nearly canceled. It became one of the best-selling games of all time.
251
+
252
+ **Focus groups favor safe, uninnovative games.** They're designed to find the lowest common denominator, not to recognize innovation.
253
+
254
+ ---
255
+
256
+ ## The Artistic Vision
257
+
258
+ ### You Can't Please Everyone
259
+
260
+ With enough testers, someone will dislike everything.
261
+
262
+ **Wrong approach**: Try to make everyone happy → Game everyone thinks is "OK," no one loves
263
+
264
+ **Right approach**: Delight some players deeply → Passionate fans
265
+
266
+ ### Not Design By Committee
267
+
268
+ You don't have to implement every suggestion. Some ideas are reasonable but don't fit *your* game.
269
+
270
+ > In the end, if every single playtester tells you some part of the game must change, but you feel, in your gut, as an artist, that you do not want to change that portion of the game, then leave it as it is.
271
+
272
+ A committee cannot have the unity of vision a single person maintains.
273
+
274
+ ---
275
+
276
+ ## Tester Relationship Management
277
+
278
+ ### Know Your Testers
279
+
280
+ Different testers have different biases:
281
+ - **Whiners**: Complain about everything, even things that work
282
+ - **The Shy**: "Maybe look at X" means "Obviously X is broken"
283
+ - **The Expert**: Forgets what it's like to be new
284
+ - **The Perfectionist**: Wants changes that don't improve the game
285
+
286
+ Understanding personality helps weight feedback appropriately.
287
+
288
+ ### The Ideal Tester
289
+
290
+ Provides feedback like: "When fighting the twelfth clown on level three, I thought he was too hard. I had no idea what I was supposed to do or whether my attacks were working. I tried rolling the boulder at him but couldn't figure out how."
291
+
292
+ - Specific problem identification
293
+ - Detailed explanation of confusion
294
+ - Notes what they attempted
295
+
296
+ **These testers are rare. Treasure them.**
297
+
298
+ ---
299
+
300
+ ## Playtesting Checklist
301
+
302
+ Early development:
303
+ - [ ] Core concept tested with trusted fellow designers
304
+ - [ ] Team playing regularly
305
+
306
+ Alpha:
307
+ - [ ] Traditional testers onboarded
308
+ - [ ] First-impression testing for controls/interface
309
+ - [ ] Feedback documented, not dismissed
310
+
311
+ Beta:
312
+ - [ ] Multiple balancing passes completed
313
+ - [ ] Difficulty tested with handicap methods
314
+ - [ ] Both guided and unguided testing performed
315
+ - [ ] Non-gamer testing for accessibility
316
+ - [ ] Problems from early testing re-verified as fixed
317
+
318
+ Throughout:
319
+ - [ ] Designer watches testers play silently
320
+ - [ ] All feedback recorded, even if not immediately addressed
321
+ - [ ] Multiple testers raising same issue = real problem