Prompt with a production plan

Build a better game with the right AI prompts.

A vague prompt asks AI to guess. A useful prompt gives it context, constraints, quality checks, and a definition of done. Choose the situation you are facing, customize the details, and paste the Markdown into your LLM.

Choose an AI prompt
prompt.mdReady to customize
01

Context — engine, genre, platforms, players, and current state.

02

Constraints — security, performance, style, scope, and tools.

03

Process — inspect first, plan, implement, test, and document.

04

Proof — measured results and a clear definition of done.

Less guessing. More repeatable work.

Describe the real situation

Name the engine, target device, existing setup, desired outcome, and what must not break.

Create a reusable process

Ask for conventions, tests, documentation, and pipelines that help with the next asset or feature too.

Require evidence

Quality scores, profiling, telemetry, and test results make improvements easier to verify.

AI game development prompt library

What are you trying to do?

Pick the closest situation. Replace the bracketed details before giving the prompt to your AI assistant.

First playable build

Implement the first playable build

Combine the approved mechanics, core loop, architecture, assets, and media into the first complete playable version.

Best forTurning approved game design and production plans into the smallest representative build that can be played, measured, tested, and improved.
Open Glitch AnalyticsSet up analytics or review player behavior in a new tab.
Markdown prompt
Ready to copy
# Task: Implement the first playable build of the approved game

You are a senior game designer, gameplay engineer, technical artist, and test engineer.

Read the project documentation, architecture, AI instructions, game design, mechanics, core loop, visual rubric, approved assets, asset pipeline, media plan, and testing requirements before changing anything.

Now combine those approved decisions into the first playable build.

Do not build the complete game yet. Build the smallest polished version that proves the mechanics, assets, feedback, and complete core loop work together.

## Define the slice

Identify the minimum end-to-end experience that demonstrates:

- The core fantasy
- The core verbs
- The approved mechanics working together
- The signature mechanic or defining twist
- The moment-to-moment core loop
- One meaningful trade-off
- One success state and one failure state
- Representative controls, camera, UI, feedback, audio, and visual presentation
- A representative game-native HUD and at least the critical title/pause/settings or inventory flow, with final-direction menu composition and button behavior rather than default engine or browser controls
- Representative approved characters, environments, locomotion, animation, movement feedback, and other assets
- Required save, backend, networking, or persistence behavior for that path
- Analytics needed to evaluate the core playtest question

Use existing architecture and pipelines. Do not create temporary patterns that the final game would need to replace.

## Implement

1. Make the project compile, launch, and pass its current baseline tests.
2. Implement the complete playable path from entry through success or failure.
3. Use representative final-quality behavior for the core mechanic, even when surrounding content remains limited.
4. Add only the minimum enemies, challenges, levels, items, abilities, or content needed to test the loop.
5. Implement the approved movement and animation stack for the slice. Cover applicable locomotion, starts and stops, turns, jumps and landings, traversal, combat and interaction actions, facial or mechanical animation, secondary motion, procedural IK, physics reactions, and VFX or shader movement. Do not let characters slide, snap between states, float above surfaces, or move at speeds that disagree with their animation.
6. Implement gameplay collision separately from render meshes and visual animation. Use simple character movement bodies, primitive or compound world and vehicle colliders, interaction triggers, hurtboxes, event-timed attack hitboxes, and authoritative camera or gameplay aim traces. Use sweeps or continuous collision detection for fast attacks and projectiles, collision layers or masks to eliminate irrelevant pairs, and static triangle meshes only where justified.
7. Synchronize gameplay state, validated collision windows, footsteps, impacts, audio, VFX, lighting, camera feedback, and controller vibration. Animation events may request a window, but gameplay or server code must enable it, prevent repeated hits, resolve outcomes, and close it.
8. Implement the approved game UI direction for the slice. Make the HUD, menus, panels, cards, icons, typography, progress displays, input glyphs, and buttons look native to the game world—not like a website, admin panel, or default engine UI. Give every screen one clear primary action, use progressive disclosure and context-sensitive choices, and minimize inputs for common actions.
9. Implement complete button and navigation behavior: large targets; idle, hover, focus, pressed, disabled, selected, busy/loading, error, and cooldown states where relevant; immediate visual/audio feedback; short 150–300 ms transitions; predictable controller focus with no dead ends; reliable back/cancel and focus restoration; touch, mouse, keyboard, and controller parity; safe areas; localization; text scaling; contrast; and reduced motion.
10. Add clear onboarding and feedback so a new player can complete the slice without developer explanation.
11. Add analytics and debug output required to measure completion, failure, timing, friction, movement problems, menu abandonment or repeated clicks, collision or hit-detection failures, animation-state transitions, and the core playtest question.
12. Add unit, integration, end-to-end, browser/device, UI-navigation, animation-transition, collision, and performance tests appropriate to the slice. Test every critical menu path and button state, input-method switching, focus restoration, modal stacking, rapid repeated input, resolutions, safe areas, localization, tunneling, frame-rate variation, slopes or stairs, corners, moving platforms, doors, spawn overlap, contacts, interruption, repeated-hit prevention, and multiplayer replication or reconciliation when applicable.
13. Profile the target platforms and compare UI update and layout cost, atlas and font memory, collider pair counts, collision or physics cost, animation, IK, particles, and rendering costs with the documented budgets.

