Space Engineers

Space Engineers

Nanite Control Factory - Automated Construction (Not working - Old Version)
[BUG] Power consumption over 700 MW for one factory
Hello together,

yesterday i build a big ship that in-cooperated 4 large reactors and 4 factories. I wanted to test how good deconstruction worked so i went out and disabled 2 pirate bases.
With about 1.2 GW power i assumed i was on the safe side - wrong. With 4 factories online i was out of power. OK - but weird, as no block was damaged on my ship. Whatsoever, after x times turning the factories on and off, i came to the point ONE factory was using over 80% of all available power. Factory itself showed something about 156 MW power required, but the ship stats showed something else. If I disabled the only factory online, problem went away.
One Factory using over 600 MW? Does not seem to be right somehow. :)

Also, each factory online will issue heavy stuttering on the DS, 4 factories online and you barely move anywhere.

I am playing on a DS server, in survival mode. I have access to the server.
Any good way to help debugging this issues?
Last edited by [SEK2000]Blackhawk; 26 Apr, 2016 @ 9:04am
< >
Showing 1-15 of 22 comments
tyrsis  [developer] 26 Apr, 2016 @ 10:00am 
Yes that does not seem right at all, let me look into it.
Hmm, now i have a single factory that needs 3.5 GW power.
I have a feeling that all factories that are available on the grid are included with all available streams, even if they are offline. Funny fact: It shows me the missing power are needed for the BATTERIES...
Nesferat80 27 Apr, 2016 @ 8:58am 
If you have not enough power for the nanites factory it always show up that the missing power is needed for the battries. Even if you have none. Seems to be that SE mean the power consumption of the factory is for a batterie.
Tyrsis need access to your world to find out the problem (publish your world for bug fixing).
tyrsis  [developer] 27 Apr, 2016 @ 9:11am 
Can you tell me a little more about your setup so I can try to duplicate it? Like how many factories, what you're doing, etc.
maelstrom 28 Apr, 2016 @ 3:46am 
Hello. We have the same problem on our DS (not tried in SP). We have two factories on our ship we currently build and they do all kinds of jobs, from looting ores/stuff, welding and deconstructing enemies. Somehow we end up at almost every session with one factory needing 90% power of our 4 large reactors.
I didn't find a trigger for that though... sorry :(
At some point the factory/ies simply stop working until everyone leaves the server and relogs.
tyrsis  [developer] 28 Apr, 2016 @ 7:13am 
I will be putting out a new version soon with a new setting called "DeconstructionPerformanceFriendly" which will address two issues. a) The simspeed hit of factories and b) This issue (I hope). Hopefully we can track it down, but it seems elusive, and I'm unsure how it should even be possible (it actually sounds like a bug in how the server is handling something, and not the mod, but have to investigate more).
Wilco, waiting for that release. If you need a server (DS) for testing, I'm willing to help.
So, i have tested the new edition and the error remains. So, here comes a description what has been done

DS, Survival. Assembler eff 0.20, 6 times the cargo. Nothing special
1) Build base in asteroid. Installed one NCF
2) Build a big ship. one NCF, later completed with a second one.
3) Build second NCF in Base
4) Build big ship for testing, 4 NCF on board, 4 large reactors. Later deconstructed
5) Build a new Ship, 4 NCF (2 incomplete), 4 large reactors. Jumped out to kill pirate star bases. Deconstruction power with two enabled NCF seemed high.
Completed the 2 remaining NCF's. When deconstructing with all of them, I'm overloaded by 3 GW (6 yesterday)
Even so, i have 25% load even if the NCF's are just switched on. NCF status indicate no power used

Somehow my guess is that the grids are not completely separated, and all other NCF's seem to be linked somehow. Also, i understand 6 streams are each available for construction, deconstruction and gathering floating elements which could sum up to to 468 MW - and sometimes the power is still requested from the NCF's somehow. Restarting the server helps sometimes.

Maybe it would be helpful to indicate in the log file the power requested by streams and the power pulled by block (if possible)?
Last edited by [SEK2000]Blackhawk; 29 Apr, 2016 @ 3:19am
tyrsis  [developer] 29 Apr, 2016 @ 5:39am 
Yeah I'm redoing logging right now so I can accurate see what is going on. It should be done today sometime.
[SEK2000]Blackhawk 29 Apr, 2016 @ 11:35am 
Maybe releated, Log is spamming the following events....

