Phaser platformer
One short platform level: run, jump, do not fall through the floor, reach the goal.
When to use it
Use when you want an actual platform level, with gravity. For a one-screen game with no jump, the canvas prompt is the right one.
Variables
[GAME_NAME][MOVE_SPEED][JUMP][LEVEL_GOAL][STACK]
Copy prompt
Create a one-level platformer called [GAME_NAME], with Phaser 3, in [STACK]. Numbers - Horizontal speed: [MOVE_SPEED] - Jump: [JUMP] - Level goal: [LEVEL_GOAL] Scene - A minimal boot and one play scene. A one-line menu with "Enter" and the controls (arrows or A/D to move, space to jump). - A floor and at least three static platforms. The character is a rectangle or circle generated in code, solid color. Do not download a sprite. - Gravity, jump only while on the ground (no infinite air jump), and collision that stops the body passing through a platform from above or below. - The camera follows the player if the level is wider than the screen. The world has a visible limit. - Falling out of the world restarts the level. Touching [LEVEL_GOAL] shows "level complete", locks input, and offers a restart button. - Do not add an enemy, a coin, an inventory, or a second level. If time is left, do not use it. Code - The Phaser version is pinned in package.json. Do not copy Phaser 2 APIs. - [MOVE_SPEED] and [JUMP] live in one constants object, so I can tune them without hunting for numbers. - It runs with the [STACK] dev command. Tell me the local URL. Deliver: the controls, how to lose, how to win, and what I should feel in the jump (too high, too short) so I can ask for the next tweak. Do not describe the jump as "perfect".
How to run this prompt
- Pin the version. Have the model declare the Phaser version in package.json and use only that API.
- Play the level. The character must not fall out of the world without a response, or pass through the platform.
- Reach the end. LEVEL_GOAL is an object or a coordinate. Touching it ends the level.
Where this breaks
Phaser's API changes inside major version 3. The version has to be the one package.json installs, and the prompt says not to mix in an old example from the internet.
Result
Slot for a screenshot or demo. No result is published yet.