We have long been able to make a locomotive blueprint which requests fuel. The blueprint will show the amount of fuel in the components section of the blueprint display. With 2.0, we can use bots to deliver things directly to assemblers (and chests, and etc), and we can even make blueprints with these requests. The underlying JSON of these blueprints shows these requests in the items.in_inventory section, like for the train's fuel.
Let's say that we want to use this feature to make a wooden chest with a blueprint. If we made a blueprint with the two wood ghosted, we get a blueprint with the following JSON. The blueprint display in-game, however, shows the two wood but thinks it's vehicle fuel, as evidenced by the filter (see attached screenshot).
Code: Select all
{"blueprint": {
"item": "blueprint",
"entities": [{
"entity_number": 1,
"name": "assembling-machine-1",
"recipe": "wooden-chest",
"recipe_quality": "normal",
"position": {
"x": -189.5,
"y": 485.5
},
"items": [{
"id": {"name": "wood"},
"items": {"in_inventory": [{
"stack": 0,
"count": 2,
"inventory": 2
}]}
}]
}],
"label": "Wood chest with 2 wood ghost shows as vehicle fuel",
"icons": [{
"index": 1,
"signal": {"name": "assembling-machine-1"}
}],
"version": 562949956108288
}}
Code: Select all
{"blueprint": {
"item": "blueprint",
"entities": [{
"entity_number": 1,
"name": "assembling-machine-1",
"recipe": "iron-chest",
"recipe_quality": "normal",
"position": {
"x": -187.5,
"y": 501.5
},
"items": [{
"id": {"name": "iron-plate"},
"items": {"in_inventory": [{
"stack": 0,
"count": 8,
"inventory": 2
}]}
}]
}],
"label": "Iron chest with 8 ghosted iron no listing",
"icons": [{
"index": 1,
"signal": {"name": "assembling-machine-1"}
}],
"version": 562949956108288
}}
Code: Select all
{"blueprint": {
"item": "blueprint",
"entities": [{
"entity_number": 1,
"name": "stone-furnace",
"position": {
"x": -191,
"y": 502
},
"items": [
{
"id": {"name": "iron-ore"},
"items": {"in_inventory": [{
"stack": 0,
"count": 5,
"inventory": 2
}]}
},
{
"id": {"name": "solid-fuel"},
"items": {"in_inventory": [{
"stack": 0,
"count": 5,
"inventory": 1
}]}
}
]
}],
"label": "Smelt 5 iron with 5 solid fuel",
"icons": [
{
"index": 1,
"signal": {"name": "stone-furnace"}
},
{
"index": 2,
"signal": {"name": "solid-fuel"}
},
{
"index": 3,
"signal": {"name": "iron-ore"}
}
],
"version": 562949956108288
}}
Suggested fix: Always show the item.in_inventory in the display, and maybe restrict the presence of the vehicle fuel filter to vehicles.
Note: I've also attached a blueprint book with the blueprints I used for this post.