What's new in Dune City

Every desktop release, newest first. The game offers each new release on the main menu; saves, settings and your own mods carry over.

Recent releases have written notes. For older releases without notes, the list shows the developers' change summaries. "All code changes" opens the full comparison on GitHub.

Dune City 1.0.850

  • Faster big games: large maps with many houses run about twice as fast. An 8-house 384×384 game went from about 19 to 42 fps on a MacBook Air in Low Power Mode. When the computer can't keep up, single-player games now slow down slightly instead of stuttering.
  • The AI attacks in free-for-alls: QuantBot armies no longer sit in their bases when several houses play. A house now judges whether it is outnumbered against its strongest single enemy, gathers outside its own city, and a leading house goes after the weakest one. Games end with a winner far more often.
  • Difficulty levels: Brutal > Hard > Medium > Easy now holds in long games. Medium attacks with its whole army, and Brutal builds a bigger economy using its higher harvester and army limits. No difficulty cheats on resources.
  • Unit mixes: each house starts with a tuned unit mix (Atreides, Harkonnen, Ordos, Fremen) and a mix designed for each tech level, e.g. tank-heavy at tech 4. No unit type starts above 50% or below 2%, and the AI still adapts during the game.
  • Campaign: the AI partner wins most late missions, and DuneCity missions that never finished now end. City tax credits count towards a spice quota.
  • Fixed: missions in the DuneCity mod were won as soon as the city reached 500 people.
  • Fixed: the Attack button or A key on a spice bloom now shoots the bloom from range instead of driving onto it.
  • Removed: sharing maps to the online catalogue and browsing it. Hosting a game with your own mod still works.
  • Saves from 1.0.842 still load. Multiplayer needs every player on 1.0.850.

Dune City 1.0.842

  • Unit orders: attack-move (A), patrol (Q), Hold position, Shift-queued waypoints and repeat production.
  • Formations: select two or more ground units and choose Box, Pincer, Column, Staggered or Echelon in the unit panel (Ctrl+F on/off, Ctrl+Shift+F cycles). The units form up where they stand, then move, attack-move and patrol as one group at one speed. Siege tanks lead, harvesters stay out, an MCV takes the centre, and nothing stands in a sonic tank's line of fire.
  • Plan building sites: queue buildings and place them in advance; they are built on the plan when ready, spread over all Construction Yards. This is a game rule (Game Rules: "Plan building sites when ordering").
  • Random Skirmish: generated maps with natural terrain, clustered bases, zoned cities and nuclear power. Choose your start, an AI partner, 0-6 allies and 1-7 enemies, rock up to 100%, any installed mod and the game rules. Random army and city sizes are the same for every house.
  • Multiplayer random maps: hosts choose "Random map..." in the map chooser, set the size, terrain and what every house starts with, then players join and set houses and teams in the normal lobby.
  • Sidebar: the build list is a two-column grid, so a full Construction Yard fits without scrolling.
  • QuantBot: escorts a moving MCV in a ring. Its attack waves keep the usual behaviour: no formation won more in 1,980 test games.
  • Saves from 1.0.833 still load. Multiplayer needs every player on 1.0.842.

Dune City 1.0.833

A robustness release. Every test build now runs with memory and undefined-behaviour checking, and the problems it found are fixed.

  • Long games no longer make QuantBot's choice between Devastators, Sonic Tanks and Deviators unreliable. With a lot of combat history the score that ranks them overflowed and could rank them wrongly; it now stays a proper average of what each unit has achieved.
  • Game graphics, animations and mentat texts are read safely regardless of how their data is laid out in the original files.
  • AdLib music is generated the same way on Apple Silicon as on Intel, where negative waveform positions used to be clamped instead of wrapping.
  • Tutorial hints no longer misfire for items whose numbers are above 31.
  • A malformed house number in a multiplayer lobby packet is now rejected cleanly.

Existing saves remain loadable. Multiplayer protocol is 70: all peers must update together. Saves, settings and user maps remain in the separate user folder.

Dune City 1.0.832

QuantBot armies now fight when their bases are attacked, instead of marching back and forth across the map. On Hard and Brutal, an attack on any building used to send the whole army after whichever enemy fired last, with orders that stopped units shooting on the way; with several colonies under attack at once, launchers and tanks kept turning around and hardly fired.

  • The troops nearest the attacked building now answer it, enough of them to outweigh the attackers, and only from within a bounded distance that grows with the size of the attack.
  • They travel in Hunt mode and attack any enemy they meet on the way, rather than ignoring it until they arrive. They are not sent elsewhere while they are on their way, fighting, or while enemies remain at that building.
  • Units already carrying out another forced order, such as a launcher stepping back to firing range, are left to finish it.

On a reported 3waysplit save, Sardaukar launchers went from 7 shots to 296 over the same two minutes of play.

Existing saves remain loadable. Multiplayer protocol is 69: all peers must update together. Saves, settings and user maps remain in the separate user folder.

Dune City 1.0.831

QuantBot now spreads its bases across the map. Once its home rock is built out or already holds two construction yards, a new MCV drives to free rock elsewhere and founds a colony there, instead of stacking more yards on the same formation.

  • Colonists travel with an escort. Each MCV heading for new rock waits on its home rock until its three nearest free vehicles have gathered, then drives out with them. Escorts guard the MCV on the way and turn on anything that damages it. A colonist under fire keeps driving instead of stopping in place.
  • An MCV boxed in by buildings with only diagonal exits can now find a way out and deploy. Previously it could stand idle for the rest of the match and block further MCV purchases.
  • Colonising no longer waits for three rocket turrets over every outlying yard. Each new colony still orders its own turret cover once its yard stands.
  • Colonists lost on the way are remembered: two recent losses pause new colonists until they age out, so the AI does not feed MCVs into a contested corridor.
  • QuantBot's internal organisation was restructured with no change to its decisions; seeded AI matches produce identical decision logs before and after.
  • Fixes a crash when starting a spectated game on a map that places a unit where it cannot stand, such as two sandworms on one tile. The unit is now skipped and the match starts.

Validation covered Sihaya-Ferryman Brutal-versus-Brutal matches on three seeds over 50 game minutes, with both houses founding one to three colonies and no MCV left idle at the end.

Existing saves remain loadable. Multiplayer protocol is 68: all peers must update together. Saves, settings and user maps remain in the separate user folder.

Dune City 1.0.829

Ornithopters now hunt enemy combat units on Hard and Brutal, prioritising nearby launchers when their wing can engage. Easy and Medium defend their own bases and harvesters and raid enemy bases only when the approach and target are clear of observed anti-air. Autonomous ornithopters never hunt harvesters.

  • Aircraft target planning shares bounded caches rather than scanning the world for every aircraft. Launchers regroup with attacking armies and recover from stalled wave orders. QuantBot reserves a mobile anti-air share when hostile aircraft are present and can build Troopers and their required infantry technology.
  • Killing a high-performing enemy unit type earns a larger combat-value bonus. The bonus follows the victim type's measured performance, with bounded rewards and a fallback while evidence is scarce.
  • The new Stats menu shows active units, kills, deaths and damage dealt, plus units produced, spice harvested, tax collected and population. QuantBot performance appears as xN.N, alongside each type's target army-value percentage. Observers can browse every house's Stats and Budget, with the house name visible.
  • 1920 × 1080 and other supported HD render choices now appear on Retina displays. The chosen render resolution remains saved while the window fits the desktop without changing its aspect ratio. Native interface sizing remains available.
  • Direct multiplayer avoids flooding a waiting peer with identical command windows, preserving immediate new-order delivery and periodic retries.
  • Includes airport ambient aircraft and three additional community maps: Reacciona rapido forro, Alto mapa HD and La guerra dei ricchi.

Validation covered 14 bounded AI games across Vanilla, Dune2R, Dune City, campaign and all four difficulties, with three matched 1.0.820 baseline runs. One city-layout case was excluded from city-simulation coverage because it used Vanilla. No crashes or ornithopter harvester targets were recorded. Hard city combat shifts strongly toward aircraft; tested launcher and rocket-turret counters, army-wave progress and city economies remained viable. These runs establish the tested scenarios, not universal player balance.

Existing saves remain loadable. Multiplayer protocol is 67: all peers must update together. Saves, settings and user maps remain in the separate user folder.

Dune City 1.0.820

Watch AI matches with the new offline Spectate option in Custom Game. Spectators see the full map and can inspect every faction's buildings and units. All participating houses can be QuantBots; Shared house is optional. Inspection does not grant control of another faction.

  • City QuantBots open an income-producing residential, industrial and commercial economy on maps without harvestable spice, instead of exhausting their credits on a useless refinery opening.
  • Required Stadiums and Airports take priority over optional expansion and protection once their real population requirements are reached. The AI resolves missing prerequisites and can begin a needed Stadium, Airport or planned Nuclear Plant with the foundation and construction-start budget, paying the remainder as income arrives.
  • Fixes the eight-house Colonists spectator startup crash and user-map filtering. Workshop metadata files no longer appear as duplicate maps; declared Neutral factions count as playable slots.
  • Bundles all eleven authored single-player scenarios, including BigCityLife, both New Beginning sizes, Colonists, Colonist and the developed 192x192 3waysplit world. Choose Dune City 1.002 in Custom Game. The converted 3waysplit scenario starts with its saved layout, buildings, armies, factions, alliances and whole credits; population, production queues and live orders restart.

Existing saves remain loadable. Multiplayer protocol is 60: all peers must update together. Saves, settings and user maps remain in the separate user folder. This release also includes the automatic Dune2R artwork downloads from 1.0.815.

Dune City 1.0.816

Dune2R now downloads and updates its remastered artwork automatically when you select it in Custom Game or continue a setup with it already selected. The first download contains six packs, approximately 384 MB, including Harkonnen Infantry Remastered.

  • A progress panel verifies cached artwork and downloads missing or changed files from GitHub. Retry resumes after a connection failure; Cancel returns to setup. Complete verified artwork works offline.
  • Harkonnen Soldiers gain directional movement, combat, collapse and aftermath animation. Other houses and Troopers retain their existing artwork.
  • Adds 30 approved special-building artwork bindings to the DuneCity Dune2 skin. Choose DuneCity, Rebels and Skin Dune2 to see the new city buildings.
  • Dune2R enlarges terrain, buildings and units together while menus and the sidebar keep their size. The Classic toggle remains available during a match.
  • Built-in Dune2R artwork is available in Asset Editors for inspection and preview. Shared mod versions retain their pinned content.

Includes the production 1.0.812 fixes. Existing saves remain compatible and network protocol remains 57. Saves, settings and user mods stay in the separate user folder. No metaserver update is required.

Downloaded optional Dune2R artwork now preserves the canonical mod's online approval, including joining running games. Required rules, metadata and the bundled asset catalog remain checked.

Also includes 1.0.815

Dune2R now downloads and updates its remastered artwork automatically when you select it in Custom Game or continue a setup with it already selected. The first download contains six packs, approximately 384 MB, including Harkonnen Infantry Remastered.

  • A progress panel verifies cached artwork and downloads missing or changed files from GitHub. Retry resumes after a connection failure; Cancel returns to setup. Complete verified artwork works offline.
  • Harkonnen Soldiers gain directional movement, combat, collapse and aftermath animation. Other houses and Troopers retain their existing artwork.
  • Adds 30 approved special-building artwork bindings to the DuneCity Dune2 skin. Choose DuneCity, Rebels and Skin Dune2 to see the new city buildings.
  • Dune2R enlarges terrain, buildings and units together while menus and the sidebar keep their size. The Classic toggle remains available during a match.
  • Built-in Dune2R artwork is available in Asset Editors for inspection and preview. Shared mod versions retain their pinned content.

Includes the production 1.0.812 fixes. Existing saves remain compatible and network protocol remains 57. Saves, settings and user mods stay in the separate user folder. No metaserver update is required.

Downloaded optional Dune2R artwork now preserves the canonical mod's online approval, including joining running games. Required rules, metadata and the bundled asset catalog remain checked.

Dune City 1.0.812