## Stop conditions

Do not expand content, metaprogression, cosmetics, world size, or secondary systems until the slice is playable and the core playtest question can be answered.

## Final report

Report the playable path, what was intentionally excluded, tests and measurements, analytics coverage, known risks, how to run the slice, and the exact questions the next playtest must answer.

## Three.js geometry, draw-call, and rendering performance

If the project uses Three.js, do not treat a triangle count or WebGPU selection as a universal performance guarantee. Establish per-device and per-quality-tier budgets from measured CPU frame time, GPU frame time, frame pacing, draw calls, visible triangles, shader and material cost, overdraw/fill rate, lights and shadows, post-processing, texture bandwidth, uploads, animation/skinning, physics, memory, loading, and JavaScript allocation behavior.

Use these only as initial planning hypotheses before profiling, never as pass/fail claims:

- Visible scene geometry: roughly 100k–500k triangles for constrained mobile, 500k–2 million for mid-range mobile, 2–5 million for capable mobile, 2–10 million for older desktop hardware, and 10–50 million for capable gaming desktops when the rest of the frame is controlled.
- Asset envelopes: characters around 5k–50k triangles, props around 100–5k, buildings around 1k–20k, terrain around 100k–500k visible, and approximately 1–5 million visible triangles for a broadly compatible complete scene.
- Draw calls: below 500 is a strong initial target, 500–1,000 requires observation, 1,000–2,000 has increasing CPU risk, and more than 2,000 requires explicit evidence on the target hardware and renderer backend.

Replace those hypotheses with project-specific measured budgets as soon as representative content exists. A lower triangle scene can still be slower because of expensive pixels, shaders, state changes, transparency, shadows, post-processing, animation, physics, or JavaScript work.

Prefer the smallest measured combination of InstancedMesh, BatchedMesh, merged static geometry, shared geometry/materials, texture atlases or arrays where appropriate, frustum culling, distance and screen-size LOD, spatial partitioning, bounded object pools, selective updates, compressed KTX2/Basis textures, compressed glTF meshes where justified, asynchronous loading, streaming, and explicit resource disposal. Do not merge objects that need independent culling, animation, selection, collision, or material behavior without measuring the trade-off.

Record renderer.info counters and browser/GPU profiler captures for representative quiet, dense, high-motion, transparent, shadow-heavy, particle-heavy, UI-overlay, and post-processing states. Profile WebGPU and WebGL 2 separately; WebGPU can reduce some CPU submission overhead and enable compute or modern rendering features, but it does not repair excessive allocations, physics, pathfinding, poor scene organization, expensive fragment shading, oversized shadows, or unnecessary post-processing.

For every optimization, capture the same build and gameplay route before and after, verify visual and gameplay parity, and report the actual bottleneck moved—not only the triangle count.

## Three.js multi-device rendering quality and fallback paths

If the project uses Three.js, design and implement capability-based rendering quality paths so the same game remains playable and visually coherent across constrained phones, capable phones and tablets, integrated-GPU laptops, older desktops, and high-end desktops.

Define documented Low, Balanced, High, and Ultra profiles when the supported device range justifies them. Each profile must specify measured budgets and explicit settings for:

- Renderer backend and supported feature path, render scale, device-pixel-ratio cap, target frame rate, antialiasing, output-buffer precision, and post-processing.
- Visible triangle and draw-call budgets, LOD distances or screen-size thresholds, object and vegetation density, terrain detail, decals, particles, transparent effects, reflection quality, and draw distance.
- Texture resolution, KTX2/Basis variants, anisotropy, material and shader complexity, normal/detail maps, environment maps, lighting count, shadow count, shadow-map resolution, cascades, contact shadows, and baked versus dynamic lighting.
- Character and object animation quality: rig and bone budgets, skinned-mesh count, animation sampling/update rate, interpolation, blend layers, facial animation, lip sync, IK, secondary motion, cloth, hair, ragdolls, physics reactions, crowd animation, and update-distance throttling.
- Asset residency, streaming, preload scope, memory ceilings, cache limits, geometry and texture disposal, worker use, and recovery from memory or graphics-device pressure.

Build the quality system from centralized data rather than scattered conditionals. Use measured capabilities and runtime performance—not only user-agent strings—to select a safe default. Let players override the choice when practical, persist the setting, explain costly options simply, and support safe automatic degradation with hysteresis so quality does not rapidly oscillate. Recover upward only after sustained headroom and never during a critical gameplay moment without an approved transition policy.

