Add logistic restrictions

Place to ask discuss and request the modding support of Factorio. Don't request mods here.
Post Reply
CaveGrinder
Inserter
Inserter
Posts: 35
Joined: Fri Aug 24, 2018 7:42 pm
Contact:

Add logistic restrictions

Post by CaveGrinder »

TL;DR
A whitelist/blacklist for items supported in belts,bots,trains,chests,inserters,roboports (basically everything with an inventory)
(goes in a different direction compared to viewtopic.php?f=65&t=97967 )

What ?
I want to specify in the prototypes of logistic entities (belts,bots,trains,chests,inserters) in a white+blacklist what items are supported.
With supported i mean, for example if i specify "rocket-silo" in the blacklist of "fast-belt" then that belt cannot transport this item. just like inserters already check if the destination can take that item, an inserter would then never put it onto that belt.
the same would apply to bot restrictions: a logistic bot with item in the blacklist cannot transport it and a construction bot with an item cannot place it. (They shouldn't pick i up either of course)
likewise chest and train inventories would prevent an item from being inserted there.
a whitelist "clockwork-bot" in a roboport means only that bot type can be inserted and only that bot routes to the port for recharging.

Essentiallly i want the engine equivalent of
LuaInventory::can_insert(items)
to check a generic white+blacklist of the prototype first. This white+blacklist CANNOT be changed by the player, only by the modder changing the prototype, and does not interact with the filters managed by the player.

In my opinion no user interface is needed. (But if it is visualized, that would be a bonus feature)
If a prototype has both a whitelist and blacklist, the engine could throw an error on prototype parsing.

surprisingly i did not find a request directly like this, although the search terms are too generic and cover most topics in the forums...
There was this one but it had a very narrow focus: viewtopic.php?f=221&t=80402 , and there was no motivation given for closure.

Why ?
This greatly expands the capabilities that modders will be able to bring into the game. Just a couple of mod ideas that this will enable:
- enables differentiation of bot networks e.g. clockwork-bot for the early game and airplanes for the late game
- safe handling of radioactive material in castor trains and radioaction shielded belts/bots
- solve the conumdrum that "boxing" mods ridiculously increase throughput by restricting boxes to heavy duty belts
- blacklist "buildings" from construction drones and add a sky-crane / Cargolift zepplin for really heavy buildings
- heavy duty belts specialized for "building" entities - or blacklist entirely and only allow transport via sky-cranes.
- blacklist "tiles" from construction bots and add a specialized "landfill" bot with higher inventory size
- differentiated modules, e.g.modules that can only go into assemblers vs those for refineries vs those that go into beacons
The proposed solution does not change the base game in any way - none of the proposed mods would ever see a consensus in the community, but many have been requested before.

LasXor
Manual Inserter
Manual Inserter
Posts: 1
Joined: Wed Nov 29, 2023 11:30 am
Contact:

Re: Add logistic restrictions

Post by LasXor »

Warming this post up as we find ourselves in a playthrough where we would have liked to restrict certain Items from being placed on belts specifically.

We are using IntermodalContainers and wanted to restrict filled containers so that they can only be placed in chests and trains.

Like OP we are seeing a lot of potential for modding as well as playthrough customizations for our events and would love to see something of the sorts implemented.

LasXor
- Big Community Games -

Post Reply

Return to “Modding interface requests”