The game-speed controls now reach 3 ms and 2 ms per simulation cycle, twice the previous 4 ms maximum. The default stays at 16 ms and the slow end at 32 ms; existing saved speed choices are kept. A controlled 60 Hz measurement reached about 333 and 500 cycles per second at the new settings, but slow rendering, heavy simulation or high latency can hold a match below its configured rate. This is not a frame-rate improvement for large CPU-bound armies.

  • Ground-unit combat rotation now wraps the direction correctly after a movement turn. An invalid direction previously overwrote tile memory, causing late-join crashes and observer divergence on busy maps. Tile track writes also reject invalid directions.
  • Observer checkpoint recovery replaces an open game menu with working join-progress controls and closes it before the match is rebuilt.
  • Custom Hard and Brutal QuantBot sends every available ground combat unit to Hunt in one pass, and a real attack on any owned building — including a remote R/C/I colony — scrambles the ground army to the invasion. Hunting launchers keep their close-range escape and resume firing; reserves assemble at a protected rally outside the colony footprint. Human orders, repair, workers and aircraft keep their existing authority.
  • Bases grow overlapping rocket batteries towards the observed enemy approach. In DuneCity Custom Hard/Brutal games, a battery with no free site can reclaim an owned residential, commercial or industrial lot on the enemy-facing side. Free ground always wins, and local lot minimums, hospitals, churches, roads, factory exits and corridors are preserved.
  • Crowded armies waste less pathfinding work and keep valid cached routes. A ground unit stalled on one tile for 30 seconds with an outstanding movement order can request an owned free carryall.
  • Carryall pickup no longer loses its passenger, and bookings are released on both sides. Units orphaned by that fault in older saves return to the map, so hidden units can no longer keep a match from ending.
  • Police Stations no longer claim "Unit limit reached" below the game's own unit limit. They use the house's existing Trike and Trooper admission rules, and Brutal's separate military-value gate now reads "Army target reached".
  • Custom Game offers a per-house spice income multiplier of 1x to 5x for players and bots, explained above the roster: it multiplies credits from harvester deliveries, with 1x the original rate. The "Original" house-colour selector and its bonus-palette checkbox were removed; saved colour choices remain intact.

Existing saves remain loadable, and saves written before these changes default to a 1x spice rate. Save format is 9852. Multiplayer protocol is 57, which excludes peers on older builds: all players must update together before playing online. Saves, settings and user mods remain in the separate user folder.

Also includes 1.0.811

The game-speed controls now reach 3 ms and 2 ms per simulation cycle, twice the previous 4 ms maximum. The default stays at 16 ms and the slow end at 32 ms; existing saved speed choices are kept. A controlled 60 Hz measurement reached about 333 and 500 cycles per second at the new settings, but slow rendering, heavy simulation or high latency can hold a match below its configured rate. This is not a frame-rate improvement for large CPU-bound armies.

  • Ground-unit combat rotation now wraps the direction correctly after a movement turn. An invalid direction previously overwrote tile memory, causing late-join crashes and observer divergence on busy maps. Tile track writes also reject invalid directions.
  • Observer checkpoint recovery replaces an open game menu with working join-progress controls and closes it before the match is rebuilt.
  • Custom Hard and Brutal QuantBot sends every available ground combat unit to Hunt in one pass, and a real attack on any owned building — including a remote R/C/I colony — scrambles the ground army to the invasion. Hunting launchers keep their close-range escape and resume firing; reserves assemble at a protected rally outside the colony footprint. Human orders, repair, workers and aircraft keep their existing authority.
  • Bases grow overlapping rocket batteries towards the observed enemy approach. In DuneCity Custom Hard/Brutal games, a battery with no free site can reclaim an owned residential, commercial or industrial lot on the enemy-facing side. Free ground always wins, and local lot minimums, hospitals, churches, roads, factory exits and corridors are preserved.
  • Crowded armies waste less pathfinding work and keep valid cached routes. A ground unit stalled on one tile for 30 seconds with an outstanding movement order can request an owned free carryall.
  • Carryall pickup no longer loses its passenger, and bookings are released on both sides. Units orphaned by that fault in older saves return to the map, so hidden units can no longer keep a match from ending.
  • Police Stations no longer claim "Unit limit reached" below the game's own unit limit. They use the house's existing Trike and Trooper admission rules, and Brutal's separate military-value gate now reads "Army target reached".
  • Custom Game offers a per-house spice income multiplier of 1x to 5x for players and bots, explained above the roster: it multiplies credits from harvester deliveries, with 1x the original rate. The "Original" house-colour selector and its bonus-palette checkbox were removed; saved colour choices remain intact.

Existing saves remain loadable, and saves written before these changes default to a 1x spice rate. Save format is 9852. Multiplayer protocol is 57, which excludes peers on older builds: all players must update together before playing online. Saves, settings and user mods remain in the separate user folder.

Also includes 1.0.810

The game-speed controls now reach 3 ms and 2 ms per simulation cycle, twice the previous 4 ms maximum. The default stays at 16 ms and the slow end at 32 ms; existing saved speed choices are kept. A controlled 60 Hz measurement reached about 333 and 500 cycles per second at the new settings, but slow rendering, heavy simulation or high latency can hold a match below its configured rate. This is not a frame-rate improvement for large CPU-bound armies.

  • Observer checkpoint recovery replaces an open game menu with working join-progress controls and closes it before the match is rebuilt.
  • Custom Hard and Brutal QuantBot sends every available ground combat unit to Hunt in one pass, and a real attack on any owned building — including a remote R/C/I colony — scrambles the ground army to the invasion. Hunting launchers keep their close-range escape and resume firing; reserves assemble at a protected rally outside the colony footprint. Human orders, repair, workers and aircraft keep their existing authority.
  • Bases grow overlapping rocket batteries towards the observed enemy approach. In DuneCity Custom Hard/Brutal games, a battery with no free site can reclaim an owned residential, commercial or industrial lot on the enemy-facing side. Free ground always wins, and local lot minimums, hospitals, churches, roads, factory exits and corridors are preserved.
  • Crowded armies waste less pathfinding work and keep valid cached routes. A ground unit stalled on one tile for 30 seconds with an outstanding movement order can request an owned free carryall.
  • Carryall pickup no longer loses its passenger, and bookings are released on both sides. Units orphaned by that fault in older saves return to the map, so hidden units can no longer keep a match from ending.
  • Police Stations no longer claim "Unit limit reached" below the game's own unit limit. They use the house's existing Trike and Trooper admission rules, and Brutal's separate military-value gate now reads "Army target reached".
  • Custom Game offers a per-house spice income multiplier of 1x to 5x for players and bots, explained above the roster: it multiplies credits from harvester deliveries, with 1x the original rate. The "Original" house-colour selector and its bonus-palette checkbox were removed; saved colour choices remain intact.

Existing saves remain loadable, and saves written before these changes default to a 1x spice rate. Save format is 9852. Multiplayer protocol is 56, which excludes peers on older builds: all players must update together before playing online. Saves, settings and user mods remain in the separate user folder.

Also includes 1.0.809

The game-speed controls now reach 3 ms and 2 ms per simulation cycle, twice the previous 4 ms maximum. The default stays at 16 ms and the slow end at 32 ms; existing saved speed choices are kept. A controlled 60 Hz measurement reached about 333 and 500 cycles per second at the new settings, but slow rendering, heavy simulation or high latency can hold a match below its configured rate. This is not a frame-rate improvement for large CPU-bound armies.

  • Custom Hard and Brutal QuantBot sends every available ground combat unit to Hunt in one pass, and a real attack on any owned building — including a remote R/C/I colony — scrambles the ground army to the invasion. Hunting launchers keep their close-range escape and resume firing; reserves assemble at a protected rally outside the colony footprint. Human orders, repair, workers and aircraft keep their existing authority.
  • Bases grow overlapping rocket batteries towards the observed enemy approach. In DuneCity Custom Hard/Brutal games, a battery with no free site can reclaim an owned residential, commercial or industrial lot on the enemy-facing side. Free ground always wins, and local lot minimums, hospitals, churches, roads, factory exits and corridors are preserved.
  • Crowded armies waste less pathfinding work and keep valid cached routes. A ground unit stalled on one tile for 30 seconds with an outstanding movement order can request an owned free carryall.
  • Carryall pickup no longer loses its passenger, and bookings are released on both sides. Units orphaned by that fault in older saves return to the map, so hidden units can no longer keep a match from ending.
  • Police Stations no longer claim "Unit limit reached" below the game's own unit limit. They use the house's existing Trike and Trooper admission rules, and Brutal's separate military-value gate now reads "Army target reached".
  • Custom Game offers a per-house spice income multiplier of 1x to 5x for players and bots, explained above the roster: it multiplies credits from harvester deliveries, with 1x the original rate. The "Original" house-colour selector and its bonus-palette checkbox were removed; saved colour choices remain intact.

Existing saves remain loadable, and saves written before these changes default to a 1x spice rate. Save format is 9852. Multiplayer protocol is 56, which excludes peers on older builds: all players must update together before playing online. Saves, settings and user mods remain in the separate user folder.

Dune City 1.0.796

Five DuneCity maps now ship with the full release: 4 corners v1, DuneCity (192x192), test (256x256), city seige and Alkozeltser 4 Cities v1. They are available on clean desktop and browser installations through the DuneCity map selection.

  • Pathfinding runs deterministic search slices across worker threads on supported desktop builds, with bounded work per simulation tick. Custom single-player QuantBot planning is spread across simulation ticks, and repeated spatial scans use shared fields to reduce stutter.
  • Fully repaired units leave Repair Yards correctly, including units whose remaining damage is less than one HP. Carryall collection and ground release can finish instead of waiting indefinitely while repair costs continue.
  • With Override max units enabled, Brutal QuantBot can build past its configured military-value target. A positive override retains the engine's unit-count limits; zero permits unlimited units. Starport deliveries wait when a positive limit is full and resume when capacity opens.
  • Includes refreshed residential and industrial city artwork for all houses.

Existing saves remain loadable. Multiplayer protocol is 44; all players must update together. Saves, settings and user mods remain in the separate user folder.

Dune City 1.0.792

Ground combat now uses consistent splash damage: ordinary gun, shell and rocket hits weaken every quarter tile and stop at one tile. The default combines classic light-unit damage with DuneCity's lower heavy-weapon damage.

  • Enable Original Dune II damage in game options to use classic ordinary damage against ground units. For example, direct Tank hits rise from 12 to 25 HP and Launcher rockets from 37 to 75 HP.
  • Hover over the option for an explanation of damage and splash. The setting is preserved in configuration, saved games and multiplayer match rules.
  • Building damage, aircraft hits and special weapons retain their existing rules.

Existing saves remain loadable, with the new option off for older settings. Multiplayer players must all update because the synchronized combat rules and network protocol have changed. Saves, settings and user mods remain in the user folder.

Dune City 1.0.790

Deviators can now convert Ornithopters and Carryalls, with an 80% conversion chance for eligible units across houses and game modes.

  • QuantBot values Deviators by the damage their controlled units deal and absorb, including the normal 20% unit-kill bonus. Repeated conversions alone no longer inflate their score.
  • QuantBot promptly arms captured enemy Devastators. Completed detonations earn their remaining-health value and one kill bonus, with blast damage counted separately.
  • Deviated units no longer request repairs, book repair yards or enter them through Carryall delivery.
  • Map revision labels appear beside names in the custom-game chooser.

Existing saves remain loadable. Loading an older save starts fresh AI unit-learning counters; historical match totals remain. Multiplayer players must all update to this version because synchronized rules and the network protocol have changed. Saves, settings and user mods remain in the user folder.

Dune City 1.0.787

This release fixes multiplayer joins for players who have not previously downloaded the host's map and mod.

  • Fresh guests can receive the map and then resolve its pinned mod without getting stuck while receiving game setup. Map integrity and dependency checks remain enforced.
  • Includes the DuneCity graphics integration: 34 building and zone skin packages, authored zone portraits, and skin selection in campaign and co-op setup.
  • Refreshes changed bundled graphics reliably, including artwork updates that retain the same version and file size.

Internet hosts continue to collect and publish map revisions when setting up their lobby. Guests retain received maps locally. LAN games do not publish maps.

This fix does not change the multiplayer protocol or save format. Saves, settings and user mods remain in the user folder.

Dune City 1.0.783

