published on January 27, 2025 in devlog
Michi finishes the multi-commodity contract implementation and talks about the upcoming maintenance release.
Michi (molp)
Last week (#467) I started working on the multi-commodity contracts. I was able to finish the implementation this week. That means that once the next maintenance release goes live, you will be able to create buying, selling and shipping contracts via the CONTD
command, that can have multiple commodities.
I was able to implement the changes rather quickly because I decided to re-use the existing contract conditions. So, when you create a shipping contract, for example, a set of provisioning, pickup, delivery and payment conditions will be created for each commodity. Fulfilling such a contract will require a bit of clicking, but it is still way faster than going through a bunch of different contracts. It'll reduce the contract clutter as well. This allowed us to save a lot of development time: accounting is easier because there is always a material / payment pair, we don't have to implement new contract conditions that need to handle multiple commodities, and we can reuse many of the existing UI elements. It is also possible to fine-tune your contracts. You could have a shipping contract where some materials don't have the same origin or destination, or are paid in a different currency.
Talking about the maintenance release: I’m pretty confident that we can release a small maintenance release in the coming days. I created the release notes in the forums. You'll notice that there are a few other things than the multi-item contracts, mostly bugfixes and smaller changes.
For example, we improved the amount selection in the MTRA
command. The deadline to extend a failing contract will be extended to 72h, instead of just 24h. Ship names are shown in the notifications, as well as the type of contract condition a partner fulfilled.
You can try out all these changes on the test server.
As always, we'd love to hear what you think: join us on Discord or the forums!
Happy trading!