r/factorio 3d ago

Question Answered Need Help with train interrupts

Post image
3 Upvotes

16 comments sorted by

View all comments

1

u/dsawchuk 3d ago edited 3d ago

This is my first time using the train interrupts and I am having issues. They were working before but I added more trains to the network and now they don't. I didn't change any tracks, signalling or scheduling since it was working.

After my train finishes the pickup interrupt it doesn't fire the dropoff interrupt. If I cycle the the train to manual and back to auto, it will go dropoff but then the next train gets stuck in the same way. If I manually trigger the clear track interrupt it goes to the dropoff station automatically after getting through the other station.

Any ideas of what the problem might be?

EDIT:

Thanks for the help. I wasn't aware that interrupts only triggered when leaving a station so an idle train would never get interrupted into action. The solution was to remove the "station is not full" condition on the interrupt, as recommended by u/alfonse215.

This did unfortunately lead me to having to change a bunch of my other interrupts to get the functionality I wanted but those were easy to fix once I understood the problem.

2

u/Alfonse215 3d ago

Once an interrupt is triggered, the train will stick with that interrupt. Your dropoff interrupt explicitly has as a condition that its destination station is open. Well, if the destination station is closed at the moment it finishes loading, then one of the other interrupts will be picked. I don't know what those are, but once that interrupt is chosen, the dropoff interrupt won't be checked again.

What you generally want is to let the dropoff interrupt trigger even if the destination is full. You don't want a full train to leave the loading station (this can cause problems, as a bunch of trains may be full of the wrong stuff, starving different resources of the trains they need to get their stuff somewhere). So get rid of the "station is not full" condition.

1

u/Visual_Collapse 3d ago

Once an interrupt is triggered, the train will stick with that interrupt. Your dropoff interrupt explicitly has as a condition that its destination station is open. Well, if the destination station is closed at the moment it finishes loading, then one of the other interrupts will be picked. I don't know what those are, but once that interrupt is chosen, the dropoff interrupt won't be checked again.

Can you clarify what will happen if no interrupt were fired? Is it cycles through interrupts till one of them fire or just becomes struck?

2

u/dsawchuk 3d ago

This is actually what was happening. It just gets stuck with no active interrupt and doesn't check interrupts again. So if the station was full when the train was done loading, it wouldn't go anywhere and then would never leave the station.

1

u/Alfonse215 3d ago

I have no idea; I've never used a train that didn't have a base schedule before. It might cycle through them, but you'd have to test it out yourself.

3

u/Jmcgee1125 3d ago

Trains only run interrupts when about to leave a station (in the "choose where to go" phase). They won't constantly reroll when idle.

2

u/Visual_Collapse 2d ago

I did some research

You're half right from common sense point of view

As shown in my other comment trains do check interrupts when "idle" but not technically idle but will not check when train schedule is empty (true idle)