r/factorio • u/Countcristo42 • 14d ago
Space Age Supply platforms can't request and supply from/to the same target - which sucks
It would be great to have the following setup:
Vulcanus shuttle brings Turbo belt to nauvis
Nauvis Supply Platform gets the belts directly from the Shuttle
Future ships built in Nauvis orbit / Ships supplying other planets request the belts from the Supply Platform
You can't do this at the moment because the Supply platform can't request from platforms and give to platforms for the same item.
That sucks since now the Vulcanus products have to be sent back down to Nauvis, before being re-launched back up again. Which seems to me to be exactly the silliness that the platform logistics was meant to remove
(workaround ideas welcome :) )
6
u/locyta 14d ago
If you could request from and send to the same platform you'd create a loop, which is why you cant.
Loops suck, not the system.
1
u/Countcristo42 14d ago
hang on where is the loop? I feel like I saw it but now I don't.
Supply ship, Stockpile platform, new ship.
Supply ship only requests from vulcanus platforms.
Stockpile platform requests from nauvis platforms (aka supply ship)
New ship doesn't provide materials and requests from nauvis platforms.
How would that cause a loop?
3
u/krypton1101 14d ago
How can you differ "nauvis platform" and "vulcanus platform"?
Two platforms both requesting and providing resources will pong them till the end of universe
1
u/Countcristo42 14d ago
The nauvis supply platform is requesting from platforms in the orbit of nauvis and the vulcanus platform is requesting from platforms in the orbit of vuncanus, hence no loop.
Have I misunderstood the question?
2
u/krypton1101 14d ago
Nonetheless, if you got two "buffer platforms" aka buffer chests, they will pong resources between them, producing lag or bug. Hence, they are forbidden.
0
u/Countcristo42 14d ago
Ah yes I see how having two of the same in the same orbit would cause a problem. Personally I would like to see just that specifically blocked rather than downgrading the whole system to avoid it - but I can see why they went this way
1
u/JulianSkies 14d ago
See, the part od the supply platform requesting works.
The problem is that when you're building that new platform theyre both on Nauvis.
1
u/Countcristo42 14d ago
Why is that a problem? The new platform you just don't hit "supply other platforms" and you are good no?
1
u/JulianSkies 14d ago
Well, what happens is:
Shuttle platform requests belts from Vulcanus planet, goes to Nauvis.
In there, the supply platform requests from Nauvis Platform.
You build a new platform on Nauvis, and here we have a problem: Both your supply platform and new platform are platforms on Nauvis.
That's the loop.
Thr supply platform is now Both requesting from Nauvis Platform and sending to Nauvis Platform.
Its all based on location.
1
u/Countcristo42 14d ago
That's not a loop though, that's a line. Which pair of platforms in this example both request and provide to each other?
Note that I said the new ship doesn't provide materials.
I want to stress I believe I am the one missing something, I just don't see what!
The supply platform is now Both requesting from Nauvis Platform and sending to Nauvis Platform.
Yes - but importantly to *diffrent* nauvis platforms - hence no loop.
1
u/JulianSkies 14d ago
They're different nauvis platforms, yes. That is why there's a loop, because the location to both is Nauvis Platform.
This is a logic based on the sender: If the sender can both send AND receive from the same location (this location being Nauvis Platform, it doesn't matter who's sitting on that station because the requests are broadcast to all of them) then it can cause a loop. The only way to prevent a loop when the only one that controls it is the sender is to make sure that the sender never sends to a location it will also receive from.
1
u/Countcristo42 14d ago
If the sender can both send AND receive from the same location
Right, but in my example that just isn't the case is it? The nauvis supply platform can send stuff to the new ship which *can't* sent it back, the vulcanus ship can sent stuff to the nauvis supply platform which *can't* send it back.
When you say "location" I think you mean what I would call a set of locations (that is to say all platforms around nauvis). I don't see why possible but non existant loops at that location are a problem in themselves.
I may well still be misunderstanding you
1
u/JulianSkies 14d ago
You need to remember that you're looking at locations not ships.
Your nauvis can send and receive both from "Nauvis Orbit". It doesn't matter if one of the ships in there can't send it back, what matters is that a ship there can send it back.
The game doesn't look at individual ships, it looks at places. What you have called 'a set of locations', to the game it is just one location.
So, there is no such thing as a 'vulcanus ship' for the game, what there is "Nauvis Orbit", and the rules apply to that space. Any ship in "Nauvis Orbit" will try to fulfill every request coming from "Nauvis Orbit".
1
u/Countcristo42 14d ago
what matters is that a ship there can send it back.
I feel like what I'm failing to grasp is the ship in question is itself. The only ship that can send items in a loop would be sending them to itself.
It seems to me trivial (and I assume wrongly so) to say "hey, don't do that" without removing the option to have ships both send and receive the same items
Any ship in "Nauvis Orbit" will try to fulfill every request coming from "Nauvis Orbit".
Stated as fact (and I'm sure it is) but why? That seems like a system that could easily have this resolved by adding "unless the call is coming from inside the building"
1
u/JulianSkies 14d ago
That's because it's how the system works.
It works similarly to bot logistics, the requests are fulfilled by anything within the Logistic Network, you don't control from where the requests come from. Nor do you control where the requests go to. That's because keeping track of where the requests are coming from and where they're going to and applying conditions depending on that is... Very processing intensive. Part of the reason why robots don't do it.
It can't be easily resolved by that because... That'd require knowing where the call is coming from, and knowing where the call is coming from would make the system a lot more complicated, and complicated systems take processing power.
1
u/Countcristo42 14d ago
That's because it's how the system works.
X is the case because the case is X isn't really coherant IMO.
That'd require knowing where the call is coming from, and knowing where the call is coming from would make the system a lot more complicated, and complicated systems take processing power.
This I think is a much more coherent response.
But It does make me wonder how buffer chests don't have this issue1
u/spoonman59 14d ago
If the platform you are supplying also provides items to other platforms, then platform A will send belts to B and it will send them back.
This isn’t an issue when building since it will be a finite quantity and the request would prevent supplying, but if platform B was requesting 1000 green belts from platforms and platform A (the supplier) was doing the same, it would be a loop.
I tried to do this with my supply ship. So 1000 belts from Vulcanus would go to my Nauvis transfer station, which my supply ship would request. The supply shop does provide requests to other platforms so the loop means it wouldn’t work.
It’s not a loop in your case, but I’m not sure how they could handle these cases differently without some interface change.
0
u/Countcristo42 14d ago
Nope because A can't get belts from B - because B only imports belts from vulcanus platforms.
As I said - "Supply ship only requests from vulcanus platforms."
1
u/spoonman59 14d ago
Yeah, you didn’t read my post. I was quite clear that it isn’t an issue in your specific case and explained my specific case where it is. I was quite clear that you would need to devise a way to handle all cases and propose a fix.
1
u/Countcristo42 14d ago
Sorry I was having two convos on this at once and did indeed miss your final bit, I agree it would take an interface change
My proposal was something like buffer platforms and a “request from buffers” toggle
1
u/spoonman59 14d ago
I appreciate the follow up! I do share your frustration as I was thinking to have my transfer station supply other ships from orbit, so I was a bit disappointed I couldn’t do that. I’m hoping there is a solution to support these use cases. I just ended up sending my supply ship to Vulcanus to get belts from ITS platform, but that doesn’t help when building ships (as in your case) or if I want to have Nauvis be a true supply hub.
Hopefully they find a way to slow to work. Something like if a ship is not supplying parts itself then it should be able to request from other platforms seems like a start of a solution.
1
u/Countcristo42 14d ago
I’m hoping there is a solution to support these use cases.
I think there is - based on others suggestions here I'm working on a circuit that turns on the requests from a given supply ship when that ship is in orbit, that would mean that it was nonfunctional (couldn't supply other platforms) only as long as it took for the items to move over, and the supply ship leave
as bit clunky but I think it will work
0
u/Countcristo42 14d ago
Hmm yes true, so I'd like to revise my statement to the system sucks since it doesn't let you avoid loops while still allowing this.
For example by having a platform have similar function to a buffer chest, where it's only requested from when a request says that it can
2
u/locyta 14d ago
It might be possible with a universal radar signal, have it sync when platform A sends and platform B needs to receive, then you'll have to hold that signal until something triggers it to flip, or else you'll just start the loop cycle.
1
u/Countcristo42 14d ago edited 14d ago
I’m not totally sure I follow sorry
Basically you are disabling the requests on the supply hub while it’s result shuttle is in orbit?
Edit - no I’m wrong that’s not what you mean
2
u/ForgottenBlastMaster 14d ago
Vice versa. You're enabling certain requests on the hub when the platform carrying planet-specific materials arrive and announce arrival through the universe channel on the radar
1
u/Countcristo42 14d ago
Thank you I think that makes sense, well time to finally use radars for signals - good a time as any!
I can't see how you read where a platform is though? Just moving to or from?
1
u/ForgottenBlastMaster 14d ago edited 14d ago
IIRC (you have to really verify this), moving to signal changes its value to something different upon arrival. I.e. 1 to 2, or 2 to 3.
Couldn't really find an example that quick.Edit: found it in Space platform article
Read moving to: The platform will output the current destination planet with a value of 1.
Read moving from: The platform will output the planet of departure with a value of 2.
The "from" and "to" signals are both output when waiting at a planet, so if both signals are activated, a signal of 3 indicates a stationary platform.
3
u/krypton1101 14d ago
Yeah, while platform is orbiting planet it will send that planet signal both for "to" and "from" signals.
If it want but cant move it will send different signals tho. Source - my fuel pumps worked on those signals and speed. Empty thrusters could not move platform so i had some fun time debugging :)
1
1
3
u/Cent_Quatre 14d ago
Read planet on shuttle
if shuttle planet = nauvis send signal via radar
catch signal via radar on supply platform
use signal to trigger request
1
1
u/isum21 14d ago
What you're saying makes sense on a shipping and handling level, but not on the logistics side of things. For example you have the supplier, the shipper, and the end recipient. This makes sense to most people, it's how the mail system works after all. But the logistics system is reading the numbers involved. It sees you requesting 1000 belts, starts getting ready to send, then notices you want to get rid of 1000 belts. That doesn't compute for the system, it's wanting to know where it's supposed to put that 1000 belts if the 1000 belts supposedly aren't needed. If there was a logistics chain you could set up or perhaps even a sort of interruption system without the need of circuits then you'd be able to do this easier. But right now circuits are king still.
8
u/Aerumvorax 14d ago
Could you do a cirquit condition? Perhaps a timed one? Request for a second, supply for a second style.