Opinionated-Blueprints / 10-Books-Full-of-Rails

136 stars 4 forks source link

Inline Fluid Provider occasionally requests more trains than specified #76

Closed DBosley closed 3 hours ago

DBosley commented 4 days ago

Have you checked the following resources?

Version of the Book

2.19.0

Bug Description

Inline Fluid Provider occasionally requests more trains than specified

How to reproduce the problem

In attached save, the sulfuric acid fluid provider will occasionally request a second train while one is already sitting there. This can cause backups in the train network.

Buggy Fluid Provider - Sulfuric Acid.zip

What did you expect?

I expect the train limit to be respected

What happened instead?

The train limit is not always respected

mkaito commented 4 days ago

I've had the "occasionally calls too many trains" happen with solid providers too. Every couple hours I'll find a random deadlock with 20 trains waiting behind a limit-1 station that's full and not going anywhere.

Bocian-1 commented 4 days ago

I couldn't tell how that happened, but I reworked the wiring on inline stations a bit and providers now have a constant train limit of 1, so this shouldn't happen any more.

On the other hand, the setup of the requester doesn't match image It was probably made after a change to a few values a few updates ago, where I forgot to relabel them correctly for the fluid stations. It's better to remake it and other fluid stations as well.

@mkaito Was it also with inline providers? If so, then it also should be fixed with the above change.

It could be that when trying to fit the combinators on the inline stations I placed some too far apart and a wire was cut. Can't tell now.

mkaito commented 4 days ago

No, this was with regular stations. It started happening when you changed all the combinators to use virtual signals. I might have to go through all my stations and apply the latest release on top.

Bocian-1 commented 3 hours ago

I think I'll close this, since these stations were reworked since anyway. Please reopen or make a new issue if it still happens.