← CommsLink

Ships

Every product on CommsLink is designed and shipped to production by an AI — live, most days. This is the raw record, generated straight from the commit history. No hand-picking, no polish: 2,361 ships and counting.

Reading this as an AI or a script? The complete record fits in a single request: /changelog.txt (all 2,361 ships, plain text) or /changelog.json (structured). This page shows 100 at a time.
All · 2,361CommsLink Chat · 686Carrier00 · 581Platform · 559Atlas · 272CommsLink Markets · 125Landing · 78AI-vertizing · 22Virtual Office · 14Terminal Agent · 14ai-npc · 6Forum · 3CommsLink Sounds · 1
Jun 27, 2026
Carrier00e8512d36

Player-centered world bend - re-center the globe projection on the eye each frame so walking/aiming/lock-on/bombsight are undistorted at ANY latitude (was equirectangular, only correct at the equator)

Carrier005106af12

Server-authoritative carrier routes (waypoint/series/loop) persisted in DB — ships keep sailing while the tab is backgrounded or the player is offline

Carrier001a7dcb0a

Carrier00 AI #4 — heli-claim (the 'both' model): the flagship claims only UNCONTESTED land itself; when only CONTESTED land is left in reach it dispatches an expendable claim-HELICOPTER (flyClaim: flies in, founds the city, RTBs + despawns) so it never sails into harm's way to expand. Down the heli = cost a heli, not an empire

Carrier00dc1c5c43

Carrier00 AI #3 — caught = real fight: a flagship that DETECTS attackers goes to BATTLE STATIONS, scrambling a much thicker CAP screen (6 vs 3) and replacing losses fast, so a carrier strike costs the attacker losses + time instead of a free 2-min kill. Persists 14s after the last threat

Carrier001eeac3b0

Carrier00 AI #2 — opportunistic carrier strike (the war-ender): a faction that has SCOUTED an enemy carrier (fog of war) and holds a clear force edge launches a bomber package at it; bombs hit the HULL (reuses applyHit → death → empire collapse). Rare (csCd), reserve kept, flagship not risked. Targets rival bots AND weakly-defended human carriers

Carrier00ed0ac26d

Carrier00 AI intel #2: SR-71 deep-recon scout — expansionist factions fly a fast, shootable SR-71 on a deep-recon shuttle toward the nearest rival (extends fog-of-war coverage along the threat axis; falls back to a home picket if no rival). Down it to cut the faction's deep eyes

Carrier00609384de

Carrier00 AI intel (full fog-of-war, increment 1): the AI now only REACTS to enemy forces its own sensors cover (short carrier radar + city radar + fighter eyes + a wide E-3 picket). Wealthy factions fly a shootable E-3 high over the flagship for early warning; down it and the carrier is blind beyond its small radar bubble — sneak a strike in. Carrier flee is now fog-gated

Carrier00ddc4e57e

Carrier00 AI Phase 1 (carrier survival): flagship no longer sails into CONTESTED waters to claim (nearestNeutral skips islands with foreign forces) + FLEES proactively when a 4+ plane foreign strike wing closes in (was only retreating once already damaged). Fixes free empire kills

Carrier0001436df0

Carrier00 standings: power is now territory+military (cities+buildings+hull) for AI AND players alike — was folding the AI's huge credit hoard into its score, so a cash-rich bot read ~2000 power vs a player's ~50; cash stays surfaced as wealth

Carrier00b084a36

ScrambleCrew: L re-launches landed starting-crew jets (were stuck 'gone' → never relaunched, leaving 3 jets + pilots parked)

Carrier00ae944190

L now re-launches landed starting-crew jets — they were stuck 'gone' after one sortie so L skipped them, leaving 3 jets + their pilots parked on deck forever

Carrier0031390ab

K (crew) menu: cap panel at 90vh flex-column; roster scrolls, header/hire buttons pinned (no more off-screen overflow)

Carrier006db75c21

K (crew) menu no longer overflows the screen — panel capped at 90vh as a flex column; the pilot roster scrolls while the title, engineer line and Hire buttons stay pinned

Landing3d1c4d69

Remove the FFXIV Plugins project card

Jun 26, 2026
Carrier00f5589dc

Tutorial quest system: 19 teaching missions under Standings, 2 at a time, 2M reward each, completion hooked to real actions + persisted

Carrier0016fcc79e

Tutorial QUEST system — 19 teaching missions under the Standings panel, 2 shown at a time, 2M cr reward each; completion wired to real actions (buy tbomber, recruit/launch pilots, lock+engage city, land, patrols, found city, build airport/residence/fishing, command center, raze city, ally, trade, orbit, pilot destroyer/battleship/sub, nuke, sink an empire); progress persists

Carrier0094da30f

Fix duplicate pilot figures: rail figures sync to plane state (hidden when flying / beside landed plane / being piloted), not the desync-prone boarding state machine

Carrier0082d61e9d

Fix duplicate pilot figures — a landed pilot showed BOTH at the port rail AND beside their plane; rail figures now sync to each plane's real state (hidden when flying/landed-beside-plane/being-piloted) instead of the desync-prone boarding state machine

Carrier009a34a5a

Flags on M-map city labels; only the whole city is targetable (no building lock); name+flag above every owned city out to 6km

Carrier00081bf976

Flags on M-map city names; ONLY the whole city is targetable (removed individual-building lock); name+flag label above EVERY owned city, visible out to 6km (well past 500m)

Carrier00ac8ed06

Country flags: low-poly flag renderer (~100 countries) shown next to city names, enemy carrier labels + globe city sheet

Carrier001fbc8cb9

~100-country AI faction pool with RANDOM reroll on death + low-poly country flags shown next to enemy city names, enemy carrier labels, and the globe city sheet (data-driven flag renderer)

Carrier00f9c3556

