Blueprint Slicer

This is the place to request new mods or give ideas about what could be done.
Post Reply
User avatar
SupplyDepoo
Filter Inserter
Filter Inserter
Posts: 286
Joined: Sat Oct 29, 2016 8:42 pm
Contact:

Blueprint Slicer

Post by SupplyDepoo »

Make a mod which can break a blueprint up into independent slices.

A slice is a collection of any number of entities that are interacting with each other in any way, directly or indirectly. Every slice can become its own blueprint. (Typically a finished blueprint is made up of only one slice.)

Examples of interactions are:
  • a belt piece directed toward another belt piece (to any side except, perhaps, the front?!)
  • inserter pickup/drop locations (belts, chests, assemblers, etc)
  • electric entities within the power field of an electric pole
  • two rails touching in any way (forming a block)
  • circuit network connections
  • roboports forming a logistics network and entities with logistics network conditions inside that network
Picking up a blueprint in your cursor and dropping it on a special GUI drop-zone could return to you a blueprint book containing all of its distinct slices. Grid snapping settings would be preserved (each blueprint slice inherits the original blueprint's settings).

An additional function of this mod could be to automatically remove orphaned/unrelated/background entities from a blueprint based on heuristics such as the size of the slice it forms (leaving only entities belonging to the biggest possible slice). For example, when you blueprint a big train station, clicking a button to invoke this function would remove the odd pipes or belts that are in the area but just passing through (not related to the train station), while leaving pipes used for filling/emptying fluid wagons intact. Essentially this would automate the process of having to right-click these entities individually in the blueprint GUI in order to remove them, so this function could be called something like "Clean up", or if placed next to the aforementioned drop-zone, "I'm feeling lucky" ;) . Another stretch goal could be to have various options or modes (perhaps user-defined) for excluding certain entity types from automatic removal, possibly only under certain conditions.

Another useful function could be to provide a convenient, interactive way to trim away entire branches (or "stubs") of a slice.

This mod could be as simple as just slicing a blueprint into a blueprint book as described, or it could be as complex as implementing all of the above functionality in a high-level GUI that lets you trim slices and branches of slices, or even lets you re-compose any of these parts any way you'd like. There is an opportunity to include scoped analytics such as recipes, consumption rates (like Rate Calculator), etc, that might help the player understand and refactor their blueprint/slices. (Or you can take this idea to make a mod centered more on the concept of Rate Calculator as your foundation!)

Add your ideas below and let me know if a mod like this already exists!

Post Reply

Return to “Ideas and Requests For Mods”