Aakib Ansari.
Back to articles
Hands-on TestTested live

I Prompted Ox Alpha to Build a 3D Open-World Survival Game — The Code Worked First Try, the Menu Took a Second Click

Md Aakib Ansari
Md Aakib AnsariWeb Developer & AI Tools Reviewer
•7 min read•Model: Ox Alpha•Company: Z.ai
I Prompted Ox Alpha to Build a 3D Open-World Survival Game — The Code Worked First Try, the Menu Took a Second Click

I ran the same open-world survival prompt used in our GLM-5.2 test against Ox Alpha, the unannounced stealth model that appeared on OpenRouter and OpenCode on August 20, 2026. This is a direct follow-up to our earlier coverage of the model's free preview listing and its unverified community coding benchmarks — a chance to see how it actually performs on a real one-shot build task, not a self-reported number from a developer forum.

What I asked for

Same prompt, same structure as our GLM-5.2 open-world survival test, so the results are directly comparable: custom noise-based terrain, biome zones, harvestable resources, crafting, and a day/night cycle, all in a single HTML file with no external libraries besides Three.js.

Raw Prompt (Unedited)
Skip to clean version ↓

You are an expert Three.js game developer.

Create a complete first-person open-world survival game in ONE SINGLE HTML FILE.

IMPORTANT:

  • Output ONLY one file: index.html
  • Put all HTML, CSS, and JavaScript inside this single file.
  • Do not create any other files.
  • Do not use external assets.
  • Do not use React, TypeScript, or any frameworks.
  • Use only Three.js from CDN.
  • The final file must run by double-clicking index.html.
  • Real 3D open world with procedurally generated terrain (freely walkable, NOT a flat plane/fixed arena).

WORLD GENERATION:

  • Procedurally generate terrain using Perlin/Simplex noise (write a simple noise function yourself if no library allowed) for varied elevation.
  • At least 2-3 distinct biome zones with different ground colors and vegetation density.
  • Scatter 3D harvestable vegetation/props (trees, rocks, bushes) using InstancedMesh.
  • Simple horizon fog to mask pop-in.

CAMERA & PLAYER:

  • First-person camera at eye height, WASD movement, Space to jump, Shift to sprint, pointer-lock mouse look.
  • Terrain height collision (player Y follows terrain surface) and prop collision.

SURVIVAL STATS:

  • Health, Hunger (drains steadily over time, drains Health when 0), Stamina (drains sprint/jump, regenerates idle).
  • UI bars for all three (top-left).

RESOURCES & CRAFTING:

  • Harvestable nodes: Trees (Wood), Rocks (Stone), Bushes (Berries). Hit-flash feedback and respawn delay.
  • Inventory tracking & Crafting menu (toggle E).
  • At least 3-4 craftable items (e.g. Axe, Campfire, Torch, Shelter Wall). Show live resource requirements.
  • Placeable items show a semi-transparent ghost preview mesh projected on terrain before placement.

DAY/NIGHT CYCLE:

  • Real-time day/night cycle (~2 min) with orbiting sun/moon and ambient/fog light shifts.
  • Placed campfires & carried torch provide functional light at night.

UI & PERFORMANCE:

  • Survival HUD, inventory/crafting overlay, day/time indicator, death screen with restart.
  • Use InstancedMesh for foliage to maintain high FPS.

CODE: Output ONLY the complete index.html file.

Total lines
738
File size
41 KB
Generation
One-shot
Framework
Vanilla JS + Three.js r128
Effort setting
High (only tier tested)
Access
OpenRouter, stealth/ox-alpha
Retries needed
1 — pointer-lock click only
Cost
Not measured (free preview)
Live Demo

Interactive Demo

W A S D  /  Arrow Keys to drive

This is Ox Alpha's unedited one-shot output. Click "CLICK ANYWHERE TO BEGIN" to capture mouse lock and start exploring — on our run, the very first click didn't register and needed a second attempt.

World generation
Custom permutation-table Perlin noise heightmap
Biomes
Grass, forest, desert, snow (4 zones)
Survival mechanics
Health, hunger drain, stamina, fall damage
Lighting
Orbiting sun/moon + starfield, dusk color tinting
Resource system
Trees (Wood), rocks (Stone), bushes (Berries)
Crafting & building
Stone Axe, Torch, Campfire, Shelter Wall

Procedural terrain and biomes

Ox Alpha wrote its own mulberry32 seeded PRNG and a from-scratch 2D Perlin implementation — permutation table, fade curve, gradient hashing — rather than reaching for a library. Terrain height comes from a 4-octave fbm() (fractal Brownian motion) function layered with a second noise pass for mountain masses, so elevation isn't a single flat noise call but a combination of rolling base terrain plus occasional taller peaks.

Biome selection went a step further than the prompt's "2-3 zones" minimum: grass, forest, desert, and snow all show up, chosen by a combination of elevation and a separate moisture noise field, with smoothstep() blending between biome colors at the boundaries rather than hard edges. Slope angle also factors in — steep terrain shows exposed rock color regardless of biome.

Day/night cycle

The sun and moon are separate emissive sphere meshes that orbit the player on a sine/cosine arc tied to a 120-second cycle, alongside a 600-point starfield that fades in as daylight drops. Sky and fog color interpolate through three states — night, day, and a dusk/dawn orange — using a glow factor derived from how close the sun is to the horizon, so sunrise and sunset both get a distinct color instead of an abrupt day/night cut.

