Ping

Moved

Total Downloads: 1,405 - First Release: May 19, 2016 - Last Update: Dec 10, 2016

5/5, 4 likes
  1. Wulf

    Wulf Community Admin

    Wulf submitted a new resource:

    Ping - Ping command and automatic kicking of players with high pings

    Read more about this resource...
     
  2. When this plugin kicks players because of a high ping the below errors happen with these other plugins
    Code:
    [05/21/2016 09:34:44] [Oxide] 09:34 [Error] Failed to call hook 'OnPlayerDisconnected' on plugin 'ServerRewards v0.2.29' (KeyNotFoundException: The given key was not present in the dictionary.)
    [05/21/2016 09:34:44] [Oxide] 09:34 [Error] Failed to call hook 'OnPlayerInit' on plugin 'RustCore v1.0.0' (NullReferenceException: Object reference not set to an instance of an object)
    [05/21/2016 09:34:44] [Oxide] 09:34 [Error] Failed to call hook 'OnPlayerInit' on plugin 'rankme v2.6.0'
    Traceback (most recent call last):
      File "rankme.py", line 355, in OnPlayerInit
      File "rankme.py", line 987, in store_player
    RuntimeError: Failed to call OnPlayerInit (MissingMemberException: 'NoneType' object has no attribute 'authLevel')
      at Microsoft.Scripting.Interpreter.ThrowInstruction.Run (Microsoft.Scripting.Interpreter.InterpretedFrame frame) [0x00000] in <filename unknown>:0
      at Microsoft.Scripting.Interpreter.Interpreter.Run (Microsoft.Scripting.Interpreter.InterpretedFrame frame) [0x00000] in <filename unknown>:0[05/21/2016 09:34:44] [Oxide] 09:34 [Error] Failed to call hook 'OnPlayerInit' on plugin 'Notifier v3.0.8' (NullReferenceException: Object reference not set to an instance of an object)
    [05/21/2016 09:34:44] [Oxide] 09:34 [Error] Failed to call hook 'OnPlayerInit' on plugin 'PlayerInformations v1.0.5' (NullReferenceException: Object reference not set to an instance of an object)
    [05/21/2016 09:36:22] [Oxide] 09:36 [Error] Failed to call hook 'OnPlayerInit' on plugin 'RustCore v1.0.0' (NullReferenceException: Object reference not set to an instance of an object)
    [05/21/2016 09:36:22] [Oxide] 09:36 [Error] Failed to call hook 'OnPlayerInit' on plugin 'rankme v2.6.0'
    Traceback (most recent call last):
      File "rankme.py", line 355, in OnPlayerInit
      File "rankme.py", line 987, in store_player
    RuntimeError: Failed to call OnPlayerInit (MissingMemberException: 'NoneType' object has no attribute 'authLevel')
      at Microsoft.Scripting.Interpreter.ThrowInstruction.Run (Microsoft.Scripting.Interpreter.InterpretedFrame frame) [0x00000] in <filename unknown>:0
      at Microsoft.Scripting.Interpreter.Interpreter.Run (Microsoft.Scripting.Interpreter.InterpretedFrame frame) [0x00000] in <filename unknown>:0[05/21/2016 09:36:22] [Oxide] 09:36 [Error] Failed to call hook 'OnPlayerInit' on plugin 'Notifier v3.0.8' (NullReferenceException: Object reference not set to an instance of an object)
    [05/21/2016 09:36:22] [Oxide] 09:36 [Error] Failed to call hook 'OnPlayerInit' on plugin 'PlayerInformations v1.0.5' (NullReferenceException: Object reference not set to an instance of an object)
    
    I hope the coders of these plugins will update their plugins to fix this problem
     
  3. Wulf

    Wulf Community Admin

    If they get kicked, they no longer exist. Plugins should be checking if the player exists before performing actions.

    I'm adding a timer to the hook though to delay checking for ping by 10 seconds though.
     
  4. Wulf

    Wulf Community Admin

    Wulf updated Ping with a new update entry:

    1.4.1

     
  5. Wulf

    Wulf Community Admin

    Wulf updated Ping with a new update entry:

    1.4.2

     
  6. Shouldn't NextTick do it?
     
  7. Wulf

    Wulf Community Admin

    The server is already ticking, has been since start. You aren't wanting to do it next tick, that'd be long before the point I want.
     
  8. Works fine on Rust but on Hurtworld it just post /ping in chat and even removes the BetterChat color from everyones name.
    Code:
    [Info] Loaded plugin Ping v1.4.2 by Wulf/lukespragg
    04:26 [Debug] ExType: TargetInvocationException
    04:26 [Error] Failed to call hook 'IOnPlayerChat' on plugin 'HurtworldCore v1.0.0' (FormatException: Input string was not in a correct format.)
    04:26 [Debug]   at System.String.ParseFormatSpecifier (System.String str, System.Int32& ptr, System.Int32& n, System.Int32& width, System.Boolean& left_align, System.String& format) [0x00000] in <filename unknown>:0
      at System.String.FormatHelper (System.Text.StringBuilder result, IFormatProvider provider, System.String format, System.Object[] args) [0x00000] in <filename unknown>:0
      at System.String.Format (IFormatProvider provider, System.String format, System.Object[] args) [0x00000] in <filename unknown>:0
      at System.String.Format (System.String format, System.Object[] args) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.Ping.Lang (System.String key, System.String id, System.Object[] args) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.Ping.ChatPing (IPlayer player, System.String command, System.String[] args) [0x00000] in <filename unknown>:0
      at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception&)
      at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
    [DOUBLEPOST=1463890564][/DOUBLEPOST]Well same with Rust with the latest Oxide and server update
    Code:
    [Oxide] 05:15 [Debug] ExType: TargetInvocationException
    [05/22/2016 05:15:35] [Oxide] 05:15 [Debug]   at System.String.ParseFormatSpecifier (System.String str, System.Int32& ptr, System.Int32& n, System.Int32& width, System.Boolean& left_align, System.String& format) [0x00000] in <filename unknown>:0
      at System.String.FormatHelper (System.Text.StringBuilder result, IFormatProvider provider, System.String format, System.Object[] args) [0x00000] in <filename unknown>:0
      at System.String.Format (IFormatProvider provider, System.String format, System.Object[] args) [0x00000] in <filename unknown>:0
      at System.String.Format (System.String format, System.Object[] args) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.Ping.Lang (System.String key, System.String id, System.Object[] args) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.Ping.ChatPing (IPlayer player, System.String command, System.String[] args) [0x00000] in <filename unknown>:0
      at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception&)
      at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
     
  9. Wulf

    Wulf Community Admin

    Wulf updated Ping with a new update entry:

    1.4.3

     
  10. Wulf

    Wulf Community Admin

    Wulf updated Ping with a new update entry:

    1.5.0

     
  11. Wulf

    Wulf Community Admin

    Wulf updated Ping with a new update entry:

    1.5.1

     
  12. Rust is fine now awesome work it does work on Hurtworld but there is a small problem when the plugin kicks someone it spams the consol and chat before the player finally gets kicked. Looks like this:
    Code:
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
    18:10 [Info] [Ping] HeadHunter kicked for high ping (1580ms)
     
  13. Wulf

    Wulf Community Admin

    Hmmmm, how weird. I tested it without issues, not sure why it would do that. What do you have CheckEvery set to?
     
  14. Ok now its getting werid so i removed everthing that has to do with ping put it clean back on when i turn of the notice in Hurtworld it "looks" fine now to the really odd part both Rust and Hurtworld freeze in a werid way after some time when i remove the plugin it dosnt happen. And no oxide errors or anthing. :(

    "CheckEvery": 300, for both
     
    Last edited by a moderator: May 22, 2016
  15. Wulf

    Wulf Community Admin

    So you are saying it works fine now, but you have freezing? I don't know where you mean it is freezing... is it on your client or your server?
     
  16. Wulf

    Wulf Community Admin

    Wulf updated Ping with a new update entry:

    1.5.2

     
  17. Updated to 1.5.2 Hurtworld spam is gone awesome work but still the same freezes or huge lags on both servers (Rust and Hurtworld). Its starts on both servers after 2-4h running with around 40-60 ppl on it. When i remove the plugin it dosn't happen and the server runs fine without any problems. Can you upload the old version for both games when the plugin wasn't universal just to test it ? I also checked the logs no erros or anthing.
     
  18. Wulf

    Wulf Community Admin

    It being universal or not has nothing to do with it, I imagine the continuous checking is taking a toll on it, but unsure. You can test using a previous version on the Version History page.
     
  19. It could always be our host too i really don't wanne blame it to much on any plugin :p Im gone try that and let you know.
    [DOUBLEPOST=1464030755,1464021871][/DOUBLEPOST]So tested some old versions on rust and hurtworld was all fine, then i tried to turn up the checking on the new version to 30min and well it looks like it all fine now. I should have checked that from the beginning, sorry for the trouble :p
     
  20. Wulf

    Wulf Community Admin

    Still, shouldn't be an issue though, but let me know how it goes.