Renai Transportation


The most unhinged ways to transport items and yourself around your factory. Fling items around with Thrower Inserters, launch your trains off ramps, and soar through your base on electric ziplines!

Content
a day ago
0.18 - 2.0
43.3K
Transportation Logistics Trains

b Thrower gets Stuck & Ignores signals

2 months ago

Hey there,

first of all, fantastic mod! I'm loving seeing things flying around lol
I ran into something curious -- I'm iterating the thrower range through signal to throw ore into furnaces. When a furnace doesn't take more ore, the thrower gets stuck and doesn't take the signal anymore, so I have to manually change the range to get it working again or clear the furnace. This happens both for ore and coal.

This blueprint has the scenario. Just let it run for a while and eventually a thrower will get stuck in a furnace that is full of ore/coal, and won't move on to the next one when the signal changes.

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

2 months ago

When the thrower range changes it should reset the overflow prevention tracking that would be causing it to get stuck. Manually changing the range and changing the range by signal should both work, but maybe I missed something with the signal method. I'll take a look, thanks for the blueprint code 👌

2 months ago

I was able to fix it locally by moving a few lines of code. I moved everything between lines 38 and 52 one up in the on_tick_throwers.lua, so it is outside of the "half swing" if block, and its working. Not sure about side effects that has tho

2 months ago

So I think the problem is that in a recent update to Factorio they made it so that inserters won't swing if there's no space in the target whereas before they would swing and just hold their arms over the thing they're pointing at and wait until there's space. To improve performance, I only have the thrower adjust its range based on signal right before a throw (ie when the arm is mid swing). So now since the throwers don't swing when the target is full, they never update their range, and that's why you moving the signal checking outside the half swing check makes it work again. It's more laggy, but it fixes the problem. I'll have to think about what the best fix for this is without making lag too much worse

2 months ago

Gotcha, that makes sense
What if you used the Overflow Timeout as a delay between checks for signals on that case? Then it would keep checking during arm swing as the current version, and the timeout would be a fallback in the event the arm doesn't swing

2 months ago

That's a good idea, I only added the timeout recently but that's actually a good spot for checking signals so that it at least doesn't get stuck like what you're seeing

2 months ago

I added this adjustment in the newest version. Testing with your blueprint the throwers don't freeze anymore, hopefully that fixes thing 👌

2 months ago

Awesome, I'll test it tonight!

New response