O W L  F L Y  I I

click the screen first to grab the keyboard · keep this window visible — a hidden tab freezes your jet · wire: connecting…
the multiplayer combat flight sim in pure 8086 assembly (105 KB of code, ~30,000 commented lines), running in DOSBox (WASM) via js-dos, IPX tunneled through WebSocket · source · community · built by Owlos — legacy systems are our day job

WHAT THIS IS

A multiplayer combat flight sim in 8086 assembly. Two squadrons fight an attrition war over a procedural island minted from a two-byte seed — which is why joining a sky is instant: the advertisement carries the seed, your machine builds the same island, the same city and the same clouds, and you are there. You fly an F-15 with a real instrument panel, a radar that has to transmit to see, flak that shoots at what you tell it to, and an aeroplane that does not refill itself. Four missiles, 250 rounds and eleven minutes of fuel. The sortie ends when one of them does.

THE FRONT DOOR

There is no menu, and there is one sky. The game listens to the wire for a couple of seconds — every sky advertises itself once a second — and joins whatever it hears. Hears nothing, and it mints the sky itself. You press nothing.

Then you arrive as a spectator, into somebody else's fight: the orbit camera stands off a jet with a missile on its tail, because the war is running before anyone gets here. Space moves to the next one, and it moves on by itself after fifteen seconds if you don't. Arrows swing the camera, Z/X pull in and back off. Enter takes a jet — and you start it stopped on your own concrete, so the first thing your flight contains is a takeoff.

THE COCKPIT

every instrument, and the key that moves it

CAUTION STRIPMC MW AA DM FU FR GDamber sits, red flashes RADAR — left screenheading-up: your nose is upZ / X — zoom in / outR — stop transmitting WHAT YOU HUNG OUTF flaps · L gearB airbrake · A burner THROTTLE — W / Sred at idle and at burner RADIOS & TRANSPONDERG ground net · U air netI — IFF, read this one CENTRE MFD — M pages itMAP — north-up islandSIT — close-in scopeTGT — the locked target STORES & SCOREGUN rounds · MSL railsDAM damage · FUEL minsnothing here reloads WHAT THE JET SAYSSTALL · FUEL · TERRFIRE · LOCK: you are had OPTION LAMPSbars beside each screen SELF-PROTECTIONA-P ECM JMR CHF FLRplates only — for now SPD speed · ALT altitude · NAV heading · HDG climb rate

CONTROLS — all of them

← / →bank left / right. Roll goes through 360° — loops and barrel rolls work (numpad 4/6)
↑ / ↓push the nose down / pull it up, flight-sim yoke (numpad 8/2)
1 / 3rudder pedals — a flat turn without dropping a wing (numpad 7/9). This is how you line up on a runway or hold a gun run
W / Sthrottle up / down — idle to the stop in about a second. The numpad + / and the main-row = ramp the same way
Shiftwith any throttle key, slams the lever — Shift+W to full military, Shift+S to idle. The main-row + is Shift+= on a keyboard, so + always slams and = always ramps: the loud symbol does the loud thing
Aafterburner — four times dry thrust, and eight times the fuel. It is what takes you off the runway and what wins a climb; leave it lit and you have about eighty seconds of it
F / L / Bflaps / landing gear / airbrake. Nothing is interlocked and nothing is refused: put the gear down at six hundred knots if you like, and wear the drag
hands offthe aeroplane rights itself and trims to level
Enterlock whatever is inside the aiming ring. Enter on empty sky drops the lock
Space (hold)cannon. Real tracer with a real time of flight — you lead the target, the game does not do it for you
Backspacemissile. Homes on the lock; without one it flies straight ahead and hits whatever is unlucky
Z / Xradar zoom in / out. In the F4 camera the same two keys pull the view in and out
Mcentre screen: MAP → SIT → TGT
G / Uground net / air net — your lock is broadcast to your own flak and your own aeroplanes
IIFF transponder. Up, your flak leaves you alone. Down, it does not
Rradar emissions on / off
T / O / P / J / YTACAN, master mode, autopilot, ECM, jammer — the plates toggle; only the master mode lamp does anything yet
F2cockpit on / off (the HUD tapes stay)
F3chase view — your own jet from behind, banking for real. The only place you can see your own landing gear
F4orbit the locked target. The arrows steer the camera, Z / X the distance
F5arm the missile camera: the next launch is ridden all the way to impact
F6 / F7turn your head ninety degrees left / right, and you are looking at a painted side console with the world going past it. Press the same key again to face forward
Ctrl + ← / →the same head turn on the arrows — hold Ctrl and look. Let Ctrl go and the arrows fly the aeroplane again
Nday / night. The stars are a real celestial sphere — they turn with your heading, pitch and bank
Vsound, cycling: everything → effects only → silence → everything. "Effects only" flattens the engine bed and keeps the guns and the blasts; "silence" throws the hardware speaker switch, and the loop keeps spinning underneath so any mode is one keypress away
Ctrl+Dthe diagnostic marks, off by default — a coloured square top left for the stage of the frame, and a bar of blocks top centre for how far the render got. For catching a freeze; nothing a flight needs
Spaceafter GAME OVER: take a fresh jet
Alt + Qquit to DOS. ESC is deliberately dead — no more sorties lost to a stray key

