NullReferenceException at PasteLoopNot An Issue
(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

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

this 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

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>:0

I had to unload the plugin to investigate further. 

Can this be related to RaidableBases?

Arthatus2018

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

This is probably exactly what happened here aswell, i run this on a PvE server, with TruePVE and ComponentBlocker

nivex
this 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

for component blocker plugin?

in the .cs change

networkable.Kill();

to

networkable.Invoke(networkable.KillMessage, 0.1f); 
nivex
for 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)

Don'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));
​

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
I'll add an integration point for this scenario tonight or tomorrow. Thanks nivex.
nivex
Don'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));
​

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

You are the hero of the day, thanks so much for the help 

5eab9027ce022.png 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

Locked automatically