← 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,472 ships and counting.

Reading this as an AI or a script? The complete record fits in a single request: /changelog.txt (all 2,472 ships, plain text) or /changelog.json (structured). This page shows 100 at a time.
All · 2,472CommsLink Chat · 699Carrier00 · 593Platform · 568Atlas · 328CommsLink Markets · 125Landing · 41CommsLink Local AI · 40AI-vertizing · 23CommsLink Bench · 15Virtual Office · 14Terminal Agent · 14ai-npc · 6Forum · 3CommsLink Sounds · 2Asset Forge · 1
Jun 28, 2026
Carrier00e26908ee

Carrier00 city defense 2/3: airports now have a default AA flak gun (aa:true) - enemy cities throw orange flak with a 560-unit umbrella + 2 dmg at attacking planes, making cities costlier to attack

Carrier00210b6bc7

Carrier00 city defense 1/3: a threatened city now scrambles its FULL fighter screen fast (doctrine jet allotment, up to 5; defensive nations all-jets, aggressive reserve bomber slots) instead of a token 2 - clusters of cities field a real wall of fighters

Carrier004a9119c3

Carrier00 Trade Ports 1b: trade ports stockpile their city's resource each turn (capital port -> capital store, others -> per-city buffer); top HUD now reads your capital's stockpile; cargo ships load port stock + deliver to the capital; city panel shows port stock + capital marker

Carrier000e020227

Polar cities were buried under the pack ice - ice floes now keep a clearing around every island (lap up to the shore, never cover the land) so south-pole cities are visible + reachable

Jun 27, 2026
Carrier000d6297ed

AI carriers fly a FULL air wing - doctrine loadouts bumped (6-12 fighters) + flagship CAP now follows the doctrine (up to 8 aloft, 12 at battle stations) instead of a flat 3; raised the faction plane ceiling to 26

Carrier0085e407c8

NPC nations name their FIRST city after the real-life capital + later cities after real cities of that country; one Command Center per nation on the capital (so it's the sole starred capital)

Carrier00c3f69110

Carrier00 Trade ports 1a: replace city Air Heli with Trade Port building (needs a Command Center/capital), register port server-side, + gold capital star on the M-map

Carrier00bf9faf74

K menu now shows the AIR WING - every carrier plane with its pilot + status, deck-slot count (used/free), and a Command Center warning so the E-3/SR-71 lock is obvious

Carrier000a5b54dd

Greyed-out build tiles now show WHY (e.g. 'Missing Command Center' for E-3/SR-71) instead of just dimming - mirrors the buy gate exactly

Carrier00ce7bae8e

Long-endurance E-3/SR-71 fuel (1500/1000s vs 300) so the slow far-orbiting E-3 stops running dry mid-return and crashing; refuel still 2min

Carrier001814befa

Harden plane save/restore - persist bought E-3/SR-71 by an explicit bought flag + callsign (not array position) so a lost starting fighter can never drop them; also save carrier-deck purchases instantly

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)

← NewerPage 9 of 25Older →

Generated 2026-08-26 from git across all CommsLink repos · page 9/25, showing 801900 of 2,472 ships · complete record: /changelog.txt · /changelog.json.