HOW TO FIGHT

Find him. The left screen is a heading-up PPI: your own nose points up the glass, so everything on it is measured against where you are looking. Green is ours, red is theirs, and a white pip with a letter is a real pilot. Each blip is an aeroplane symbol swung to its own heading — a bandit's heading is the first thing worth reading off a scope — with a tick above or below for higher or lower than you. Z and X change the range.

Look for him. A fight does not stay in front of you. F6 and F7 turn your head ninety degrees left and right — or hold Ctrl and use the arrows — and you are looking out of the side of a real cockpit, past a painted console, with the world going by. The head turn is an honest rotation of the camera about your own spine, so it stays right inverted, in a loop and at any bank; it is not a swap of two angles that only works straight and level. There is no glass HUD out of the side, because a head-up display is bolted to the front of the aeroplane. Same key again to face forward.

Point at him. The aiming ring on the HUD is the lock gate. Fly until he is inside it and press Enter. The ring becomes a lock pointer that keeps showing where he is when he leaves the glass, the TGT page fills in with his callsign, type, range and altitude, and the missile now has somewhere to go. Enter on empty sky lets him go.

Kill him. The cannon is 250 rounds of real tracer with a real time of flight: aim where he will be, not where he is, and fire in short bursts. The missile is smarter and there are only four — it wants a lock, and it wants him in front of you and not on the deck. A jet takes 5 hits; so do you, and the fifth replays your last five seconds before GAME OVER.

Do not get killed. The LOCK lamp and the missile warning on the overhead strip mean somebody has done to you what you just did to him. There is no chaff and no flare yet, so the answer is the aeroplane: unload, get the nose down, and put a hill between you and the thing that is guiding.

The ground has opinions. Two radar stations and twenty flak vehicles hold the line, and the flak leads its shots. With the G net up they shoot at what you have locked instead of what is nearest their barrel — one pilot's eyes become the battery's. With the I transponder down they shoot at you, and they are right to.

Being invisible costs you your eyes. R stops your radar transmitting. You stop painting yourself on other people's scopes, and your own screen goes to snow — a radar that is not transmitting has nothing to receive. That is the whole trade, and knocking down the enemy's ground station does the same to him.

THE SWITCH PANEL

Twelve plates along the bottom: the up-front panel on the left, the self-protection suite on the right. The rule they are built on is a switch changes what OTHERS do, never what you are allowed to do — nothing here takes your eyes away or refuses you a control.

GND  (G)your lock goes out to your own flak batteries and they shoot at what you designate. The range gate still applies — a radio carries a designation, not a longer barrel
AIR  (U)the same for your own aeroplanes: your side attacks what you are locked onto instead of whoever they noticed first
IFF  (I)the transponder, and the most dangerous switch on the panel. Up, your own flak leaves you alone. Down, it does not
T-R  (R)emissions: unseen, and blind. See above
A-A / A-G  (O)master mode, one lamp or the other. It reports the mode; the weapons do not care which way it is set yet
TAC A-P ECM
JMR CHF FLR
TACAN, autopilot, countermeasures, jammer, chaff, flares. The plates toggle and that is all they do so far. An unlit plate is an honest way to say "not yet"

THE AERODROMES

Four strips, two a side, standing back from the line with a radar mast on the front pair — a station belongs to an air base. The ground under a runway is ironed flat into the heightmap before the world is baked, so the terrain, the collision test and the streets all agree about the concrete with no special case anywhere, and nothing is ever built on it. Grey slab, dashed centreline, a threshold bar at each end. Three hangars and a control tower stand on the apron; they are scenery, and you can fly straight through the tower.

Getting off it

A sortie starts stopped on your own concrete — fuelled, towed out, made ready, flaps set, gear down, engine running and standing on the brakes — the aeroplane says so on the glass until it is no longer true. So does every life after a death. The first thing any flight contains is a takeoff, and it goes like this:

B to release the brakes · W (or Shift+W to slam the lever to the stop) · A for the burner · hold the stick back, and she rotates and flies. Steer with the arrows — the nose wheel bites harder the faster you are rolling, which is why the first attempt wanders. Clean up with L and F once you are climbing.

You will not get airborne dry. On full dry thrust with the gear and flaps out this jet settles at a speed below the one it needs to fly; the nose comes up, the speed stops climbing, and nothing happens. That is not a fault, it is the aeroplane telling you what it wants. Light the burner.

Landing is the work in progress: flaps down or it is not a landing, gear too, and a belly arrival refuels nobody. Your own field gives you fuel and rails back. Theirs gives you nothing — but you can put down on it and work the place over, which is a different kind of sortie altogether.

THE WAR

Buildings fall and stay ruins. Wreckage chains — a jet that comes apart over a city takes part of the city with it. Ramming works. Once.