Space Engineers

Space Engineers

124 ratings
NDS Inventory Manager 5
2
4
2
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
1.129 MB
4 Nov, 2018 @ 10:24pm
3 Dec, 2024 @ 3:09am
290 Change Notes ( view )

Subscribe to download
NDS Inventory Manager 5

Description
Count, Sort, Refine, Assemble, Disassemble, Item Loadouts, Fill Bottles, and Custom Logic

Now supports Sprite and Text simultaneously!


Better Stone Guide
Industrial Overhaul Guide
DNSK Guide
EDSR Guide


Features and Functions in the order they are performed
  1. Scan and Process Blocks
  2. Count Items
  3. Count Blueprints
  4. Arrange Queues in Assemblers
  5. Queue Assembly
  6. Queue Disassembly
  7. Remove Excess Queued Assembly
  8. Remove Excess Queued Disassembly
  9. Arrange Ores in Refineries
  10. Process Limits
  11. Sort Items
  12. Distribute Items
  13. Spread Inventories
    1. Refineries
    2. Reactors
    3. Weapons
    4. O2/H2 Generators
    5. Gravel Sifters
    6. Parachutes
  14. Sort Items Between Storages by Priority
  15. Order Items in Storage by Category and Name
  16. Spread Queues Between Assemblers
  17. Fill Custom Loadouts
  18. Trigger Custom Logic
  19. Check For Stalled Assemblers
  20. Find Mod Items and Blueprints

Panels Types
Panels: Put the panel tag [nds] in the name and adjust panel options in the Custom Data
Cockpits: Put the panel tag [nds] in the name and adjust panel options in Custom Data
  • Status
    • Shows status of Production blocks
    • Shows list of blueprints currently being assembled or disassembled in Assemblers
    • Shows list of ores currently being refined in Refineries
    • Shows list of items currently being processed in H2/O2 Generators
  • Output
    • Shows status of script and output messages
  • Cargo
    • Shows storage capacities for specific item categories and/ or the total capacity
  • Item
    • Item panel that displays items by category and/ or by name

Commands
- Case insensitive
  • Merge? Toggle merge help list
  • Merge Toggle mod item merge process
  • Clear Queue Clear all assemblers' queues
  • Clear Functions Restart all functions
  • Update Reset specific options in main programmable block to current defaults, requires recompile
  • Reset Reset all options in main programmable block, requires recompile
  • Set CATEGORY VALUE Set an item CATEGORY quota to a set VALUE
    Set Ingot 20000 Set Component 500
  • Set ITEM VALUE Set matching ITEM quotas to a set VALUE
    Set Steel Plate 2000 Set Small 500
    • Item type matches the beginning of the display name for items, Small will include Small Steel Tube
  • Item type matches support specific matches using apostrophe
    Set 'Iron Ore' 500[/list]
  • Full Returns toggles to default with all functions enabled
  • Basic Disables more advanced functions
  • Monitor Disables all control functions. Only counts items and blueprints. Enables conveyors on all blocks
  • Scan Restarts functions and resets scan delay to trigger an immediate scan. Almost as good as a recompile
  • Echo Toggle echo function
  • Error Toggle error filter and show past errors



To Do:
  • Update guide
  • Update videos
Popular Discussions View All (4)
8
6 Feb, 2024 @ 2:48am
PINNED: Suggestions and Changes
nicknds
8
31 Dec, 2023 @ 10:37am
PINNED: Bug Reports
nicknds
1
19 Mar, 2022 @ 12:55am
How does Span work exactly?
Joshuawood
603 Comments
SkeletonDR 7 Jul @ 6:53pm 
Im on a server that limits a programmable block Runtime, how do i slow the script down?
Jim Paper 24 Jan @ 11:18pm 
Don't worry man, I'm just glad you still keep this script alive despite how long it's already there.
nicknds  [author] 24 Jan @ 10:21pm 
Ok I will review the limit and transfer code.

Sorry for the delay. I'm working, studying, and moving at the same time.
Diedel 20 Jan @ 1:54am 
The ignored limits is also what i got with the solution you suggested for my problem. I even set the NoSpread in the programmable block, yet i still get all ores in all refineries.

On a separate note it seems that NDS has a problem with ProtoTech Scrap, all the others work, this one doesn't show up anywhere, but i think it get dismantled. I presume that is a conflict with the regular scrap ?
Jim Paper 20 Jan @ 1:43am 
1. Yes i did
2. No
3. No
4. No

I just tested out to exclude the problem with Industrial Overhaul on a new world (NO MODS) and grid with only 1 cargo 1 basic refinery, and the result is that NDS did manage to detect the limit, but after a few minutes it puts back ores to the refinery, and that loop continues. So the problem could only occur in code.
nicknds  [author] 20 Jan @ 1:12am 
Ok the naming is correct, just going through the possible issues before I do a full test.

Did you remove the // in front of the //Limit=0:ore:raw? Commented lines are ignored

Are there any sorters that may be pushing items into the smelter?

Do you have drills actively drilling? Drills push ores to the first inventory that accepts them

Do you have more instances of the manager or any other scripts that could move ores around?
Jim Paper 19 Jan @ 11:59pm 
Name=Raw Cobalt||Category=Ore||Quota=0
^Type=MyObjectBuilder_Ore||Subtype=Cobalt||Blueprint=None||Refine=True||Fuel=False||Display=True

I don't believe there is a problem with naming.... even if we go with Limit=0:*:* its should logily never put anything inside the smelter but NDS does it anyway
nicknds  [author] 19 Jan @ 7:45pm 
Jim Paper,

Have you updated the names of the ores to use the prefixes I set up?
It will match all items with a display name of 'raw*' like 'raw cobalt'
If you left it on the defaults, then cobalt will remain 'cobalt' and will not match the search for 'raw cobalt'
Purified and crushed ores are prefixed with their respective states so they should work as expected without renaming them

The spread function ignores limits for speed purposes because spreading 10 ores between 15 refineries makes around 10^15 actions and checking the limits for that will nearly double the time it takes, hence the Options=NoSpreading for limited refineries, which may be causing the ores to reappear in the smelter
Jim Paper 19 Jan @ 11:19am 
Okay, so I'm using this script with the Industrial Overhaul, and I have a problem with a smelter. From the old guide and your recent message to set it up correctly, all I need to do is "Options=NoSpreading" and "Limit=0:ore:raw:crushed or Limit=0:ore:raw|0:ore:crushed" but none of them works. smelter constantly ignores the limit; additionally, when I change it to 0:ore:rawcobalt this specific ore is being removed for a few seconds and then again ending up in the smelter.
nicknds  [author] 11 Jan @ 6:51pm 
Diedel,

The matching system uses the custom names, not the Subtype ID, so the name you see on panels is the matching name
Matches are also stripped of spaces and capitalization so "Steel Plate" = "steelplate"

Typically Ores do not have much use beyond refining into Ingots, so there was not a system put in place to prevent refining all the Ore. What you can do is limit Refineries to specific Ores and toggle them on/off when their Ingots reach a specified amount using Limits and Logic

e.g. a Iron Ingot refinery
Options=NoSpread
Limit=0:ore:*|100000:ore:iron
LogicAnd=ingot:iron<quota

This will only allow Iron Ore into the Refinery, it will not spread to and from other Refineries, and it will turn on when Iron Ingots are below their set quota and off when they reach their quota

This can be extended with Timers and Cloning to apply to unlimited Refineries. You can engineer anything!