Pipebelts

by FoxSylv

Adds pipes to your belts.

Content
6 months ago
2.0
122
Logistics Fluids
Owner:
FoxSylv
Source:
https://codeberg.org/FoxSylv/Pipebelts
Homepage:
N/A
License:
Mozilla Public License 2.0
Created:
7 months ago
Latest Version:
1.2.0 (6 months ago)
Factorio version:
2.0
Downloaded by:
122 users

Pipebelts

A mod that adds pipes to belts. By default, steam, express, and turbo belts all have a new fluid requirement.
The four standard belts all also have an electricity requirement. If the requirements are not met, the belt
disables itself and no longer transports items.

The steam transport belt is a new tier of belt added below the yellow belt that requires steam to function.
The yellow belt is pushed back to the Logistics technology to accomodate the new belt.

Both the steam transport belt and the new requirements for vanilla belts can be configured in the mod settings.

Note on updating

Installing the mod, updating versions, changing your configuration, or adding the mod to an
existing save will trigger a long loading screen upon loading into the world. It may take several
minutes, especially if there are a large number of belts in the world.

The long loading screen is because the script is going through every single transport belt across every
surface, creating the relevent pipebelt data and additional entities, then grouping and sorting all belts
to minimize UPS drop from on-the-fly processing.

For mod authors

Pipebelts can also be used purely as a library mod for other mods to use pipebelts by changing the hidden
pipebelt-lib-mode startup setting to true. All this setting does is disable steam transport belts and the
new vanilla belt requirements in setting-final-fixes and hide these settings from the player.

To make custom modded pipebelts, simply call registerPipebelts from registerPipebelts.lua, passing in a dictionary
[transport belt name] -> {table of extra data}. The requisite prototypes and control processing
will be automatically handled, including for the relevent underground belts if related_underground_belt is set in the belt prototypes and
if related_transport_belt is set in the splitter prototypes.

You can see some examples of registrations in prototypes/pipebelts/. A full explanation of what data is accepted for
registering pipebelts can be viewed in registerPipebelts.lua. Almost everything can be overridden and customized in some way.

The registeredPipebelts table from registerPipebelts.lua contains data on all pipebelts that have been registered. This is
useful for mod integrations.

For contributors

PRs always welcome! If you want to discuss stuff more in-depth, I'm more available on discord.

Known problems:

  • Once you start hitting 50,000+ pipebelts placed, UPS can start being affected. Optimization work is ongoing.