Repository navigation
Resources and Compatibility
Pipster does not need any other content mod. It connects to other mods only through the standard transfer interfaces of each loader. Any block that offers these interfaces on a side can be connected to a matching pipe.
| Resource | Fabric | NeoForge |
|---|---|---|
| Items | Fabric Transfer API | NeoForge item capability |
| Fluids | Fabric Transfer API | NeoForge fluid capability |
| Energy | Team Reborn Energy (included in Pipster) | NeoForge energy capability |
| Gas | Pipster gas API | Pipster gas API |
Most technology mods offer these interfaces. Mod developers find the exact interface names per version on the API page.
Units:
- Items: count. Item components (enchantments, names, custom data) are always kept.
- Fluids: stored exactly (81,000 units per bucket, the Fabric droplet). NeoForge fluid handlers work in millibuckets; Pipster never loses fractions, it keeps them until they add up.
- Energy: 1 E = 1 FE = 1 Team Reborn Energy unit. That is a balance decision, not a physical conversion.
Minecraft has no built-in gas, and there is no common gas interface on both loaders. Pipster therefore supports gas in two ways:
-
The Pipster gas API (
pipster:gas): mods can register gases and offer a gas handler. See For Mod Developers. -
Gaseous fluids (
pipster:fluid_gas): any fluid listed in the fluid tag#pipster:gaseoustravels in gas pipes instead of fluid pipes. The tag is empty by default; add fluids with a datapack.
A gas pipe network carries only one of these kinds at a time. Pipster never converts between them.
Mekanism chemicals are not supported yet (planned for a later version, NeoForge 1.21.1). There is no adapter for Mekanism's chemical system, so Mekanism gases do not travel through Pipster gas pipes. Mekanism items, fluids and energy use the normal interfaces above.
Pipster contains optional support for the following mods. None of them is required. If a mod is not installed, Pipster behaves exactly as without the integration. Which Minecraft versions have which integration is listed under Supported Versions.
Looking at a pipe shows the port of the side you look at: side, mode and status (for example "West: Extract · Active"). Looking at the pipe centre lists all its ports. A tesseract shows its sides and the bound channel per resource type. Channel names are only shown to players who have access to the channel; others see "channel without access". The server decides what is sent.
Place a computer (or a wired modem) next to a pipe or tesseract and use
peripheral.find("pipster"). Computers can always read: network size, ports with mode,
status, priority and buffered resources, tesseract sides. To let a computer control a port,
set the port's redstone button to Comp. (computer). Only then may the computer switch the
port on and off (setPortEnabled) or change its mode (setPortMode); the port shows "Switched
off by a computer" while it is off. Channel names are never available to computers, and computers
cannot pick channels. The redstone option "Comp." only appears when CC: Tweaked is installed.
All methods: API for mod developers.
Pipes remember who placed them. A port does not take from or put into a block that a claim protects against that player:
- Open Parties and Claims: the same rule OPAC uses for pistons and hoppers. A pipe outside a claim (or in another claim) cannot reach into it, unless OPAC allows it (same party, allies, claim settings).
- FTB Chunks: a pipe can reach into a claimed chunk only if its owner is a member or ally of the claiming team.
Such a port moves nothing and shows "Protected by a claim". Pipes of different players also do not join across such a claim border. Claims are re-checked every 30 seconds, so a claim made later also stops existing pipes.
Players in one FTB Teams team or one OPAC party share ownership:
- a teammate counts as owner of your tesseract channels (see, use, rename, invite, delete),
- may configure your tesseracts like the player who placed them,
- and your pipes and theirs are not separated by claims.
This works for everything placed before someone joined, too: joining takes effect within a few seconds (pipes within 30 seconds). Leaving the team takes the rights away the same way; a tesseract bound by someone who left goes offline.
Two permission nodes:
| Node | Allows |
|---|---|
pipster.admin |
see and edit other players' private tesseract channels |
pipster.command |
the /pipster command |
With a permission mod (for example LuckPerms; on Fabric through fabric-permissions-api, on NeoForge through NeoForge's permission system) these can be given to any player. Without a permission mod, or if a node is not set, operators (permission level 2) have these rights, exactly as before.
The Conduit Wrench is in the item tag c:tools/wrench, so other mods can recognise it as a
wrench. Pipster's own actions still need the Conduit Wrench.
-
Fabric energy is push-based. Generators push energy into cables. Pipster never pulls energy out of a Fabric energy storage. Set the generator's port to Extract or Both so the push is accepted.
-
Quarantine. If a block reports impossible numbers (for example, it claims to accept more than it was offered or hands out a different item than requested), Pipster pauses that connection for a while (default one minute) and shows "Quarantined: faulty foreign handler". Pipster still keeps every resource it already holds.
-
Quantity rules need blocks that report their contents reliably. Otherwise the rule blocks, see Filter and Rule Cards.
-
Crashes and exactly-once. A transfer is either completed or rolled back within a tick. But Minecraft saves chunks separately, so if the server process is killed mid-tick (power loss, task manager), items that were moving between two machines at that moment can be lost or duplicated. That is a Minecraft limitation and applies to any transport mod. Normal saving, stopping and chunk unloading are handled correctly.
-
Cauldrons and other "whole portion" containers. A cauldron only gives out whole levels (a third of a bucket or more). Copper (100 mB/t) and Reinforced (400 mB/t) fluid pipes can never move such a portion in one tick, so nothing moves and the port says "Source only gives larger portions: use a higher pipe tier". Use Precision pipes or better. Tanks of other mods work with every tier.
Automated tests use vanilla blocks (chests, cauldrons) and Pipster's own test blocks for energy and gas, and they run again with each supported integration mod installed. Before the release the mod was also played with Energized Power, Storage Drawers, Sophisticated Storage, Oritech, Create and Immersive Engineering. If you find a mod that does not work with Pipster, please report it on the issue tracker.