BentoBoxWorld / Level

Add on for BentoBox to calculate island levels for BSkyBlock and AcidIsland. Please read the Wiki!
Eclipse Public License 2.0
25 stars 32 forks source link

Level Calculations Not Working Properly #196

Open SweggyDucks opened 4 years ago

SweggyDucks commented 4 years ago

Hello! So recently I started building a server using the BentoBox BSkyblock plugin. So far, everything has worked great! However, I have had one persisting issue that I realized maybe somebody on here could help me resolve. The island leveling system is bugging out on my server, to the point where regardless what block I place, whatever value it may be, it doesn't get calculated into the island level. When performing "/is level", it constantly tells me my island level is 0. I have tried changing block values, along with doing a fairly thorough check of my config files for any errors. The odd part is that the error is only with the leveling addon, and what makes it even more unique is that the leveling commands work, its just the calculation part that isnt working properly. The only other plugin I thought could potentially be causing errors is GriefPrevention, but I wasnt exactly sure as the internet didn't have much info on this issue. Thank you in advance for any help you can provide!

I tried typing in /bsb level (name) in the console, however the report didn't seem to help much. Here is the report:

bsb level SweggyDucks [22:25:00] [Server thread/INFO]: Calculating level... [22:25:00] [Server thread/INFO]: Estimated wait: 0 seconds [22:25:00] [Server thread/INFO]: [BentoBox] Level Log for island in SkyPirates at -800,100,1600 [22:25:00] [Server thread/INFO]: [BentoBox] Island owner UUID = 7d9f1f9a-b967-45c3-aad3-06e753434cce [22:25:00] [Server thread/INFO]: [BentoBox] Total block value count = 0 [22:25:00] [Server thread/INFO]: [BentoBox] Formula to calculate island level: blocks / level_cost [22:25:00] [Server thread/INFO]: [BentoBox] Level cost = 100 [22:25:00] [Server thread/INFO]: [BentoBox] Deaths handicap = 0 [22:25:00] [Server thread/INFO]: [BentoBox] Initial island level = 0 [22:25:00] [Server thread/INFO]: [BentoBox] Previous level = 0 [22:25:00] [Server thread/INFO]: [BentoBox] New level = 0 [22:25:00] [Server thread/INFO]: [BentoBox] ================================== [22:25:00] [Server thread/INFO]: [BentoBox] Regular block count [22:25:00] [Server thread/INFO]: [BentoBox] Total number of blocks = 0 [22:25:00] [Server thread/INFO]: [BentoBox] Subtotal = 0 [22:25:00] [Server thread/INFO]: [BentoBox] ================================== [22:25:00] [Server thread/INFO]: [BentoBox] Blocks not counted because they exceeded limits: 0 [22:25:00] [Server thread/INFO]: [BentoBox] ================================== [22:25:00] [Server thread/INFO]: [BentoBox] Blocks on island that are not in config.yml [22:25:00] [Server thread/INFO]: [BentoBox] Total number = 0 [22:25:00] [Server thread/INFO]: [BentoBox] ==================================

tastybento commented 4 years ago

That is weird. There appear to be no blocks on your island, at all.

Please do bsb info SweggyDucks and share the output. I want to see what size your island is.

tastybento commented 4 years ago

Also, do bbox version so I can see what you are running exactly.

SweggyDucks commented 4 years ago

Also thought id mention that my end portal doesn't work either for some reason, however im not sure if that is because im running the game on version 1.16.3. I'm fairly sure the island leveling issue isn't due to my Minecraft version however, as it was working perfectly fine a few days ago or so.

This is the commands you asked me to type in text form from my console btw:

bsb info SweggyDucks [00:54:43] [Server thread/INFO]: ========== Island Info ============ [00:54:43] [Server thread/INFO]: UUID: BSkyBlock4eb054da-7b5c-4d46-9de2-f73ea94b7d72 [00:54:43] [Server thread/INFO]: Owner: SweggyDucks (7d9f1f9a-b967-45c3-aad3-06e753434cce) [00:54:43] [Server thread/INFO]: Last login: Mon Oct 05 19:48:25 EDT 2020 [00:54:43] [Server thread/INFO]: Deaths: 0 [00:54:43] [Server thread/INFO]: Resets: 6 (Max: Unlimited) [00:54:43] [Server thread/INFO]: Team members: [00:54:43] [Server thread/INFO]: SweggyDucks Owner [00:54:43] [Server thread/INFO]: Island location: -800,100,1600 [00:54:43] [Server thread/INFO]: Island coordinates: -1200,0,1200 to -401,256,1999 [00:54:43] [Server thread/INFO]: Protection range: 0 [00:54:43] [Server thread/INFO]: Largest historical protection range: 0 [00:54:43] [Server thread/INFO]: Protection coordinates: -800,0,1600 to -801,256,1599 bbox version [00:54:52] [Server thread/INFO]: Running SPIGOT Invalid. [00:54:52] [Server thread/INFO]: BentoBox version: 1.15.0 [00:54:52] [Server thread/INFO]: Database: JSON [00:54:52] [Server thread/INFO]: Loaded Game Worlds: [00:54:52] [Server thread/INFO]: bskyblock_world (SkyPirates): Overworld, Nether, The End [00:54:52] [Server thread/INFO]: Loaded Addons: [00:54:52] [Server thread/INFO]: Biomes 1.13.0 (ENABLED) [00:54:52] [Server thread/INFO]: BSkyBlock 1.14.0 (ENABLED) [00:54:52] [Server thread/INFO]: Challenges 0.8.3 (ENABLED) [00:54:52] [Server thread/INFO]: Chat 1.0.5 (ENABLED) [00:54:52] [Server thread/INFO]: ControlPanel 1.7.0 (ENABLED) [00:54:52] [Server thread/INFO]: DimensionalTrees 1.6.0 (ENABLED) [00:54:52] [Server thread/INFO]: ExtraMobs 1.11.0.3 (ENABLED) [00:54:52] [Server thread/INFO]: Greenhouses 1.2.0 (ENABLED) [00:54:52] [Server thread/INFO]: Level 2.4.1 (ENABLED) [00:54:52] [Server thread/INFO]: Likes 2.0.0 (ENABLED) [00:54:52] [Server thread/INFO]: Limits 1.14.0 (ENABLED) [00:54:52] [Server thread/INFO]: MagicCobblestoneGenerator 2.1.0 (ENABLED) [00:54:52] [Server thread/INFO]: MagicSummon 1.5.0.0 (ENABLED) [00:54:52] [Server thread/INFO]: TwerkingForTrees 1.4.1 (ENABLED) [00:54:52] [Server thread/INFO]: Warps 1.10.0 (ENABLED)

tastybento commented 4 years ago

The problem is that your protection range is zero, i.e., the size of your island is 0. It looks like your island distance is 400, so check your config.yml and set the protection range to something like 50 or 100. You'll need to reset your island or use the admin range set command to fix the current island.

By the way, with a protection range of zero I'm surprised that any of your players can do anything on their island because the default is for areas outside islands to have no access. If you had to set the global protection settings to allowed for everything, then you'll want to reset those back otherwise players will be building outside their islands.

tastybento commented 4 years ago

For the end portal, make sure that you have the end enabled in bukkit.yml:

settings:
  allow-end: true

The same goes for nether portals - make sure the nether is enabled in server.properties.

SweggyDucks commented 4 years ago

Ah i see. I was trying to limit the protection range as much as possible as I was afraid a protection range would deny players access to build on someone elses island. I am assuming this is not the case, however? And for the end portal, I have that setting enabled, I also looked at my other plugins to see if the end was disabled in any of those, however ive had no luck. Any other potential suggestions? Thank you in advance for any more help you're able to provide, it is very much appreciated!

SweggyDucks commented 4 years ago

Also just an update on my issue, the level system seems to be working now! However, oddly enough upon resetting my island several times and checking my config files, it says that I am starting with some points on my island. My nether, end, and regular island are all set to be calculated upon island creation and subtracted to set new islands at 0, however when doing /island level it says only 47 points are needed to level up, even though it should be 100. I checked my config file for that part too, and it says it should be 100 points for an island level up. 2020-10-06_15 36 24

tastybento commented 4 years ago

That's a rounding error and unfortunately, not really fixable. The way the zeroing works is that it is done on whole levels only so in your case the island has 53 extra blocks just over 100 block count.

I was trying to limit the protection range as much as possible as I was afraid a protection range would deny players access to build on someone elses island. I am assuming this is not the case, however?

Yes, this is definitely the case. The protection range defines the player (or team's) exclusive island space. The default is that visitors or other players cannot build on someone else's island. Usually, players have to become part of the team to do that otherwise you will suffer from loads of player complaints about griefing. If you do want to enable free for all then you can set the default island settings to allow visitor access (rank 0) for all the various protections using /bsb settings.

tastybento commented 4 years ago

BTW, I would recommend setting Level just to calculate the Overworld. It's very CPU intensive to do 3 worlds.