BoxLooters

[AntiCheat] Log looters for a containers

Total Downloads: 6,120 - First Release: Apr 26, 2015 - Last Update: Jun 19, 2017

5/5, 21 likes
  1. Sorry, misunderstood, I mean, this looks like an Admin tool,

    Im curious if its possible to be used by all Players, I can grant them all permission,

    but will they be able to abuse it?

    Basically Im saying, Id like for all players to be able to check Loot Log on their own containers,

    I think itd be a cool feature :D
     
  2. Not possible at this stage, the permission applies to all the commands so they could just wipe it
     
  3. Suggestion
    Add MySQL support
    I'm not a developer but I think it could increase performance on servers where there's a ton of people looting boxes. What do you think?
     
  4. Rak

    Rak

    What does the F:4/3 @ 01:53:16 L:5/3 05:25:36 mean?
     
  5. Perhaps a SQLite db may be beneficial but logs are automatically removed after 48 hours (by default) and atm data is stored in memory and saved periodically, so IMO only people who horde their loot logs would really see a benefit

    First Looted : 4th Marth @ 1:53:16AM
    Last Looted 5th March @ 5:25:36AM
     
  6. We have tried setting removal of the logs aswell, put high/low save time but nothing seem to work well enough for it to be worth using the plugin on our high populated server. I've heard other serverowners have had the same issue. I just think sending data directly to a SQL without needing to remove any entries at plugin runtime it could decrease performance. Just like comparable to SQLStats or similar plugin
     
  7. What if instead of saving to one data file you saved each box data to its own data file using OwnerID, and only save if the data is modified.
     
  8. The data is only saved on server save...whre all other pluhins do also save mostly. Implementing another check into the code to check then also for changed data is exactly the way in th wrong direction to more compute time :p
    [DOUBLEPOST=1490207778][/DOUBLEPOST]
    Sure the used storage option is not the problem here on high-pop servers, cause you would only notice bad thnigs from here on saves..but then you also would not really know what it is, since all others do save then too^^

    Data Mining, and thats what the plugin does do on the end, is always an intensive process, cause of amount of used sources and collectd data.
    All that needs time, and since Rust has not been really improved the last weeks, in real it were better downgrades, using such plugins is maybe currently not the best option.
    Or ask the author, or anyone else, for maybe a light-weight version with less data-mining activity.
    That will take down the compute time, and therefore it should lower the issues you have.
     
  9. I'm probably wrong but I have a feeling.

    So the plugins purpose is to be an antiheat, this means the only relevant information is the one time loot a person loot its chest. Currently the plugin tracks everytime a player loot a chest instead of only track on chest basis & first time loot. Maybe it would make sense but I'm not sure...
     
  10. the purpose of it is to log EVERY player in a time frame who loots the box. thus if the box is looted and the base wasnt raided, then you get the info on who hacked into the base and raided it.

    i use this plugin with the whoowns so i can see if someone does call hacks, i can also check all floors walls and ceilings for ownership around it to make sure no one raided and then rebuilt.
     
  11. k1lly0u updated BoxLooters with a new update entry:

    0.3.3

     
  12. Just installed new version, I get this repeatedly spamming console:
    [BoxLooters] creating new loot list
    [BoxLooters] count 1

    Code:
    at Oxide.Plugins.BoxLooters+BoxData.AddLooter (.BasePlayer looter, Double time, System.String date) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.BoxLooters.OnLootEntity (.BasePlayer looter, .BaseEntity entity) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.BoxLooters.DirectCallHook (System.String name, System.Object& ret, System.Object[] args) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.CSharpPlugin.InvokeMethod (HookMethod method, System.Object[] args) [0x00000] in <filename unknown>:0
      at Oxide.Core.Plugins.CSPlugin.OnCallHook (System.String name, System.Object[] args) [0x00000] in <filename unknown>:0
      at Oxide.Core.Plugins.Plugin.CallHook (System.String hook, System.Object[] args) [0x00000] in <filename unknown>:0
     
  13. Did you delete your config and data before updating?
     
  14. I renamed it player_dataOLD.json, etc. must it be deleted?
     
  15. rename the box_data.json also? post the 1st line of the error
     
  16. Yes both are renamed OLD, I may need to revert and use old data if the need arises, so I needed to keep it. It's hard to tell which is the first line because there's so many and it keeps spamming, so here ya go:

    at System.Linq.Enumerable.Single[LootEntry] (IEnumerable`1 source, System.Func`2 predicate, Fallback fallback) [0x00000] in <filename unknown>:0

    at Oxide.Plugins.BoxLooters+BoxData.AddLooter (.BasePlayer looter, Double time, System.String date) [0x00000] in <filename unknown>:0

    I'm guessing this one ^
     
  17. nah the one above that. try this
     

    Attached Files:

  18. First error gone, still getting second:

    at Oxide.Plugins.BoxLooters+BoxData.AddLooter (.BasePlayer looter, Double time, System.String date) [0x00000] in <filename unknown>:0
     
  19. lol still not the right line. Its the very first one, looks like this;
    Code:
    23:47 [Error] Failed to run a 3.00 timer in 'Airstrike v0.3.0' (NullReferenceException: Object reference not set to an instance of an object) // Obviously not this error exactly but this line
    23:47 [Stacktrace]   at Oxide.Plugins.Airstrike+StrikePlane.InitializeFlightPath (Vector3 targetPos) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.Airstrike.CallStrike (Vector3 position) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.Airstrike+<OnExplosiveThrown>c__AnonStorey1.<>m__0 () [0x00000] in <filename unknown>:0
      at Oxide.Core.Libraries.Timer+TimerInstance.FireCallback () [0x00000] in <filename unknown>:0
    
     
  20. My bad, I had it filtered out in console. lol

    Failed to call hook 'OnLootEntity' on plugin 'BoxLooters v0.3.3' (NullReferenceException: Object reference not set to an instance of an object)