gamedev-skills/awesome-gamedev-agent-skills

game-jam

Plan and ship a game under a jam deadline: lock scope to the clock, schedule the hours, cut features, and submit on time.

Ver código-fonte
Documento original do Skill

Renderizado do repositório de origem, preservando títulos, exemplos, código, tabelas, links e imagens.

Game Jam

Turn a theme and a fixed deadline into a finished, submitted game. This is a planning and scope-control playbook, not engine code: the win condition is something submitted and playable, not the game you imagined.

When to use

  • Use when entering a timed jam (Ludum Dare, GMTK Jam, Global Game Jam, a weekend jam),

scoping a 48-hour build, or deciding what to cut to hit a deadline.

  • Use when the user asks "what can I actually build in a weekend" or "how do I submit to

this jam".

When not to use: building the core loop* in engine code (use the engine skill — godot-2d-movement, phaser-core, etc. — or a genre skill like platformer); throwaway experiments with no deadline (use prototype-fast); shipping a commercial release (use steam-publish / itch-publish).

Core workflow

  1. Read the rules before the theme drops. Confirm the jam's length, *theme reveal

time, submission deadline (with timezone)*, whether teams/pre-made assets/engines are allowed, and whether ratings require you to rate other entries. Missing one of these disqualifies an otherwise-finished game.

  1. Prep the boring parts in advance (allowed by most jams): empty project that builds

and exports, input + a title/end screen stub, an export pipeline you've run once, and a font/SFX source you're licensed to use. Day-one time is too precious to spend here.

  1. Theme → one sentence. Brainstorm 10 ideas in 15 minutes, then commit to one

expressible as: "You [verb] to [goal] while [constraint]." If you can't say it in one sentence, it's too big.

  1. Scope to the clock, not the idea. Use the budget table below. Pick one core

mechanic and one "hook". Everything else is a stretch goal.

  1. Build the vertical slice first. Get a 30-second playable loop (start → play → lose/win

→ restart) running early. A complete tiny loop beats a half-built big one.

  1. Reserve the last ~20% of the clock for shipping, not features. Export, test the build

on a clean path, capture screenshots, write the page. Builds always break at hour 47.

  1. Submit early, update if time remains. Upload a working build well before the

deadline; most jam pages let you swap the file until it closes. A submitted mediocre game scores; an unsubmitted great one does not.

Patterns

1. Scope budget by jam length (plan backwards from the deadline)

text
              | 48-hour jam            | 72-hour jam           | 1-week jam
--------------|------------------------|-----------------------|------------------------
Core mechanic | 1, proven by hour 6    | 1-2                   | 2-3 interacting
Levels/content| 1 hand-made or gen'd   | 3-5                   | 8-12 + progression
Art           | placeholder/1 palette  | cohesive 1-artist set | themed set + UI
Audio         | 3-5 SFX + 1 loop       | SFX + 1-2 tracks      | adaptive music
SHIP BUFFER   | last 8-10 h            | last 12-16 h          | last full day

2. The 48-hour timeline (concrete blocks)

