Jump to content

Getting an error with version 3.0.0

Closed 3.0.0 3.0.1



Getting this in the console :
 

(01:18:32) | Failed to call hook 'OnPlayerDeath' on plugin 'RustRewards v3.0.0' (ArgumentNullException: Value cannot be null.
Parameter name: key)
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at Oxide.Plugins.RustRewards.OnPlayerDeath (BasePlayer player, HitInfo info) [0x00226] in <2b106e225ae0440b9661de30e0fa2eb0>:0 
  at Oxide.Plugins.RustRewards.DirectCallHook (System.String name, System.Object& ret, System.Object[] args) [0x0035b] in <2b106e225ae0440b9661de30e0fa2eb0>:0 
  at Oxide.Plugins.CSharpPlugin.InvokeMethod (Oxide.Core.Plugins.HookMethod method, System.Object[] args) [0x00079] in <31122a27a2414cd799150f8677cf39d4>:0 
  at Oxide.Core.Plugins.CSPlugin.OnCallHook (System.String name, System.Object[] args) [0x000d8] in <0fbce81d88d64454b3e7abb24df7026b>:0 
  at Oxide.Core.Plugins.Plugin.CallHook (System.String hook, System.Object[] args) [0x00060] in <0fbce81d88d64454b3e7abb24df7026b>:0
(01:17:23) | Failed to call hook 'OnEntityTakeDamage' on plugin 'RustRewards v3.0.0' (NullReferenceException: Object reference not set to an instance of an object)
  at Oxide.Plugins.RustRewards.OnEntityTakeDamage (BaseEntity entity, HitInfo hitinfo) [0x0008d] in <2b106e225ae0440b9661de30e0fa2eb0>:0 
  at Oxide.Plugins.RustRewards.DirectCallHook (System.String name, System.Object& ret, System.Object[] args) [0x0085c] in <2b106e225ae0440b9661de30e0fa2eb0>:0 
  at Oxide.Plugins.CSharpPlugin.InvokeMethod (Oxide.Core.Plugins.HookMethod method, System.Object[] args) [0x00079] in <31122a27a2414cd799150f8677cf39d4>:0 
  at Oxide.Core.Plugins.CSPlugin.OnCallHook (System.String name, System.Object[] args) [0x000d8] in <0fbce81d88d64454b3e7abb24df7026b>:0 
  at Oxide.Core.Plugins.Plugin.CallHook (System.String hook, System.Object[] args) [0x00060] in <0fbce81d88d64454b3e7abb24df7026b>:0


Might have something to do with the Arena plugin from K1lly0u

  • Like 1

Share this comment


Link to comment

What i noticed so far :
I didn't get any errors in the console however in my Arenas they now also get RustRewards RP on top of the Arenas RP ( Arena plguin from K1lly0u )
that never happened before

Share this comment


Link to comment
15 minutes ago, Gamebundle said:

What i noticed so far :
I didn't get any errors in the console however in my Arenas they now also get RustRewards RP on top of the Arenas RP ( Arena plguin from K1lly0u )
that never happened before

That's great. Thank you.

I'm not sure why Arena behaviour would be any different. I'm pretty sure MalS didn't have any Arena checks in the original version,
but I'll look into it properly tomorrow.

Share this comment


Link to comment
1 minute ago, Steenamaroo said:

That's great. Thank you.

I'm not sure why Arena behaviour would be any different. I'm pretty sure MalS didn't have any Arena checks in the original version,
but I'll look into it properly tomorrow.

Awesome thanks !

Share this comment


Link to comment

Hey,
Yeah, I don't see anything in the original that would prevent rewards whilst in Arena.
Could it be that it's just new reward types that didn't exist in the original plugin?

 

Share this comment


Link to comment

It couls also be your code catching more effectivelly for example i don't know really but i can tell you that it didn't happen before with older versions

Edited by Gamebundle

Share this comment


Link to comment

