In 2.1 I decided to try switching to interrupt based trains, and I am now sold and hooked immediately. The simplicity is fantastic, I don't have to hard code trains to different routes, and my defense train went from a gigantic 20-30 stop list to just a set of interrupts and have stops drive whether or not they need a train to come. Fantastic changes.
I wanted to try and apply the same idea to space logistics, and its been difficult. Biggest issue I think is that there's no parametric way to address spaceship routes, so you have to do a lot of legwork. And its not like you can turn a planet on and off like you can with stations.
So I did some experimenting in my save, this is the solution I came up with: Landing pad driven interrupt requests using radar.
Here's an example of a planet . We separate the , green sets requests and red reads contents. The first combinator is just to turn the red signal into a green signal, and set a multiplier so that I can control what level of missing items actually triggers a request. Right now its set so if Im missing half the request value, itll trigger output. Each one of these radar blocks consists of 4 things:
You have a block for each planet request you have, right now I just have a single ship serving the inputs and outputs for each planet, though I haven't figured out how I want to handle shared routes (who handles nauvis requests from vulcanus, the nauvis ship or the vulcanus ship?). Right now its just arbitrary. I think my current plan is just over time have a single ship dedicated to every single planet connection, that would also make request uptime much higher as you dont have one ship dealing with requests between multiple planets.
Then on the ship, we have this. These are reading output signals from each radar, and outputting them to to the platform. The deciders exist mostly just as a separation, because I don't want the radars to output to eachother cause that would mess everything up. There's 2 kinds of radar here that are slightly different, on the vulcanus ship we have a vulcanus channel radar, everything from that radar just gets sent out. Then for all the other radar, we have it filtered so its only reading vulcanus signals from those radar.
So to sum up, planet X will check if needs anything from planet Y, and will output X on the Y channel. In other words, if channel A is outputting B, it means that B is requesting items from A.
The final piece is the platform: One of the more annoying parts is that we have to set all the requests we want to handle. It would be nice if there was some kind of grouping I could do so I could just say like "all requests from vulcanus" or something but I haven't thought of a clever way to do this. Just make sure if I have a new vulcanus request, the vulcanus ship picks it up. The second thing is the interrupt list. There's two types of request:
So overall I'm fairly happy with the result, I think there's two annoying problems to me that get worse with the multiple planet mods I have installed:
Imagine I have 10 planets, I need 10 radar blocks for every single platform and landing pad, and I need 20 interrupts for the planet restock and import requests. The interrupts is likely not avoidable since we can't do parametric planet requests.
Managing the list of requests and remembering to update all my ships and stuff gets really annoying.
So yeah, that's it. Wondering if people have ideas to improve or simplify things or any thoughts on the problems I laid out.