pyanodon / pybugreports

Central bug-report repository for pymods
The Unlicense
5 stars 1 forks source link

Tailings pond does not connect to existing entities. #525

Closed Squelch closed 3 weeks ago

Squelch commented 3 weeks ago

Mod source

Factorio Mod Portal

Operating system

GNU/Linux

What kind of issue is this?

What is the problem?

If a tailings pond is built after any connecting entities, it does not connect.

Steps to reproduce

  1. Manually build a pipe network that would either fill or empty a tailings pond.
  2. Build hte tailings pond after step 1
  3. Create and place a Blueprint including a tailings pond, but ensure the pond arrives later than other entities.

Additional context

Successful connection only happens if the connecting entities are built/rebuilt after the tailings pond is built. Manual or bot placement has the same result. (Blueprint builds by bots is particularly troublesome if the pond carrying construction bot arrives after any other) This can be nuanced and difficult to identify eg. A pump and pipe network to drain the pond already exists, and then a pond is built to process the tailings. This results in the pond overflowing due to the pump being correctly placed, but remaining unconnected.

Discovered as a result of Issue:#524

Log file

No response

oorzkws commented 3 weeks ago

I followed your instructions but was unable to reproduce this.

First, I placed a tailings pond and surrounded it with a square of pipes. I added an infinity pipe to feed the square. Second, I blueprinted the set and removed it. Third, I placed a provider with only pipes and infinity pipes. Fourth, I placed the blueprint. Fifth, I added a tailings pond to the provider.

image

I then attempted with Squeak Through active, and the issue appeared when following the same steps. I don't believe this is a Pyanodon bug.

oorzkws commented 3 weeks ago

tailings-pond-test-3.zip Test case save

Squelch commented 3 weeks ago

Squekthrough somehow snuck unnoticed into my Pyanodon only mods folder. Apologies, and thank you.

notnotmelon commented 3 weeks ago

Try this one instead: https://mods.factorio.com/mod/squeak-through-2

Squelch commented 3 weeks ago

Try this one instead: https://mods.factorio.com/mod/squeak-through-2

Thanks for the heads up. I shall use this one going forth, but unfortunately it causes the same behaviour. I have conducted some further tests and found that adding squeak_behaviour = false to the pond prototype fixes the functionality with no other adverse effects.

Would a change request, and/or a PR be appropriate in this case?

notnotmelon commented 3 weeks ago

Thanks for the suggestion. Added: https://github.com/pyanodon/pycoalprocessing/commit/a22ada8509c81923c625b38599cd730178fda22c

Squelch commented 3 weeks ago

Beware! Spelling of the exception is important. OG Squekthrough used en_gb spelling squeak_behaviour whereas Squeakthrough 2 uses en_us spelling squeak_behavior

I had replied that it wasn't working after all, but double checked the spelling.

Thanks for the suggestion. Added: pyanodon/pycoalprocessing@a22ada8

Thank you.

notnotmelon commented 3 weeks ago

Nice catch, thank you.

https://github.com/pyanodon/pycoalprocessing/commit/3c677fb311540e29b756ed27b7a308af7f66ed74

JeromeJ commented 2 weeks ago

EDIT: It works ok if you use https://mods.factorio.com/mod/squeak-through-2 instead of the regular one. Thank you for the heads up on Discord. 👍


Hello all!

I personally use Squeak Through as an accessibility feature and to make the game more enjoyable for myself.

Would there be a world where this issue could be fixed differently??