This release improves QuantBot expansion and base defence, and aligns building degradation with Dune Dynasty across game modes. Power shortages now cause building damage across modes, making power management more important in existing games too.

  • Adds Concrete is required: enabled by default in Vanilla and disabled by default in DuneCity. When disabled, missing foundations cause neither placement damage nor ongoing degradation. Roads also provide foundations.
  • Damaged windtraps produce less power, and damaged city buildings reduce land value. Palaces retain their land-value bonus but no longer replace the stadium requirement.
  • QuantBot prepares concrete with upgraded construction yards, repairs productive buildings, and maintains a power reserve once its Vanilla economy and production are established. A partial foundation no longer causes a completed building to be cancelled.
  • City AIs deploy MCVs on their current rock and colonise safe free rock when space runs out. They can import colonists through Starports and relax road-layout preferences to fit essential factories.
  • Opening combat units clear construction space. Launchers move towards buildings under air attack, including remote colonies; ornithopter targeting and damaged-aircraft combat are corrected.
  • Production growth is better balanced against defensive rocket-turret spending.

Multiplayer protocol is now 37: all players must update together. New saves use format 9848; older saves remain loadable, but saves made by this version cannot be opened by older builds. Saves, settings and user mods remain in the user folder.

Dune City 1.0.774

QuantBot now builds a missing Starport when it reaches House IX or Palace in its construction priorities, even on maps with no Starport imports. Once the port is completed, the AI continues to the intended building.

  • Keeps the earlier import and opening priorities unchanged.
  • Respects map/mod prerequisites, tech and upgrade restrictions, affordability and placement; queued Starports prevent duplicate orders from multiple construction yards.
  • Applies across Easy, Medium, Hard and Brutal. Real-game regression probes cover Vanilla and DuneCity.
  • Includes all twelve new Dune City scenarios and repaired SimCity from 1.0.773.

Multiplayer protocol is now 28. All players in a match must use this version. Save format is unchanged.

Dune City 1.0.773

Twelve new Dune City single-player scenarios are bundled with the desktop installers and available through Metaserver Maps. The repaired SimCity map is included too. Select DuneCity in Custom Game to play the city scenarios.

  • New missions: Sihaya Basin, Ash Quarter, Hagal Flats, Arrakeen Blackout, Harg Pass Convoy, Cielago Watch, Tuono Crossing, Shield Wall Rift, Carthag Vise, Coriolis Gap, Habbanya Crescent and Habbanya Narrows.
  • Rocket turrets now match Dune Dynasty's measured firing cadence after accounting for engine timing: 2.72 seconds between missiles and 2.048 seconds for the close-range cannon. Healthy launchers fire pairs 0.288 seconds apart, repeating every 12.288 seconds; launchers at half health or below fire singles every 12 seconds. Interrupted pairs cannot leave a late extra rocket queued. Applies across Vanilla, DuneCity, Dune2R and Tornie.
  • AI builds its production core and needed storage more reliably, balances expansion with air defence, sends aircraft to rescue attacked structures and harvesters, and avoids unreachable Hunt targets. Dune2R stops buying workers for exhausted spice fields.
  • Game setup remembers offline/online choices and the selected mod through map selection. Duplicate local/server maps are consolidated, and the repair sidebar layout is improved.

Multiplayer protocol is now 27; all players in a match need compatible updated clients. Save format remains 9846. Desktop updates preserve saves, settings and user mods.

Also includes 1.0.771

  • New offline custom matches contribute their original scenario and selected mod to the metaserver map catalogue in the background.
  • Collection checks for existing map content with the same mod, preserves local map files, and retries when the metaserver is unavailable.
  • Includes the map-copy, repair-yard sidebar, and mature AI silo-priority fixes from 1.0.770.

Also includes 1.0.770

The All Maps chooser avoids listing equivalent copies of a map more than once while retaining distinct maps that share a name.

The repair-yard sidebar keeps the unit being repaired and its health progress inside the panel alongside readable city statistics.

Established AI bases prioritize extra spice storage when earned holdings reach 80% of capacity, after core infrastructure. Queued storage prevents duplicate orders, and no extra storage is requested beyond the 999999 credit ceiling.

Multiplayer protocol is now 25; update all players together. Save format 9846 is unchanged.

Dune City 1.0.769

When the main menu finds a newer signed desktop update, it automatically shows the existing Install update / Later confirmation. The prompt appears once per launch and waits for other menu dialogs to close. Choosing Later keeps it dismissed for that launch; the Update available button can reopen it at any time from the main menu.

Installation still requires explicit confirmation, and matches are never interrupted by an update prompt. Saves, settings and user mods are preserved by the existing updater.

Multiplayer protocol 24 and save format 9846 are unchanged.

Dune City 1.0.768

AI economies grow their refinery and harvester capacity earlier while continuing city development. Core production buildings take priority over large turret networks. Police target dangerous crime, rocket turrets protect valuable buildings and expansions, and ornithopters respond to attacks on bases and harvesters. Policing budgets are limited to 33% early and 50% with healthy finances; funding increases are smoothed. New expansions aim for three rocket turrets before the next expansion proceeds. Emergency Starport MCV recovery works on every difficulty.

The metaserver now provides maps and mods directly in the game and editors, replacing Workshop navigation. Map selection supports mod, size and player filters. Maps carry version metadata, are classified as Vanilla, Tornie or DuneCity from their content, and can be converted in the editor. Save As creates a separate map identity. The online catalogue includes the seeded local collection.

Earned credits share refinery and silo storage capacity, and total holdings cannot exceed 999999. Unspent starting credits retain their allowance; construction refunds preserve the starting-credit portion actually paid. Match statistics show tax collected with the original yellow styling.

Multiplayer protocol 24: all participants must update together. Save format 9846 records refund funding sources; older saves remain loadable, with legacy queued-order refunds conservatively limited by storage capacity.

Validated with 31 native regression targets, 221 signaling-service integration tests, and bounded Medium/Hard AI matches. Balance checks reduced construction-yard losses and funding churn on the tested map; they do not guarantee that expansions survive every attack.

Dune City 1.0.760

Carryalls, ornithopters and ground units now follow Dune Dynasty movement and turning rates across DuneCity, Vanilla and Dune2R, including carryall approach/docking and ground tile transitions. Built-in unit INI templates are updated alongside the engine changes.

Rockets now use Dynasty flight, steering, arming and explosion behavior. Launcher anti-air fire retains its distinct targeting behavior, and turret rockets can physically intercept aircraft so ornithopters remain vulnerable without remote-hit or full-splash bonuses.

City AI now prioritizes crime protection over optional growth. Human-shared AI helpers respect their difficulty population ceiling while human construction and natural population growth remain unrestricted.

Multiplayer protocol 18: all participants should update together. This release retains save format 9845.

Validated with 16 passing native regression targets, real-engine projectile combat and save-continuation scenarios, a city-AI spending simulation, and packaged macOS runtime checks.

Dune City 1.0.753

Campaigns start directly with installer-matched mods eligible for hot join. Custom mods use the pregame lobby, and online games no longer require an empty player slot: players can spectate or take over an AI.

  • Compressed snapshots reduce joining transfers while preserving deterministic state.
  • Hosts can change shared game settings during play; all players have a pause control, and leaving the host menu releases its automatic pause.
  • QuantBot balance includes campaign technology restrictions, revised economy and attack behavior, palace limits, and custom-game city limits by map size and difficulty. Brutal cities remain uncapped.
  • Added construction-yard limits, a confirmed Skip mission action, and improved results/mod selection screens.
  • Fixed reported Starport/sandworm crashes and related multiplayer controls.
  • Dune City mod is independently versioned1.002; the app is1.0.753. Nuclear power still unlocks at campaign level6.

All multiplayer participants need this release's compatible network protocol. Older saves remain supported. Updates preserve the separate saves, settings and user-mod profile.

macOS, Windows installer and supported AppImage installations can use the in-game updater. DEB/RPM and portable installations use their normal manual update procedure.

Also includes 1.0.738

  • Workshop brings together Map Editor, Mod Editor, Asset Editors, and Community Maps & Mods.
  • Edit mod unit/building properties, game rules, AI settings, and metadata in the game.
  • Save immutable numbered map/mod revisions with complete asset checksums.
  • Browse, share, and download content independently of an online game.
  • Multiplayer captures exact content versions; games, saves, and replays retain their original dependencies.
  • Replays, How to Play, and About & Credits remain under Extras.
  • Includes released 1.0.737 browser matchmaking, campaign defaults and complete graphics skin packaging.
  • Corrects fresh-profile map downloads and optional Dune2R gravel/Sand catalog coverage.

The community API requires the matching PHP service deployment. This source change includes that service; no public deployment or release is implied by the local build. Multiplayer protocol10 requires matching game versions.

Dune City 1.0.737

  • Campaigns start in public online mode by default, allowing spectators and later join requests. The host can start alone; choose Private for invitation-only play or Offline in the campaign controls. A note explains these choices.
  • Adds browser matchmaking: open Play Online and choose Find Match to pair with another waiting player, enter a shared lobby and start a game. Cancel and retry are supported.
  • Fixes browser peer cleanup, rejected connections and rematch state. Leaving a game now returns promptly to the menu.
  • Corrects direct peer-to-peer command pacing while preserving the existing room relay behavior.
  • Includes all of 1.0.735: selectable SimCity/Dune2 graphics, high-detail building art, saved and synchronized skin choices, campaign dropdown fixes, and current hot-join recovery and progress.
  • Fixes installing the bundled Dune2 graphics skins into fresh profiles and includes the complete skin artwork in the browser build.
  • Retains the screenshot guard for physical render-target dimensions, including high-DPI displays.
  • Improves Windows dependency caching for subsequent builds.

All multiplayer participants need version 1.0.737. Existing saves, settings and user mods stay in the separate user profile. Browser matchmaking uses the public dunelegacy.com signaling service; direct connectivity still depends on the players' networks, with no default TURN relay.

Also includes 1.0.736

  • Adds browser matchmaking: open Play Online and choose Find Match to pair with another waiting player, enter a shared lobby and start a game. Cancel and retry are supported.
  • Fixes browser peer cleanup, rejected connections and rematch state. Leaving a game now returns promptly to the menu.
  • Corrects direct peer-to-peer command pacing while preserving the existing room relay behavior.
  • Includes all of 1.0.735: selectable SimCity/Dune2 graphics, high-detail building art, saved and synchronized skin choices, campaign dropdown fixes, and current hot-join recovery and progress.
  • Retains the screenshot guard for physical render-target dimensions, including high-DPI displays.
  • Improves Windows dependency caching for subsequent builds.

All multiplayer participants need version 1.0.736. Existing saves, settings and user mods stay in the separate user profile. Browser matchmaking uses the public dunelegacy.com signaling service; direct connectivity still depends on the players' networks, with no default TURN relay.

Dune City 1.0.735

  • Choose SimCity or Dune2 graphics for Dune City campaigns and individual houses in custom and multiplayer games.
  • Adds high-detail Dune2 zone and special-building art with matching construction and building portraits. Transparent sprites replace the original art cleanly while keeping the existing 2x2 zone footprint.
  • Preserves graphics choices in saved games and synchronizes them through multiplayer lobbies, including loaded games.
  • Includes the latest hot-join fixes, download and catch-up progress, and prominent joining-player names from 1.0.734.
  • Campaign options stay visible: mod, mission and AI lists open upward when there is not enough room below.
  • Longer option lists fit within the menu and show a scrollbar, with mouse-wheel scrolling to reach every entry.
  • Keeps complete option rows and the selected entry visible when a list needs to resize.

All multiplayer participants need version 1.0.735. Existing saves, settings and user mods remain in your separate user profile. Missing Dune2 artwork falls back to the original SimCity graphics.

Dune City 1.0.734

  • More reliable hot joins: restores converted units, harvester path state and sandworm behavior correctly when loading a running match.
  • Shows download and catch-up progress, retries interrupted spectator synchronization, and returns to a usable lobby if joining cannot complete.
  • Makes joining players clear in the game: named approval notices, prominent names during synchronization, and a confirmation when they join to play.
  • Multiplayer Discord announcements identify the host, players present at the start, and players joining an ongoing match.

All participants need the same game version. Update before starting a multiplayer match. Saves, settings and user mods remain in your separate user profile.