[20:31:45] Update Error: System.NullReferenceException: Object reference not set to an instance of an object.
at Sandbox.Game.Entities.Cube.MyProductionBlock.GetObjectBuilderCubeBlock(Boolean copy)
at Sandbox.Game.Entities.Cube.MyAssembler.GetObjectBuilderCubeBlock(Boolean copy)
at Sandbox.Game.Entities.Cube.MySlimBlock.GetObjectBuilderInternal(Boolean copy)
at Sandbox.Game.Entities.Cube.MySlimBlock.VRage.Game.ModAPI.IMySlimBlock.GetObjectBuilder()
at NaniteConstructionSystem.Entities.Tools.NaniteToolBase.Complete(Boolean replace)
at NaniteConstructionSystem.Entities.Tools.NaniteToolBase.Update()
at NaniteConstructionSystem.Entities.Tools.NaniteToolManager.Update()
at NaniteConstructionSystem.Entities.NaniteConstructionBlock.Update()
at NaniteConstructionSystem.NaniteConstructionManager.ProcessNaniteBlocks()
at NaniteConstructionSystem.NaniteConstructionManager.UpdateBeforeSimulation()
[20:31:45] Update Error: System.NullReferenceException: Object reference not set to an instance of an object.
at Sandbox.Game.Entities.Cube.MyProductionBlock.GetObjectBuilderCubeBlock(Boolean copy)
at Sandbox.Game.Entities.Cube.MyAssembler.GetObjectBuilderCubeBlock(Boolean copy)
at Sandbox.Game.Entities.Cube.MySlimBlock.GetObjectBuilderInternal(Boolean copy)
at Sandbox.Game.Entities.Cube.MySlimBlock.VRage.Game.ModAPI.IMySlimBlock.GetObjectBuilder()
at NaniteConstructionSystem.Entities.Tools.NaniteToolBase.Complete(Boolean replace)
at NaniteConstructionSystem.Entities.Tools.NaniteToolBase.Update()
at NaniteConstructionSystem.Entities.Tools.NaniteToolManager.Update()
at NaniteConstructionSystem.Entities.NaniteConstructionBlock.Update()
at NaniteConstructionSystem.NaniteConstructionManager.ProcessNaniteBlocks()
at NaniteConstructionSystem.NaniteConstructionManager.UpdateBeforeSimulation()
[20:31:45] Update Error: System.NullReferenceException: Object reference not set to an instance of an object.
at Sandbox.Game.Entities.Cube.MyProductionBlock.GetObjectBuilderCubeBlock(Boolean copy)
at Sandbox.Game.Entities.Cube.MyAssembler.GetObjectBuilderCubeBlock(Boolean copy)
at Sandbox.Game.Entities.Cube.MySlimBlock.GetObjectBuilderInternal(Boolean copy)
at Sandbox.Game.Entities.Cube.MySlimBlock.VRage.Game.ModAPI.IMySlimBlock.GetObjectBuilder()
at NaniteConstructionSystem.Entities.Tools.NaniteToolBase.Complete(Boolean replace)
at NaniteConstructionSystem.Entities.Tools.NaniteToolBase.Update()
at NaniteConstructionSystem.Entities.Tools.NaniteToolManager.Update()
at NaniteConstructionSystem.Entities.NaniteConstructionBlock.Update()
at NaniteConstructionSystem.NaniteConstructionManager.ProcessNaniteBlocks()
at NaniteConstructionSystem.NaniteConstructionManager.UpdateBeforeSimulation()
tyrsis  [developer] 29 Apr, 2016 @ 2:26pm 
I am adding a ton more debugging, though I think I may have found the issue. I'll publish something tonight to try to fix it. MP is not being very friendly right now.
tyrsis  [developer] 29 Apr, 2016 @ 9:23pm 
I'm pretty sure I fixed this one. There were situations where multiple factories were causing targets to not be removed properly on the client. Here's the thing though, the power usage reported on the client was actually just a client side number, not the server side. Server side power usage was normal, it was just being reported to the client wrong. Anyway, it should be better now. Also logging is much improved so I can get a good picture of what's going on with logs now.
I can confirm it is a lot better now, but unfortunately it is not completely fixed. I just had the problem again, 8.8 GW required (while 1.2 available) for 4 NFC. It happens less often, and in most cases it stays below the critical point. From the log file i can confirm that the reported values are correct, but i have seen the power jumping up and down much more than than reported in the log file.

I have 2 additional things to report: Sometimes, nanites fly out into the wild, in my case it seems they would like to return to my homebase. After some time, the nanite graphics is completely void.
2nd, the NFC seems to to overload the conveyor system very much. From this point, two issues may occur: lagging like hell, and server crashes when the grids cargo is full and the NFC is not able to push out everything. In the moment you try to access the cargo (does not matter how), server is gone.
tyrsis  [developer] 30 Apr, 2016 @ 4:44pm 
The bug where nanites are flying seemingly to a random position is a bug, and will be in your log file. If you can give me a copy of that when you see that, I can look at it. The random ones flying away are the ones that are causing your reported power to be wrong. (It's actually just a client side bug, but I need to find all the issues so it stays consistent). If you see it happen, send me the log here (put it on pastebin.com or paste.ee and paste a link).

For your second issue, maybe it has to do with how I'm pushing out the cargo when it's 75% full. Might be an issue that the server doesn't like. I can add a NoPush command that will stop the automatic push.
Last edited by tyrsis; 30 Apr, 2016 @ 4:46pm
Ok, update:
Ship with 4 NFC's, deconstructing enemy base: Power display rising up to -37 GW. Switching off the NFC's solves the issue. After grinding the base, all nanites moved out into the wild....

Log file for this issue, with the described problem at the end:
NFC LOG [www.sek2000.net]
Last edited by [SEK2000]Blackhawk; 4 May, 2016 @ 12:00pm
< >
Showing 1-15 of 22 comments
Per page: 1530 50