Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow "Delivery Timeout" to be disabled #317

Open
scottrosenquist opened this issue Feb 13, 2023 · 3 comments
Open

Allow "Delivery Timeout" to be disabled #317

scottrosenquist opened this issue Feb 13, 2023 · 3 comments

Comments

@scottrosenquist
Copy link

TL;DR
I'd like to be able to disable the Delivery Timeout feature, fully aware that this could lead to issues, and that I accept that and will resolve any "lost" trains myself.

What ?
I'd like to be able to disable the Delivery Timeout feature.

Why ?
I'd like to be able to use my trains as my buffer chests. I'd like to have a train sitting at a station, unloading to belts. I don't want to worry about how long it takes. If a train is unloading to an assembler line that builds rockets, but I haven't used rockets in 24 hours, I want that train to keep sitting there, "delivering." I would use the contents of that train to track and trigger the threshold and request of that LTN requester station so that I can ask for the replacement train at any percentage I want, which I'm already currently able to do with circuits.

I'm sure many people won't care about this feature, I understand that. But some people might, and it's got to be a very simple feature to implement. Throw enough warnings on it that "it's your responsibility to fix your train issues when they come up" and I don't think anyone will accidentally turn it on when they don't want to.

Thanks, and thank you for making LTN in the first place.

@NightOps007
Copy link

NightOps007 commented May 30, 2023

Maybe don't disable the timeout feature, but make it so that ltn won't send a new train while a station is physically occupied. I've seen my trains pile up on one station because of this. You can just set that station combinator to disable alerts for that station.

@0ptera
Copy link
Owner

0ptera commented May 30, 2023

Delivery timeout is preventing stored delivery data from piling up.
Not all cases when a delivery has to be removed are covered by just relying on events from trains returning to depots or being removed.

Maybe don't disable the timeout feature, but make it so that ltn won't send a new train while a station is physically occupied.

Use LTN's max trains signal to limit how many trains are sent to a stop.

@DannyParker0001
Copy link

DannyParker0001 commented Sep 25, 2023

Hello, the way I have my unloaders designed means that trains need to be buffered to sustain full throughput. If this part of the base in inactive for longer than the max timeout time then LTN assumes all trains are lost and will re-send all the buffer trains and locks up my train network since there's no space for them. I could continue to make the chest buffers larger, but this is worse for performance I don't see why LTN can't just handle trains being buffered.

Off the top of my head, I can only think of 6 unexpected ways that a delivery could be 'timed out'

  • Train gets destroyed
  • Station gets destroyed
  • Player manually changes trains orders
  • No path for a train to get to a station
  • Train stuck in deadlock
  • Train out of fuel

Assuming I didn't miss anything, if the timeout was set to 0, the only issue that could cause an 'invisible pileup' would be if the train was destroyed. Otherwise, LTN should only send a limited number of trains that shouldn't be hard to find if they get stuck.
Am I missing something here?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants