BetterLoot

A complete re-implementation of the drop system

Total Downloads: 42,529 - First Release: Feb 26, 2015 - Last Update: Mar 20, 2018

4.95699/5, 93 likes
  1. Does this plugin only work on a fresh map? No luck so far crashes server everytime.
     
  2. I am getting the same error
    Code:
    [Oxide] 9:53 PM [Info] BetterLoot: Item list to select from is empty (trying another one)
    
    Although, I am running ItemConfig and have altered some of the default BPs, stack sizes, maxConditions (I think that's all).
    If I change anything in the config, then reload, it stops working and throws the error (my server ends up the same, no Rcon commands, can't join). Also when I reboot. I try to delete the plugin while it is throwing the error however it continues (loaded into memory and because of error won't detect it missing to unload?).

    Hopefully this helps.
     
  3. hello, i have a Problem , my code looks like [Oxide] 12:43 PM [Info] BetterLoot plugin failed to compile! Exit code: 1
    [Oxide] 12:43 PM [Info] Compilation failed: 16 error(s), 0 warnings

    [Oxide] 12:43 PM [Info] C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(6,7): error CS0246: The type or namespace name `Rust' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(16,31): error CS0246: The type or namespace name `RustPlugin' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(89,22): error CS0246: The type or namespace name `ItemDefinition' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(90,22): error CS0246: The type or namespace name `ItemBlueprint' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(99,33): error CS0115: `Oxide.Plugins.BetterLoot.LoadDefaultConfig()' is marked as an override but no suitable method found to override
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(234,17): error CS0246: The type or namespace name `Item' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(290,37): error CS0246: The type or namespace name `LootContainer' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(299,38): error CS0246: The type or namespace name `LootContainer' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(306,40): error CS0246: The type or namespace name `LootContainer' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(353,36): error CS0246: The type or namespace name `BaseNetworkable' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(363,34): error CS0246: The type or namespace name `BasePlayer' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(382,39): error CS0246: The type or namespace name `BasePlayer' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(486,45): error CS0246: The type or namespace name `ItemContainer' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(486,70): error CS0246: The type or namespace name `Item' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(514,45): error CS0246: The type or namespace name `LootContainer' could not be found. Are you missing an assembly reference?
    C:\SERVICES\ni590995_1\rust\server\serverprofile\oxide\plugins\BetterLoot.cs(522,40): error CS0246: The type or namespace name `Rarity' could not be found. Are you missing an assembly reference?
    when i insert it into my plugin Folder and it doesn't work for me :(

    can someone please help me :)?
     
  4. OK I have managed to get working now, thanks dcode for this great plugin
     
  5. it was working for a while for me now i cant start the server again with it on had to remove it was flooding my log again with that same message
     
  6. Was working fine then restarted server and same errors coming through and can't get on server.

    Code:
    [Oxide] 11:55 AM [Info] BetterLoot: Item list to select from is empty (trying another one)
    [DOUBLEPOST=1425431023][/DOUBLEPOST]OK I worked out how to get going after it fails. If I re-install my steam and oxide files it seems to work fine again. Hope this helps.
     
    Last edited by a moderator: Mar 4, 2015
  7. Nice work but cant seem to get the blacklist to work tho ..
     
  8. No still every server restart does it and takes about 10 or so restarts to work
     
  9. Code:
    11:09 AM [Info] BetterLoot: OnServerInitialized failed: Object reference not set to an instance of an object
     
  10. dcode updated BetterLoot with a new update entry:

    1.3.0

     
  11. dcode updated BetterLoot with a new update entry:

    1.3.0-1

     
  12. I'd suggest author to use ItemDefinition.shortname instead of UnityEngine.Object.name for identifying the items.

    Just one good reason: It is more correct, and more than that - some items have different object name and item definition name.
    E.g: attire.hide.pants in Object.name, while HidePants.itemdef is in ItemDefinition.shortname. Only the last one is correct.

    Thus, at this moment the whole Hide set is being removed from the drop.
     
    Last edited by a moderator: Mar 11, 2015
  13. i can confirm that the whole hide set is removed from the drop.
     
  14. Code:
    [3/11/2015 6:51:44 PM] [Oxide] 6:51 PM [Error] Failed to call hook 'OnTick' on plugin 'BetterLoot' (NullReferenceException: )
    What is this ?
     
  15. Code:
    [Oxide] 3:00 PM [Error] Failed to call hook 'OnTick' on plugin 'BetterLoot' (NullReferenceException: )
    [Oxide] 3:00 PM [Debug]   at (wrapper managed-to-native) UnityEngine.Component:get_gameObject ()
      at Oxide.Plugins.BetterLoot.ContainerName (.LootContainer container) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.BetterLoot.PopulateContainer (.LootContainer container) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.BetterLoot.OnTick () [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 
     
  16. i been getting this error message a few times now as well since latest update
    Code:
    Failed to call hook 'OnTick' on plugin 'BetterLoot' (NullReferenceException: )
    5:32 AM [Debug]   at (wrapper managed-to-native) UnityEngine.Component:get_gameObject ()
      at Oxide.Plugins.BetterLoot.PopulateContainer (.LootContainer container) [0x00000] in <filename unknown>:0
      at Oxide.Plugins.BetterLoot.OnTick () [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
     
  17. Ditto on the reported "OnTick" error.

    [Oxide] 12:35 PM [Debug] ExType: NullReferenceException
    [Oxide] 12:35 PM [Error] Failed to call hook 'OnTick' on plugin 'BetterLoot' (NullReferenceException: )
    [Oxide] 12:35 PM [Debug] at (wrapper managed-to-native) UnityEngine.Component:get_gameObject ()
    at Oxide.Plugins.BetterLoot.PopulateContainer (.LootContainer container) [0x00000] in <filename unknown>:0
    at Oxide.Plugins.BetterLoot.OnTick () [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
     
  18. Can confirm same on my server. (since update this morning)

    [Oxide] 6:47 AM [Error] Failed to call hook 'OnTick' on plugin 'BetterLoot' (NullReferenceException: )
    [Oxide] 6:47 AM [Debug] at (wrapper managed-to-native) UnityEngine.Component:get_gameObject ()
    at Oxide.Plugins.BetterLoot.PopulateContainer (.LootContainer container) [0x00000] in <filename unknown>:0
    at Oxide.Plugins.BetterLoot.OnTick () [0x00000] in <filename unknown>:0
     
  19. dcode updated BetterLoot with a new update entry:

    1.3.1

     
  20. I think the stack thing is not working, with default config i found in a barril 1732 explosives stacked together.