Space Engineers

Space Engineers

107 ratings
IQueue Production, Resource and Inventory Manager
2
2
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
532.428 KB
9 Mar, 2018 @ 12:28am
6 Sep, 2023 @ 7:07pm
44 Change Notes ( view )

Subscribe to download
IQueue Production, Resource and Inventory Manager

Description
Updated September 6, 2023

Hello, Engineers!

This script was built from the ground up with two things in mind: user friendliness and lag-LESS-ness! The script poses zero threat to your sim speed and is MP-ready!

Current Features:
  • Automated queueing of materials based on user specified quota
  • Smart Queueing:
    • Queues items in the assembler with the smallest production queue
    • Rotates assembler queue when items sit for too long at the front of the line
    • Assemblers placed in Cooperative Mode when their queue is empty
    • Rotates refinery queue if currently processed ore is not a needed resource
    • Offloads assembled inventory when it becomes full (except for when in disassemble mode)
    • Clears out assembler input inventory if it becomes full
    • NEW! The script will now disassemble items that go over their quota!
  • Displays missing ingots specific to the items it has left to produce
    • Accounts for the conversion to ingots for any ores found
  • Ability to automatically resize the LCD output to fit everything on screen
    • Will revert to scrolling text mode if font size drops below a threshold
  • Modded item addition enabled - see Custom Data of the PB for details
  • LCD Stretching - output can be stretched across two LCDs
  • NEW! The script will now sort inventory into tagged containers!
    • Tags are set in the Custom Data of the PB, and placed in the Name or Custom Data of the cargo to be used (see picture for example)
    • Modded items are also supported! Once you add the item info to the "Modded Items" section of the custom data, recompile the script and it will be added to the end of the "Inventory Management" section
    • The script will report any issues found via an LCD with a configurable tag (see picture for example)

Planned Features
  • Inventory sorting and management - Done!
  • Auto-disassembling - Done!

Setup Instructions:
You will need:
  • A Programmable Block with this script
  • The "Assembler Efficiency" setting from your Advanced World Settings page
    • This is used to accurately calculate the needed resources to finish your quota!
    • You will find where to enter the information in the Custom Data of the PB

There are three ways the script can grab blocks:
  1. Create a SINGLE block group with ALL blocks you want the script to use
    • This should include: Assemblers, Refineries, and any block with an inventory you want found
  2. Set the boolean - "useThisGrid" - in the Settings portion of the Custom Data to TRUE and TAG any LCD you want the script to use
    • TRUE means.. well.. it will only use blocks on the same grid as the PB (includes blocks connected via rotor / piston)
    • TAG can be whatever you want it to be, either placed in the Custom Data or Name of the LCD
  3. Set the boolean to FALSE
    • The opposite of true - means the script will use all blocks it can touch
    • Still need to TAG LCDs

To exclude a block from being used in the case of Option 2 or 3, place "[Exclude]" without quotes in either the Name or Custom Data of the block.

All Quotas can be customized in the Custom Data of the Programmable Block! Simply open the Custom Data and set the values to whatever you like :)

All commands can be found in the Detailed Info output of the Programmable Block. Settings may be changed either via PB argument or via updating the information in the Custom Data of the PB.

Updates
6 September
  • Fixed error from Keen renaming several blueprint definitions
1 March
  • Fixed typo in Elite Pistol definition causing script not to recognize built items
18 February
  • Added new ammo types
  • Fixed a couple of typos from previous update

Let me know if you encounter any errors or have a suggestion / comment / concern, and thanks for stopping by!
Popular Discussions View All (6)
29
7 Sep, 2021 @ 1:47pm
PINNED: Using the script with Modded Items
jTurp
9
28 Jul, 2022 @ 11:44pm
PINNED: Using the script with CUSTOM RESOURCES (Modded Items cont.)
jTurp
4
7 Feb, 2024 @ 2:31am
Auto Adding
123
427 Comments
Nordic Goliath 5 Jul @ 12:02pm 
Getting an error in the code editor:

Program(241,97): Error: Argument 1: cannot convert from 'out VRage.Scripting.MemorySafeTypes.MemorySafeDictionary<string, float>' to 'out System.Collections.Generic.Dictionary<string, float>
GenStone 5 Jul @ 12:14am 
script my beloved come back me, all of the others I can find require me to rename blocks or edit the script directly, both of which suck
Klein 10 Jun @ 5:12pm 
D'X
Klein 11 May @ 7:40pm 
Damn, i love this script, come back jTurp!
royalrollin 30 Apr @ 2:12pm 
The API has changed after the update, Sandbox.ModAPI.Ingame.
By the way, it says: "assembly not found. Compile the script".
Diemar 30 Apr @ 12:32pm 
Agree, After update the script is broken.

90% of my own scripts is broken after update
royalrollin 29 Apr @ 3:19pm 
After the update the script is broken
justaspacecat 29 Apr @ 2:11pm 
Hi, I have got an error since Fieldwork. When I check code/compile, I get an error along the lines of line 241, char 97, argument 1 cannot convert from vrage safe memory to generic dictionary. Is this on my end somehow/ fixable somehow? Prior, it has run fine. thanks!
Sardaukai 22 Apr @ 10:29am 
Hi,
for [Inventory Management] is it possible to set a priority and needed amount?
If this would be possible this would be a gamechanger for me ;)
Ego 11 Jul, 2024 @ 1:18am 
Hi will this script auto refill turrets and weapons ?