[2.1.11] Roboport prototypes do not disable themselves upon running out of power.

Bugs which we just recently fixed in our development version and will reach you in the next release.
MeteorSwarm
Inserter
Inserter
Posts: 23
Joined: Thu Sep 25, 2025 10:49 pm
Contact:

[2.1.11] Roboport prototypes do not disable themselves upon running out of power.

Post by MeteorSwarm »

When cutting off power from a roboport prototype, the roboport will not remove itself from the logistic network as should happen. Instead, robots will remain queued to the roboport, while the robots in the middle of charging will remain suspended in a charging state while no energy is supplied to the robot.

This behavior is not influenced by the `recharge_minimum` value. It appears that roboports are behaving as if they lack a `recharge_minimum` value.

To reproduce:

0. Add the following code to a mod. Load the mod.

Code: Select all

data.raw.roboport.roboport.energy_usage = "0W"
1. Load a fresh save save in cheat mode.
2. Place a roboport. Supply it with power. Place another roboport. Supply it with power
3. Build a constant source of logistic demand, such as a requester chest that requests items from a chest supplied by an inserter removing items from the requester chest.
4. Cut off power from only one roboport. Fill it with logistic robots.
5. When the roboport runs out of power, it will not shut down. Robots queued to charge at it will not attempt to go to the other roboport.


The typical behavior of roboports: When a roboport runs out of energy, it will disable itself, removing itself from the logistic network and prompting robots queued to charge at it to charge themselves elsewhere. When the disabled roboport accumulates energy equal to `recharge_minimum`, it will enable itself and allow robots to charge from it again.
Last edited by MeteorSwarm on Wed Jul 15, 2026 2:55 pm, edited 1 time in total.
Rseding91
Factorio Staff
Factorio Staff
Posts: 17226
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [2.1.11] Roboport prototypes do not disable themselves upon running out of power.

Post by Rseding91 »

Thanks for the report however I am not able to reproduce any such issue. When I test - it works exactly as you say it should. The roboport loses power and any robots interacting with it fly off to the nearest active roboport + it removes itself from the logistic network.
If you want to get ahold of me I'm almost always on Discord.
MeteorSwarm
Inserter
Inserter
Posts: 23
Joined: Thu Sep 25, 2025 10:49 pm
Contact:

Re: [2.1.11] Roboport prototypes do not disable themselves upon running out of power.

Post by MeteorSwarm »

I believe the issue might be related some differences between the vanilla roboport and Muluna's burner roboport.

I've written the following debug code to print all parts of the burner roboport and vanilla roboport with different fields.

Code: Select all

local diffs = ""

for field,value in pairs(data.raw.roboport.roboport) do 
    if not rro.deep_equals(value,data.raw.roboport["muluna-burner-roboport-roboport"][field]) then
         diffs = diffs .. (field .. ": " .. serpent.block(value) .. " vs. " .. serpent.block(data.raw.roboport["muluna-burner-roboport-roboport"][field])) .. "\n" 
        end 

        end

error(diffs)
Code output:

Code: Select all

minable: {
  mining_time = 0.1,
  result = "roboport"
} vs. nil
max_health: 500 vs. 10000
energy_source: {
  buffer_capacity = "100MJ",
  input_flow_limit = "5MW",
  type = "electric",
  usage_priority = "secondary-input"
} vs. {
  buffer_capacity = "100MJ",
  input_flow_limit = "0W",
  type = "electric",
  usage_priority = "secondary-input"
}
energy_usage: "50kW" vs. "0W"
base: {
  layers = {
    {
      filename = "__base__/graphics/entity/roboport/roboport-base.png",
      height = 277,
      scale = 0.5,
      shift = {
        0.0625,
        -0.0703125
      },
      width = 228
    },
    {
      draw_as_shadow = true,
      filename = "__base__/graphics/entity/roboport/roboport-shadow.png",
      height = 201,
      scale = 0.5,
      shift = {
        0.890625,
        0.2890625
      },
      width = 294
    }
  }
} vs. {
  layers = {
    {
      filename = "__muluna-graphics__/graphics/entity/burner-roboport/burner-roboport-base.png",
      height = 277,
      scale = 0.5,
      shift = {
        0.0625,
        -0.0703125
      },
      width = 228
    },
    {
      draw_as_shadow = true,
      filename = "__base__/graphics/entity/roboport/roboport-shadow.png",
      height = 201,
      scale = 0.5,
      shift = {
        0.890625,
        0.2890625
      },
      width = 294
    }
  }
}
base_patch: {
  filename = "__base__/graphics/entity/roboport/roboport-base-patch.png",
  height = 100,
  priority = "medium",
  scale = 0.5,
  shift = {
    0.046875,
    -0.15625
  },
  width = 138
} vs. {
  filename = "__muluna-graphics__/graphics/entity/burner-roboport/burner-roboport-base-patch.png",
  height = 100,
  priority = "medium",
  scale = 0.5,
  shift = {
    0.046875,
    -0.15625
  },
  width = 138
}
recharging_animation: {
  animation_speed = 0.5,
  draw_as_glow = true,
  filename = "__base__/graphics/entity/roboport/roboport-recharging.png",
  frame_count = 16,
  height = 35,
  priority = "high",
  scale = 1.5,
  width = 37
} vs. {
  animation_speed = 0.5,
  draw_as_glow = true,
  filename = "__muluna-graphics__/graphics/entity/burner-roboport/burner-roboport-recharging.png",
  frame_count = 16,
  height = 35,
  priority = "high",
  scale = 1.5,
  width = 37
}
Changing input flow limit back to default has already been confirmed to do nothing.
Changing minimum power consumption to a positive value rather than zero fixed the issue.

Revised reproduction instructions: Before performing the same instructions provided earlier, modify the vanilla roboport with the following code:

Code: Select all

data.raw.roboport.roboport.energy_usage = "0W"
MeteorSwarm
Inserter
Inserter
Posts: 23
Joined: Thu Sep 25, 2025 10:49 pm
Contact:

Re: [2.1.11] Roboport prototypes do not disable themselves upon running out of power.

Post by MeteorSwarm »

I've made a workaround for myself that mostly fixes the issue, but I would appreciate a proper fix that makes this sort of hack unnecessary. https://github.com/nicholasgower/planet ... d0f09a9d90
Rseding91
Factorio Staff
Factorio Staff
Posts: 17226
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [2.1.11] Roboport prototypes do not disable themselves upon running out of power.

Post by Rseding91 »

Ah I see. Ok, I've changed it for the next release so a roboport will turn off it runs out of power regardless of passive energy consumption.
If you want to get ahold of me I'm almost always on Discord.
Post Reply

Return to “Resolved for the next release”