Dune City 1.0.732

  • Package real README and required Windows runtime libraries
  • Preflight Windows installer and preserve NSIS diagnostics
  • Locate WinSparkle SDK inside its versioned archive directory
  • Accept statically linked SDL in Mac package runtime checks
  • Bundle SDL3 for Mac compatibility runtime and verify packaged startup
  • Fix Mac package inspection and record notarized 731 artifacts
  • Add signed desktop updates for macOS Windows and AppImage
  • Document play approval UI and successful live promotion
  • Show persistent play approval notices and prefer shared control
  • Keep spectator targeting in sync with moving units
  • Pipeline spectator snapshots within a bounded send window
  • Preserve populated city state when spectators join

and 2 more changes.

Dune City 1.0.729

Also includes 1.0.728

This combined release brings online hot joining, a clearer lobby, smoother city play, and interface fixes to Windows, macOS, Linux and the browser.

  • Hot joining: “Allow hot join” is on by default for new online custom games. Running games appear alongside waiting games, with map, mod and elapsed minutes. Players request entry; the host chooses an eligible slot, replacing an AI or sharing control where the game mode supports it. The game pauses briefly to synchronize everyone before resuming.
  • Version checks: joining players must use the same version as the host. A clear popup shows both version numbers when they differ.
  • Online lobby: Play Online sits below Continue, public games and All mods are the defaults, chat appears beside the game list, and waiting-player names/counts are visible. Your name comes from Settings.
  • Performance: faster path searches without reducing node budgets, less repeated AI placement work, and fewer city budget scans. Development diagnostics are controlled in Settings and default off in browsers.
  • Interface: darker building information panels with clearer text, live zone previews including development/hospitals/churches, clearer mod and Campaign labels, and improved sidebar actions and cursors.
  • Game fixes: campaign AI partner selection is preserved; city placement rejects spice and blooms; threatened harvesters seek safer fields and nuclear plant placement avoids enemy fire.
  • Metaserver history: accepted public chat and public game creation, joins and starting rosters are recorded by the service independently of client diagnostics.

Online compatibility: every participant must run 1.0.728 with matching game/mod files. Hot joining is available through Play Online; LAN/direct-IP play is unchanged. Existing saves retain their format. Large games remain subject to the existing 4 MiB network-save limit.

Android is versioned separately and is not changed by this desktop/browser release.

Choose Spectate when joining a running game to watch without taking a player slot. Rejected requests to play become spectators. Spectators can see the map, chat and leave without ending the players’ match. All participants need 1.0.728 (network protocol 7); the limit is eight connections including spectators.

Also includes 1.0.708

DuneCity can now use selectable SimCity or Dune2 graphics skins without changing simulation rules or the 2x2 city-zone footprint. Campaign selection applies to all houses; skirmish and multiplayer retain a separate serialized choice for each house slot.

The Dune2 skin includes the currently authored per-house zone and special- building Compacts, matching construction and properties-panel portraits, residential growth stages, transparent cell replacement, and an alpha-aware Scale2x/Scale3x path isolated from the classic indexed-palette scaler.

Android additionally packages the complete current skin payload and preserves existing saves and configuration during upgrade.

Dune City 1.0.707

Commercial demand now responds to the market before the first commercial zone gains population. This fixes the early-game demand indicator staying at zero until a shop opens, including Harkonnen starts.

The zero-commercial-population calculation now follows Micropolis: use projected commercial population directly. Small markets can show negative demand; growing markets can create positive demand before shops exist. The same correction applies to every house.

Dune City 1.0.706

  • Restore funded QuantBot city production alongside growth
  • Dedicate QuantBot construction capacity to city growth
  • Keep city growth funded and accelerate cash-rich QuantBot openings
  • Restore QuantBot city growth and size support from queues and cash runway
  • Prioritize first Starport carryall and exercise complete map rosters
  • Add Metropolis multiplayer city scenario from stalemate save
  • Balance QuantBot spending across economy, army and production capacity
  • Restore heavy production before expanding light factories

Dune City 1.0.699

  • Nearby troops defend an attacked base before regrouping. Defender assignments remain active while the attacker is present.
  • Launchers keep hunting after short evasive moves and regroup around the fighting army rather than returning home.
  • Human-allied campaign AI can attack when its army is ready, with a 60-second break between attacks. Enemy campaign opening triggers remain in effect.
  • Custom-game AI grows its economy and army together. Allies and opponents use the same map/spice worker limits; the larger allied fleet allowance and aggressive worker-first spending are campaign-only.
  • Campaign allies prioritise early harvesting and bulk Starport imports. Brutal allies can field up to 20 harvesters on late campaign maps; Brutal campaign enemies can field up to seven.
  • Revised campaign difficulty attack values and military limits, improved Dune City Starport/repair/nuclear build priorities, and radar requiring adequate power.
  • Added ten rocket turrets to each starting city on the bundled single-player SimCity map, protecting construction yards and other key infrastructure.

Dune City 1.0.692

Campaign attack pacing and repair improvements:

  • Easy enemy waves now repeat every 1–3 game minutes when enough troops are ready. Late-mission waves can spend up to 1,700 credits, while retaining a home reserve.
  • Easy and Medium start their next-wave timer when an attack launches. Surviving attackers keep fighting without delaying the next wave.
  • Medium AI now prioritizes one missing repair yard and its prerequisites, and sends damaged vehicles for repair.
  • Easy AI keeps damaged troops available for combat when it has no repair yard. Explicit retreat orders remain respected.

For an AI partner that attacks and defends for you, choose QuantBot. AI Support manages economy and construction only.

Validated with all seven native test groups, campaign wave/defence/repair fixtures, and completed native level-4 and level-9 campaigns. AI-versus-AI results do not establish human difficulty balance.

Dune City 1.0.690

Campaign AI and co-op economy fixes, plus restored action cursor sizing on desktop and in the browser.

  • Campaign attacks begin from the map's reinforcement signal. Easy and Medium use independent opening delays, send one small automatic wave at a time, and take a two-to-four-minute break after it ends. Hard and Brutal can attack immediately after the signal when their army is ready.
  • Dune City campaigns use the city construction planner so enemies can build residential, commercial and industrial zones.
  • Co-op helpers no longer reserve their opening cash for an expansion MCV when they have no factory capable of building it.
  • QuantBot leaves saboteurs out of army orders, allowing Palace-spawned saboteurs to continue hunting instead of being reassigned to guard or retreat.
  • Render action cursors at their original size across desktop and web.

Validation: all seven native CTest groups pass. Engine regression scenarios cover wave spacing, city/co-op opening construction and saboteur order preservation through a successful attack. Existing saved saboteur orders are preserved; the fix prevents new AI overrides rather than rewriting saves.

Dune City 1.0.682

Campaign enemies respond to attacks, reinforce threatened bases and harvesters, and launch waves suited to their difficulty. Easy and Medium stagger smaller attacks; Hard commits most of its army and Brutal can launch all-in attacks.

  • Give idle defenders Area Guard orders and scout with dispatched armies when enemy targets are out of sight.
  • Build and replace repair facilities on higher difficulties.
  • Let Hard and Brutal campaign helpers develop their full harvester economy, buying needed harvesters and a first carryall without waiting for discounts.
  • Count paid imports and refinery-supplied workers correctly, preventing extra purchases beyond the worker cap without discarding paid deliveries.
  • Include the restored Custom Game map browser, with its full list, categories, previews and preserved player choices when returning from setup.
  • Preserve the current menu navigation, bundled browser mods, campaign scoring and exclusive building selection fixes.

Validation: 71 native campaign scenarios finished naturally (46 wins, 25 losses), with no crashes, timeouts or worker-cap overshoots. Every match included enemy attacks; all 21 late-game Hard/Brutal helper cases reached 15 harvesters. Native unit/menu tests, behavioral fixtures, browser build and packaging checks pass. The browser campaign launches and selection works before and after feedback.

These simulations assess AI behavior rather than human win rates. New WAN/NAT and multiplayer save/resume checks are not included in this release pass.

Dune City 1.0.681

Custom Game opens the original map browser again, for both offline play and online hosting. Browse a scrolling map list with category tabs, a preview and map details, then choose Players to configure the game.

  • Restore All Maps, SP Maps, SP User Maps, MP Maps and MP User Maps.
  • Keep map, mod, game rules, shared-house and offline/online choices in the map browser before proceeding to player setup.
  • Return with Back or Browse Maps while retaining the selected map and roster.
  • Keep the Dune2R and Tornie browser packaging fix from 1.0.679.

Validation: native menu checks cover 640×480, 854×480 and 1280×720, both offline and online map browsers, map selection and roster preservation. All seven native test groups pass. Browser build and bundled-mod integrity pass. Interactive browser checks confirm map categories, preview updates, Online setup, and selection/roster preservation through Browse Maps and Escape.

Previously disclosed limits remain: different-network two-device multiplayer and multiplayer save/resume were not verified in this release pass.

Also includes 1.0.680

Campaign enemies respond to attacks, reinforce threatened bases and harvesters, and launch waves suited to their difficulty. Easy and Medium stagger smaller attacks; Hard commits most of its army and Brutal can launch all-in attacks.

  • Give idle defenders Area Guard orders and scout with dispatched armies when enemy targets are out of sight.
  • Build and replace repair facilities on higher difficulties.
  • Let Hard and Brutal campaign helpers develop their full harvester economy, buying needed harvesters and a first carryall without waiting for discounts.
  • Count paid imports and refinery-supplied workers correctly, preventing extra purchases beyond the worker cap without discarding paid deliveries.
  • Preserve the current menu navigation, bundled browser mods, campaign scoring and exclusive building selection fixes.

Validation: 71 native campaign scenarios finished naturally (46 wins, 25 losses), with no crashes, timeouts or worker-cap overshoots. Every match included enemy attacks; all 21 late-game Hard/Brutal helper cases reached 15 harvesters. Native unit/menu tests, behavioral fixtures, browser build and packaging checks pass. The browser campaign launches and selection works before and after feedback.

These simulations assess AI behavior rather than human win rates. New WAN/NAT and multiplayer save/resume checks are not included in this release pass.

Dune City 1.0.679

Campaign, Custom Game and Join Online now have clear entry points. Choose offline or online within campaign/custom setup, with fewer screens between choosing a mode and starting a game.

  • Restore Dune2R and Tornie in the browser Mods menu and game setup. Include their managed files in the browser download and preserve Dune2R across reloads.
  • Restore the classic custom-player layout for offline setup and online lobbies, with centered player rows, map preview and compact controls for small windows.
  • Keep map, mod, game rules and player choices together; retain player choices when switching between offline and online.
  • Separate campaign/custom filters and invite-code joining from public chat.
  • Combine graphics and interface settings. Find Mods and Map Editor in Extras.
  • Fix Home keyboard navigation, save the entered hosting name, and explain when an online custom game needs an open player slot.
  • Improve campaign AI pressure by difficulty, campaign score attribution with AI partners, Starport funding and exclusive building selection.

Validation: native and browser builds pass. Native tests and production menu checks pass at 640×480, 854×480 and 1280×720. Local browser/native campaign and custom multiplayer were exercised during this work, including a human-hosted campaign on the preceding 1.0.673 candidate. The 1.0.679 candidate passes all seven native test groups and the new browser mod packaging tests; the actual browser archive is checked for missing files and Tornie integrity before publication. Browser upgrade checks confirm both mods appear in Mods, Custom Game and Campaign, activate and survive reloads. An offline Tornie custom game reaches gameplay.

Remaining verification: two-device play across different networks and multiplayer save/resume have not been verified in this release pass.

Also includes 1.0.674

Campaign, Custom Game and Join Online now have clear entry points. Choose offline or online within campaign/custom setup, with fewer screens between choosing a mode and starting a game.

  • Restore the classic custom-player layout for offline setup and online lobbies, with centered player rows, map preview and compact controls for small windows.
  • Keep map, mod, game rules and player choices together; retain player choices when switching between offline and online.
  • Separate campaign/custom filters and invite-code joining from public chat.
  • Combine graphics and interface settings. Find Mods and Map Editor in Extras.
  • Fix Home keyboard navigation, save the entered hosting name, and explain when an online custom game needs an open player slot.
  • Improve campaign AI pressure by difficulty, campaign score attribution with AI partners, Starport funding and exclusive building selection.