Can you give me an idea of the type of rewards we're talking about? Player kills?
If it's NPCKills there's a very good chance the old version just wasn't written for those npcs types.

Share this comment


Link to comment

Sure, testing = good,
although as far as I can see both version *should* give kill rewards, whether in an arena or not.

I'll see about adding Ignore_Arena as a config option or something like that.

If that's awkward then a zone ignore list would probably work. Not super user friendly but adding your Arena zones with a multiplier of 0 would function as a workaround.

Edited by Steenamaroo

Share this comment


Link to comment
41 minutes ago, Steenamaroo said:

Sure, testing = good,
although as far as I can see both version *should* give kill rewards, whether in an arena or not.

I'll see about adding Ignore_Arena as a config option or something like that.

If that's awkward then a zone ignore list would probably work. Not super user friendly but adding your Arena zones with a multiplier of 0 would function as a workaround.

Later tonight i'll test that and i also will test again the older version just to be sure

Edited by Gamebundle

Share this comment


Link to comment

Cool, thank you!
Doing the zero multiplier will print to console to notify you, 'cos you're not really meant to do that,
but if getting rewards in Arena is an issue it will at least fix that issue for the short term.

Share this comment


Link to comment

So the previous version didn't give you any RP in the arena that might be due to how the Arena works tho
The Arena will TP you just before dying so you won't really die but more like on 0 Health Full Heal and TP to a random point in the arena

Scientist on the previous version was also giving RP and they still are now too ( Not good tho )

 

I also got a few errors from RR today :
 

(18:53:25) | Failed to call hook 'OnPlayerDeath' on plugin 'RustRewards v3.0.1' (ArgumentNullException: Value cannot be null.
Parameter name: key)
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at Oxide.Plugins.RustRewards.GetFriendly (System.String name, BaseEntity ent) [0x0005a] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.GiveReward (BasePlayer player, Oxide.Plugins.RustRewards+RewardType type, System.Double amount, BaseEntity ent, System.String weapon, System.Single distance, System.String name) [0x003b3] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.OnPlayerDeath (BasePlayer player, HitInfo info) [0x001bf] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.DirectCallHook (System.String name, System.Object& ret, System.Object[] args) [0x0035b] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.CSharpPlugin.InvokeMethod (Oxide.Core.Plugins.HookMethod method, System.Object[] args) [0x00079] in <31122a27a2414cd799150f8677cf39d4>:0 
  at Oxide.Core.Plugins.CSPlugin.OnCallHook (System.String name, System.Object[] args) [0x000d8] in <0fbce81d88d64454b3e7abb24df7026b>:0 
  at Oxide.Core.Plugins.Plugin.CallHook (System.String hook, System.Object[] args) [0x00060] in <0fbce81d88d64454b3e7abb24df7026b>:0
(19:04:27) | Failed to call hook 'OnPlayerDeath' on plugin 'RustRewards v3.0.1' (ArgumentNullException: Value cannot be null.
Parameter name: key)
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at Oxide.Plugins.RustRewards.GetFriendly (System.String name, BaseEntity ent) [0x0005a] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.GiveReward (BasePlayer player, Oxide.Plugins.RustRewards+RewardType type, System.Double amount, BaseEntity ent, System.String weapon, System.Single distance, System.String name) [0x003b3] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.OnPlayerDeath (BasePlayer player, HitInfo info) [0x001bf] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.DirectCallHook (System.String name, System.Object& ret, System.Object[] args) [0x0035b] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.CSharpPlugin.InvokeMethod (Oxide.Core.Plugins.HookMethod method, System.Object[] args) [0x00079] in <31122a27a2414cd799150f8677cf39d4>:0 
  at Oxide.Core.Plugins.CSPlugin.OnCallHook (System.String name, System.Object[] args) [0x000d8] in <0fbce81d88d64454b3e7abb24df7026b>:0 
  at Oxide.Core.Plugins.Plugin.CallHook (System.String hook, System.Object[] args) [0x00060] in <0fbce81d88d64454b3e7abb24df7026b>:0
