From 6a115d58f9e3628eabb279a3cea0036efb68baf1 Mon Sep 17 00:00:00 2001 From: Zenon Seth Date: Wed, 8 Nov 2023 20:49:41 +0000 Subject: [PATCH] Update README and ROADMAP --- README.md | 30 ++++++++++++++++++------------ ROADMAP.md | 8 ++------ 2 files changed, 20 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 58ebc40..a5f5432 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@ # Logistica # WORK IN PROGRESS - PRE-ALPHA STATE -Logistica is a item transport, distribution and storage mod. +Logistica is an item transport, distribution and storage mod. -The core principle behind this mod is that item transportation is demand-driven: no item is moved unless it is requested somewhere. +The core principle behind this mod is that item transportation is demand-driven: no item is moved unless it is needed somewhere. # Machines @@ -19,27 +19,33 @@ Cables are used to connect a controller to other machines, allowing the establis A Demander is a machine that inserts items into almost any other node that has an inventory. The Demander takes items from the network and tries to keep its target's inventory full of the specific items and the exact count it's configured with. For example, a demander might be configured to target a Furnace's "fuel" inventory and always try to keep 2 coal in it. There's two variation of the Demander: -- Basic Demander: Moves 1 item at a time to fulfil the requested items. +- Item Demander: Moves 1 item at a time to fulfil the requested items. - Stack Demander: Moves up to 1 stack at a time to fulfil the requested items. Demanders check network storage first to fulfil their demand, and if not, they will check any suppliers. ## Supplier -A Supplier acts as a source for specific items that must be configured. It takes items from other nodes' inventories (e.g. chests, furnaces) and makes them available to any demand in the network. Suppliers won't actively push items into the network, but Demanders and Storage nodes can both take items from Suppliers when needed. - -## Storage Injectors -Storage Injectors take items from other nodes' inventories and make them available only to Mass Storage on the network. Just as with Suppliers, they won't push items into the network, but the difference is that Storage Injectors don't need to be configured for any items and instead will act as a source of items for any Mass Storage boxes that is pulling in items. Storage Injectors do not interact with Demanders +A Supplier acts as a source for specific items and must be configured. It takes items from other nodes' inventories (e.g. chests, furnaces) and makes them available to any demand in the network. Suppliers won't actively push items into the network, but Demanders and Storage nodes can both take items from Suppliers when needed. Note that if no items are configured in the Supplier's filter, suppliers will not provide any items at all. ## Mass Storage -Mass Storage box provide mass-storage for items, and are the first place a Demander will look for to fulfil any demand. Mass Storage needs to be configured with the exact items to store, and can also be upgraded to store more items. Mass Storage can also be set to actively pull items in from Suppliers and Storage Injectors. - -Mass Storage boxes also keep their inventory when they are dug, allowing them to be easily moved. - -You can punch Mass Storage boxes with a stack of items and it will be deposited if the mass storage can store that type of item, or sneak + punch it to deposit all items in your inventory to it. +Mass Storage box provide mass-storage for items, and are the first place a Demander will look for to fulfil any demand. Mass Storage needs to be configured with the exact items to store, and can also be upgraded to store more items. +Features: +- Can be dug and keeps its inventory when placed again +- Can quickly deposit items by punching it with a stack or shift-punching it for deposit all stack items. +- Select Front Image: Selects a stored node to display on the front of the storage box +- Reserves a number of items per slot. Reserved items won't be taken by other machines on the network. +- Toggle on/off: For this storage to try and pull items it can store from suppliers in the network ## Item Storage The Item Storage box provides a large number of storage slots, spread over 2 pages -- but it can only store tools (specifically, items that have a max stack size of 1). Item storage is also accessed by Demanders to provide items. +## Storage Injectors +Storage Injectors are the only node that actively tries to insert items into the network its connected to. Storage Injectors, as their name suggest, only inject items into Storage (they don't inject into Demanders). Storage Injectors will scan its target inventory one slot at a time, rotating which slot it checks each time, and attempts to find a storage that can store the target node. + +There's 2 version of the Storage Injectors: +- Item Storage Injector: Takes 1 item at a time from each slot it scans. +- Stack Storage Injector: Injects one stack at a time from each slot it scans. + # Tools ## Network Info Tool diff --git a/ROADMAP.md b/ROADMAP.md index fee9a90..96cd2be 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -2,21 +2,16 @@ Missing Features: - Storage Injector implementation - Item Storage implementation - Storage Access Point - - - Crafting recipes High Priority: -- Rework demanders to be run from controller and to have priority -- Remote Storage Access Point - Ability to name storages - Machine Upgrades - Mesecons compat -- Storage Reserves Medium Priority - Wirelss Network Extender -- Ability to add entity display on storages -- Rework all node textures; make new textures 32x32 +- Remote Storage Access Point - Crafting Supplier - Rework all UI icons to be.. 48x48? 64x64? something else? - Direct pipeworks compatibility @@ -24,6 +19,7 @@ Medium Priority - Demander modes: AND/OR - Mode AND: supply target with "item 1 AND item 2..." - Mode OR: supply target with "item 1" OR (if not available) "item 2" +- Rework all node textures; make new textures 32x32 Low Priority: - Liquid Storage