I've placed three roboports in series and completely discharged the middle one.
What happened?
The other roboports got their own networks, both with the same custom name. After the discharged one reconnected, it created a new logistic network with autogenerated name
What did you expect to happen instead? It might be obvious to you, but do it anyway!
The merged network should have kept the custom name
Does it happen always, once, or sometimes?
In a line of roboports, you always need odd number of roboports where all the even roboports completely lose power. Generally, every single roboport must get isolated before it can start happening.
It might be less relevant for even smaller bases, but for outposts and walls it is a common configuration. And with a larger outage the autogenerated network might take over your entire base. To unaware players it might look like their logistic network has somehow reset.
Test with five roboports included
Code: Select all
/c local tk, nn, w, g ,x ,z, zz, s , hdlr, mr, dc; nn = "MyNet"; w = 120; s = game.player.surface; dc = function(r,c) r.energy = c and r.electric_buffer_size or 0 end ; mr = function(i) local r = s.create_entity{name="roboport", position = {i*50, 0}, force = "player"}; dc(r,1); return r; end; x = mr(0); g = mr(1); z = mr(2); zz = mr(3); zzz = mr(4) z.logistic_cell.logistic_network.custom_name = nn; hdlr = function(p) local t = p.tick; if not tk then tk = t; return end; if t == tk + 1*w then dc(zz); dc(g) elseif t == tk + 2*w then dc(zz,1); dc(g, 1) elseif t == tk + 3*w then if z.logistic_cell.logistic_network.custom_name ~= nn then game.print("nay") else game.print("yay") end elseif t == tk + 4*w then g.destroy(); x.destroy(); z.destroy(); zz.destroy(); zzz.destroy(); script.on_nth_tick(1,nil) end end; script.on_nth_tick(1,hdlr)