Validation: native and browser builds pass. Native tests and production menu checks pass at 640×480, 854×480 and 1280×720. Local browser/native campaign and custom multiplayer were exercised during this work, including a human-hosted campaign on the preceding 1.0.673 candidate. The final 1.0.674 layout changes received build and menu checks.

Remaining verification: two-device play across different networks and multiplayer save/resume have not been verified in this release pass.

Dune City 1.0.665

  • Fix map selection and add anonymous feedback and full AI partners
  • Add campaign level and mod setup, feedback and mission skip

Dune City 1.0.663

  • Handle process exit while reading supervisor test procfs state
  • Update project ownership attribution
  • Preserve lobby focus during refresh and gate releases on P2P checks
  • Document direct-play release gates and verified security fixes
  • Wire direct host countdown and publish matching signaling source
  • Confirm the P2P roster before start and recover bounded session lifecycle failures
  • Add direct P2PKit crossplay and bounded PHP signaling
  • Handle browser ICE completion and verify the game bridge boundary
  • Load and version the direct transport in browser packages
  • Bound direct RTC ingress before JSON parsing
  • Tighten SDP certificate syntax and extend offline RTC smoke test
  • Vendor and harden P2PKit direct RTC transport with bounded framing

and 5 more changes.

Dune City 1.0.661

Browser and desktop players can now meet through Play Online, browse public games, host private games with invitations, and use the shared lobby chat after confirming a player name. Public games join directly from the list without a code.

This release also hardens network parsing and lobby permissions, adds browser/native classification to compatible match logging, improves browser display and resolution settings, and paces relay traffic to prevent polling backlog disconnects.

The HTTPS polling path uses a bounded startup command allowance to reduce lockstep stutter. In public browser/browser and browser/desktop tests, rendering remained around 60 FPS and simulation improved from roughly 37–42 to 56–57 updates per second on the test connection. Polling still adds command delay and can pause during latency spikes; these measurements are not a guarantee for every connection or game speed. Desktop ENet and WebSocket sizing keep their previous behavior.

Use the same game version and bundled mod/content on both clients. Browser multiplayer is available from the Play Online page once its separate deployment completes.

Also includes 1.0.659

Play online across the browser and desktop through the public lobby. Choose a player name, join a public game without a code, or host a private game with an invitation. Public-lobby chat is available after confirming your name.

  • Adds HTTPS crossplay on the existing game server, with encrypted browser and desktop connections and recoverable join errors.
  • Makes the public Join Game button easier to find, allows changing a confirmed name, and explains duplicate-name refusals.
  • Restricts lobby edits to the appropriate player, validates network commands and bounds relay traffic and queues.
  • Fixes browser widescreen and resolution changes, adds more resolutions and uses a larger desktop default.
  • Records browser/native participation in backward-compatible server analytics.

Existing desktop LAN and direct Internet multiplayer remain available. Crossplay players should use this version on both browser and desktop. Relay recovery restores the service after a crash; it does not resume a match interrupted by a server restart.

Dune City 1.0.653

Play campaign co-op with your friends online! Two commanders can share one house, including its buildings, units and credits, in campaigns and single-mission skirmishes.

  • Host from the campaign or skirmish screen with Host Co-op, or choose Multiplayer → Host Campaign Co-op. Pick the house, starting mission and Internet or LAN hosting. A friend can join through the multiplayer server list; alternatively, choose a QuantBot partner.
  • Continue together between campaign missions. Save and resume a shared campaign, or host an existing single-player campaign save. QuantBot co-commanders use normal economic and military planning while respecting mission technology limits.
  • Improve early city investment, especially on Brutal: grow spice income faster, respond to harvester unloading queues with more refinery capacity, and build demanded civic services. Police coverage and traffic simulation have been corrected; airports deploy ornithopter patrols.
  • Expand onto new rock when construction space runs short. MCV expansion ranks distance from the main base first, with enemy clearance and available room used to choose among suitable nearby sites.
  • Improve ornithopter targeting and defence: prefer targets outside rocket-turret and launcher coverage, protect the base and safe harvester engagements, and expand air production when needed. Improve air-defence coverage of exposed buildings.
  • Restore original scenario house identities in single-mission games, prioritize QuantBot entries in AI selection, default campaign opponents to QuantBot Easy, and widen player selection boxes to show full names.

See the multiplayer co-op hosting guide for hosting, joining and save/reload instructions.

All multiplayer participants must use the same desktop release and matching mods/configuration. This release uses network protocol 5 and save format 9837; older saves remain readable, while older executables cannot read newly written saves. Browser and Android releases are unchanged.

Validation includes the local test suite, dependency audits, two-instance Internet-server discovery and joining, matching simulation logs, and human testing of two campaign missions plus save/reload. Gameplay connections across separate routers have not been verified in this test. Public packages are gated on Linux tests and successful Windows, macOS and Linux builds.

Dune City 1.0.642

Changes since 1.0.630:

  • Rebalance Dune City income around the Micropolis tax formula, with a 2x multiplier for private residential, commercial and industrial zones. Government infrastructure is tax-exempt; the Palace remains an exception with residential and commercial income. Windtraps no longer supply industrial jobs. Light Factories and Silos supply low-density industry; Refineries, Heavy Factories, High Tech Factories and Repair Yards supply medium-density industry; House IX supplies high-density commerce. Starports retain their seaport role.
  • Choose R/C/I construction from positive, normalized demand and existing or queued provision, so commercial preference and residential infill no longer starve industry. Zones use normal configured construction timing. QuantBot compares tax investment with marginal refinery capacity, maintains a continuing tax-income hedge and expands refinery capacity when the harvester fleet needs it.
  • Prioritize QuantBot's first High Tech Factory and carryall before additional Heavy Factories when prerequisites and placement allow. Balance factory harvester orders against military production; refinery count no longer imposes a three-harvester production cap. Remaining spice, map limits and affordability still constrain the workforce.
  • Plan city power for zone growth and recovery after blackouts, and save for nuclear capacity earlier. Nuclear plants now have 750 HP; their cost, power output and explosion are unchanged. Existing saves retain their saved object statistics.
  • Reduce AI police funding during a cash shortage after major city losses, then restore it as the economy recovers. Budget commands now correctly affect the issuing player's house.
  • Enemy roads can be built over like concrete, but do not extend another house's construction range. Remove road upkeep and separate road maintenance ownership. Redirect completed redundant road orders to another useful gap instead of cancelling them; retain the finished road if no suitable gap is available yet.

Shared QuantBot production changes apply to Dune City and Vanilla where relevant; city tax, zoning, roads and service budgets are specific to Dune City. All multiplayer participants should use the same version.

Validation: 564 tests passed locally; three optional tests skipped. Local dependency audits passed. Remote publication is gated on Linux tests and Windows, macOS and Linux builds.

Dune City 1.0.630

Changes since 1.0.626:

  • In Dune City, reuse roads built by any house for construction access and prepared foundations. Enemy and abandoned roads no longer stop expansion; terrain, occupied buildings and local road-access checks still apply. Road upkeep ownership is unchanged.
  • Fix QuantBot ornithopter production being starved by carryall and ground-unit orders. After the first carryall, an affordable unmet air target receives priority over additional carryalls; existing unit caps and prerequisites still apply.
  • Make adaptive harvester targets less conservative by reducing the spice budget per worker by 25%. This raises the spice-based target by about one third where other limits allow, while retaining the lobby limit, refinery throughput and affordability checks.
  • Build QuantBot repair yards earlier once a heavy factory and refinery are operational, and scale baseline repair capacity with army value within the existing yard cap.
  • Fix a repair-yard crash after nuclear explosions destroyed stored units at stale map positions. Nuclear damage now excludes inactive cargo, and repair yards safely clear missing occupants.

These changes apply to Dune City and Vanilla where relevant; shared road access is specific to Dune City. The save layout is unchanged from 1.0.626. All multiplayer participants should use the same version.

Validation: 547 tests passed locally; three optional tests skipped. Local dependency audits passed. Remote publication is gated on Linux tests and Windows, macOS and Linux builds.

Dune City 1.0.626

Changes since 1.0.612:

  • Add road upkeep at Micropolis's default rate: 0.7 credits per road tile per city year, with heavy-traffic roads counting double. Roads are free below 2,000 displayed population for each house; the exemption returns if population falls below that threshold. The budget shows road costs, and automatically built roads now record their owner.
  • Reduce police reinforcements to three troopers and one trike. Existing cooldowns and unit limits remain. Improve police placement to favour underserved areas instead of clustering stations.
  • Generate traffic from successful, occupancy-based journeys with Micropolis-style decay and light/heavy display thresholds, reducing the excessive traffic generated by tiny settlements.
  • Let residential lots gain or lose individual houses before becoming apartments. Bring across additional residential, commercial and industrial models, plus building and traffic animations.
  • Correct city labour demand and unemployment calculations, consider pollution and land suitability before zoning, and improve residential/commercial/industrial construction priorities. Windtraps count as light industry, including their sidebar label.
  • Add a pollution overlay and civic demand notices for airports, starports and stadiums. Use scaled Micropolis park terrain for turret land-value effects.
  • Replace expensive city placement connectivity searches with local access checks, reuse road foundations and spare lanes, and bound repeated placement work. Improve performance diagnostics for future game analysis.

Older saves remain readable. New house occupancy data requires this version for newly saved games; all multiplayer participants should use the same version.

Local macOS validation: 536 tests passed; three optional tests skipped. Desktop packages are published only after the release workflow's tests and Windows, macOS and Linux builds succeed.

Dune City 1.0.612

Changes since 1.0.608:

  • Keep qBot factory and refinery exits connected to open ground. Later buildings and MCV deployments respect escape lanes, including other construction yards' reserved sites, so rear factories are less likely to trap their own units. This prevents new blockages; existing sealed courtyards are not automatically demolished.
  • Give successful unit types more weight in qBot production ratios using full-match damage value, kill bonuses and losses. Keep opening exploration and existing composition safeguards.
  • Randomise attack intervals consistently for every house, removing a permanent house-based timing bias. Scheduling uses deterministic simulation inputs for multiplayer.
  • Reduce repeated searches during police and turret placement planning.
  • Fix empty qBot harvesters repeatedly returning to refineries when their previous spice destination is unsafe. Preserve valid unloading trips and deliberate safety holds.
  • Restore automatic harvester restart for Original and Smart AI, which depend on the native restart behaviour. Human stop orders remain respected.

The qBot movement, placement and production improvements apply to both Vanilla and Dune City. City service planning applies to Dune City.

Harvester maximum overrides remain supported. The spice-based harvester target formula is unchanged in this release.

Older saves remain readable. Multiplayer participants must use the same version. Local validation: 504 tests passed, with three optional tests skipped.

Dune City 1.0.608

Changes since 1.0.601:

  • Simplify qBot army control: normal attacks use Hunt, with a loose gathering point near working harvesters and proportional local responses to attacks. Remove the expensive formation controller that could leave armies gathering while nearby buildings were attacked.
  • Learn unit production ratios from damage value, kill bonuses and losses across the whole match. Prefer safer factory sites away from enemy forces.
  • Expand light factory capacity when funded demand warrants it, and let heavy factories continue filling available army capacity when preferred unit shares are already satisfied.
  • Improve harvester safety around launchers, check refinery return corridors and request sufficiently strong nearby clearing teams before missiles hit.
  • Allow police reinforcements below 250 military units per house, while retaining qBot military-value and engine limits.
  • Rebuild missing roads around surviving city buildings when construction yards have no higher-priority work. Fix completed road placement being incorrectly reported as failed.
  • Group mature neighbouring crime outbreaks into a larger force at the worst hotspot. Dangerous occupied buildings contribute one, two or three troopers by density after 4–6 simulation minutes of sustained crime, with a short gathering window and a population gate of 5,000.
  • Add regression coverage and telemetry for road completion, launcher safety and grouped outbreaks.

Army, factory and harvester improvements apply to both Vanilla and Dune City. City roads, police and crime changes apply to Dune City.

Older saves remain readable. Multiplayer participants must use the same version. Live balance and performance still need match testing.

Dune City 1.0.601

  • Fix a squad-controller crash when a target has been destroyed.
  • Gather armies in reachable clearings with enough room for the force. Blocked destinations no longer send everyone onto the same rally tile.
  • Keep the main body advancing while stragglers catch up, preserve shared attack targets, and measure stalled movement instead of cancelling advancing waves.
  • Add the 4-player DuneCity (192x192) and 4 corners (128x128) default maps.
  • Fix non-finite mod configuration validation in macOS Release builds.
  • Require passing tests and Windows, Linux and macOS builds before publication.

