(21:22:41) | [Raidable Bases] Grid initialization completed in 15 seconds and 987 milliseconds on a 5800 size map. 2235 locations are on the grid.
(21:22:41) | Exception while calling NextTick callback (NullReferenceException: Object reference not set to an instance of an object)
at Oxide.Plugins.CopyPaste.PasteLoop (Oxide.Plugins.CopyPaste+PasteData pasteData) [0x00f65] in <b1e59fb85e45484ca9c739046c8ec3a6>:0
at Oxide.Plugins.CopyPaste+<Paste>c__AnonStorey3.<>m__0 () [0x00000] in <b1e59fb85e45484ca9c739046c8ec3a6>:0
at Oxide.Core.OxideMod.OnFrame (System.Single delta) [0x00051] in <ec05e0208c9149bba43236ca58fea105>:0
(21:22:56) | Exception while calling NextTick callback (NullReferenceException: Object reference not set to an instance of an object)
at Oxide.Plugins.CopyPaste.PasteLoop (Oxide.Plugins.CopyPaste+PasteData pasteData) [0x00f65] in <b1e59fb85e45484ca9c739046c8ec3a6>:0
at Oxide.Plugins.CopyPaste+<Paste>c__AnonStorey3.<>m__0 () [0x00000] in <b1e59fb85e45484ca9c739046c8ec3a6>:0
at Oxide.Core.OxideMod.OnFrame (System.Single delta) [0x00051] in <ec05e0208c9149bba43236ca58fea105>:0 NullReferenceException at PasteLoopNot An Issue
think i know what it is i use https://umod.org/plugins/component-blocker like most PVE servers so players cant get turrets or taps of any kind as there not needed.
my config reads
{
"blockList": [
"autoturret",
"flameturret",
"guntrap",
"electric.teslacoil",
"trap.landmine",
"samsite",
"ammo.rocket.sam",
"trap.bear",
"spikes.floor",
"electric.igniter"
],
"craftRefund": false,
"messages": {
"You are not allowed to use this command": "You are not allowed to use this command",
"You may not craft this (restricted)": "You may not craft this (restricted)",
"You may not deploy this (restricted)": "You may not deploy this (restricted)",
"You may not pick that up (restricted)": "You may not pick that up (restricted)",
"You may not research this (restricted)": "You may not research this (restricted)",
"You may not research this (restricted), blueprints refunded!": "You may not research this (restricted), blueprints refunded!"
},
"sendMessages": true,
"VERSION": "0.1.51"
}problem is raid bases spawn with turrets and i think the server is blocking them and the raid base from spawning can we get an update for compatibility so that it still blocks how componentblocker works but with raidbase bypass
1) use a delay for networkable.Kill(),
2) use Raid Bases API EventTerritory(Vector3 pos),
3) CopyPaste should fix their PasteLoop to prevent this in the first place
ideally all 3 should be addressed
Getting a bunch of errors like this after update today:
Exception while calling NextTick callback (NullReferenceException: Object reference not set to an instance of an object)
at Oxide.Plugins.CopyPaste.PasteLoop (Oxide.Plugins.CopyPaste+PasteData pasteData) [0x01087] in <d088a2b847c04384a128561ffcbd2138>:0
at Oxide.Plugins.CopyPaste+<Paste>c__AnonStorey3.<>m__0 () [0x00000] in <d088a2b847c04384a128561ffcbd2138>:0
at Oxide.Core.OxideMod.OnFrame (System.Single delta) [0x00051] in <ec05e0208c9149bba43236ca58fea105>:0I had to unload the plugin to investigate further.
Can this be related to RaidableBases?
Arthatus2018think i know what it is i use https://umod.org/plugins/component-blocker like most PVE servers so players cant get turrets or taps of any kind as there not needed.
my config reads
{ "blockList": [ "autoturret", "flameturret", "guntrap", "electric.teslacoil", "trap.landmine", "samsite", "ammo.rocket.sam", "trap.bear", "spikes.floor", "electric.igniter" ], "craftRefund": false, "messages": { "You are not allowed to use this command": "You are not allowed to use this command", "You may not craft this (restricted)": "You may not craft this (restricted)", "You may not deploy this (restricted)": "You may not deploy this (restricted)", "You may not pick that up (restricted)": "You may not pick that up (restricted)", "You may not research this (restricted)": "You may not research this (restricted)", "You may not research this (restricted), blueprints refunded!": "You may not research this (restricted), blueprints refunded!" }, "sendMessages": true, "VERSION": "0.1.51" }problem is raid bases spawn with turrets and i think the server is blocking them and the raid base from spawning can we get an update for compatibility so that it still blocks how componentblocker works but with raidbase bypass
This is probably exactly what happened here aswell, i run this on a PvE server, with TruePVE and ComponentBlocker
nivexthis isn't an issue with Raid Bases. ComponentBlocker is killing the entity without using delay
1) use a delay for networkable.Kill(),
2) use Raid Bases API EventTerritory(Vector3 pos),
3) CopyPaste should fix their PasteLoop to prevent this in the first place
ideally all 3 should be addressed
This all makes sense, but the solutions you post makes little, or no sense to me, mainly because im not a plugin developer. Although i can somehow understand some code, and perhaps modify code. is there a easy fix for this that i can do? a little guideance would be really much appreciated
in the .cs change
networkable.Kill();
to
networkable.Invoke(networkable.KillMessage, 0.1f);
nivexfor component blocker plugin?
in the .cs change
networkable.Kill();
to
networkable.Invoke(networkable.KillMessage, 0.1f);
Thank you for taking your time to answer this, even if this isnt your problem, and not your plugins that are affected.
However i tried your quickfix but it did not work exactly as it should.
Yes, it did make the bases in RaidableBases to spawn in correctly, no more error messages - however the item (autoturret in this case) did not get pasted in the building. but it was a step closer to solution
What i eventually did - for reference, was to comment out the entire OnEntitySpawned() function/block.
I know this isnt ideal, but its a "somewhere inbetween" since the componentblocker will block the crafting, and picking up the blocked items anyway. my players in the pve server wont be able to place a turret, or craft it - so it doesnt really matter if it can spawn somewhere. (if my theory is correct)
Insert a new line after line 23 and paste this:
[PluginReference] Plugin RaidableBases;
private bool EventTerritory(Vector3 pos) => Convert.ToBoolean(RaidableBases?.Call("EventTerritory", pos));
replace
if (!CheckNetworkable(networkable))with
if (!EventTerritory(networkable.transform.position) && !CheckNetworkable(networkable))replace
networkable.Kill();with
networkable.Invoke(networkable.KillMessage, 0.1f); this will fix the issue :) np
the issue is the plugin needs to exclude raidable base entities
edit: actually, this won't work until I update raidable bases since the raid base isn't created until after copypaste pastes the entire building. nonetheless, it should be added
@rhilz
@Calytic
nivexDon't delete that. Start over with a fresh CS file from umod. https://umod.org/plugins/component-blocker
Insert a new line after line 23 and paste this:[PluginReference] Plugin RaidableBases; private bool EventTerritory(Vector3 pos) => Convert.ToBoolean(RaidableBases?.Call("EventTerritory", pos));
replaceif (!CheckNetworkable(networkable))
withif (!EventTerritory(networkable.transform.position) && !CheckNetworkable(networkable))
replacenetworkable.Kill();
withnetworkable.Invoke(networkable.KillMessage, 0.1f);
this will fix the issue :) np
the issue is the plugin needs to exclude raidable base entities
edit: actually, this won't work until I update raidable bases since the raid base isn't created until after copypaste pastes the entire building. nonetheless, it should be added
@rhilz
@Calytic
You are the hero of the day, thanks so much for the help
Calytic
I'll add an integration point for this scenario tonight or tomorrow. Thanks nivex.
Thank you aswell, good sir! you both do great things for the community. much appreciated
in case anybody experiences Copy Paste related issues, they should be now fixed. doubt this one is though