(19:06:00) | Failed to call hook 'OnPlayerDeath' on plugin 'RustRewards v3.0.1' (ArgumentNullException: Value cannot be null.
Parameter name: key)
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at Oxide.Plugins.RustRewards.GetFriendly (System.String name, BaseEntity ent) [0x0005a] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.GiveReward (BasePlayer player, Oxide.Plugins.RustRewards+RewardType type, System.Double amount, BaseEntity ent, System.String weapon, System.Single distance, System.String name) [0x003b3] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.OnPlayerDeath (BasePlayer player, HitInfo info) [0x001bf] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.RustRewards.DirectCallHook (System.String name, System.Object& ret, System.Object[] args) [0x0035b] in <c4a4839ce7364510a2a7456dbbf2ef68>:0 
  at Oxide.Plugins.CSharpPlugin.InvokeMethod (Oxide.Core.Plugins.HookMethod method, System.Object[] args) [0x00079] in <31122a27a2414cd799150f8677cf39d4>:0 
  at Oxide.Core.Plugins.CSPlugin.OnCallHook (System.String name, System.Object[] args) [0x000d8] in <0fbce81d88d64454b3e7abb24df7026b>:0 
  at Oxide.Core.Plugins.Plugin.CallHook (System.String hook, System.Object[] args) [0x00060] in <0fbce81d88d64454b3e7abb24df7026b>:0

I didn't see any other odd behavior so far but i saw this :

With VehicleLicenses ( Umod ) :
If you destroy one of your vehicle or one of your friends it will give you RP (Not intended to) :

Tested for all the Vehicles including :
-Minicopter
-CH47
-ScrapCopter
-RHIB
-RowBoat
-SubmarineSolo
-SubMarineDuo
-Horse
-BasicCar (Sedan)
-Cart ( Train )
All the vehicles mentionned above shouldn't give RP as a Mate or even yourself Spawned them in (Allies are set to true in the RR config)

The BradleyAPC ( spawned in by me via the console ) didn't give any RP, my map is to small to have the LaunchSite so i cannot test it now on a regular Bradley

AntiAir turret from the plugin RocketTurret aren't giving the RP when they kill the Heli ( they did before ) **But** That might be due that the Heli isn't giving you any RP even when killed with a regular gun
However The variant of turret for players are giving RP when killing someone ( Turret Basic & Turret Javelin )
They are also giving RP when killing NPCs so that's still good


I also tested a few killing variantions like killing with a submarines ( with both Torpedos ) and didn't recall anything else so far



 

Share this comment


Link to comment

I also saw that when killing something or just getting RP it doesn't tell you that you received RP but that you just received X :
 

Could be nice to add the Currency after the Number

Screenshot_10.png

Share this comment


Link to comment

Thanks for the detailed info.

Regarding Heli + APC, those should be working so I'll take a look and see what's up there.
The rest of the vehicles, just set them to 0 reward. They are there as options for anyone who wants to use them.

 

The anti air turret I know nothing about but if it worked before it should work now - I'd say you're right : That's coming from a broader heli issue.

For the currency in messages, that's what the lang is for. 😉
Well, it's not...but you could add the currency symbols in lang.

Edited by Steenamaroo
  • Like 1

Share this comment


Link to comment

This should address the errors and the apc/heli issue.
If you have time to confirm that'd be appreciated.

 

Also, yes...I'm in discord. If you join Codefling discord (link in footer) I'm admin there - Feel free to ping me. 🙂

RustRewards.cs

Share this comment


Link to comment

The Heli kills are working with the RocketTurret plugin and when killed by hand ! 🙂
The Bradley also works, tested killing it with different methods, HV Rockets, Exp ammo, C4, Satchel.. 

Share this comment


Link to comment

1.1m

Downloads

Total number of downloads.

5.6k

Customers

Total customers served.

80.8k

Files Sold

Total number of files sold.

1.6m

Payments Processed

Total payments processed.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.