- Roles
- Tank, plane, rifleman
- Sectors
- 12 missions
- Machines
- 11 vehicles, 3 aircraft
- Voice and sound
- 118 generated clips
Three ways into the same battle
The map is one piece of the Kursk salient, about two kilometers across. The Psel river bends along one side. A railway embankment cuts across the middle. Hill 252.2 rises at the far end. In between are wheat fields, sunflower parcels, a whitewashed village, a church, a grain elevator, a windmill and the Oktyabrsky state farm. Artillery keeps landing on all of it.
Four sectors from the wheat fields to Hill 252.2. Close the range fast, because the German guns out-reach yours.
Rocket a panzer column, knock out an 88 mm flak nest, blow up an ammunition train, and drop PTAB bomblets on a Tiger company.
Cross the wheat after the barrage, clear the trench, fight house to house, hold the embankment, then take the hill.
Armor works the way a tank crew would worry about. A shell hitting a sloped plate at an angle has more steel to push through, and a shallow hit can bounce off with a clang. Penetrating hits can start an engine fire, jam the turret, break a track, wound the gunner or set off the ammunition, which throws the turret into the air. The enemy tanks aim with human error that tightens as they settle in, lead moving targets, and turn their thick front armor toward you.
Each time you deploy, you meet the person you are playing: a tank commander from Yaroslavl, a paratrooper fighting as a rifleman, an Il-2 pilot who promised his mother he would come home. They are composite characters, and each one carries a real account from the battle, such as the T-34 crew that rammed a German tank on 12 July or the Il-2 pilot who flew on with one eye.
Your side fights too. Friendly T-34s, IL-2 flights and rifle squads move with you. The infantry bound forward in pairs, take cover behind ruins and sandbags, throw grenades and Molotovs, and charge the last forty meters with a shout. Buildings collapse into ruins. Trees fall. Every crater and scorch mark stays on the ground for the rest of the sector.
Learn the controls
Pick a role on the title screen, then a difficulty. Each sector opens with a painted briefing. The opening cinematic runs once, and you can skip it.
| W A S D | Throttle and steer |
| Mouse, left button | Aim the turret and fire the main gun. A marker shows where the shell will land |
| Right button or V | Gunner sight, with a zoom on the mouse wheel |
| 1 / 2 | Armor-piercing or high-explosive shells |
| Space / E / R | Coaxial machine gun / smoke screen / field repair |
| Mouse | Point where you want to fly. The plane banks and turns toward it |
| W S / A D / Q E | Throttle / roll / rudder |
| Left / right button | Cannons / rockets |
| 1 / 2, then Space | Choose a FAB bomb or PTAB cluster bombs, then drop |
| W A S D, Shift | Move, sprint |
| C / Z | Crouch / go prone |
| Left / right button, R | Fire / aim down the sights / reload |
| G / F / T | Grenade / Molotov / anti-tank grenade |
On a phone or tablet. Put your left thumb anywhere on the lower left to get a stick. Push it all the way forward to sprint. Drag anywhere on the right to look, aim the turret or steer the plane; a quick swipe turns faster than a slow one. The fire button aims too while you hold it, and the sights ease onto targets when you fire. Double-tap to aim down the sights or open the gunner sight. Buttons show what you have left and the reload. The game works held upright or sideways.
Wheat, steel and smoke
Build notes: a first draft, then a rebuild
Read the original Kursk article, published October 6, 2026.
The machines. The tanks, guns, trucks and planes start as procedural WWII models from the open-source Muster archive. A build step runs them in a headless browser, bakes their materials, splits off the turrets, gun mounts and propellers so they can move, and simplifies each one into four levels of detail with meshoptimizer. The game loads a compact binary file for each machine instead of rebuilding it every time.
The steppe. The ground is a height map shaped by the layout of the battle: roads, the rail embankment, the river cut and the hill. Wheat and grass are drawn as clumps of cards, tens of thousands at a time, all placed on the graphics card. The same trick scatters pebbles, poppies, cornflowers, chamomile, sunflowers that turn to face the sun, and brass shell casings near the craters. Tanks flatten the wheat where they drive. The village buildings, trees, rails and trenches were modeled in Blender, and photo-based textures from ambientCG add plaster, thatch, planks, bark and soil up close.
Smoke and fire. Explosions, dirt, fire, dust and smoke come from one particle system drawn at half resolution with soft edges where it meets the ground. A sky shader paints the clouds, and a sun-shaft pass pushes light through the smoke. A sharpening pass at the end keeps distant detail crisp.
Sound and voice. Cannon fire, engines, tracks, flak, planes, the barrage and the radio chatter were generated with ElevenLabs. Sounds travel at the speed of sound, so a distant gun flashes before you hear it. Voices on the radio go through a filter chain that sounds like a field set, and the music ducks under them.
Phones. The whole battle, down to every shader, is prepared behind the loading screen, so the first explosion does not stall the game. The game watches its own frame rate and trades resolution first, then grass and flower density, to stay smooth.
Changelog
v2.2: who you are, and wheels that turn. Every deployment now introduces the soldier, tank crew or pilot you are playing, with a short story and a real account from Prokhorovka or the Kursk air battle. Road wheels, sprockets and track links now move with the tank, each side at its own speed when you turn. Touch controls got live ammo counts, a reload ring, aim assist, a single stance button and grenade picker, and double-tap to aim. Upright phones get camera framing of their own. Grass and flowers no longer shuffle as you walk, and tall sunflowers step aside between the camera and your tank.
v2.1: phones and speed. Touch controls for all three roles, layouts for upright and sideways phones, shaders and music prepared during loading, about 40 percent fewer triangles on the highest setting, automatic detail scaling, leaf canopies on the trees and cloth texture on the uniforms.
v2.0: the rebuild. A new engine with a haze-and-light pipeline, the Blender village and railway, photo-based textures, angled armor and critical hits, AI tank crews, an IL-2 with rockets and PTAB bombs, a new infantry mode with squads and grenades, twelve sectors, an opening cinematic and victory and defeat scenes, and generated sound, music and voice.
v1.0: first draft. The original browser prototype. It is kept in the project folder as the legacy draft.