#making steam assemblers function like steam engines
1 messages · Page 1 of 1 (latest)
Is it even possible to make my assemblers function like the steam engines do?
Right now, what happens is they function anywhere between 100c and 500c, and any lower or higher they'll just shut off and refuse the steam. there is no benefit for 500c steam compared to 100c steam.
In the steam engine, <100c steam is refused, but >165c steam isn't refused, but there are no additional benefits
I tried to copy the keys and the values directly from the game's data folder & entities.lua file, but that didn't work either.
local jelqing_machine_2 =
{
name = "jelqing-machine-2",
type = "assembling-machine",
icon = "__speedy-gasses__/graphics/icons/jelqing-machine-2-item.png",
icon_size = 64,
crafting_speed = 2.5,
max_health = 400,
flags = {"placeable-neutral", "placeable-player", "player-creation"},
minable = {mining_time = 0.2, result = "jelqing-machine-2-item"},
crafting_categories = {"crafting", "basic-crafting", "advanced-crafting"},
energy_source =
{
type = "fluid",
fluid_box =
{
pipe_connections =
{
{type = "input-output", position = {0, 2}},
{type = "input-output", position = {0, -2}},
},
maximum_temperature = 500,
minimum_temperature = 100.0,
filter = "steam",
fluid_usage_per_tick = 1,
},
scale_fluid_usage = true,
},
energy_usage = "450kW",
collision_box = {{-1.2, -1.2}, {1.2, 1.2}},
selection_box = {{-1.5, -1.5}, {1.5, 1.5}},
module_specification =
{
module_slots = 4
},
allowed_effects = {"consumption", "speed", "productivity", "pollution"}
}
maximum_temperature and minimum_temperature "Work", but not the same as the steam engine. Not only that, it doesn't appear on the tooltip
The properties for the fluid energy source need to be directly on the energy source, not its fluidbox:
energy_source =
{
type = "fluid",
fluid_box =
{
pipe_connections =
{
{type = "input-output", position = {0, 2}},
{type = "input-output", position = {0, -2}},
},
filter = "steam",
minimum_temperature = 100.0,
},
fluid_usage_per_tick = 0.5,
maximum_temperature = 165,
},```
is "minimum_temperature" nor a property of the enercy source?
I understand why the filter for steam would be in the fluid box, but the minimum_temperature still is confusing to me
actually, I think I might get it?
minimum_temperature is in the fluid box bc it'll disallow anything <100c in
maximum_temperature is un the energy_source bc it gets most effective at 165?
Well, I copied your code exactly, but it still didn't do what I hoped for it to achieve.
It does disallow steam that's less than 100c in, but as soon as it hits 100c, it starts operating at maximum speed. Plus, now the consumption graphic says "consumption: (30/30)/s" instead of just saying "consumption: 30/s of 30/s
So, the only way that the assembler will speed up from 100c steam to 500c steam is if fluid_usage_per_tick = 1, is in the ROOT of the prototype
if It's inside of energy_source, it will always be producing at max speed
and as far as I can tell, that is the ONLY thing that having it in the root changes
I can't seem to have both things at the same time
fluid_usage_per_tick = 1,
energy_source =
{
type = "fluid",
fluid_box =
{
pipe_connections =
{
{type = "input-output", position = {0, 2}},
{type = "input-output", position = {0, -2}},
},
filter = "steam",
minimum_temperature = 100.0,
},
maximum_temperature = 500,
},
energy_usage = "450kW",
this works
slower at 100c, faster at 500c, doesn't let anything <100c in
the only issuees are:
the maximum temperature doesn't show up on the tooltips under the radar
the fluid usage of each machine, frustratingly, seems to be a decicam number
and that just...
seems excessive
all of this is just so frustrating
when it is in the root of the assembler prototype, it isnt getting read by anything (the property is unused)
instead the fluid energy source calculates the fluid consumption based on the max temp and the fluid filter
which explains the weird number for the fluid usage
the maximum temperature doesn't show up on the tooltips under the radar
the fluid energy source never shows max temp in tooltips. i would recommend to post here https://forums.factorio.com/viewforum.php?f=28 to ask for it to be added, but no guarantees
Alright, that makes sense then. It doesn't really matter any more anyway, seeing as if there's no way to make a tooltip, I'm not going to release a mod like that -- but I was wondering how you'd make a the machine take exactly... say, 60/s of steam at 100c, or 60/s of steam at 500c. I don't know what the calculation would be there
cause otherwise it's calculated by the energy_usage, but I don't know that math behind how that number gets turned into the steam/s it uses at any given temperature