Survival stats and resource harvesting

Health, Hunger, and Stamina bars sit top-left, each pulsing when critically low. Hunger drains continuously and starts draining Health once empty; Health also slowly regenerates when Hunger is above 60. Harvesting uses a center-screen raycaster against the instanced tree/rock/bush meshes — hitting a node flashes it white for 130ms, and depleted nodes disappear and respawn 75 seconds later. The screenshots from testing show the inventory line tracking Wood/Stone/Berries/Torch/Campfire/Wall counts live in the HUD, alongside a "Day 2 – 06:56" clock in the top-right.

Crafting and ghost placement

Pressing E opens a crafting panel with all four items — Stone Axe, Torch, Campfire, Shelter Wall — each showing resource requirements color-coded green when affordable and red when not, matching what's visible in the test screenshots. The Stone Axe recipe is marked "unique" and greys out to "Crafted" once built, correctly preventing a second craft.

Campfire and Wall both support a placement mode: aiming projects a semi-transparent ghost mesh onto the terrain ahead of the player, tinted green when the spot is valid and red when it isn't (too close to another placed object, on water, or on steep ground). Placed campfires get their own flickering point light that factors into a "closest 3 campfires" light-budget system, so light sources don't need to be capped by a raw scene-wide limit.

What impressed me

The biome system doing four zones instead of the requested minimum of two or three, with proper smoothstep() blending rather than a hard region cutoff, wasn't asked for at that level of detail — the prompt just said "2-3 distinct biome zones." Ox Alpha also added a light-budget system for campfires (only the three nearest to the player get an active PointLight, sorted by distance each frame) that isn't mentioned anywhere in the prompt — a sensible performance safeguard for a system that could otherwise scale linearly with every campfire ever placed.

The procedural audio is also worth noting: every harvest hit, craft, footstep-adjacent action, and death triggers a small Web Audio oscillator-based sound effect, entirely synthesized in code with no audio files — something the prompt never requested.

What needs work

  • Pointer lock needed a second click — the very first "click to begin" didn't register mouse capture; a second click worked cleanly. This is an environment/browser interaction quirk rather than a logic bug in the generated code — everything downstream of it worked as expected once locked in.
  • Visual fidelity is flat — trees, rocks, and bushes render as plain, largely single-tone silhouettes with minimal shading variation. It reads clearly at a glance but looks noticeably more primitive than GLM-5.2's version of the same prompt.
  • No hostile mobs — consistent with every other model we've tested on this exact prompt; none has added enemy AI unprompted.
  • Only one effort tier tested — we ran this at High only. Ox Alpha's OpenRouter listing doesn't clearly expose a lower reasoning tier the way some other models do, so we don't have a low-effort comparison point for this run.

Honest assessment

Try it yourself

Try It Yourself

You are an expert Three.js game developer.

Create a complete first-person open-world survival game in ONE SINGLE HTML FILE.

IMPORTANT:

  • Output ONLY one file: index.html
  • Put all HTML, CSS, and JavaScript inside this single file.
  • Do not use external assets or frameworks (React, TS, etc.).
  • Use Three.js from CDN.
  • Must run by double-clicking index.html.

WORLD & TERRAIN:

  • Procedurally generate a rolling 3D terrain heightmap using a custom noise function (write it yourself, no library).
  • At least 2-3 biome zones with distinct ground colors and vegetation density.
  • Scatter harvestable 3D vegetation (trees, rocks, bushes) using InstancedMesh.

CONTROLS & SURVIVAL:

  • First-person camera with WASD movement, Space to jump, Shift to sprint, and pointer-lock mouse look.
  • Survival HUD: Health, Hunger (drains over time — causes health drain when empty), Stamina (drains sprinting/jumping).
  • Resource harvesting: left-click trees for Wood, rocks for Stone, bushes for Berries.
  • Crafting system (toggle with E): Craft Axe, Campfire, Torch, Shelter Wall, each with clear resource requirements.
  • Day/night cycle: ~2-minute cycle, sun/moon orbit, sky and ambient light shift to match.

FAQ

Frequently Asked Questions

What model generated this?
Ox Alpha, an unannounced stealth model (provider alias 'Stealth') available via OpenRouter (stealth/ox-alpha) and OpenCode as of August 20, 2026. No lab has officially claimed authorship.
Can I run this locally?
Yes. Download the single HTML file and open it in any modern browser. The only external dependency is the Three.js CDN script, so an internet connection is needed on first load.
Did it need any follow-up prompts or fixes?
No fixes to the generated code itself. One retry was needed to engage pointer lock on first click, which is a browser interaction step rather than a code defect — the game logic worked correctly once mouse lock activated.
Was this tested at multiple effort levels?
No — this run used Ox Alpha's High setting only. We did not test a lower reasoning tier for this specific build, so effort-dependence for this model on this task is unconfirmed.
How does the visual quality compare to other models tested on the same prompt?
Systems-wise it's comparably complete to our GLM-5.2 open-world survival test on the identical prompt, but the geometry and shading are noticeably flatter and less detailed — plain, largely single-tone trees and rocks rather than more varied materials.

Related Articles