Move FluidBox bounding box border to prototype property

Place to ask discuss and request the modding support of Factorio. Don't request mods here.
Post Reply
User avatar
_CodeGreen
Long Handed Inserter
Long Handed Inserter
Posts: 61
Joined: Sat Mar 05, 2022 11:30 am
Contact:

Move FluidBox bounding box border to prototype property

Post by _CodeGreen »

I'm currently writing Squeak Through 2 from scratch, as the original mod hasn't been updated since it's 1.1 version bump and the mod creator is MIA. `pipe` and `pipe-to-ground` entities are causing a bit of trouble, because of the 0.2 border added to the bounding box when the FluidBox receives a new connection. For example, the 1x1 entities in Industrial Revolution 3 that have pipe connections have a connection distance of 1.25 to make the arrows appear a little further away from the entity.

Normally, this isn't an issue because the pipes are large enough to be found by the entity search when the 1x1 machines are built, and then the connection logic applies. However, because I can't disable the border addition, I have to resort to making pipes much smaller then they ought to be, which happens to escape the entity search in this scenario, making the machines only connect if the pipe is placed after the machine.

Could this property be moved to the pipe related prototypes instead? This would solve the aforementioned issue with IR3, as well as making the pipe bounding boxes much more accurate to what they should be normally, for things like placing pipes near curved rails and such.
My Mods | If you can't make it perfect, make it adjustable

curiosity
Filter Inserter
Filter Inserter
Posts: 325
Joined: Wed Sep 11, 2019 4:13 pm
Contact:

Re: Move FluidBox bounding box border to prototype property

Post by curiosity »

_CodeGreen wrote:
Fri Mar 22, 2024 10:17 pm
I'm currently writing Squeak Through 2 from scratch, as the original mod hasn't been updated since it's 1.1 version bump and the mod creator is MIA. `pipe` and `pipe-to-ground` entities are causing a bit of trouble, because of the 0.2 border added to the bounding box when the FluidBox receives a new connection. For example, the 1x1 entities in Industrial Revolution 3 that have pipe connections have a connection distance of 1.25 to make the arrows appear a little further away from the entity.

Normally, this isn't an issue because the pipes are large enough to be found by the entity search when the 1x1 machines are built, and then the connection logic applies. However, because I can't disable the border addition, I have to resort to making pipes much smaller then they ought to be, which happens to escape the entity search in this scenario, making the machines only connect if the pipe is placed after the machine.
Why not simply remove the player layer from pipe collision mask? Is it really so important for characters to collide with pipes when the intent is for pipes to be crossable? I can see the importance for larger buildings, but not for something so small as a pipe.

User avatar
_CodeGreen
Long Handed Inserter
Long Handed Inserter
Posts: 61
Joined: Sat Mar 05, 2022 11:30 am
Contact:

Re: Move FluidBox bounding box border to prototype property

Post by _CodeGreen »

curiosity wrote:
Sat Mar 23, 2024 12:09 am
Why not simply remove the player layer from pipe collision mask? Is it really so important for characters to collide with pipes when the intent is for pipes to be crossable? I can see the importance for larger buildings, but not for something so small as a pipe.
Because biters have the same mask as the player and collide with the pipes, and the way I'm doing it makes them unable to pass through the gaps even though the player can. It would make pipes unable to be used as early game walls, which some people like doing.

Also, the version I'm making has a mod setting for people to put in a list of entities they want to remove collision on, for example trees, that way they can walk through and not have to deal with the quirks of them having small collision boxes like being able to fit between rails or solar panels. If someone really wanted to, they could add it to pipes themselves using the setting.
My Mods | If you can't make it perfect, make it adjustable

curiosity
Filter Inserter
Filter Inserter
Posts: 325
Joined: Wed Sep 11, 2019 4:13 pm
Contact:

Re: Move FluidBox bounding box border to prototype property

Post by curiosity »

_CodeGreen wrote:
Sat Mar 23, 2024 3:27 am
Because biters have the same mask as the player and collide with the pipes, and the way I'm doing it makes them unable to pass through the gaps even though the player can. It would make pipes unable to be used as early game walls, which some people like doing.

Also, the version I'm making has a mod setting for people to put in a list of entities they want to remove collision on, for example trees, that way they can walk through and not have to deal with the quirks of them having small collision boxes like being able to fit between rails or solar panels. If someone really wanted to, they could add it to pipes themselves using the setting.
Sounds like you'd want to add an extra layer for biters anyway, so they are not impacted by this setting.

User avatar
_CodeGreen
Long Handed Inserter
Long Handed Inserter
Posts: 61
Joined: Sat Mar 05, 2022 11:30 am
Contact:

Re: Move FluidBox bounding box border to prototype property

Post by _CodeGreen »

curiosity wrote:
Sat Mar 23, 2024 8:23 am
Sounds like you'd want to add an extra layer for biters anyway, so they are not impacted by this setting.
That's an option, but I'm trying to avoid creating any new collision layers if I can. It still doesn't solve the original issue for when they still collide, and I am not comfortable forcing the removal of any collision layers on any entities as a default behavior anyway.
My Mods | If you can't make it perfect, make it adjustable

Post Reply

Return to “Modding interface requests”