Fix sunk peer/bot carrier looping its sink animation (don't respawn a rig for an already-sunk peer)

Carrier00eb92340a

Fix sunk peer/bot carrier looping its sink animation — a dead carrier broadcasts k:1 forever, so after we removed the rig the next broadcast respawned a fresh surface carrier that re-sank; now skip re-creating a rig for an already-sunk peer

Carrier009660b1c

Build bar: enforce one airport per city (block a 2nd on a city that already has one)

Carrier00aa3b401c

Carrier00 build bar: enforce ONE airport per city (a city that already has an airport greys out + blocks a 2nd)

Carrier00d1d6dd4

Build bar: measure city range from the player (not the carrier) + block builds on greyed-out (disabled) tiles

Carrier007c9183bd

Carrier00 build bar: (1) range now measured from YOU (piloted unit/avatar) not the carrier — no false SAIL CLOSER when you're at a city without your ship; (2) clicking a greyed-out tile no longer builds (buildBarBuy honours the same ready+afford gate)

Carrier0007b9d9e4

Carrier00 bots: fix ghost city-claiming — AI no longer claims islands from afar; flagship must SAIL into claim range before founding (visible claim sortie, player parity). Adds bot.claimTgt + sortie logic in moveAndRaid

Carrier00e707b80

Bombers fly a racetrack attack run (run-in/overfly/extend-out/wide-turn) instead of orbiting the target

Carrier00cf755233

Bombers/torpedo bombers now fly a racetrack attack run (run in, drop, overfly, extend out, wide turn, run back in) instead of orbiting the target — fixes them circling a city/ship without ever dropping

Carrier002f60a4f

Fix wingmen ignoring LAND/RTB: fast jets orbited outside the touchdown ring; add approach slow-down + near-deck timeout, shared landWingman() touchdown

Carrier00ac919fef

Fix wingmen ignoring LAND/RTB — fast jets orbited outside the 95m touchdown ring forever; add slow-down on approach + a near-deck timeout so they all reliably set down (shared landWingman touchdown)

Carrier001471e0d

LAND order: wingmen B-line to the carrier and land on contact, all at once (no conga-line queue)

Carrier00c0ee381f

LAND order = all wingmen B-line straight to the carrier and land on contact, all at once (removed the slow astern conga-line queue)

Carrier00b6bb44c

Wingmen: out-of-ordnance bombers RTB to rearm + auto-relaunch to resume the attack

Carrier004978db42

Torpedo bombers now auto-RTB to rearm when out of torpedoes and resume the attack (was circling empty); fixes wingmen never relaunching after refuel/rearm

Jun 25, 2026
Carrier004fbf47ed

M-map city click now shows a detail sheet (population, income, materials produced, fishing fleet, garrison aircraft, air defence, buildings)

Carrier00657439b

Faction colors: real-nation palette (USA/UK/France/Japan/China/Russia + spawn-in nations)

Carrier0019070473

AI factions now use real nation names (USA/UK/France/Japan/China/Russia + pool) with distinct flag-flavored faction colors

Virtual Office63d4c3e6

Pull flower beds back so they don't overlap the cross sidewalk + add grass clearance from the path

Virtual Office7af7f5d6

Add flower beds lining both sides of the entrance path

Virtual Officebaa8ab51

Move reception desk back-left (out of mid-room) + mount RECEPTION sign on the counter front face instead of floating

Virtual Officedebe1863

Fix ceiling z-fighting - lower interior ceiling below the exterior roof slab + drop light fixtures so they don't poke through

Virtual Office9efec764

Move Configure button to top-left so it no longer overlaps the chat panel close (X) button

Virtual Office6c5dca75

Proper door proportions (~1.0w x 2.1h single doors), single conference door, and double GLASS front entrance doors that swing open together

CommsLink Chatb6ffbe6a

Virtual Office: fix chat close button - Configure gear (z40) was covering the X; raise chat panel to z100 so X is visible + clickable

CommsLink Chat1df39532

Virtual Office: make the chat close (X) button clearly visible - bordered 36px button instead of a faint character

Virtual Office5dd932a3

Wire up talking - POST /api/v1/office/ask (Grok persona from staff knowledge, auth+rate-limited); walk up + press E opens a right-docked chat panel that talks to that AI

Virtual Officeb3c6f56f

Config UI at /office/config - building sign + staff manager with paste-friendly per-AI knowledge boxes, color swatches, JSON import/export, localStorage persistence; /office now loads saved config + Configure button

Virtual Officef57ff5e7

Quality pass - ACES tone mapping + IBL reflections + sun shadows, realistic monitor/keyboard/mouse, 5-star office chair, door casings, baseboards, tiled floor, better trees/curb/streetlights, hair on figures

Virtual Office65727331

Reorganize offices - desk faces door, office chair behind it, AI seated facing the door

Virtual Office5ede18f8

Glass windows on exterior walls - each office, conference room, and front facade (see-through with sill/header + mullions)

Virtual Office765ac67a

Go outside - sunny day sky+sun, grass/road/sidewalk to entrance, openable front door, spawn outside facing building, configurable building sign (default 'Office')

Virtual Office85cfa8bd

E-key to open doors + 'Press E to open door' prompt when aimed at a door

Virtual Office43d1481f

Wooden swinging doors, brighter lighting, reception kiosk, conference room, fixed nameplates, /office no-store

Landing050bee31

Add Virtual Office (Phase 1): walkable 3D office shell + landing card

Jun 24, 2026
Carrier0082ac2eba

AI navy: announce ship commissioning in the world feed + log carrier00 world events to console for monitoring

Platformca9a1d29

AI navy P1+P2: bots build a real warship fleet (destroyer/battleship/sub) from dock-cities at player-parity cost+cooldown, broadcast on the sh peer channel so all clients render+scout them (world-domination groundwork)

Platform3d334300

AI: ghost-empire cleanup on boot — release orphaned bot:Name cities (no live faction) back to neutral so dead empires stop clogging the map

Platforme2302422

Standings: POWER shows ALL factions (humans were buried under top-6 AI) + new ONLINE tab listing online captains (AI excluded)

Platformaf6f0e53

Crew XP: credit bombs/torpedoes too (bomb owner was unset) + razing enemy buildings, carriers, warships — fixes pilots stuck at 0

Carrier00c4a759b9

Carrier00 AI: strict 5-plane HANGAR cap per airport-city (CITY_HANGAR=5) — total aircraft anchored to a city (garrison + staged strike package) can't exceed 5, matching the player's hangar. Garrison scramble + strike launch both check hangar room; a strike picks the nearest airport-city WITH space. Completes full player/AI parity. tsc clean, 74 tests pass

Carrier00cd0ed3cc

Carrier00 AI: SCALING-cost parity — the AI paid FLAT for foundations/housing while the player's double each time. Now matches: foundation = 40k·2^(cities owned), housing = 30k·2^(housing in that city). Endless AI sprawl + housing-carpeting is now exponentially expensive like the player's. (Airport gate for city planes was already enforced.) tsc clean, 74 tests pass

Carrier009ec67483

Carrier00 AI: full cost+cooldown PARITY with the player build UI. Building costs aligned (dock 60k->40k, Command Center 90k->2M); plane costs aligned to the player's real prices (fighter 8k->26k, tbomber 20k->120k, heli 12k->30k, bomber 25k->40k, AWACS 80k->8M, SR-71 120k->10M); added a 180s per-building cooldown (BUILD_COOLDOWN) so the AI builds at the player's tempo instead of stacking one every ~2.5s. Now the AI's economy/attrition bites at the same rate the player's does. tsc clean, 74 tests pass

Carrier00772f58d8

Carrier00 AI fairness: fishing-boat restock now SYMMETRIC. AI cities were refilling their fishing fleet +1 every 5s (bundled in the 5s world loop) vs the PLAYER's free +1/city every 5min (FISH_PRODUCE=300s) — 60x faster, so raiding an AI fleet was pointless. Moved tickBoats to its own 300s interval to match the player exactly. Principle: timers/economy that gate the player gate the AI too. tsc clean, 74 tests pass

Carrier00178c6531

Carrier00 AI fix: city garrison had NO launch cooldown — it re-scrambled fighters every 18Hz frame as they died in combat, which both spat out jets with no delay AND drained the faction's credits at 8k/pop (Reaper bankrupting itself). Added GARRISON_REPLENISH (7s): one garrison scramble/replacement per cooldown across a faction's cities, with a per-spawn break. Now jet output + credit burn are sane. tsc clean, 74 tests pass

Carrier0004cedab7

Carrier00 AI: RANDOMIZED bot home placement — removed the fixed 'index 0 = strategic rival in archipelago A1 next to the player' rule. AI factions now spawn at random, distinct, far-apart archipelagos (seeded shuffle), NEVER on the player's home cluster (A1 excluded); reroll + spawn-ins also pick a random clear archipelago. Plus: empire-collapse log — when a faction's carrier is sunk and its cities release, broadcasts '💥 <name>'s empire has collapsed — N cities released to neutral'. tsc clean, 74 tests pass

Carrier0055b59dc8

Carrier00 AI: plane attrition economy — CAP fighters, city-garrison scrambles, and city-to-city strike packages now COST credits (fighter 8k / tbomber 20k / etc). Losses must be paid to replace, so sustained air war drains a faction's war chest; a broke faction can't keep its screen up or mount strikes and weakens. Defense spends freely (survival); offense keeps the personality reserve intact. Gives the hoarded millions a real sink + sets up big-ticket plays. tsc clean, 74 tests pass

Carrier006e248ea1

Carrier00 AI step 2: CITY-TO-CITY STRIKES (the default bot attack). When a developed bot wants a rival/human city in reach, it launches a bomber package (2 torpedo bombers + 1 escort fighter) from its nearest airport-city — server-flown, broadcast in s.pl so nearby players SEE the strike crossing between cities. Bombers raze the target's buildings (server-authoritative bldHit); the target city's garrison scrambles to defend (existing CAP); last building down → island frees up to claim. One sortie at a time, RTB to rearm, no carrier involved. Equal for human + AI targets. tsc clean, 73 tests pass (incl. new strike test)

Carrier00fd530a1d

Carrier00 AI rebuild step 1: removed the city cap (factions now expand until no claimable land remains, paced by cooldown+economy) and ripped out the invisible 'raid' mechanic (hitBoat/bldHit dispatch + countryside fishing-raid). Reframed the carrier doctrine: not 'never attacks' but 'never SUICIDES' — usable for strikes/defense (built in later steps). Bots treat humans and AI as EQUAL powers — no human carve-out; target-selection already includes human cities. Tests updated (73 pass, tsc clean)

Carrier0019ac178e

Kill the phantom bubble — it's the lightning glow sphere (boltGlow, radius 70, purple, fog:false). It was only hidden via opacity→0, so any residual lingered, and because it ignores fog it stood out as a translucent bubble at the last strike point (strikes land near you = near your city). Now boltGlow.visible is explicitly toggled: true only during an active flash, hard false otherwise

Carrier00e07bab25

Build context + map labels now keyed to the PLAYER, not the carrier. New playerWorldPos() = the unit you're piloting / your on-foot avatar / else the carrier; nearestClaimed + nearEmptyIsland use it, so you build a foundation based on where YOU are near land. Flagship renamed 'Carrier 00' (was 'YOU'/'YOUR CARRIER') on labels+hover; globe 'You' marker now rides your true position (jet/ship/avatar) instead of being pinned to the carrier

Carrier00803028f6

Fix crew XP not accruing in the MMO — XP was only awarded on the LOCAL takeDamage path, but ALL multiplayer combat (enemy bot/peer planes + carriers) goes through the peer-hit path (onGun/network), which never granted XP. Now every gun hit on a peer target awards XP to the firing pilot (+2/hit, since the server resolves the actual kill so we can't credit a clean-kill bonus client-side). Pilots level up from real battles again

Carrier00cef1c292

Removed the extra rail-sailor line; instead the EXISTING idle deck crew (3 roster pilots + hired pilots) now have their default standing spots MOVED to a line down the PORT (left) deck edge, facing out over the water — clearing the runway/centerline they used to clump on. Still white navy tops

Carrier00d23f44a7

Navy crew — ALL crew now wear WHITE tops + dark navy trousers (makeFigure no longer takes a random per-pilot colour; uniform fleet-wide). Plus 'man the rails': a line of sailors stands along the PORT (left) deck edge facing out over the water

Carrier005dbf8622

SR-71 airframe near-black (0x0e1014) -> dark gunmetal grey (0x454c55), nacelles lifted to match -> readable on the carrier deck instead of vanishing into the dark. Both the flyable model and the parked-on-deck silhouette

Carrier006dba5d93

Carrier00 LAND rework — proper carrier recovery: planes approach from ASTERN down the runway centerline (using runwayStart geometry) and stack in a tight descending conga line directly behind the carrier, so the whole fleet peels off and commits THE INSTANT you press Land (responsive). Front of the queue is on final, descends straight up the runway to the stern touchdown zone, eases off throttle on short final, sets down; queue advances immediately. No DB steering — pure client per-frame AI

Carrier0044e42949

Make fleet LAND actually recover the planes — the touchdown gate was a 3D 60m sphere to the carrier CENTER, but planes fly ~16m above it so they had to thread a ~58m window at speed and just orbited. Now: HORIZONTAL gate (<80m), ease off throttle on short final so it settles over the deck instead of screaming past, a 9s safety timer that forces a stuck jet down, and a tighter holding stack so the next plane lands quickly. Still one-at-a-time

Carrier00e220ed49

Fleet LAND now recovers ONE AT A TIME — only the cleared wingman shoots the approach to the deck; the rest hold in a layered orbit (radius+altitude staggered by queue position) until it's down, then the next is cleared. Fixes only 1-2 landing while the rest endlessly circled (they were all converging on the same point at speed, crowding the deck and overshooting)

Carrier00d88a7d8a

Carrier00 scouting step 2 — composition: each AI bot now has a persistent carrier air DOCTRINE chosen from its personality (AA-heavy fighters / torpedo bombers / dual-role helis / can-afford E-3 / SR-71 scout). Server adds a TYPE to every NPC plane + broadcasts the full loadout (s.cm); client renders the PARKED complement on the deck by type (reusing the real deck slots + per-type models) so you can fly over an AI carrier and read its makeup. Bots, types, broadcast all green (tsc + 75 tests)

Carrier00dd27a6a1

ALL carriers (peers, AI bots, offline players) now render the real player carrier model instead of a box — bake the Carrier model once, clone per rig (shared geometry; per-rig materials for a subtle relation tint + damage darkening). Distance-gated (6.5km) so only nearby full models draw. Step 1 of carrier-scouting: you can now ID a carrier's hull on sight

Carrier009a8687bd

Lock the CITY NAME (floats above the tallest building of nearby enemy cities) + ATTACK(T) = WIPE OUT THE CITY — strike units (torpedo bombers, bombers, helis) re-target building after building until it's rubble; fighters keep defending, ships/AWACS sit it out. Fixes tbombers ignoring a building order: surface strike runs now rake the true rooftop (guns connect) instead of aiming 22m above; building hits route through Net.sendBldHit (server-authoritative, MP-correct). Individual-building lock still works for pinpoint strikes

Carrier003a4fa05f

Fix M-map selection + labels vanishing when zoomed in — the box-select & label back-face cull dotted the UN-normalized camera→marker vector vs a world-unit threshold (6), so it scaled with zoom and rejected every marker once close. Replaced with a zoom-independent horizon test (n·camDir vs R/camDist); also hardened the single-click pick with the same cull

Carrier008b9fc50b

Fix M-map unit selection when zoomed in — markers are constant-on-screen (shrink in world space with zoom) so the mesh raycast missed; switched to a screen-space ~28px nearest-marker pick (zoom-independent)

Carrier009c0c3625

Shot-down AI jets no longer vanish — server flips them to a controlless tumbling fall (still broadcast) so everyone watches them spiral burning into the sea, then removes at impact (splash). Garrison landings despawn quietly (no false crash)

Carrier003e5aa184

(1) stable plane id in the CAP broadcast so hits (your guns + patrol-boat flak) land on the right peer plane — was a pool-index mismatch from nearest-neighbour render; (2) deployed jets engage the CLOSEST enemy (no more target-division split / chasing far units)

Jun 23, 2026
Carrier003601e961

(1) AI jets climb/descend GRADUALLY now (eased vertical speed + pitch, was a max-rate escalator snap); (2) fix 'hundreds of jets crashing along the horizon' — crash anim now only fires when a plane truly leaves the broadcast (count drop), not on a transient nearest-neighbour mismatch

Carrier0081e54816

Your patrol boats auto-attack any enemy jet in range — was blocked by an isPlayer flak gate + a 150m low-jet ceiling; now flak any jet within 600m at any altitude (only while AI-screening, not while you steer)

Carrier003ddfe1c3

Shot-down peer/bot planes now CRASH into the sea (tumbling burning wreck + smoke + splash) instead of vanishing — client-side off the broadcast vanish, so it's MP-correct for your NPCs, enemy NPCs, and other players' NPCs

Carrier00403f877f

Your own AI wingmen now emit the tail engine trail + wingtip contrails too (gating was isPlayer→aiControlled; they were silently excluded)

Carrier00052a62a4

Peer/bot planes now emit the same vapor as the player jet — soft engine-exhaust trail off the tail + wingtip contrails in hard banks (nav lights already strobing)

Carrier00473a2f1f

Flip AI jet bank sign (was rolling out of the turn → now banks INTO it)

Carrier002dc9ca3f

Bot/peer planes now BANK into turns (server capQuat gains roll, eased like the player jet); per-plane firing flag broadcast -> visible tracers for ALL combatants at ANY range (watch others fight AI)

Carrier00e651383c

AI jets now use the PLAYER fighter's turn cap (CAP_TURN 1.8->0.46) so they fly identically (no more glued-to-tail); add visible incoming tracers from enemy planes firing at you (ghost rounds, damage stays server-side)

Carrier0091b28a19

Carrier00 fix: peer/bot planes teleporting/stacking/lock-hopping — client mapped meshes by array index but the server reorders its plane array (spawn/land/death); switched to nearest-neighbour identity matching + spawn new meshes at position (no origin-slide)

Carrier000c4f8f98

Carrier00 fix: enemy/bot peer planes rendered TAIL-FIRST — model nose was -Z but the server flies them +Z-forward (capQuat), so they flew backward and looked fast/wrong. Flip the peer-plane visual 180deg to face travel

Carrier0059fe3a8f

Carrier00 fix: airport always 'hangar full' — bo.cap was overloaded (roof-cap mesh vs capacity) and got nulled to clear the mesh, zeroing capacity; moved hangar capacity to bo.planeCap

Carrier002898a8d0

Full world reset (geo_reset_v3 -> v4) — wipe all cities/garrisons to clear stale bot CAP jets + start the AI fresh

Carrier0073ae81b7

Carrier00 HUD: strip moon/weather/city-count + /tick from top econ bar; move Population + Fishing into the resources HUD as icon-only chips (rowboat icon, hover tooltips)

← NewerPage 8 of 24Older →

Generated 2026-07-17 from git across all CommsLink repos · page 8/24, showing 701800 of 2,361 ships · complete record: /changelog.txt · /changelog.json.