Git Product home page Git Product logo

Comments (11)

Lauriethefish avatar Lauriethefish commented on August 11, 2024 1

The problem is occurring because the plugin gets the worlds of the loaded portals when the server starts up. However, BetterPortals is loading before EliteMobs, so when it loads, the worlds don't exist, this causes the NullPointerException.

Nether portals are inter-world portals, the only different between a nether-portal and a custom-portal is that a nether portals removes itself if broken. However, Bukkit loads the worlds before BetterPortals so they aren't causing issues.

The fix here would be to add EliteMobs as an optional dependency in order to make sure that it loads before BetterPortals does.
I will do this sometime

from betterportals.

Lauriethefish avatar Lauriethefish commented on August 11, 2024 1

Hmm, perhaps try renaming EliteMobs to A_EliteMobs, see if that'll trick Bukkit into loading it first. Since plugins load in alphabetical order.

from betterportals.

Lauriethefish avatar Lauriethefish commented on August 11, 2024 1

Lol, unfortunate. If you're willing to join the discord, I could send you a test build with EliteMobs added as an optional dependency, this will fix your issue. I could always send the build here if not, but it's easier to talk there tbh. It's linked in the plugin posting.

from betterportals.

SalvieMundi avatar SalvieMundi commented on August 11, 2024

Just in case there are any differences, here is the v0.7.1 error string

26.02 04:54:50 [Server] ERROR A critical error occurred during plugin execution.
26.02 04:54:50 [Server] ERROR Please create an issue at https://github.com/Lauriethefish/BetterPortals/issues to get this fixed.
26.02 04:54:50 [Server] WARN java.lang.NullPointerException
26.02 04:54:50 [Server] WARN at org.bukkit.Location.getBlock(Location.java:133)
26.02 04:54:50 [Server] WARN at com.lauriethefish.betterportals.bukkit.entity.LocalEntityTeleportManager.limitToBlockHitbox(LocalEntityTeleportManager.java:83)
26.02 04:54:50 [Server] WARN at com.lauriethefish.betterportals.bukkit.entity.LocalEntityTeleportManager.teleportEntity(LocalEntityTeleportManager.java:111)
26.02 04:54:50 [Server] WARN at com.lauriethefish.betterportals.bukkit.entity.LocalEntityTeleportManager.update(LocalEntityTeleportManager.java:47)
26.02 04:54:50 [Server] WARN at com.lauriethefish.betterportals.bukkit.portal.Portal.onUpdate(Portal.java:85)
26.02 04:54:50 [Server] WARN at com.lauriethefish.betterportals.bukkit.portal.PortalActivityManager.onPortalActivatedThisTick(PortalActivityManager.java:36)
26.02 04:54:50 [Server] WARN at com.lauriethefish.betterportals.bukkit.player.PlayerData.updateViewablePortals(PlayerData.java:85)
26.02 04:54:50 [Server] WARN at com.lauriethefish.betterportals.bukkit.player.PlayerData.onUpdate(PlayerData.java:103)
26.02 04:54:50 [Server] WARN at java.base/java.util.HashMap$Values.forEach(HashMap.java:976)
26.02 04:54:50 [Server] WARN at java.base/java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1085)
26.02 04:54:50 [Server] WARN at com.lauriethefish.betterportals.bukkit.tasks.MainUpdate.run(MainUpdate.java:52)
26.02 04:54:50 [Server] WARN at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftTask.run(CraftTask.java:99)
26.02 04:54:50 [Server] WARN at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:468)
26.02 04:54:50 [Server] WARN at net.minecraft.server.v1_16_R3.MinecraftServer.b(MinecraftServer.java:1299)
26.02 04:54:50 [Server] WARN at net.minecraft.server.v1_16_R3.DedicatedServer.b(DedicatedServer.java:377)
26.02 04:54:50 [Server] WARN at net.minecraft.server.v1_16_R3.MinecraftServer.a(MinecraftServer.java:1214)
26.02 04:54:50 [Server] WARN at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1002)
26.02 04:54:50 [Server] WARN at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:175)
26.02 04:54:50 [Server] WARN at java.base/java.lang.Thread.run(Thread.java:834)
26.02 04:54:50 [Server] INFO Attempting to shut down the plugin . . .
26.02 04:54:50 [Server] INFO Disabling BetterPortals v0.7.1

from betterportals.

Lauriethefish avatar Lauriethefish commented on August 11, 2024

Hmm, could you tell me your server software and version please?
Also, what world management plugin do you use?

from betterportals.

SalvieMundi avatar SalvieMundi commented on August 11, 2024

I don't know exact numbers, but I'm using a Paper / Spigot server with the latest Java (I believe 11) and the latest Minecraft build for Paper (I believe 1.16.5).

Also, I believe what you are asking about is WorldEdit / WorldGuard and the like? I have both of those.

I also have the following installed:

BetterSleep
SkipNight
CraftBook
EliteMobs

EliteMobs' worlds are the ones I am trying to build portals to. But I don't think it's their plugin that's causing the problems. The worlds follow the exact same folder structure and data structure as a typical "world" generated by MC vanilla.

I can try building two custom portals within my default vanilla MC world and see if those experience the same problems, but I feel like it wouldn't. The nether portals also do not cause problems, I have tested those. Only inter-world portals seem to be causing the issue.

from betterportals.

SalvieMundi avatar SalvieMundi commented on August 11, 2024

Oh, awesome. That actually makes a lot of sense. Iirc, I do see Elitemobs start pretty late in the server startup routine when viewing the console. I wonder if there is a way, in the meantime, for me to force the order in which the plugins load?

I appreciate the fast responses. I love the plugin, as does my wife. I will be sure to rate 5 stars once this issue is resolved.

from betterportals.

SalvieMundi avatar SalvieMundi commented on August 11, 2024

I'll give it a try tonight. Thank you! 😊

from betterportals.

SalvieMundi avatar SalvieMundi commented on August 11, 2024

No dice. It still loaded it way after everything else. Funny enough

27.02 03:14:48 [Server] INFO Loading BetterSleeping3 v3.0.4
27.02 03:14:48 [Server] INFO Loading WorldEdit v7.2.3+5680-135941e
27.02 03:14:49 [Server] INFO Got request to register class com.sk89q.worldedit.bukkit.BukkitServerInterface with WorldEdit [com.sk89q.worldedit.extension.platform.PlatformManager@62428c7c]
27.02 03:14:49 [Server] INFO Loading SkipNight v1.5.0
27.02 03:14:49 [Server] INFO Loading WorldGuard v7.0.4+f7ff984
27.02 03:14:49 [Server] INFO Loading ProtocolLib v4.6.0
27.02 03:14:50 [Server] INFO Loading BetterPortals v0.7.1
27.02 03:14:50 [Server] INFO Loading EliteMobs v7.2.39

Literally right after Better Portals lol.

from betterportals.

SalvieMundi avatar SalvieMundi commented on August 11, 2024

I can actually confirm it would work. I manually unpacked the jar, edited the plugin.yml and put EliteMobs next to multi-verse, and it works great now. Either way, I would love to join the discord!

from betterportals.

Lauriethefish avatar Lauriethefish commented on August 11, 2024

Lol, you basically did exactly what I was gonna do, good job :)
In the future I'll add it to plugin.yml myself, since it's important to.

from betterportals.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.