text
H0-2    Ideate -> lock ONE-sentence concept -> name the core mechanic + win/lose.
H2-8    Core loop in code with primitives (boxes/circles). Make it playable, no art.
H8-12   Sleep. (Tired code is tomorrow's bug list.)
H12-24  Content: 1 level/encounter, tune difficulty, add the "hook" feature.
H24-30  Sleep + playtest with one other person; cut anything not landing.
H30-38  Art + audio pass. Juice: screenshake, hit-stop, tween, particles, SFX.
H38-44  Bug-fix freeze: no new features. Fix only crashes + soft-locks.
H44-48  EXPORT, test the build clean, screenshots, write page, SUBMIT (by ~H46).

3. Feature triage — decide fast, decide out loud

text
For every feature ask, in order:
  1. Does the core loop work WITHOUT it?   -> if yes, it's a stretch goal, not MVP.
  2. Can a player tell it's missing?       -> if no, cut it.
  3. Is it < 30 min of work?               -> if no, defer past the ship buffer.
Default answer under deadline pressure is CUT. You can always add in a post-jam version.

4. Pre-submission build check (run on a clean copy, not your dev folder)

text
[ ] Build runs from an extracted zip on a path with NO engine/IDE installed.
[ ] Controls are shown on-screen or on the page (jurors won't read your mind).
[ ] No dev console errors; no soft-lock; restart works.
[ ] Web build (if any) is set to the platform's playable-in-browser mode.
[ ] Page has: 1-line pitch, controls, screenshots, credits + asset licenses.
[ ] File uploaded and the submission is actually attached to the JAM, not just the page.

Pitfalls

  • Scope creep is the #1 jam killer. If the core loop isn't playable by the first third

of the clock, cut features now, not later.

  • No ship buffer. Exporting, zipping, and writing the page reliably takes 1-3 hours and

always surfaces a build bug. Treat the deadline as ~2 hours earlier than it is.

  • Submitting to the page but not the jam. On itch.io a jam entry is a separate

submission linked from the jam page — uploading the game alone does not enter it.

  • Untested export. "Works in the editor" is not "works in the build." Test the exported

artifact on a clean path; missing assets and wrong working directories are classic.

  • Unlicensed assets. Music/fonts/sprites pulled from the web can violate jam rules and

break later distribution. Use assets you're licensed for and list them in the credits.

  • Polishing before the loop is fun. Juice multiplies fun; it can't create it. Get the

loop right with placeholders first.

References

  • For the throwaway-vs-keep prototyping mindset and greyboxing technique, read the

prototype-fast skill.

  • For the actual upload mechanics (project page, channels, butler push), read

itch-publish.

Related skills

  • prototype-fast — validate a mechanic quickly before committing jam hours to it.
  • itch-publish — create the page and upload the build (most jams are hosted on itch.io).
  • Engine cores (phaser-core, love2d-core, godot-gdscript, …) and genre skills

(platformer, roguelike, …) — build the actual loop the jam scopes around.

do mesmo repositório

Mais Skills

Todos os Skills
gamedev-skills
Comunidade

game-feel

Add "juice" and game feel that makes actions satisfying — screen shake, hit-stop/freeze frames, tweened/eased motion, squash & stretch, knockback, and layered audio-visual feedback — as engine-neutral techniques that pair with the detected engine's tween, particle, and camera APIs. Use when the user mentions game feel, juice, "make it feel good/punchy", screen shake, hit stop, screen freeze, easing, squash and stretch, impact frames, or feedback/polish on hits, jumps, pickups, and deaths.

instalações
4
GitHub Stars
878
Atualizado
24 de ago.
gamedev-skills
Comunidade

game-ui-ux

Design and build game UI/UX — HUDs, menus, and overlays — that survive every screen: anchor- based responsive layout, resolution/aspect scaling and safe areas, keyboard/gamepad focus navigation, a screen/menu state stack, and event-driven (not polled) HUD updates. Engine- neutral patterns that pair with the detected engine's UI skill. Use when the user mentions HUD, health bar, main menu, pause menu, settings screen, UI layout, anchors, UI scaling, aspect ratio, safe area, controller/keyboard menu navigation, or wiring UI to game state.

instalações
4
GitHub Stars
878
Atualizado
24 de ago.
gamedev-skills
Comunidade

dialogue-systems

Build branching dialogue and narrative — a node/choice graph with conditions, variables, and localization hooks — and choose between authoring tools Ink and Yarn Spinner or a custom data-driven runner. Engine-neutral. Use when the user mentions dialogue system, branching dialogue, conversation tree, choices, Ink (.ink), Yarn Spinner (.yarn), or NPC dialogue.

instalações
4
GitHub Stars
874
Atualizado
24 de ago.
gamedev-skills
Comunidade

godot-2d-movement

Implement 2D kinematic character movement in Godot 4.7 with CharacterBody2D and moveandslide(): platformer run/jump with gravity, top-down 8-direction motion, slope handling, and reading collisions. Use when coding a 2D player or enemy controller, a platformer or top-down character, or fixing moveandslide()/ isonfloor() behavior in a .tscn with a CharacterBody2D.

instalações
4
GitHub Stars
874
Atualizado
24 de ago.