Michi looks back at four busy months: an attack on the commodity exchanges, a maintenance release, and market makers that finally adjust themselves.
Under Attack
May started calmly enough. The switch to approval voting had settled in, and a new alert reminding inhabitants 24 hours before an election closes gave voter turnout a noticeable nudge.
While investigating a multi-account case involving more than ten alt accounts, Michi noticed one of them sitting on an impossible amount of STL fuel. The accounts were deleted and the root cause tracked down: the mechanism for transferring multiple materials at once could be abused to create almost unlimited SF fuel. The hole was patched that same evening, and within hours a brand-new company was moving enormous amounts of fuel on the Antares market. There was a second exploit.
The next two days turned into a chase: another account deleted on Tuesday, another attack in the early morning hours before Michi had even made it to the office, this one emptying commodity exchange order books well beyond the fuel market. Going through the event stream of the earlier attack finally paid off. The vector involved ship flights, which explained how fresh companies with no PRO status and no contracts could use it at all. Since that second patch, there have been no further attacks.
The damage: the SF market maker created roughly 10 billion AIC over the course of the attacks. Since the offending accounts were deleted, their funds left the game with them, so the increase in money supply ended up visible, but far less dramatic than feared.
Maintenance Release 2026.06
After elections, multi-accounting and exploits, Michi was more than ready for some regular development. Maintenance release 2026.06 shipped in mid-June with a solid pile of quality of life work.
The PROD command was overhauled, taking heavy inspiration from the browser extension refined PrUn. It is still a list of all your bases, but production lines now carry an efficiency column that makes suboptimal lines easy to spot, and a color coded slot column: green for a line at full capacity, yellow if a slot sits idle, red if nothing is queued at all. Bases can be collapsed into a single row, a relief for anyone running a lot of them.

Screen variables were the other headline feature. This PRO feature lets you define typed variables per screen — string, material, commodity exchange or location — and reference them in commands by wrapping the name in % characters. The payoff is dynamic screens: build a commodity exchange screen with order book, chart and order mask, then change one variable and watch every command follow along.

