Sound ready
Opening this guide pauses play. Close it, then use Resume to continue.
Choose the original Apple II game or the native JavaScript FPS remake. The original mode executes the recovered Apple II code, including cycle-timed speaker toggles played through Web Audio. Its title pairs the supplied cover artwork with the original animated BORG logo.
3D FPS (default): Load the disk to start the first-person remake. This is your shift at ShoeMark, an industrial shoe-equipment manufacturer. The plant's robots have gone crazy and armed its self-destruct system. Shut down the rogue robot network across all ten floors, rescue the crew, and disable self-destruct to save the plant. Click the display to capture the mouse. WASD moves, mouse-look aims, left click or Space fires, Shift runs, hold C to duck, and Esc releases the mouse and pauses. The weapon barrel stays angled toward the crosshair through sway and recoil. Close-range robot strikes cause brief warped/double vision, stylized visor slash marks and metallic claw/thud sounds. Fatal attacks darken and distort the view until safe redeployment; the HUD stays readable. Attacks still deal 18 damage with the existing cooldown, rather than killing instantly. Ducking lowers your viewpoint and slows movement, letting incoming overhead fireballs pass above you. Close-range Borg attacks still hit, and you can fire while ducking. Without mouse capture, use Resume and hold the right mouse button while dragging to look, or use the left/right arrow keys to turn. Rescue the gold beacons for health and points, eliminate every hostile, then reach the cyan elevator doorway to advance through all ten rooms. Between floors, a short automatic ride closes the doors, advances the floor indicator, and opens onto the next level. Pause also pauses the ride. The first elevator doorway has a green road sign above it reading "Standard Way". The minimap shows the actual original board layout. The cover-inspired tiled datacenter, reflective pillars, winged enemies, combat, rescues, and progression are a native remake, not original Apple II rules. FPS graphics use textured metal panels and stone tiles, atmospheric lighting, armored bots with illuminated cores, and impact glows. Base enemy counts rise from six to fifteen per room. Borg and the dark, horned, bat-winged cover dragon appear from room 1; yellow-eyed crocodilian aliens join in room 3, six-legged crawlers in room 5, and hovering armored sentries in room 7. Later rooms mix the unlocked species. Crocs stride, crawlers scuttle, and sentries hover; only the Borg and dragons use the hop cycle. Robots arrive gradually, starting after 0.35 seconds and staggered by 0.43 seconds, so their hop cycles start independently. Incoming robots keep the elevator locked and are counted separately in the HUD. Arrivals stay at least three units from you, including after redeployment. Two extra original robots join each floor from room 3: Beacon Surveyor and Patch Pod (room 3), Brass Herald and Rivet Jack (room 4), Violet Steward and Salvage Mite (room 5), Comet Scout and Foundry Titan (room 6), Lattice Guard and Relay Rover (room 7). Rooms 8-10 revisit the first six. Their glass domes, brass shells, tracks, articulated frames and hovering bodies are original designs, not licensed character replicas. Each has ordinary cyborg combat, mechanical destruction and its own expedition kill count. The compact kill counter expands with K or Show kill tally, and folds away with the same control. Victory expands it automatically. The expedition kill panel counts each species separately, including on the victory screen. Totals survive room changes and redeployment; Restart clears them. Species retain the existing melee/ranged health, speed, scoring and attack balance. Borg use a synchronized kangaroo-style hind-leg cycle: crouch, extend for takeoff, tuck at the apex, reach forward, and compress on landing. Enclosed rooms have a perspective ceiling with overhead light panels, not an outdoor sun. Aim up at a ceiling light and shoot to destroy it. Nearby surfaces go dark, but bot cores still glow and the Borg continue tracking you by scent. Wall-mounted cooling pipes, high-voltage panels and server units can be shot apart (one, two and three hits respectively). Ruptures release coolant, electrical arcs or fires: within 0.85 world units they damage both you and cyborgs once per second, but cannot hurt through walls. Coolant lasts 12 seconds, arcs 8, and fire 15; ducking does not protect against these hazards. Enemy fireballs can also break equipment. Hazard kills count toward species totals and score. Broken equipment and the latest 256 wall bullet holes stay until the next room; original walls and corridor collision remain unchanged. Every floor has a wall-posted "WARNING - ROBOTS WILL KILL YOU" sign near its starting area, including the tape archive. Room 5 is a 1970s nine-track tape archive: cream cabinets, orange-brown trim, animated open reels, tape threading paths, control buttons, reel-storage racks and pale raised-floor tiles. Its tape drives and storage racks burn after three hits, with cooling pipes and electrical panels still present. Floors 1-3 and 8 are manufacturing areas with concrete floors, production walls and control cabinets, not server rooms. Winding machines appear only there. Wall lettering and device labels face correctly on all four corridor directions. Floor 4 is the tiled lunch room: 3D dining tables and chairs, plates, sandwiches, coffee cups and soda cans; a kitchenette with a sink, microwave and coffee maker; a refrigerator, trash can and a red Coca-Cola vending machine. Furniture has perspective depth and wall/creature occlusion, but remains decorative and nonblocking to preserve the original corridors. There are also robot refueling stations marked "HUMAN FUEL", and captive crew who can be freed at the gold beacons. Refueling is implied without graphic feeding. Empty seats remain after rescue. Each floor has one named crew member to rescue: Scott, Justin, Aaron, Jim, Marcy, Wayne, Joe, Daniel, Dan and Bill, in floor order. The first floor also has empty desks for Ida, Eric, Albert and Justin, marked resigned with no rescue interaction. The resigned Justin and rescuable Justin are different people. Wayne wears a red plaid shirt with balding gray hair, glasses, a gray beard, mustache and fluffy gray eyebrows. Other character outfits borrow beige, dark and teal work-shirt styles from the supplied workshop photo; these are illustrative assignments, not identifications of the photographed people. Shoot incoming robot projectiles to explode them harmlessly before they hit you. Watch your fire: one shot kills unrescued crew permanently. The shift continues, but dead crew cannot be rescued and award no rescue points. Overtime is earned after clearing floor 4, unless you shoot any crew member: then overtime is forfeited for the entire run. Regular score rewards remain unchanged. ShoeMark brands the factory machines and wall-mounted devices. Floors 1-3 now include winding equipment: UniShoeer and LaceNSole on floor 1, DigiShoeer II and MultiShoeer on floor 2, Boil Master and UniShoeer on floor 3. Room 8 is a fiber-winding workshop with all five original low-poly floor models: UniShoeer, DigiShoeer II, MultiShoeer, Boil Master and LaceNSole. Reels and pulleys rotate, guides traverse rails, and screens show animated graphs and status lights; some machines periodically stop and restart. Models use the supplied approximate game dimensions, not engineering specs. They are decorative for movement (you can pass through them), but shots and enemy fireballs strike their modeled surfaces; gaps remain shoot-through. Three to five hits destroy a machine, leaving metal wreckage and a dangerous electrical fire. Equipment damage never adds creature kills or points. Rendering batches sprite draws with occlusion masks, caches unchanged floor/ceiling views and static minimaps, and skips empty factory passes. Lighting changes, movement and ducking invalidate the cached view. The models are built locally from reusable frames, reels, motors and controls. Winding models are original. The lunch-room furniture and food are converted from Kenney's CC0 Furniture Pack and Food Kit. Included licenses: furniture / food. The vending cabinet and its plain-text Coca-Cola sign are custom; no official logo artwork is bundled, and Coca-Cola is a trademark of The Coca-Cola Company. The asset converter is convert-lunch-assets.mjs; it accepts the extracted furniture/food archive root and output module path. For future free assets, Kenney and Poly Haven publish CC0 game assets; always check the individual asset's license before importing it. The first-person weapon has a beveled barrel, recessed energy channel and centered WB Cherry plate; the original Grud artwork sits in clipped HUD badges to remove photo-edge remnants. Every species is an alien cyborg: destruction peels away its creature-shaped shell, exposing silver actuators, severed power cables, circuitry and a ruptured glowing core amid sparks and smoke. Species-colored shell fragments, broken head or wing plates, metal joints and wiring remain as nonblocking wreckage until the next room. Stereo audio mixes 41 local CC0 WAV effects with synthesized footsteps, crew chimes and alarms. Robots, equipment, winding machines, lunch-room props and hazards have sound signatures, with one nearby object sounding every few seconds to avoid overwhelming the mix. Use Listen in the illustrated guide to audition sounds while paused. Each named crew member has a distinct rescue chime. Sound starts after user interaction; Pause, mute and losing focus silence both modes. The Sound button controls effects in either mode. WAV files load from this folder, not a third-party audio service. The one exception is the 3D remake's background music: tracks 1 and 2 of a YouTube playlist, played through YouTube's embedded player and alternating with the floor (odd floors track 1, even floors track 2); the Sound button mutes it too. The YouTube player is hidden; the Play / retry music button is with the other controls at the top, and a status line below the game reports whether the music is playing. If the browser blocks embeds or autoplay, the music status reports it; use the player controls or Open music on YouTube in a regular browser. Switching modes preserves each session; Restart resets only the selected mode.
convert-lunch-assets.mjs
Sound credits: Kenney, Sci-fi Sounds, CC0. Downloaded from OpenGameArt; converted to mono 22,050 Hz PCM WAV. Original license notice is included. The original game retains its own emulated Apple II speaker sounds.
Safe deployment: Opponents begin at least three world units from you. Redeployment chooses reachable floor at least three units from living opponents and clear of active hazards, without moving opponents. Incoming projectiles are cleared. If no safe sector exists, redeployment waits with an explicit message instead of spawning you inside an enemy.
Test walkthrough: In FPS mode, choose Run winning walkthrough to watch a fresh expedition on the game display. Playback defaults to 1× with sound (about seven minutes); choose 4× or 12× for accelerated silent playback. It uses normal movement, aiming, ducking and firing, with read-only map knowledge: no health, score, enemy or collision changes. It clears all ten rooms, rescues all ten named crew, destroys 121 creatures and verifies the 32,800-point victory with per-species kill totals. Pause/Resume pauses the walkthrough; Stop walkthrough returns control to you. Run the same headless regression with node --test fps-walkthrough.test.mjs.
node --test fps-walkthrough.test.mjs
Wait for the title screen, then press Space. At the control-selection menu, press 4 (recommended). Click the display, hold arrow keys to move, and hold Space while moving to fire in that direction. WASD also moves; the original I/J/K/M keys work too. The mouse also works in mode 4: point away from the display's center to move; return to the center to stop and hold the left mouse button to fire. Mode 0 emulates the original rotating paddle: the pointer angle selects one of eight directions, with continuous movement and no neutral position.
From this folder, run python borg_go.py, then python -m http.server 8000 --bind 127.0.0.1 and open http://127.0.0.1:8000. Run tests with node --test *.test.mjs. Color uses the six hires colors (black, white, violet, green, blue, orange), horizontal dot position and the byte's half-dot phase shift. Alternating dots blend into colored bands. This is a digital approximation, not a full analog NTSC simulation. The Apple II's 16-color low-resolution mode is not used here. Title, control-menu, score, and HUD lettering use white modern fonts over the original bitmap, except the BORG logos, which retain their original changing colors. The score comes directly from the game's packed-BCD counters. Other bitmap lettering retains the original rendering. Diagonal walls and HUD weapons receive display-only sci-fi vector styling; the original collision data and BORG logos are unchanged. The corner mascots use Grud cropped from the supplied reference photo. Original full-game completion and exact analog speaker/hardware fidelity remain unverified. Speaker edges are timestamped at instruction boundaries, not individual 6502 bus cycles.
python borg_go.py
python -m http.server 8000 --bind 127.0.0.1
http://127.0.0.1:8000
node --test *.test.mjs