Includes the Windows compatibility fix for the unpublished 1.0.600 build. Older saves remain readable. Multiplayer participants must use the same version.

Also includes 1.0.600

  • Fix a squad-controller crash when a target has been destroyed.
  • Gather armies in reachable clearings with enough room for the force. Blocked destinations no longer send everyone onto the same rally tile.
  • Keep the main body advancing while stragglers catch up, preserve shared attack targets, and measure stalled movement instead of cancelling advancing waves.
  • Add the 4-player DuneCity (192x192) and 4 corners (128x128) default maps.
  • Fix non-finite mod configuration validation in macOS Release builds.
  • Require passing tests and Windows, Linux and macOS builds before publication.

Older saves remain readable. Multiplayer participants must use the same version.

Dune City 1.0.599

Also includes 1.0.536

  • Restores credits rendering and other right-aligned interface elements on Retina Macs using the sdl2-compat renderer.
  • Fixes QuantBot construction-yard planning, balanced city zoning, heavy-unit production, and excessive repair-yard expansion.
  • Prevents civic zone graphics from replacing neighbouring building tiles.
  • Restores multiple players per house and preserves windowed display settings.
  • Adds verified Apple Silicon DMG builds on the self-hosted macOS release runner, including bundled runtime libraries and correct app metadata.

Dune City 1.0.535

Maintenance release.

Dune City 1.0.534

Maintenance release.

Dune City 1.0.533

  • Add classic and enlarged start menu modes

Dune City 1.0.532

  • Allow menu layouts to reposition existing controls
  • Keep Desert Gold default and make high-contrast menus optional
  • Keep Options readable with tabbed settings and fixed action buttons
  • Prepare 1.0.532: readable start menus and Dune2R atlas deployment
  • Keep Android test APKs lean by stripping staged native libraries
  • Publish corrected Refinery catalog and prepare Android test build
  • Fix Refinery atlas geometry and render-thread stalls
  • Publish Gravel and Atreides Refinery asset catalog
  • Add downloadable Dune2R world visuals and web runtime

Dune City 1.0.531

  • Package Tornie Palace icon from mod payload
  • Integrate Tornie mod safely

Dune City 1.0.530

  • Migrates the simulator-tested QBot production strategy into the public game without shipping the private simulator.
  • Prevents strategic production starvation so QBot can progress to Palaces and faction-special units in long custom matches.
  • Moves Dune2R remastered art out of the base Windows and Linux packages.
  • Adds resumable, SHA-256 verified Dune2R asset downloads from the in-game Dune2R EditoR.
  • Preserves downloaded Dune2R asset packs across managed-mod and game upgrades.

The base game still includes Vanilla, DuneCity, Tornie, and the lightweight Dune2R mod shell. Remastered Dune2R art is optional and downloaded per unit or as one queue.

Dune City 1.0.529

This release expands vanilla skirmish AI variety and carries the latest cross-platform input improvements.

AI

  • Let QuantBot maintain deterministic mixed forces with infantry, troopers, trikes, raiders, and quads alongside its heavier units.
  • Allow vanilla AI bases to construct barracks, WORs, gun turrets, and short wall lines when resources and technology permit.
  • Vary ordinary structure spacing between compact placement and one-tile lanes without introducing multiplayer lockstep randomness.
  • Keep DuneCity simulation construction behavior separate from these vanilla skirmish changes.

Input

  • Add Auto, Hidden, and Visible cursor policies for Android-class devices.
  • Preserve physical mouse cursor visibility through menus, Mentat sequences, gameplay, cutscenes, and the map editor.
  • Keep touch input cursor-free in Auto mode while detecting real mouse input.

Compatibility

  • Save-game and multiplayer protocol versions are unchanged.
  • Vanilla, DuneCity, Dune2R, Tornie, and user-installed mods remain separately selectable.

Downloads

  • Windows x64 ZIP and installer are attached to the GitHub release.
  • Linux x86_64 AppImage, tarball, and Debian package are attached when the Linux build completes successfully.

Dune City 1.0.528

This release fixes distorted ADL music on clean Windows systems and expands the live Dune2R enhanced-unit workflow.

Fixed

  • Render ADL music through a single pitch-stable emulator by default, avoiding the detuned stereo effect that distorted music on other computers.
  • Apply the same ADL mode to sound effects and report the active audio driver, mixer format, buffer size, and ADL mode in the log.
  • Retain the legacy harmonic-stereo mode as an opt-in configuration setting.

Dune2R

  • Load mounted damage, aftermath, and dissipation animation states in addition to idle, movement, and combat.
  • Reload newly mounted unit atlases at runtime from Dune2R EditoR without rebuilding the game.
  • Package directional damage assets and default-direction fallbacks.
  • Include the first mounted Harkonnen Devastator proof-of-concept atlas.

Compatibility

  • Save-game and multiplayer protocol versions are unchanged.
  • Vanilla, DuneCity, Dune2R, Tornie, and user-installed mods remain separately selectable.

Package

  • ZIP: DuneCity-1.0.528-Windows-x64.zip
  • ZIP SHA-256: 447C408B93B153DA30D5023ACAA896B2C34C269CDADAA148ABDDA6518B755FFC
  • Installer: DuneCity-1.0.528-Windows-x64.exe
  • Installer SHA-256: 88CFAFC991F8907684E50A08701E1DD86199725023E8AD4168875E9FC9CBF6E8

Dune City 1.0.527

This maintenance release makes bundled mods self-repairing without clearing the player's entire DuneCity application-data directory, restores MetaServer HTTPS on Windows 10, and corrects Linux package integration.

Fixed

  • Refresh stale installed copies of the bundled Tornie and Dune2R mods using an atomic staged replacement when their packaged payload changes.
  • Remove obsolete files from those managed mod copies instead of overlaying a new release onto stale assets, preventing malformed SHP and PAK conflicts.
  • Preserve save games, settings, logs, editor maps, and independently installed user mods during the refresh.
  • Fall back to Vanilla if a managed mod cannot be refreshed or its metadata is invalid, and roll back a failed in-game mod activation.
  • Use the Windows native certificate store when supported and ship a Mozilla CA bundle fallback so MetaServer HTTPS works on Windows 10.
  • Install Linux packages under /usr, publish a discoverable desktop launcher, and resolve packaged data relative to the executable for portable builds.

Compatibility

  • Existing save files and user settings remain supported.
  • Save-game and multiplayer protocol versions are unchanged.
  • Vanilla, DuneCity, Dune2R, Tornie, and user-installed mods remain separately selectable.

Dune City 1.0.526

This maintenance release makes DuneCity R/C/I placement feedback match the gravel-only construction rule introduced in 1.0.525.

Fixed

  • Show invalid red placement tiles wherever a Residential, Commercial, or Industrial footprint overlaps sand, spice, dunes, mountains, occupied ground, or an existing city zone.
  • Use one shared gravel/concrete terrain rule for the placement preview and authoritative structure validation.

Compatibility

  • Existing save files remain supported.
  • Multiplayer simulation and protocol versions are unchanged.
  • Vanilla, DuneCity, Dune2R, and the frozen bundled Tornie version remain separately selectable.

Dune City 1.0.525

This release restores loaded-save city simulation and adds the first playable Dune2R enhanced-unit graphics layer.

Fixed

  • Resume city effects, budget scans, demand valves, and zone growth after loading a DuneCity campaign save.
  • Recover empty-population R/C/I valves that were left in a deadlocked negative state by affected saves.
  • Build roads at twice the speed of concrete and R/C/I zones at half the Police Station build time instead of completing instantly.
  • Restrict every DuneCity-only structure to gravel/rock or existing concrete. Sand, spice, dunes, and mountains are rejected.

Dune2R

  • Load mod-local animated unit atlases without replacing shared game assets.
  • Add idle, movement, and combat animation selection with classic-art fallback.
  • Add Action, Tactical, and Strategic presentation zoom levels through the Dune2R-only UI control and mouse wheel.
  • Include the Ordos Tank proof-of-concept animation package.

Compatibility

  • Existing save files remain supported.
  • Multiplayer simulation and protocol versions are unchanged.
  • Vanilla, DuneCity, Dune2R, and Tornie remain separately selectable.

Dune City 1.0.524

This hotfix repairs deployment of the bundled Tornie mod from the desktop package into the user's mod directory.

Fixed

  • Install the complete Tornie payload, including campaigns, Tharpique custom- house registration, Mentat declarations, graphics, sounds, and integrity metadata.
  • Preserve the bundled mod.ini instead of replacing it with incomplete generated metadata.
  • Detect incomplete or outdated Tornie installations through required payload checks and checksums.sha256, allowing campaign-only updates to reseed.

Compatibility

  • Existing saves and the multiplayer protocol are unchanged.
  • Vanilla, DuneCity, Dune2R, and Tornie remain separately selectable modes.
  • Existing incomplete Tornie installations repair themselves on first launch.

Dune City 1.0.523

This release adds generic ninth-house engine support and the Tornie 1.0.523 content milestone while preserving the existing behavior of vanilla Dune Legacy, DuneCity, and Dune2R.

Included

  • Generic, mod-scoped ninth-house registration with legacy eight-house support
  • Generic custom-house Mentat, herald, palette, voice, and presentation hooks
  • Tornie 1.0.523 campaigns, Tharpique house content, graphics, sounds, and data
  • Correct Tharpique special-unit selection and IX availability filtering
  • Updated Advanced Windtrap graphics, preview, recoloring, and animation
  • Restored Tornie structure-flag brightness and standard Scoutpost animation
  • Correct one-time worm-sign warning behavior for the ninth house
  • Versioned save and multiplayer compatibility for synchronized ninth-house state

Compatibility

  • Existing eight-house saves remain loadable.
  • Multiplayer peers must use the current network protocol.
  • Vanilla, DuneCity, Dune2R, and Tornie remain separately selectable modes.

Dune City 1.0.522

This release combines the Tornie 1.0.522 content update with restored DuneCity simulation persistence, gameplay fixes, complete selectable-mod packaging, and cross-platform multiplayer networking.

Included

  • Tornie 1.0.522 campaigns and balance data
  • DuneCity R/C/I, city budget, and city-credit save persistence
  • Classic production timing for concrete slabs
  • Road replacement over concrete and concrete replacement over roads
  • Correct infantry rifle sound when rocket infantry use their close-range gun
  • Complete selectable mod packaging for DuneCity, Tornie, and Dune2R
  • Active-mod loose graphics loading with safe fallback sprites
  • HTTPS metaserver support for Android clients

Dune City 1.0.520

This release integrates Tornie Mod 1.0.520 with the transferred DuneCity root repository while preserving Dune City, vanilla Dune Legacy, Android support, and the selectable Dune2R graphics mod scaffold.

Included

  • Tornie 1.0.520 units, structures, campaigns, palettes, voices, and tools
  • Random enabled special-vehicle selection using the synchronized game RNG
  • Dune2R remains an independent selectable mod
  • Tornie-only assets are gated by the active Tornie mod
  • Multi-house Dune City RCI and budget state remains save-compatible
  • Loaded-map and city-simulation exception guards remain in place
  • Null-safe destroyed-target handling remains in place

Dune City 1.0.359

  • Add tooltips to all terrain buttons
  • Render Tornie custom spice terrain instead of black
  • Allow up to 8 teams; fix NUM_TEAMS out-of-bounds
  • Actually load the RGBA FlameTank sprite
  • Prevent crash when custom FlameTank asset is absent
  • Remove stale uppercase SCENR duplicates, keep lowercase

Dune City 1.0.358

  • Visible in-game cursor on HiDPI + remove always-on zone overlay
  • 8th faction (HOUSE_REBELS) full integration
  • Animate with 4-frame Tornie sprite at ConstructionYard speed
  • Use ExplosionFlames sprite for Bullet_Flame
  • Bullet_Flame no longer damages allied units or self
  • CitySimulation: fix Commercial zone CATCH-22 (valve drained to floor when comPop=0)

Dune City 1.0.247

  • Rebels mentat (Harkonnen portrait remapped to grey), Sonic Tank herald fallback, Tornie unit sprite fallbacks

