BentoBoxWorld / Limits

Limits blocks and entities on islands - for BentoBox
Eclipse Public License 2.0
8 stars 17 forks source link

Prevented breeding way under limit #105

Closed x1p closed 3 years ago

x1p commented 3 years ago

Description Cows won't breed while their number is way under the limit. It seems to involve many islands, but not all. In order to eliminate the possible cause is tried:

Steps to reproduce the behavior:

  1. Existing islands with a number of cows
  2. Player tries to breed
  3. Cows are fed, hearts appear, XP drops, no baby
  4. Staff member comes along, tries to breed/spawn with spawn_egg which is prevented as well.
  5. Player tries ./is limits recount and repeats steps 2-4, no luck
  6. Admin (OP) tries ./bsb limits calc (playername) and repeats steps 2-4, no luck
  7. Admin (OP) can breed and spawn cows with spawn_egg. (workaround)

Expected behavior Consistent breeding until limit is reached

Screenshots If applicable, add screenshots to help explain your problem.

Server Information:

[Please complete the following information:]

tastybento commented 3 years ago

I can't replicate this right now - do the players receive a message saying that the limit has been reached when they try to breed the animals? I did not see that in your report:

Screen Shot 2020-09-26 at 9 20 06 AM
x1p commented 3 years ago

That message appears indeed but the limit was not reached according to the limits GUI and confirmed by manually counting. Screenshot 2020-09-26 213842 Screenshot 2020-09-26 213921

tastybento commented 3 years ago

Please try this version that has debug. Try to spawn a cow and see what it says in the console. Please copy and paste here. It should look something like this:

[17:01:19 INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[17:01:19 INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[17:01:19 INFO]: [BentoBox] DEBUG: Count = 16

Limits-1.15.0-debug-SNAPSHOT-LOCAL.jar.zip Also, share your config.yml because I'd like to see what it is.

tastybento commented 3 years ago

On the off-chance that this is a duplication issue - please try this version too and see if it helps: Limits-1.15.0-debug-SNAPSHOT-LOCAL.jar.zip

x1p commented 3 years ago

First plugin's output when trying to spawn: (only 1 attempt to spawn, the rest of the debug messages is prob. from other entities)

[08:20:45 INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:20:45 INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:20:45 INFO]: [BentoBox] DEBUG: Count = 5
[08:20:45 INFO]: [BentoBox] DEBUG: Checking group limits
[08:20:47 INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:20:47 INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:20:47 INFO]: [BentoBox] DEBUG: Count = 6
[08:20:47 INFO]: [BentoBox] DEBUG: Checking group limits
[08:20:47 INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:20:47 INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:20:47 INFO]: [BentoBox] DEBUG: Count = 5
[08:20:47 INFO]: [BentoBox] DEBUG: Checking group limits
[08:20:47 INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:20:47 INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:20:47 INFO]: [BentoBox] DEBUG: Count = 6
[08:20:47 INFO]: [BentoBox] DEBUG: Checking group limits
[08:20:47 INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:20:47 INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:20:47 INFO]: [BentoBox] DEBUG: Count = 20
[08:20:56 INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:20:56 INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:20:56 INFO]: [BentoBox] DEBUG: Count = 7
[08:20:56 INFO]: [BentoBox] DEBUG: Checking group limits

Plugin 2:

[08:29:33] [Server thread/INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:29:33] [Server thread/INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:29:33] [Server thread/INFO]: [BentoBox] DEBUG: Count = 20
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Count = 20
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Count = 20
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Count = 20
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Count = 20
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:29:34] [Server thread/INFO]: [BentoBox] DEBUG: Count = 20
[08:29:38] [Server thread/INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:29:38] [Server thread/INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:29:38] [Server thread/INFO]: [BentoBox] DEBUG: Count = 5
[08:29:38] [Server thread/INFO]: [BentoBox] DEBUG: Checking group limits
[08:29:38] [Server thread/INFO]: [BentoBox] DEBUG: Island LimitAmount = -1
[08:29:38] [Server thread/INFO]: [BentoBox] DEBUG: Global LimitAmount = 16
[08:29:38] [Server thread/INFO]: [BentoBox] DEBUG: Count = 4
[08:29:38] [Server thread/INFO]: [BentoBox] DEBUG: Checking group limits

Fyi: the real number of cows on this island is 8/16. Is it possible that Limits confuses mushroom_cows with (normal) cows?

tastybento commented 3 years ago

Yes! That is it! Mushroom cow is a subclass of cow, so when cows are requested, it gets them too. I will fix this now.

tastybento commented 3 years ago

Please try the latest build.

x1p commented 3 years ago

Works like a charm again 👍