Happy Holidays - Development Log #512

The language this post was written in (Englisch) differs from the one you have currently selected (Deutsch) as we do not have a translation available at this time.

Michi talks about the multi-item inventory transfer, new email notifications and the first gateways being constructed.

Avatar Michi

Michi (molp)

The Holidays are almost here, time for a last devlog in 2025.

I have been working on the new multi-item inventory transfer I wrote about last week. It required quite a bit of refactoring to get it working. Especially the mobile inventory transfer threw a wrench into things, as I almost forgot about it, and it handles inventory transfers slightly different than the regular inventory transfer. Nonetheless, it is mostly working now, and I was able to reuse much of the code for both transfer paths. On the server side, everything is now a multi-item transfer, that can be used for both regular and mobile inventory transfers.

I had to re-implement the logic of the drop targets (AMT, 1, 10, .., HLF, ALL) and even added two new drop targets: MAX WGT and MAX VOL.

AMT still works like before: It just opens a new buffer with the MRTA command. AMT is only available when a single item is selected.

The number drop targets are now based on the stack with the most units. If I select 1000 for example, 1000 units of the largest stack in the selection will be transferred, then, if there is still room in the target inventory, up to 1000 units of the second-largest stack will be transferred and so on.

The HLF drop target is only available if half of all the selected stacks will fit into the target inventory.

MAX WGT and MAX VOL work similarly as the existing MAX drop target, as they try to fill as much as possible of the selection into the target inventory. The WGT variant first sorts the selected stacks by weight, starting with the lightest. As much as possible of this stack is transferred, and then the next-heavier stack is considered. This also goes on until the target inventory is full. The VOL variant works similarly but sorts the stacks by volume instead.

In case you recently received an email, warning you that your PRO time is about to run out, that is Martin's doing. He is working on our email system:

For the past two weeks, I spend a good part of my time on implementing a new system within our account management service that supports exactly that sort of thing: It allows to define arbitrary types of notifications, under which conditions they need to be generated, how often a user should receive it at most etc. I brushed up our email templates, standardising their content, making sure they are internationalised and they contain the right information besides the actual message. Last but not least, I invested quite a bit of effort into tooling to properly test these things, including making sure that each notification works in all the different languages we support and that they are really only sent under the circumstances we intended.

The first two notification types implemented so far are a “credits exhaustion warning” for AirlineSim and a “PRO license expiry warning” for Prosperous Universe. But we’ll add more types over the coming months. If you have a good idea for what might be useful to users, please let me know! And before you ask: Of course you will be able to disable any of the non-transactional notifications if you don’t wish to receive them :slight_smile:

You can find his full devlog in the AirlineSim forums.

This week the universe saw the first two gateways being constructed! This is no easy feat, so congratulations to everyone involved!

First gateways constructed

Finally, I want to thank you all very much for playing Prosperous Universe, for your support, for being so friendly and forming the best game community I have ever seen. 2025 has been a blast, looking forward to 2026!

As always, we'd love to hear what you think: join us on Discord or the forums!

Happy trading!