Dune City 1.0.246

  • Apply Tornie mod bundle (GFXManager, MapEditorInterface, FlameTank sprite)

Dune City 1.0.244

  • Update SAVEGAMEVERSION test 9817→9818 (CitySimulation houseState fix)
  • Apply Tornie mod bundle

Dune City 1.0.242

  • Apply Tornie mod bundle (sprites, campaigns, source fixes)
  • Tornie mod fixes (mentat fallbacks, flame tank tech/immunity, windtrap, rocket trike tint, spice regen)

Dune City 1.0.241

  • NUM_ZOOMLEVEL typo (NUM_ZOOMLEVELS -> NUM_ZOOMLEVEL) in GFXManager.cpp
  • EliteSiegeTank crash, FlameTank visibility, Fremen banner, Harkonnen mentat

Dune City 1.0.239

  • Fremen/Rebels campaigns, spice tile palette, editor overlay fix

Dune City 1.0.238

  • GFXManager copy-assign = delete (implicit delete via unique_ptr) — v1.0.238

Dune City 1.0.237

  • SrcPal scope in AdvHouseFlag loop — v1.0.237
  • Guard Fremen/Neutral mentat animation null paths — v1.0.236
  • Chani mentat eyes/mouth (5 frames), fix Paul frame count 4→5 — v1.0.235
  • Convert all mod PNG assets to 8-bit palette-indexed (IBM.PAL) — v1.0.234
  • Fremen colours from IBM.PAL, not Custom_IBM.pal rebels grey — v1.0.233

Dune City 1.0.232

  • Revert PALCOLOR_REBELS to 192 (Custom_IBM.pal grey), fix mentat remap, add crash exception message logging — v1.0.232

Dune City 1.0.231

  • Rebels house colors — PALCOLOR_REBELS = PALCOLOR_HARKONNEN (red), matching houseAnchor and mentat banner for 1.0.231

Dune City 1.0.230

Maintenance release.

Dune City 1.0.229

  • DuneCity 1.0.227 — bloom bug fix, brush sizes, RocketTrike recolor, AdvWindTrap flags, Chani mentat, campaign PAK

Dune City 1.0.228

  • Add HOUSE_REBELS (Tornie mod only — hostile AI, grey palette, Harkonnen voice)

Dune City 1.0.227

  • Add Paul Atreides mentat assets + rebuilt Tornie.PAK
  • Paul Atreides mentat for Tornie mod; campaign files → Tornie.PAK
  • Remove Tornie neutral mentat overrides; add red/green spice field editor tiles; bloom uses vanilla frame; FlameTank centering+direction

Dune City 1.0.226

  • Tornie batch 02 — neutral mentat Tornie crash, Deviator vanilla fallback, FlameTank N/S frame inversion
  • Add dedicated red/green spice bloom map editor icons; repair bloom null guards
  • Add Buddhist peace symbol to Harkonnen tank sprites

Dune City 1.0.225

  • Tornie batch — neutral crash, FlameTank frames, custom map crash, 8-bit guards, windtrap flag color, neutral mentat, spice bloom sidebar row

Dune City 1.0.224

  • UI_MapEditor_FlameTank icon + AdvancedWindtrap RGBA flag blit fix
  • Balance: FlameTank price 450→700, upgrade access Ordos+Neutral only (remove Fremen/Sardaukar/Mercenary)
  • Gate Deviator custom sprite behind Tornie mod check; add mentat debug log
  • INIMap save/load for RedBloom/GreenBloom terrain types
  • Map editor red/green spice bloom buttons (hidden when not Tornie)
  • Sandworm death 5% colored spice spawn when Tornie mod active
  • Harvester tracks spice color; green=faster gather; red=+25% credits
  • GFXManager loads ObjPic_TerrainRedSpice/GreenSpice from Tornie.PAK
  • Map helpers for red/green spice fields + minimap colors
  • Tile rendering and bloom spread for red/green spice
  • TerrainTile enum values and Tile helpers for red/green spice
  • Add Terrain_RedSpice/GreenSpice enum types

and 14 more changes.

Dune City 1.0.220

  • Add forward decl for DuneCityUnhandledExceptionFilter
  • Windows CrashHandler — rename UEF, add Shlobj.h, move prevFilter decl
  • Cyrit neutral mentat; remove Tornie units from default CHOAM; fix reinforcements AdvancedWindTrap
  • Harden Windows crash handler — add UEF backup, crash.txt, error logging
  • AdvancedWindTrap zone-colour corner markers (top-left + bottom-right)

Dune City 1.0.215

  • AdvancedWindTrap power anim starts only after place anim, speed matches WindTrap

Dune City 1.0.214

  • Remove: AdvancedWindTrap corner star markers

Dune City 1.0.213

  • Chani mouth coord Point(288,262)

Dune City 1.0.212

  • Chani eye coord back to Point(288,230)

Dune City 1.0.211

  • Chani eye coord Point(288,198) — bottom-left anchor corrected

Dune City 1.0.210

  • Chani mentat eye coord Point(288,230) — corrected for 2x scale

Dune City 1.0.209

  • Chani mentat — use D2X_MENTATF.png background, correct eye/mouth coords

Dune City 1.0.208

  • AdvancedWindTrap animation pixel coords scaled per zoom level

Dune City 1.0.207

  • Tornie Unit_Special — Hark/Atreides/Ordos get random primary or Elite Siege Tank

Dune City 1.0.206

  • Revert: remove Elite Siege Tank from Unit_Special (not in use)

Dune City 1.0.204

  • Tornie Unit_Special — Fremen=Deviator/Devastator, Mercenary=Deviator/SonicTank

Dune City 1.0.203

  • HOUSE_NEUTRAL Unit_Special spawns random Deviator or Elite Launcher

Dune City 1.0.202

  • Unit_Special — revert default; Sardaukar excluded from Tornie Deviator rule

Dune City 1.0.201

  • Unit_Special — Deviator/Launcher random (default), Deviator fixed (Tornie); editor stars for Launcher + Mercenary Devast. + Fremen Sonic

Dune City 1.0.200

  • Chani mentat eyes Point(32,160) mouth Point(32,192) — Ordos-matching layout

Dune City 1.0.199

  • AdvancedWindTrap anim — hardcoded gem pixels, darker blue cycle + star at both corners

Dune City 1.0.198

  • AdvancedWindTrap anim — gem zone detection, pink/magenta color, 3x slower

Dune City 1.0.197

  • AdvancedWindTrap Tornie-mod-only gate + in-game owner star marker

Dune City 1.0.196

  • Neutral mentat animation frames use NN scaler (fix tiling on 8-bit quantized palette)

Dune City 1.0.195

  • Chani mentat coords — eyes Point(576,460) mouth Point(102,152) per Tornie

Dune City 1.0.194

  • Correct Chani mentat eye/mouth widget coordinates
  • Chani mentat eye/mouth coords corrected per Tornie delta
  • AdvancedWindTrap windtrap light animation + house-color star markers in editor

Dune City 1.0.192

Maintenance release.

Dune City 1.0.190

  • Scaler handles 32-bit (non-paletted) surfaces without crashing

Dune City 1.0.189

  • Neutral mentat background uses D2X_MENTATM.png from Tornie.PAK
  • Crash loading Chani RGBA animation frames through 8-bit scaler
  • Add terminate handler and guard pathfinding OOM to prevent silent crashes
  • Restore build timer for concrete slabs (roads stay instant)

Dune City 1.0.185

  • Crash on load (ping-pong vector invalidation); add D2X_ mentat PNGs to Tornie.PAK

Dune City 1.0.184

  • Chani eye/mouth animations from image strip for Neutral mentat

Dune City 1.0.183

  • Chani (Neutral mentat portrait), white/grey Neutral planet

Dune City 1.0.182

  • EliteSiegeTank icon, PalaceIcon all houses, Neutral palace ability icon, purple star on editor unit buttons

Dune City 1.0.181

  • Add NNEU.VOC for Neutral house name call (based on ANEU.VOC)
  • Add Neutral house planet animation (grey/stone palette, Harkonnen base)
  • Purple star overlay in map editor for Tornie mod units (RocketTrike, EliteLauncher, EliteSiegeTank)
  • Remove animated corner flags from map editor
  • Auto-seed Tornie mod folder on first launch from bundled install
  • Add EliteSiegeTank.WSA to Tornie.PAK (editable copy of HTANK.WSA) for custom tile graphic
  • Update SAVEGAMEVERSION assertion to 9816

Dune City 1.0.180

  • Add Elite Siege Tank (Tornie mod — Atreides/Harkonnen/Ordos, Heavy Factory, House IX prereq)
  • Picture_PalaceNeutral enum, std::filesystem portability, mentat null-guards, Quad hunt mode
  • Fix Neutral mentat: use MENTATM.CPS background + MENSHPM.SHP animations
  • Tornie mod campaign override — chaos campaign loads when Tornie mod active

Dune City 1.0.177

  • Add Tornie mod package (mods/Tornie/)

Dune City 1.0.176

  • Add Prerequisite(N) = House IX to [Launcher] for test-linux
  • Update SAVEGAMEVERSION test assertion to 9814 (EliteLauncher bump)
  • Fix Palace building icon for HOUSE_NEUTRAL — use vanilla PALACE.WSA

Dune City 1.0.175

  • Tornie batch — PAK bundle, icons, Neutral mentat music/voice, RocketTrike CHOAM, 7-team support

Dune City 1.0.174

  • Elite Launcher unit (Neutral-only, Heavy Factory, House IX prereq) + 7-team support

Dune City 1.0.173

  • Add Tornie's Rocket Trike + Neutral Launcher icons, fix Launcher upgrade config

Dune City 1.0.172

  • Fix Neutral herald — remove HeraldNeu.png override, update mask

Dune City 1.0.170

  • Fix crash when building Advanced Windtrap — swap itemID 52/53

Dune City 1.0.169

  • Launcher neutral uses standard sprite, build icon lightly red-tinted

Dune City 1.0.168

  • Update HeraldNeu.png with revised Neutral house herald graphic

Dune City 1.0.167

  • Remove corner flags from map corners

Dune City 1.0.166

  • Add Rocket Trike to map editor unit palette

Dune City 1.0.165

  • Deviator ordos+neutral only, launcher neutral cost 725 + red icon

Dune City 1.0.164

  • Fix Rocket Trike missing from Light Factory build menu

Dune City 1.0.163

  • Rocket Trike Neutral-only, Quad upgrade for all but Harkonnen

Dune City 1.0.162

  • Rocket trike at light factory all houses, quad needs factory upgrade

