Transport Drones (Continued)

by Shadoxa

Adds transport drones and transport depots. Update of Klonan's Transport Drones for Factorio 2.0.

Content
15 days ago
2.0
1.17K
Transportation Logistics Logistic network Circuit network Storage

g fluid

30 days ago

from requester fluids going wery slow flow, like 15/s

30 days ago

Hi, I think there's a setting to play with that

30 days ago

with one make flow faster? i only see that
Transport drone fluid capacity
Pollution per second
Transport drone fuel per drone
Fuel consumption per meter
Transport drone fuel

30 days ago

try change that i modifet work

*** script/depots/request_depot.lua

@@
function request_depot:update()
self:check_request_change()
self:check_fuel_amount()
self:check_drone_validity()
self:check_drone_amount()
self:update_circuit_writer()
self:make_request()
+ self:push_fluid_hack()
self:update_sticker()
self:update_circuit_reader()
end

@@
function request_depot:get_current_amount()

if self.mode == request_mode.item then
return self:get_output_inventory().get_item_count(self.item)
end

if self.mode == request_mode.fluid then
local box = self:get_output_fluidbox()
return box and box.amount or 0
end
end

+function request_depot:push_fluid_hack()
+ if self.mode ~= request_mode.fluid then return end
+
+ local box = self:get_output_fluidbox()
+ local connected_pipelines = self.entity.fluidbox.get_connections(2)
+ for i, next_box in ipairs(connected_pipelines) do
+ for j = 1, #next_box do
+ local next_fluid = next_box[j]
+ if (box and next_fluid and next_fluid.name == box.name) or not next_fluid then
+ local old_amount = next_fluid and next_fluid.amount or 0
+ local old_temperature = next_fluid and next_fluid.temperature or 0
+ local space = next_box.get_capacity(j) - old_amount
+ local push_amount = math.min(space, box and box.amount or 0)
+ if push_amount > 0 then
+ next_box[j] = {
+ name = box.name,
+ amount = old_amount + push_amount,
+ temperature = ((old_amount * old_temperature) + (push_amount * box.temperature)) / (old_amount + push_amount)
+ }
+ local new_next_fluid = next_box[j]
+ local new_amount = new_next_fluid and new_next_fluid.amount or 0
+ local pushed_amount = math.max(new_amount - old_amount, 0)
+ box.amount = box.amount - pushed_amount
+ if box.amount <= 0 then box = nil end
+ self:set_output_fluidbox(box)
+ box = self:get_output_fluidbox()
+ end
+ end
+ end
+ end
+end

30 days ago

not im but VS studio codex changet some and now work fluid flow

30 days ago

*** data/entities/transport_depot/transport_depot.lua

@@
{
production_type = "output",
- volume = 10000000,
+ volume = 1000000,
pipe_connections = {{ flow_direction="output", position = {0, 1}, direction = defines.direction.south }},
pipe_covers = pipecoverspictures(),
pipe_picture = assembler3pipepictures(),

30 days ago
(updated 30 days ago)

.

30 days ago

Yea sorry now i see what you meant, i think it's fixed in 2.0.10

30 days ago

going check you version :)

29 days ago

The mod Transport Drones (Continued) (2.0.31) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event Transport_Drones_Continued::on_configuration_changed
Unknown entity name: mining-depot
stack traceback:
[C]: in function 'find_entities_filtered'
Transport_Drones_Continued/script/depot_common.lua:707: in function 'on_configuration_changed'
core/lualib/event_handler.lua:112: in function <core/lualib/event_handler.lua:109>

28 days ago

The mod Transport Drones (Continued) (2.0.31) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event Transport_Drones_Continued::on_configuration_changed
Unknown entity name: mining-depot
stack traceback:
[C]: in function 'find_entities_filtered'
Transport_Drones_Continued/script/depot_common.lua:707: in function 'on_configuration_changed'
core/lualib/event_handler.lua:112: in function <core/lualib/event_handler.lua:109>

Should be fixed in 2.0.32

28 days ago

and that bution long time make crash where in toolbars

The mod Transport Drones (Continued) (2.0.32) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event Transport_Drones_Continued::on_lua_shortcut (ID 42)
Unknown sprite "utility/close_white"
stack traceback:
[C]: in function 'add'
Transport_Drones_Continued/script/gui.lua:775: in function 'open_gui'
Transport_Drones_Continued/script/gui.lua:927: in function 'toggle_gui'
Transport_Drones_Continued/script/gui.lua:933: in function 'handler'
core/lualib/event_handler.lua:72: in function <core/lualib/event_handler.lua:70>

28 days ago

and that bution long time make crash where in toolbars

The mod Transport Drones (Continued) (2.0.32) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event Transport_Drones_Continued::on_lua_shortcut (ID 42)
Unknown sprite "utility/close_white"
stack traceback:
[C]: in function 'add'
Transport_Drones_Continued/script/gui.lua:775: in function 'open_gui'
Transport_Drones_Continued/script/gui.lua:927: in function 'toggle_gui'
Transport_Drones_Continued/script/gui.lua:933: in function 'handler'
core/lualib/event_handler.lua:72: in function <core/lualib/event_handler.lua:70>

Nice catch, fixed in 2.0.33

26 days ago

Somehow, it seems the initial problem is not fixed. In game the only way to have a good flow for the fluid is to put a pump directly extracting from the request depot. I was on the 2.0.37 this morning (so way past the 2.0.10 that was supposed to fix the problem).
I originally thought it was a weird problem linked to better fluid handling but even with vanilla pipe, I've got a really slow extraction from the requester depot.

25 days ago
(updated 25 days ago)

Yeah the issue appears back again, trying to pump directly out of a request depot also doesnt appear to fix it, seems to scale on amount in request depot at 55k fluid it pumps out about 150/s fluid. Attaching multiple pumps also doesnt work.

25 days ago

Fixed in 2.0.47, the original mod had a 10M output buffer which caused near-zero fluid pressure (~15/s), a previous fix overcorrected to 1k, which was still too small, now set to 25k (matching a storage tank), and it's a tunable startup setting if needed

New response