Create real asset, material, animation, and effect fallback paths instead of only disabling everything globally. Preserve silhouettes, art direction, gameplay readability, telegraphs, interaction feedback, hit timing, collision, input response, UI meaning, localization, accessibility, network authority, saves, and deterministic gameplay across every profile. Ultra may add presentation detail, but it must not reveal gameplay information or mechanics unavailable on Low.

Test cold start, representative gameplay, dense/high-motion scenes, menus, particles, transparency, lighting and shadows, animation-heavy scenes, background/resume, resize, orientation change, device/context loss, and live profile switching on representative devices. Capture comparable screenshots and performance traces for every profile and backend. Report unsupported combinations and fall back to the nearest verified path with a player-readable message rather than a blank canvas, crash, or raw error.

## Internationalization and localization implementation

Implement the approved internationalization architecture as part of this work rather than leaving localization for a later rewrite.

- Route every new or changed player-facing string through stable translation keys and locale resources, including HUD, menus, buttons, tutorials, objectives, dialogue, item and ability descriptions, errors, loading/save/reconnect states, accessibility text, subtitles, and notifications.
- Use locale-aware pluralization and formatting. Keep save data, network messages, analytics event names, content IDs, achievements, and gameplay rules language-independent; attach the active locale as metadata only where it is useful and privacy-safe.
- Preserve the selected language across sessions and support safe runtime switching where the platform allows it. Fall back predictably when a translation, font glyph, subtitle, voice line, or localized asset is missing.
- Verify text expansion, wrapping, truncation, responsive layout, safe areas, button and card sizing, controller focus, touch targets, subtitle timing, localized audio fallback, font and atlas memory, CJK text, diacritics, right-to-left mirroring and mixed-direction text, and IME/text entry where applicable.
- Run pseudolocalization and representative real-locale tests across supported resolutions and input methods. Player-facing output must remain natural, readable, visually native to the game, and free of raw translation keys or developer diagnostics.

Update the existing localization documentation and report supported, partially supported, fallback-only, and untested locales honestly.

## Analytics implementation requirement

Use the approved analytics taxonomy and centralized analytics interface while implementing this game work. Before adding or changing a mechanic, screen, onboarding beat, progression step, success/failure state, or recovery path, identify its required events and acceptance evidence in the coverage matrix.

Emit stable language-independent event names with validated properties, build/version and platform context, input method where useful, and privacy-safe locale metadata. Prevent duplicates and preserve event order. Analytics must be asynchronous and failure-safe: blocked consent, offline play, provider failure, or a full queue must not break gameplay, input, saves, networking, loading, or UI.

Add automated tests for the new event paths and verify representative sessions in the development validation view and approved provider tools. Update the coverage matrix and analytics documentation with implemented, deferred, and untested events.

## Player-readable output requirement

Everything shown to a player must be written and presented for a human player, not for a developer or debugger. This includes menus, HUD labels, buttons, prompts, tutorials, objectives, dialogue, tooltips, loading and save states, empty states, confirmations, warnings, errors, rewards, notifications, accessibility messages, and connection or recovery states.

Use concise plain language, the game's established terminology and tone, recognizable icons with text where meaning could be ambiguous, and a clear next action. A player-facing error should explain what happened in useful terms, whether progress is safe, and what the player can do next.

Never expose raw exceptions, stack traces, JSON, database IDs, internal event names, enum or variable names, file paths, debug coordinates, HTTP status codes without explanation, server implementation details, developer TODOs, placeholder text, or raw telemetry on a player-facing surface. Send technical details to development-only logs, diagnostics, telemetry, or an authenticated support view. A short support reference code may be shown to the player only when it helps support locate the private diagnostic record.

Verify representative success, failure, offline, loading, empty, permission, validation, timeout, save, reconnect, and recovery states from the player's perspective. Developer documentation and final engineering reports may remain technical; this requirement applies to anything the game presents to players.

## Required game documentation

Documentation is part of the definition of done for this task.

Before finishing:

1. Read the existing README, docs directory, architecture notes, decision records, and AI instructions that apply to this system.
2. Update the existing relevant documentation instead of creating a competing document or a second source of truth.
3. If no relevant document exists, create a clearly named Markdown document in the game's established documentation directory. Use docs/ when the project has no existing convention.
4. Document the current system, the decisions made, ownership and lifecycle rules, configuration, files or assets changed, commands and tests run, known limitations, and how another developer should extend or troubleshoot the work.
5. Update AI_INSTRUCTIONS.md or the project's equivalent when this task changes architectural boundaries, required workflows, naming rules, or validation commands.
6. Keep documentation accurate to the implementation. Do not claim support, measurements, or test coverage that was not verified.
7. In the final report, list every documentation file created or updated.
Keep improving the prompt

The first prompt starts the system. The follow-up prompts improve it.

Give the AI screenshots, profiling results, player behavior, test failures, and specific feedback. Ask it to re-check the same rubric or success metrics after every meaningful change.

See More of Glitch's Indie Tools