Dune City 1.0.161

  • New HeraldNeuMask (Tornie's corrected Neutral banner mask)

Dune City 1.0.160

  • Rocket trike red tint sprite
  • Update HeraldNeuMask.png with Tornie's revised mask
  • Tornie 4-task bundle
  • HeraldNeu fix (already current), neutral mentat (Cyril-based), adv powerplant colour square, Rocket Trike unit, factory level
  • HeraldNeu fix, neutral mentat (Cyril-based), adv powerplant colour square, Rocket Trike unit, factory level

Dune City 1.0.155

  • Fix HeraldNeu: load custom PNG directly, remove self-seeding

Dune City 1.0.154

  • Tint Neutral mentat sand colors to neutral grey
  • Replace neutral herald mask in-place with Tornie's HeraldMask_Grey.png

Dune City 1.0.152

  • Static adv-windtrap sprite (no flags), neutral mentat recolour, quad palace icon PNG

Dune City 1.0.151

  • Neutral mentat = Ordos girl, adv-windtrap flags in bounds, editor row fix

Dune City 1.0.150

  • Enable Neutral house in custom maps and map editor

Dune City 1.0.149

  • Reset city simulation state on campaign map transition

Dune City 1.0.148

  • Advanced Windtrap prereqs now require Windtrap + Outpost + Hightech Factory

Dune City 1.0.147

  • Use quad icon for neutral palace activation

Dune City 1.0.146

  • Replace AdvancedWindtrap sprite and add two animated house flags

Dune City 1.0.145

  • Use Tornie's HeraldNeu.png + reposition AdvancedWindTrap in sidebar

Dune City 1.0.144

  • Add Tornie_AdvancedWindtrap_gfx.png as primary building graphic

Dune City 1.0.143

  • Replace advanced windtrap graphic with Tornie's asset
  • Fix AdvancedWindTrap black-square sprite and oversized sidebar icon
  • Add animated corner flags at 4 map corners (Tornie request)
  • Update HeraldNeuMask.png for neutral campaign banner

Dune City 1.0.137

  • Add advanced windtrap to map editor palette

Dune City 1.0.136

  • Advanced Windtrap: show WindTrapInterface (power stats UI) when selected
  • Fix Advanced Windtrap icon and in-game tile (two separate assets)

Dune City 1.0.135

  • Replace Advanced Windtrap icon with indexed palette PNG from Tornie
  • Fix map editor cursor + neutral mentat accent colors

Dune City 1.0.133

  • Fix cursor hidden on campaign start for all houses

Dune City 1.0.132

  • Restore cursor on main menu entry

Dune City 1.0.131

  • Fix Neutral campaign: add map choice logos + cursor restore

Dune City 1.0.130

  • Neutral herald PNG support — load HeraldNeu.png if present, else export generated banner
  • Neutral herald uses Ordos frame (grey) instead of Fremen
  • Fix Neutral herald border — use Fremen frame as base, fill interior grey
  • Voice, Advanced Windtrap prereq, icon packaging

Dune City 1.0.125

  • Fix Neutral finale: Ordos cutscene with Neutral planet colour

Dune City 1.0.124

  • Fix crash: include NEU VOC files in Windows release package

Dune City 1.0.123

  • Neutral voice overrides + Advanced Windtrap all-house unlock

Dune City 1.0.122

  • Fix neutral voice, update neutral herald banner, unlock adv windtrap all houses

Dune City 1.0.121

  • SIGSEGV — carryall/harvester infinite recursion + null-ptr crashes

Dune City 1.0.120

  • Switch Neutral house NEU voice from MNEU.VOC to ANEU.VOC

Dune City 1.0.119

  • Add Harkonnen (Ralph) and Ordos (Zarvox) voice variants for "Neutral"

Dune City 1.0.118

  • Fix Neutral Bug Launcher missing House IX prerequisite
  • Use neutral palette for neutral house mentat colors
  • Add Neutral house voice (ANEU.VOC) — says "Neutral" not "Atreides"

Dune City 1.0.115

  • Fix Neutral herald border: remap Ordos green frame pixels to Neutral white palette
  • Fix neutral house radar color using PALCOLOR_NEUTRAL (128)

Dune City 1.0.113

  • Include Neutral campaign INI files in Windows/Linux release package
  • Fix Neutral palette index (128) and revert non-Neutral campaign changes

Dune City 1.0.111

  • Allow Neutral house selection in skirmish
  • Add super_power_plant.png sprite for AdvancedWindTrap — replaces WindTrap placeholder art

Dune City 1.0.109

  • Neutral campaign: use dedicated SCENN maps and REGIONN region
  • Balance: Launcher, Quad, Deviator, Siege Tank stat adjustments
  • Add Neutral house herald mask and voice (MNEU.VOC, HeraldNeuMask.png)

Dune City 1.0.107

  • LoadMap() missing Neutral player — SIGSEGV when editor loaded a map then iterated players[6]

Dune City 1.0.106

  • SIGSEGV starting Neutral campaign — human house never created
  • Neutral house uses mercenary mentat; fix editor random map crash

Dune City 1.0.104

  • Fix Neutral house colour: use grey palette range (129) instead of UI cycle range (240)

Dune City 1.0.103

  • Draw_util null-check after SDL_ConvertSurface
  • SIGSEGV on startup — add missing Herald_Grey for Neutral house

Dune City 1.0.100

  • Neutral voice crash (use Atreides voices) + campaign music/finale tweaks

Dune City 1.0.99

  • Add Neutral house full campaign (tornie mod) — reuses Harkonnen scenarios/maps

Dune City 1.0.97

  • Use Atreides cutscenes for Neutral campaign finale/meanwhile
  • Neutral house: Light Factory tech4, Launcher tech1, no Sonic Tank/Devastator

Dune City 1.0.94

  • HOUSE_NEUTRAL triggers HARVEST.VOC crash in loadEnglishVoice

Dune City 1.0.93

  • Add Neutral house to campaign selection with herald and Atreides sounds
  • Add Neutral house (7th house, tornie mod)
  • Cap credits at 999,999 to prevent int32 overflow
  • Add Advanced Windtrap structure (tornie mod, v1.0.92)

Dune City 1.0.91

  • Carryall delivers harvester to wrong tile when redirected while harvesting
  • Infantry/Trooper rockets targeting carryalls over buildings in findTargetLegacy
  • Copy palette when scaling indexed cursor surfaces

Dune City 1.0.89

  • Bundle shared libs for Linux distribution + add AppImage packaging
  • Add watermark toggle and cursor scaling for high-DPI displays
  • Update website to v1.0.87 + police cost tweaks in guide

Dune City 1.0.87

  • Resolve campaign crash by handling missing DUNELEGACY_DATADIR at runtime
  • Guard pFileManager null deref in createDefaultConfigFile on first launch
  • Fix: carryalls no longer steal targeting priority from buildings

Dune City 1.0.86

  • Split Mentat from QuantBot — dual AI in PlayerFactory
  • Gate NuclearPlant behind city-sim mode in build list and AI

Dune City 1.0.85

  • Package imported_sprites + harden civic-sprite fallback (fixes ID 80 PoliceStation crash)
  • Allow launchers and rebalance unit ratios
  • Add clean website with player guide

Dune City 1.0.84

  • Aggressive city-mode rocket turret placement for crime suppression + air defence
  • Fix periodic frame spikes on large maps (192x192)
  • Graceful degradation for missing DuneCity civic sprites
  • Guard null target dereference in UnitBase::setTarget (Carryall repair crash)

Dune City 1.0.79

  • Stop QuantBot rocket turret placement loop

Dune City 1.0.78

  • Release v1.0.78

Dune City 1.0.77

  • Prevent QuantBot builder queue crash

Dune City 1.0.76

  • QuantBot: always build first refinery as tech prerequisite on no-spice maps

Dune City 1.0.75

  • Fix AI freeze-ups on 256x256 maps — bounded placement search + spice throttle

Dune City 1.0.74

  • Add Ripps multiplayer map packs
  • Fix HF never upgrading — restore upgrade priority over military production

Dune City 1.0.72

  • HF/MCV income scaling, crime-only turret placement, perf fixes

Dune City 1.0.54

  • Make all city sim state per-player via HouseCityState[6]

Dune City 1.0.53

  • Fix AI zones not growing — v1.0.46 per-player filter was too aggressive

Dune City 1.0.52

  • AI prioritises zones over military on no-spice city sim maps

Dune City 1.0.51

  • Make all AI city sim decisions per-player instead of reading global/local-player data

Dune City 1.0.50

  • Fix turret spam: AI was checking global crime map instead of own territory

Dune City 1.0.49

  • Cap city turret spam and throttle budget log

Dune City 1.0.48

  • Fix HF building useless harvesters on city sim maps, add HF diagnostics

Dune City 1.0.47

  • Fix AI endlessly building MCVs instead of tanks on city sim maps

Dune City 1.0.46

  • Fix city population counting all players instead of local player only

Dune City 1.0.45

  • Fix AI not building tanks on city sim maps

Dune City 1.0.44

  • QuantBot: gate residential zones behind heavy factory threshold, slow CY scaling

Dune City 1.0.43

Maintenance release.

Dune City 1.0.42

Maintenance release.

Dune City 1.0.41

Maintenance release.

Dune City 1.0.39

  • Add rolling dev-release on every main push
  • Add DuneCity mod info text to main menu
  • Fix CY build list scroll reset when playing with QuantBot
  • Fix church spam, dedup CY builds, income-scaled MCVs
  • Reduce turret over-building — crime-driven beyond floor
  • Improve zone/turret placement AI, add Stadium/Airport civic building
  • Per-cycle budget ticks; refinery high density industrial

Dune City 1.0.32

Maintenance release.

Dune City 1.0.31

  • Fix stadium sprite; wire hospital/church into residential zones

Dune City 1.0.30

  • Fix turret land value to 20; hospitals/churches auto-created by game

Dune City 1.0.29

  • Remap structures, Palace dual R+C, unemployment, difficulty, land-value tax

Dune City 1.0.28

  • Display population x20 multiplier; fix tax and AI thresholds

Dune City 1.0.27

  • SC Classic population values and accumulating demand valves

Dune City 1.0.26

  • AI zone building now follows demand valves instead of fixed ratio

Dune City 1.0.25

  • Budget tick every 1 second (1/50 annual), show credits/sec in UI

Dune City 1.0.24

Maintenance release.

Dune City 1.0.23

  • Cap heavy factories and gate palace behind zones in city sim

Dune City 1.0.22

  • Prioritise CY upgrade + city turrets over Palace in city sim

Dune City 1.0.21

  • QuantBot: fix city turret priorities — add palace, spread out more

Dune City 1.0.20

  • QuantBot: city protection turrets near key buildings and R/C zones

Dune City 1.0.19

  • QuantBot: remove rule 4b, fix factory formula to 1+money/4000

Dune City 1.0.18

  • QuantBot: uncap MCVs, use money/4000 threshold

Dune City 1.0.17

  • QuantBot: uncap factories, more MCVs, zones as idle CY fallback

Dune City 1.0.16

  • Cap military expansion in city sim so bot keeps growing the city

Dune City 1.0.15

  • QuantBot zones no longer block military construction on low-spice maps

Dune City 1.0.14

  • QuantBot skips refineries on low-spice maps, pivots to R/I/C zones

Dune City 1.0.13

  • Place roads on rubble tiles, clearing destroyed structure overlay
  • Prefer nuclear plant over windtrap everywhere in QuantBot
  • Grid-based placement and zone-type-aware scoring in city mode
  • Road spacing applies to all buildings in city mode
  • Zone placement leaves road gaps, roads fill corridors
  • Scale zone prerequisites with tech level
  • Require starport+heavy factory before zoning, pre-build power
  • QuantBot no longer spams windtraps at game start in city mode

Dune City 1.0.12

  • Load Dune Legacy 0.99 saves with legacy item count

Dune City 1.0.11

  • Savegame backward compatibility after Num_ItemID expansion (v1.0.7 -> v1.0.8+)

Dune City 1.0.10

  • Normalize paths for native Python on Windows Git Bash
  • QuantBot now builds R/C/I zone structures via Construction Yard
  • Increase road speed bonus from 2x to 4x for ground units
  • Fix city stats label overlap in sidebar panels
  • Exclude Structure_ExtLastID sentinel from resolver completeness test
  • Civic expansion, ambient aircraft, RCI growth fidelity, bugfixes
  • Palace balance/UI: 100 power, 1000 pop cap, population label, land-value boost

Dune City 1.0.7

  • White road lane markings + roads destroyed by weapons

Dune City 1.0.6

  • Single credit pool for city budget + treasury display

Dune City 1.0.5

  • Single source of truth for version number
  • Nuclear plant crash (ObjPic 79 not loaded)

Dune City 1.0.4

  • Bundle Westwood PAK files so DMG runs out of the box

Dune City 1.0.3

  • Fix macOS "damaged" warning by re-codesigning after install

Dune City 1.0.2

  • Sync version + document macOS quarantine workaround

Dune City 1.0.1

  • Bundled SimCity map, in-game how-to-play, first-launch mod prompt

Dune City 1.0.0

  • Rename Linux 'package' custom target to 'linux-packages'
  • Actually apply the dunelegacy.ico -> dunecity.ico content edits
  • Update Windows resource files to reference dunecity.ico
  • Replace POSIX strcasecmp with portable strToLower for Windows build
  • Quote Windows CMake toolchain arg so PowerShell expands env var
  • Bump supply radius to 16, split industrial into outer + inner spur
  • Rebrand all user-visible UI from "Dune Legacy" to "Dune City" and set version to 0.01
  • Remove city tutorial tip banners from in-game HUD
  • Wire city event sounds into SFX manager
  • Implement ZoneSimulation road adjacency bonuses
  • Disaster notification system - stacked event banners with countdown timers
  • Stabilize main branch for build (Phase 9 stubs, miniupnpc optional, discord optional)

and 38 more changes.