Allow creation of dummy values

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

User avatar
Skellitor301
Fast Inserter
Fast Inserter
Posts: 164
Joined: Mon Aug 04, 2014 10:04 pm
Contact:

Allow creation of dummy values

Post by Skellitor301 »

So the parameter system has a bit of a limitation when you want to start putting in extra values that aren't assigned to anything selected to be blueprinted. Allowing the creation of dummy values in the parameter menu that isn't attributed to any existing parameter, aka just an internal value used on the placing of a blueprint, can help solve this limitation

As an example, I'll provide my bot based modular automated mall blueprint
This blueprint is being provided as it has a dummy value which was possible to obtain before the method was patched out. Essentially, you were able to make dummy values in blueprint parameters by having an object with the values and parameters you wanted to make into dummies, blueprint select to start making the blueprint, and edit the blueprint by removing the object in the preview. Currently, this will remove all parameters and values associated with the object from the parameter menu. Before, you could still use and edit the values and parameters despite the objects removal.

How this blueprint uses the dummy value is just one example of why being able to create dummy values would benefit blueprint creation. Below, the screenshot provided shows how the parameters are set up for this blueprint, the dummy value is the second to last.
Screenshot showing desired effect
If you're wondering how this blueprint's parameters work, I'll explain in this paragraph. If you just want to know how the dummy value is used it'll be in the following paragraph. When you place the blueprint the parameters are set up to ask you for 3 things; a recipe which is set to parameter 0, an output item which is set to parameter 7, and a request for desired stack amount which dummy value 0 uses, note you won't find any parameter or logic value in any object in the blueprint with a value 0. Parameter 0 is used for both setting the recipe and generating the ingredient requests for the requester chest. Each parameter that requests an item (1-6) has an associated value (also 1-6) which uses the formula "min(pN_s,p0_iN/p0_t*60)" where the N is the associated value and the formula basically sets the request to either the item's stack size or number of items needed for 60 seconds of crafting, which ever is lower. Parameter 7 is the selected output item, which is essentially the work around for recipes that don't have the same output as the recipe "item". Examples of recipes like this include processing recipes for things like processing fruit or emptying barrels of a liquid which has an empty barrel as its output. Parameter 7 is also used in logistic conditions in these blueprints, providing a quantity of the item in the bot network.

The final input "Input Stack Amount" is where the dummy value of 0 comes into play, which is only used to set an internal variable "st". this is used in a formula "p0_s*st" so the stack amount can be properly provided to value 7. Value 7 is found with parameter 7 in the logistic condition for the crafting machine and inserters. This allows the system to automatically disable the inserters and crafter, which can save on active power consumption, excessive item crafting, and minimizing held items in the recipe buffer.

This is just one example of dummy variables which allows blueprints like this to have as much extra functionality as they can with essentially internal values. The current work around you can have the blueprint include something that can have the set value like a constant combinator, but that will require cleanup after you're finished placing the blueprints you want. This will require you to either go through and delete each combinator by hand or create a deconstruction planner for the combinator, and clear them out while avoiding any that might be nearby and not part of the blueprint. This can add inventory clutter and each combinator that does get placed would draw power unnecessarily. This also goes against the goal of a blueprint like this, which is to minimize excess and held resources as much as possible and maximize efficiency in the form of a clean modular blueprint. This achieves this goal by turning off each module automatically when a set limit is reached, minimizing power each module uses and keeping the amount of stored items in requesters and crafters to a minimum. Using a blueprint like this can also be helpful for when you make planetfall on a planet either for the first time or if your Gleba base was destroyed again, and you can quickly place down some crafters to get yourself up and running.
Post Reply

Return to “Ideas and Suggestions”