Rounding out the release: a new SFC toggle that flips the "unload on arrival" flag even mid-flight, four faction communication channels that players join automatically and can mute but not leave, post-tutorial contracts guiding new players toward their second base, and new recipes from Fabian: additional sinks for RE and WHR, plus alternative Sodium metallurgy recipes straight out of a forum discussion.
Measuring Inflation, Then Adjusting for It
The largest thread of the summer started with a concept document by Fabian: Dynamic Inflation Adjustments. Static market maker brackets that only change when someone updates them by hand have been a long-standing complaint, and the plan was to fix that properly. Measure first, adjust second.
Measuring arrived as INFL, a new command that went live in late July. A yellow index line tracks inflation, always starting at 100% for the chosen interval, while a bar chart shows the change from period to period: above the center line inflationary, below it deflationary. Switch between daily, monthly and yearly, pick a currency, and choose what to measure — everything, a single material, a category, or one of the predefined baskets. The baskets are the interesting part, since the useful ones rarely line up with material categories: there is one for each workforce type's consumables, one per production prefab, and one for agricultural produce.
Then came the adjusting. As the economy inflates, a market maker's upper bracket eventually gets reached, margins go razor-thin and production becomes uneconomical. The new system compares the average price of the last 10 days to the middle of the bracket — the further it has drifted, the more "pressure" the market maker is under, and the brackets widen and shift daily to give the price room again. Changes are capped at 2% per day to prevent wild swings, and now apply per currency rather than globally. The best closed bracket market maker, as Michi puts it, is one that players never need.
The same data feeds two more mechanisms, both adjusted weekly against a currency-wide average: starting capital for new companies and faction contract rewards. All of it went live in August with just one hiccup: a rounding error left a broker's price band a single cent off, making the market maker order impossible to match. Fixed.
Database Housekeeping
The release also brought some database trouble to light. Prosperous Universe does not store entities as rows in tables: every "thing" in the game is an entity with a stream of events, snapshotted every 10,000 events so restoring state needs only the snapshot plus what came after. That works right up until an entity collects an absurd number of events, and after 1952 days of universe, some have. The pacemaker, the central entity that reminds everything else to check whether it needs updating, had accumulated well over 720 million ticks.
Events were never deleted, deliberately, so a bad update invalidating the snapshots could always be recovered from the full stream. That safety net has become too expensive to keep in full, so Michi built a retention window: keep every snapshot from the last 10 days, delete the events older than the oldest one kept. Plenty of fallback, far less strain on the database.
August brought a second round. After a routine update the servers crawled, and one of the three database instances kept getting killed by its liveness check — which makes things worse, since losing an instance means a third of all game objects have to be reloaded. The culprit was a rogue game object writing to the database in a tight loop, courtesy of a bug Michi had introduced himself. With that fixed, the database configuration is being retuned, and those liveness checks, which turn out to be far from free, will be made cheaper.
Plots, Fees and First Steps
Inactive companies blocking planetary plots got some attention too. Players who sign up through Steam often cannot be reached by email, the only channel we have for announcing a liquidation, so their companies were given a generous 200 days of inactivity plus a 30-day deadline — far too long for someone who tried the game once and moved on. Michi added a retention factor based on real activity: if a player's last activity was the day they joined, the window is halved; if they never built a base or started a flight, halved again. Within days the number of taken plots started to drop.
Plots came up from the other direction as well. A group of players has been using government motions to push the base establishment fee to its maximum of 10 million currency units on planets in non-faction space, effectively creating private planets nobody else can settle. The fee exists to compensate players for building up infrastructure and workforce, not to lock everyone else out. We are watching the situation and may lower that maximum.
At a rare in-person meeting at simulogics HQ, Martin, Fabian and Michi also reshuffled the roadmap. Faction influence is still a feature we want, but it moved down the list in favor of rethinking the very beginning of the game. Fabian is now drafting a design in which all new players start in one specific place — possibly the remaining generation ships — and only decide where to build their first base after finding their footing in APEX. That softens the learning curve and defuses the plot situation in one move.
Automatic Routes
Finally, a feature that has been on the roadmap for ages: shipping routes. August began with a first UI prototype, shared early to get the discussion going, with routes and waypoints already stored on the server but no steps executed yet.
After a well-earned vacation — which explains the quiet stretch mid-month — Michi returned and made routes actually run. Assigning a ship creates a copy of the route, which the ship works through waypoint by waypoint, so the original stays editable while ships are underway; changes are picked up the next time a repeating route starts a fresh pass. A compromise, but one that removes a great deal of confusion and edge cases.
The refuel step was the first step type implemented, edited in an overlay much like custom contracts. It handles STL or FTL fuel, drawn from either a local store or the ship's own cargo hold, with a minimum and maximum amount — and a "capacity" option so you need not think about individual tank sizes. What should happen when a step cannot be executed, say when the store is short on fuel, is still an open question: stop the route and notify, carry on regardless, or wait for fuel to show up. All three make sense in different situations.
Beyond the Code
Prosperous Universe is now playable in Japanese, entirely thanks to our community translation team. It has been one of the most requested languages for years, and getting there is a real milestone — our thanks to everyone who contributed.
On the supporter side, Julian finished the ten track secret soundtrack, and supporters at the Galaxy tier and above can now download it uncompressed from the perk page. For everyone else, the soundtrack is available at various streaming services. Martin and Michi also spent a memorable day at simulogics HQ packing and shipping the final batch of physical perks, some 80 to 90 packages.
We have also been ramping up marketing, looking into sponsored segments with YouTube channels.
You can find the individual devlogs here:
As always, we'd love to hear what you think: join us on Discord or the forums!
Happy trading!