Woot

Woot

24M Downloads

Woot possibly not simulating fake player kills

raindropworks opened this issue ยท 14 comments

commented

This is going to be a cross posted bug, because I suspect it's either Woot or Lootbags, but I can't tell which. Lootbags is supposedly configured to only drop loot bags when mobs are killed by an actual player (as opposed to 'fake players' generated by mods. But when I made my first grinder on this world, Woot appears to have generated it's loot tables based on actual player kills, so it's dropping loot bags, which was something that we don't want to happen. I was able to confirm that it -does- actually drop a bag after just a few runs.

Alternatively, Lootbags may be simply not filtering drops properly, but I can't tell (hence the cross bug report) Pics I'm posting are the loot table for Woot as well as the output chest showing it did drop a chest.
screenshot_57
screenshot_58

commented

Malorolam/LootBags#156 - Related LootBags bug

commented

I've had a look at the code in Woot for handling the drops.
https://github.com/Ipsis/Woot/blob/1_12/src/main/java/ipsis/woot/event/HandlerLivingDropsEvent.java

There is a check in there to ensure that the source of the kill is Woot's FakePlayer so I don't believe that Woot is causing this.

From a quick look at the LootBags event code, they seem to be checking for EntityPlayer which FakePlayer is a sub-class of. Although my understanding of their code could be wrong.

commented

So at this point probably waiting for LootBags people to look at this and see their input

commented

Your were close on the config, but the one that you used blacklisted the mobs/entities from LootBags rather than the item drops.

The following should do the trick by blacklisting all items from "lootbags".

  "entitymodblacklist": [
    "botania"
  ],
  "entityblacklist": [
    "twilightforest:naga",
    "twilightforest:minoshroom",
    "twilightforest:hydra",
    "twilightforest:ur_ghast",
    "twilightforest:yeti_alpha",
    "twilightforest:snow_queen",
    "twilightforest:giant_miner",
    "twilightforest:armored_giant"
  ],
  "entitywhitelist": [
  ],
  "itemmodblacklist": [
    "lootbags"
  ],
  "itemblacklist": [
  ]

The way that blacklisting works is that even though the drops have already been learned, the blacklist will still be used to stop them being dropped, so you don't have to flush. They should magically disappear from the gui and no longer go into the export chest. (I think).

commented

oooooh ... okay, let me try it again

commented

Yep! Seems that did the trick! I'll close the ticket here and let the lootbag people know what you thought you saw. Thanks a bunch for working with me on this!!!

commented

Glad I could help.

commented

Since I don't know how long this will take for Malorolam to look at their bug report, for curiosity sake, is there any way to blacklist mob drops in Woot? I could just blacklist all lootbags from Woot's drop table and it would fix the issue cleanly. If not, I doubt it's a needed feature, so ...

commented

You can blacklist mods or specific items with the following in factory_config.json

eg. to blacklist all items from actually additions and blacklist vanilla gunpowder.

 "itemmodblacklist": [
    "actuallyadditions"
  ],
  "itemblacklist": [
    {
      "item": "minecraft:gunpowder"
    }
  ]

If you use "lootbags" in itemmodblacklist, that should do the trick, though you will need to be running Woot 1.4.4.

commented

So Woot 1.4.5 won't work?

commented

The blacklist support was added in 1.4.4, so 1.4.5 will be fine.

commented

Awesome, i'll try it out later, and close the report on this end provided it works. Leave the Lootbags one open since there's still questions of how they're checking identities

commented

I think I did it like you wanted, but it didn't work ...

I've uploaded the factory config in case I screwed something up (I'm not too good at JSON, but since botania was already blacklisted, I tried adding it in) ... is it possible there's a command I need to run to manually regenerate the loot tables? I tried removing the heart from one of my generators and put it in, but as I expected based on how the curseforge page describes this mod, it pulled the same existing table, and it's still dropping lootbags.

factory_config.txt

commented

More specifically, I just tried to do the '/woot flush all' command and both in world as an op and from the server console, I got the error 'You do not have permission to use this command'