Blog

GPT-6 Astra:
One Prompt, One Playable World

One photo into an anime character, into a moving scene, into a game you can actually play.

Part 1 · The basics

GPT-6 Astra, the one everyone is shorthanding as Astra 6, is the first model where "make me a game" is a build instruction rather than a writing prompt. It reasons, it writes the code, it runs the code, and it hosts the result. That is the whole shift, and every habit below follows from it.

  • It runs what it writes. Astra builds, tests and fixes in one pass instead of handing you a file to debug, then puts the result online at a shareable URL.
  • It is text out only. Astra cannot draw the character, the sprite, or the sky. That is not a gap, it is the division of labour the whole workflow rests on.
  • Higgsfield covers the picture. Canvas is a node graph where you chain image and video models into one pipeline, with Soul ID holding a character identical across every node.
  • Higgsfield also ships games. Describe it, pick a genre, and it generates the code, the assets and the world, then deploys to a browser.
  • They connect. Higgsfield MCP exposes the generator to your agent stack, so Astra can drive it directly.

Note. Astra is days old and still rolling out in stages. Treat everything here as the current shape of the tool, not a contract.

Part 2 · The workflow

Four steps. Each one hands a single locked asset to the next.

  1. 1

    One photo into an anime character.

    Photo into Higgsfield Canvas, one styling pass, saved as a Soul ID. That identity is now a node you connect into everything downstream instead of a description you retype.

    Full body, flat background, even light. This is the file every later step points at.
    Step 1Full body, flat background, even light. This is the file every later step points at.
  2. 2

    That character into a full animated scene, with camera movement.

    Chain the Soul ID into a video node. One shot size, one camera move, one lighting setup. This is the test that proves the character holds in motion before you build a world around it.

  3. 3

    The interface, from scratch and fully editable in Figma.

    Astra generates the HUD as a layered Figma file with named components, not flattened pixels. Every later change is then an edit, not a regeneration.

    Title menu, exploration HUD, world map, inventory and boss encounter, each a named frame. The foundations page holds the palette and type, so changing the accent red changes it everywhere at once.
    Step 3Title menu, exploration HUD, world map, inventory and boss encounter, each a named frame. The foundations page holds the palette and type, so changing the accent red changes it everywhere at once.
  4. 4

    The same character, playable, straight from one image.

    Hand Astra the locked character and the spec, and let it build. No engine, no timeline. One prompt in, one browser URL out.

    The same character from step 1, now a third person avatar in a low poly world, with the step 3 interface wired in around it.
    Step 4The same character from step 1, now a third person avatar in a low poly world, with the step 3 interface wired in around it.

Part 3 · The worked example

The goal

Tides of the Forgotten, chapter one. A third person open world pirate adventure you load in a browser, with the character from step 1 as the playable captain, starting on Sunwake Coast. The prompt below is step 4. Steps 1 through 3 have already made the assets it points at.

The assets and their roles

SlotAssetScoped role
@soulidThe locked character from step 1Identity, face, hair, outfit, palette. Nothing else
@uiThe Figma file from step 3Interface layout and components only

Style the photo once, lock it, then make everything else from that lock. Style four separate images and you get four separate people, and no prompting downstream will reconcile them.

The prompt

GAME
Tides of the Forgotten, chapter one. A third person open world pirate
adventure. The player is a captain exploring Sunwake Coast on foot, taking
one main quest, fighting with a cutlass, finishing on a boss.

BUILD
Browser playable, smooth on a laptop. One build, no installer, one
shareable URL.

REFERENCES
@soulid is the player character. It supplies identity, face, hair, outfit and
palette exactly. Take only the character from @soulid. The world, lighting and
camera come from the blocks below.
@ui supplies the interface. Implement it, do not redesign it.

CHARACTER
Teal spiked hair, scar through the right brow, weathered tricorn hat with a
feather, red coat with gold trim and a torn hem, rope belt, hip chain, cuffed
blue trousers, barefoot, cutlass at the hip. Idle, walk, run, dodge, parry and
attack. The coat, feather and chain trail slightly behind the body as he moves,
and the coat never clips through his legs when he runs.

FEEL
Walking is relaxed, running is fast enough to cross the island quickly.
Dodging rolls him clear of an attack and briefly out of danger. Parrying
rewards good timing and punishes early input. Sprinting drains stamina and it
refills once he stops.

CAMERA
Third person, behind and slightly above him, tilted down. The mouse orbits.
The camera pulls in close rather than clipping through walls.

WORLD
Sunwake Coast, a small island bounded by water. Stilted wooden buildings and a
plank jetty on the west shore, a coastal trail running north through forested
hills, shallow turquoise water on the east edge. A shipwright near the jetty,
his moored ship as an inspectable object, and the boss arena at the north end
of the trail.

LOOK
Stylized low poly. Flat shaded geometry, chunky foliage, no fine detail on the
terrain. The character is the only high detail thing on screen and reads as
anime against the simplified world. Overcast late afternoon light, saturated
greens, bright turquoise water.

INTERFACE
Implement @ui exactly. Health and stamina with a captain portrait top left,
quest card beneath it, compass across the top showing the region he is in,
minimap top right, action bar bottom right, control legend bottom left.
Prompts appear only when he is close enough to use something.

AUDIO
Footsteps that change between sand, plank and grass. Gulls, rigging creak and
low surf underneath, louder near the jetty. One ambient track, one stinger
when the boss appears.

CONTROLS
WASD to move, shift to run, space to dodge, LMB cutlass, RMB parry, Q chain
pull, E flintlock, R heal, F to interact, I inventory, M map, ESC pause. The
legend stays on screen through chapter one.

LOCKS
The character matches @soulid from every angle, in every frame.
Hat, coat and hair colour stay the same at any distance and in any light.
The camera never clips through geometry.
He can walk from the jetty to the boss arena without leaving the ground.
Every control in the legend does what the legend says it does.
The build runs from a single URL with no install step.

Why each block is there

BlockThe failure it prevents
REFERENCESThe original photo's real world lighting and background bleeding into the character. Scoping @soulid to the character only is the highest impact line in the prompt.
CHARACTERThe coat clipping through the legs when he runs, and the feather and chain going rigid the moment he moves.
FEELFloaty, weightless movement, and a dodge that does not actually get you out of anything.
CAMERAThe one thing players feel immediately and nobody specs.
WORLDAn endless empty plane. Named landmarks give the space a shape.
LOOKA low poly world and a detailed character fighting each other. Saying the character is the only detailed thing makes the mismatch deliberate.
INTERFACEThe model quietly redesigning the HUD you already built in step 3.
CONTROLSA legend on screen that does not match what the keys do, the fastest way to lose a player in the first minute.
LOCKSEverything above drifting quietly during a long build.

What I would change on a second pass

The character got locked before anything else.

The first attempt described him separately in each prompt and produced a slightly different person every time. One Soul ID, referenced everywhere, fixed it.

The interface became a reference instead of a description.

Pointing at the Figma file beats re-describing the HUD in words, and it stops the model improvising a new one.

Nothing was asked for twice.

Naming the character reference in one block and again in another does not reinforce it. It competes.

Test order

  1. 1

    Grey boxes.

    Movement, camera, collision. No character, no art. Check only that running around feels right.

  2. 2

    Character in.

    Drop @soulid into the working build and check he holds from every angle.

  3. 3

    World and art.

    Full environment, lighting, audio, the Figma UI wired in, the boss at the end of the trail.

If a build comes back almost right, describe the one thing that is broken and let Astra patch it rather than regenerating the whole game.