Giter Site home page Giter Site logo

phiwa / dragontravel Goto Github PK

View Code? Open in Web Editor NEW
19.0 7.0 32.0 43.91 MB

A plugin for the Minecraft-servermods "Bukkit" and "Spigot".

Home Page: http://dev.bukkit.org/bukkit-plugins/dragontravel/

License: Other

Java 100.00%
bukkit-plugin bukkit plugin craftbukkit java spigot spigot-plugin minecraft help-wanted contributions-welcome

dragontravel's Issues

Update to 1.17

I tried to use this plugin with Minecraft 1.17 (PaperMC 1.17 Build 34).

[Server thread/ERROR]: [DragonTravel] Could not register RyeDragon entity.
       Version 'v1_17_R1' is currently not supported.
       ----------------------------------------------------------
[Server thread/WARN]: java.lang.ClassNotFoundException: eu.phiwa.dragontravel.nms.v1_17_R1.EntityRegister
[Server thread/WARN]: 	at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:146)
[Server thread/WARN]: 	at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:103)
[Server thread/WARN]: 	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
[Server thread/WARN]: 	at java.base/java.lang.Class.forName0(Native Method)
[Server thread/WARN]: 	at java.base/java.lang.Class.forName(Class.java:375)
[Server thread/WARN]: 	at eu.phiwa.dragontravel.core.hooks.server.NMSHandler.getEntityRegister(NMSHandler.java:57)
[Server thread/WARN]: 	at eu.phiwa.dragontravel.core.DragonTravel.onLoad(DragonTravel.java:112)
[Server thread/WARN]: 	at org.bukkit.craftbukkit.v1_17_R1.CraftServer.loadPlugins(CraftServer.java:399)
[Server thread/WARN]: 	at net.minecraft.server.dedicated.DedicatedServer.init(DedicatedServer.java:275)
[Server thread/WARN]: 	at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1118)
[Server thread/WARN]: 	at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320)
[Server thread/WARN]: 	at java.base/java.lang.Thread.run(Thread.java:831)
[Server thread/ERROR]: ----------------------------------------------------------
[Server thread/ERROR]: [org.bukkit.craftbukkit.v1_17_R1.CraftServer] Cannot invoke "eu.phiwa.dragontravel.core.hooks.server.IEntityRegister.registerEntity()" because "this.entityRegister" is null initializing DragonTravel v01.007.11 (Is it up to date?)
java.lang.NullPointerException: Cannot invoke "eu.phiwa.dragontravel.core.hooks.server.IEntityRegister.registerEntity()" because "this.entityRegister" is null
	at eu.phiwa.dragontravel.core.DragonTravel.onLoad(DragonTravel.java:116) ~[?:?]
	at org.bukkit.craftbukkit.v1_17_R1.CraftServer.loadPlugins(CraftServer.java:399) ~[patched_1.17.jar:git-Paper-"f110140"]
	at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:275) ~[patched_1.17.jar:git-Paper-"f110140"]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1118) ~[patched_1.17.jar:git-Paper-"f110140"]
	at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[patched_1.17.jar:git-Paper-"f110140"]
	at java.lang.Thread.run(Thread.java:831) [?:?]

POM file invalid? Builds don't complete properly.

Upon attempting to build DragonTravel with Maven, it complains with the following

[WARNING] The POM for net.milkbowl.vault:Vault:jar:1.2.27 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details
[WARNING] The POM for com.massivecraft:factions:jar:2.2.2 is missing, no dependency information available
[WARNING] The POM for com.massivecraft:mcore:jar:6.9.1 is missing, no dependency information available

Perhaps the build file that worked so well in 1.6.4 is no longer valid?

Full Log

A config to enable or disable "Safe landing" mode

That is maybe a algorithm to scan "safe landing solid block".
But in rare case or any event,
Server admin may want to dismount player directly to the station point
without any safe check
(they will make sure the place is safe or throw player into the void)

The config can work at station level or general level.

Maybe related to issue
#56

Dragon doesn't always face to the target point

I set a station and traveled to it successively from a position at the North, South, West, and East of the station. Each time the dragon was facing correctly to the station point. However, the dragon is not facing the destination point when leaving from North-East, South-East, South-West, and North-West.

The station in the image below is located on the top of the emerald block.

2015-04-01_07 34 15

2015-04-01_07 34 45

Plugin doesn't load on thermos.

DragonTravel version: v01.007.01
Thermos version: Build 56 -1614
Mc version: 1.7.10

The plugin doesn't want to load on startup. Here is the error:

[14:04:07 INFO]: [DragonTravel] Enabling DragonTravel v01.007.01
[14:04:07 WARN]: java.lang.NoSuchFieldException: c
[14:04:07 WARN]:        at java.lang.Class.getDeclaredField(Unknown Source)
[14:04:07 WARN]:        at eu.phiwa.dragontravel.nms.v1_7_R4.EntityRegister.registerEntity(EntityRegister.java:17)
[14:04:07 WARN]:        at eu.phiwa.dragontravel.core.DragonTravel.onEnable(DragonTravel.java:132)
[14:04:07 WARN]:        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316)
[14:04:07 WARN]:        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:368)
[14:04:07 WARN]:        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:410)
[14:04:07 WARN]:        at org.bukkit.craftbukkit.v1_7_R4.CraftServer.loadPlugin(CraftServer.java:438)
[14:04:07 WARN]:        at org.bukkit.craftbukkit.v1_7_R4.CraftServer.enablePlugins(CraftServer.java:372)
[14:04:07 WARN]:        at net.minecraft.server.MinecraftServer.func_71243_i(MinecraftServer.java:519)
[14:04:07 WARN]:        at net.minecraft.server.MinecraftServer.func_71222_d(MinecraftServer.java:493)
[14:04:07 WARN]:        at net.minecraft.server.MinecraftServer.func_71247_a(MinecraftServer.java:453)
[14:04:07 WARN]:        at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:337)
[14:04:07 WARN]:        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:643)
[14:04:07 WARN]:        at java.lang.Thread.run(Unknown Source)

I will see if I can find why it doesn't load in the thermos files. Thermos probably renamed this field.
So thermos uses spigot 1.7.10 which uses 1.7.10-R0.1 and that is 1.7-R0.4 so it should work.

Wiki is down

Your wiki now just shows the link for a nitrado . net site.

How do I?

How do I make it so a certain item is required to use DT? I can't seem to find it in the wiki at all and I really want to know.

Player got fall damage when reach the station

The dragon won't dismount player at correct height,
it dismount player at about 3 block height to the ground.
Result in everyone got falling damage.

And if I replace station block as water,
the dragon seems dismount player to neatest block
around the water instead dismount player into the water.

Add slime block also have the affect like water.
Maybe I should place more water there?
By checking positions it shows... When I stand in a center of a block,
the xyz is x 0.5, y 64, z 0.5, instead of 0 64 0.
This is really strange.

Do a /dt showstations printed my station at 0 64 0,
this may be the question is.

Spigot MC server 1.12.2
DragonTravel v01.007.02

Payment by resource doesn't work

I enabled the payment by resource (item ID 371 = gold nuggets).

Payment:
usePayment: true
byResources: true

Resources:
Item: 371
Prices:
toStation: 1

When I enter the command /dt travel , I start to travel even when I don't have gold nuggets on me. I would expect a warning message saying that I don't have the nuggets required to fly to . The same thing happens when I'm using the sign:

[DragonTravel]
Travel
Test
1

Is this happening because I'm an admin? I added to GroupManager config file "- -dt.nocost.*" (nocost permission removal) for me which could have been the reason why no payment is requested from me, but I can still fly for free.

Make the position accurate to the decimal point

The stations saved as int numbers when create and save stations to disk.
But in game I identified when stand in a block center,
the position is violation to the common sense,
that is 0.5, height, 0.5 instead of 0, height, 0.

Try to figure out why.

Interaction with world while flying

While flying it's possible to dismount temporarily by shift-clicking and sneaking. When dropped to the ground the player is able to interact with the world (esp. build or destroy blocks).

At best it wouldn't be possible to dismount temporarily at all, but if, then please don't allow interaction with the world!

Master doesn't build

The target can not be build using "mvn package".

...
Downloaded: http://repo.gravitydevelopment.net/net/gravitydevelopment/anticheat/AntiCheat/2.0.2/AntiCheat-2.0.2.pom (4 KB at 11.1 KB/sec)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 42.796s
[INFO] Finished at: Thu Apr 02 17:17:48 CEST 2015
[INFO] Final Memory: 5M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project DragonTravel: Could not resolve dependencies for project eu.phiwa:DragonTravel:jar:0.0.1.5: Failed to collect dependencies for [org.bukkit:craftbukkit:jar:1.8.3-R0.1-SNAPSHOT (compile), net.milkbowl.vault:VaultAPI:jar:1.4 (provided), com.massivecraft:factions:jar:2.3.1 (system), com.massivecraft:mcore:jar:7.1.0 (system), fr.neatmonster:ncpplugin:jar:static (compile), net.gravitydevelopment.anticheat:AntiCheat:jar:2.0.2 (compile)]: Failed to read artifact descriptor for org.bukkit:bukkit:jar:1.7.9-R0.1-SNAPSHOT: Could not transfer artifact org.bukkit:bukkit:pom:1.7.9-R0.1-SNAPSHOT from/to herocraft-repo (http://ci.herocraftonline.com//plugin/repository/everything/): ci.herocraftonline.com: Unknown host ci.herocraftonline.com -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

/dt travel Station1 doesn't work

Idem when travelling to demo station Station2.

2015-04-01_07 42 50

[07:42:51] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'dt' in plugin DragonTravel vPhoenix v0.0.1.5
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at org.bukkit.craftbukkit.v1_8_R2.CraftServer.dispatchCommand(CraftServer.java:646) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PlayerConnection.handleCommand(PlayerConnection.java:1133) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PlayerConnection.a(PlayerConnection.java:968) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PacketPlayInChat.a(PacketPlayInChat.java:45) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PacketPlayInChat.a(PacketPlayInChat.java:1) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PlayerConnectionUtils$1.run(SourceFile:13) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_33]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_33]
at net.minecraft.server.v1_8_R2.SystemUtils.a(SourceFile:60) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.MinecraftServer.A(MinecraftServer.java:710) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.DedicatedServer.A(DedicatedServer.java:368) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.MinecraftServer.z(MinecraftServer.java:651) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.MinecraftServer.run(MinecraftServer.java:554) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_33]
Caused by: java.lang.NullPointerException
at eu.phiwa.dt.movement.Travels.travel(Travels.java:303) ~[?:?]
at eu.phiwa.dt.movement.Travels.toStation(Travels.java:267) ~[?:?]
at eu.phiwa.dt.commands.CommandHandler.onCommand(CommandHandler.java:451) ~[?:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
... 15 more

Update the target player location during travels

It seems that the destination point when travelling to a player is taken once when entering the command /dt ptravel . However, the target player may have moved a large distance since then depending on the duration of the travel, which results in landing far away from him.

Would it be possible to grab from time to time during the travel the current location of the target player before updating the landing point? I only did some tests on relatively short travels (<1 min) so maybe it's already implemented for longer ones (destination updated every minutes, for instance). When the travel starts from far away, first update the destination every few minutes or so. During the travel and when moving closer to the target, reduce the update rate to a few seconds.

Add ability to use other things to fly

Now there is only dragon.
Some ancient requirement that the dragon wings noise...
And any other if not going to like a dragon.

Maybe a chick or boat.
Change default mob can also work at station level or config file general override.

DragonTravel breaks //set in WorldEdit

//set no longer works in WorldEdit when DragonTravel is loaded.

http://pastebin.com/9XmA5LRq <- output from console on using //set

worldedit-bukkit-6.1.3.jar and DragonTravel-01.005.01.jar are the versions in use. Those in the Worldedit support IRC channel assure me the problem is due to DragonTravel and the way it interacts with the WorldEdit API.

Demo flight ExampleFlight does not exist

2015-04-01_07 48 48

[07:46:30] [Server thread/INFO]: tschaffter issued server command: /dt showflights
[07:48:49] [Server thread/INFO]: tschaffter issued server command: /dt flight ExampleFlight
[07:48:49] [Server thread/INFO]: [DragonTravel][Error] Unable to read flight 'ExampleFlight' from database! World specified for waypoint 1 could not be found!

paper 1.12.2 Cannot enable.

[11:58:34] [Server thread/INFO]: [DragonTravel] Enabling DragonTravel v01.007.02
[11:58:34] [Server thread/INFO]: [DragonTravel] [Error] Could not register the RyeDragon-entity!
[11:58:34] [Server thread/WARN]: java.lang.RuntimeException: Unable to override the old entity RegistryMaterials
[11:58:34] [Server thread/WARN]: at eu.phiwa.dragontravel.nms.v1_12_R1.CustomEntityRegistry.getInstance(CustomEntityRegistry.java:55)
[11:58:34] [Server thread/WARN]: at eu.phiwa.dragontravel.nms.v1_12_R1.CustomEntityRegistry.registerCustomEntity(CustomEntityRegistry.java:62)
[11:58:34] [Server thread/WARN]: at eu.phiwa.dragontravel.nms.v1_12_R1.EntityRegister.registerEntity(EntityRegister.java:12)
[11:58:34] [Server thread/WARN]: at eu.phiwa.dragontravel.core.DragonTravel.onEnable(DragonTravel.java:132)
[11:58:34] [Server thread/WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264)
[11:58:34] [Server thread/WARN]: at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:316)
[11:58:34] [Server thread/WARN]: at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405)
[11:58:34] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugin(CraftServer.java:395)
[11:58:34] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugins(CraftServer.java:344)
[11:58:34] [Server thread/WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.t(MinecraftServer.java:442)
[11:58:34] [Server thread/WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.l(MinecraftServer.java:403)
[11:58:34] [Server thread/WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.a(MinecraftServer.java:341)
[11:58:34] [Server thread/WARN]: at net.minecraft.server.v1_12_R1.DedicatedServer.init(DedicatedServer.java:289)
[11:58:34] [Server thread/WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:616)
[11:58:34] [Server thread/WARN]: at java.lang.Thread.run(Thread.java:748)
[11:58:34] [Server thread/WARN]: Caused by: java.lang.IllegalAccessException: Can not set static final net.minecraft.server.v1_12_R1.RegistryMaterials field net.minecraft.server.v1_12_R1.EntityTypes.b to eu.phiwa.dragontravel.nms.v1_12_R1.CustomEntityRegistry
[11:58:34] [Server thread/WARN]: at sun.reflect.UnsafeFieldAccessorImpl.throwFinalFieldIllegalAccessException(UnsafeFieldAccessorImpl.java:76)
[11:58:34] [Server thread/WARN]: at sun.reflect.UnsafeFieldAccessorImpl.throwFinalFieldIllegalAccessException(UnsafeFieldAccessorImpl.java:80)
[11:58:34] [Server thread/WARN]: at sun.reflect.UnsafeQualifiedStaticObjectFieldAccessorImpl.set(UnsafeQualifiedStaticObjectFieldAccessorImpl.java:77)
[11:58:34] [Server thread/WARN]: at java.lang.reflect.Field.set(Field.java:764)
[11:58:34] [Server thread/WARN]: at eu.phiwa.dragontravel.nms.v1_12_R1.CustomEntityRegistry.getInstance(CustomEntityRegistry.java:51)
[11:58:34] [Server thread/WARN]: ... 14 more
[11:58:34] [Server thread/INFO]: [DragonTravel] Disabling DragonTravel v01.007.02
[11:58:34] [Server thread/INFO]: [DragonTravel] -----------------------------------------------
[11:58:34] [Server thread/INFO]: [DragonTravel] Successfully disabled DragonTravel 01.007.02
[11:58:34] [Server thread/INFO]: [DragonTravel] -----------------------------------------------

API Request: Send player on flight

Hey Phiwa,

I would like to use your plugin on my server, because I really like the idea travelling with dragons. :)

The players should not be able to use any /dt command, but there should be a GUI or anything else where the player can start his flight.
I just took a look into http://dragontravel.phiwa.eu/api.html, but there it is only possible to send a player to a specific location.
Would it be possible for you to implement also sendOnFlight, so that I can deny all /dt commands and create a GUI where the player can start his journey with defined waypoints?

Thanks in advance!

Player can dismount with shift click

Hello, i was testing the plugin and a player without any permission can dismount when he shift-click.

I see the config file and it have the option DismountOnShift: false

RequiredItem doesn't work

I enabled the required item 122 (dragon egg) to fly to stations.

RequiredItem:
Item: 122
For:
toStation: true

Then when I enter /dt travel without having the egg on me, I get the in-game message:

An internal error occured while attempting to perform this command

2015-04-01_08 41 42

[08:41:43] [Server thread/INFO]: tschaffter issued server command: /dt travel test
[08:41:43] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'dt' in plugin DragonTravel vPhoenix v0.0.1.5
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at org.bukkit.craftbukkit.v1_8_R2.CraftServer.dispatchCommand(CraftServer.java:646) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PlayerConnection.handleCommand(PlayerConnection.java:1133) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PlayerConnection.a(PlayerConnection.java:968) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PacketPlayInChat.a(PacketPlayInChat.java:45) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PacketPlayInChat.a(PacketPlayInChat.java:1) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.PlayerConnectionUtils$1.run(SourceFile:13) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_33]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_33]
at net.minecraft.server.v1_8_R2.SystemUtils.a(SourceFile:60) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.MinecraftServer.A(MinecraftServer.java:710) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.DedicatedServer.A(DedicatedServer.java:368) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.MinecraftServer.z(MinecraftServer.java:651) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at net.minecraft.server.v1_8_R2.MinecraftServer.run(MinecraftServer.java:554) [spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_33]
Caused by: java.lang.IllegalArgumentException: Material cannot be null
at org.apache.commons.lang.Validate.notNull(Validate.java:192) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at org.bukkit.craftbukkit.v1_8_R2.inventory.CraftInventory.contains(CraftInventory.java:92) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
at eu.phiwa.dt.movement.Travels.toStation(Travels.java:258) ~[?:?]
at eu.phiwa.dt.commands.CommandHandler.onCommand(CommandHandler.java:451) ~[?:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot-1.8.3.jar:git-Spigot-26dfd01-ad2f806]
... 15 more

The same error occurs when I have the dragon egg in my inventory.

Static import of version-depending NMS code

In class eu.phiwa.dragontravel.core.listeners.EntityListener there is a static import of the RyeDragon entity which is used instead of the IRyeDragon interface.

eu.phiwa.dragontravel.nms.v1_8_R3.RyeDragon

This leads to an exception when enabling

AntiGriefDragons.ofDragonTravel

running a different version than CB/Spigot 1.8.3.

Thanks to Jeppa for the report!

Don't use log type ERROR for successful disablement

[07:36:23] [Server thread/INFO]: [DragonTravel] Disabling DragonTravel vPhoenix v0.0.1.5
[07:36:23] [Server thread/ERROR]: [DragonTravel] -----------------------------------------------
[07:36:23] [Server thread/ERROR]: [DragonTravel] Successfully disabled DragonTravel Phoenix v0.0.1.5
[07:36:23] [Server thread/ERROR]: [DragonTravel] -----------------------------------------------

Missing barrier block for stationary dragon causes water to overflow

There's one block missing in the pattern of barrier blocks created to contain the water for the "WingFixerTask" in /src/main/java/eu/phiwa/dragontravel/nms/[version]/RyeDragon.java.

They all look like this:

            int counter = 0;
            for (int y = 0; y <= 2; y++) {
                for (int x = -1; x <= 1; x++) {
                    m[counter] = loc.clone().add(x, -y, 0).getBlock().getType();
                    md[counter] = loc.clone().add(x, -y, 0).getBlock().getState().getData();
                    loc.clone().add(x, -y, 0).getBlock().setType(Material.BARRIER);
                    counter++;
                }
                for (int z = -1; z <= 1; z++) {
                    if (z == 0) continue;
                    m[counter] = loc.clone().add(0, -y, z).getBlock().getType();
                    md[counter] = loc.clone().add(0, -y, z).getBlock().getState().getData();
                    loc.clone().add(0, -y, z).getBlock().setType(Material.BARRIER);
                    counter++;
                }
                if (y == 0) {
                    loc.getBlock().setType(Material.WATER);
                }
                if (y == 1) {
                    loc.clone().add(0, -1, 0).getBlock().setType(Material.AIR);
                }
            }

The if condition for z is missing a check for y, so a there is a hole in the pattern of barrier blocks that allows water to escape.

To fix, change the if condition to:

if (z == 0 && y == 0) continue;

Issue with skylight

Players who attempt to travel between stations and are standing on either carpet or half on/off a half slab receive an error about not being able to see skylight. This also deducts money to my knowledge, and cancels the flight.

The players are given dt.travel.* and some of them dt.nocost.*

The only flight method that is turned on is Stations, and the skylight option is turned off in the config (RequireSkyLight: false).

At the moment these are my notes on the topic. It took me a while to figure out what was bugging out about it, but I think this is it:

Users cannot fly when standing on top of a carpet
Users cannot fly when standing half on and half off a half slab
dt.admin.* and dt.ignoreusestation.* do not fix this
dt.* does fix this

If you want to chat further about this and see it for yourself I am more than happy to jump into another form of communication. We used your plugin a lot before and would love to continue using it now.

1.18.2 update

Plugin does not work on 1.18.2. It needs to be updated.

here is error as well:
[06:28:09 WARN]: eu.phiwa.com.sk89q.minecraft.util.commands.WrappedCommandException: java.lang.NullPointerException: Cannot invoke "eu.phiwa.dragontravel.core.hooks.payment.PaymentManager.chargePlayer(eu.phiwa.dragontravel.core.hooks.payment.ChargeType, org.bukkit.entity.Player)" because the return value of "eu.phiwa.dragontravel.core.DragonTravel.getPaymentManager()" is null [06:28:09 WARN]: at DragonTravel-01.008.02.jar//eu.phiwa.com.sk89q.minecraft.util.commands.CommandsManager.invokeMethod(CommandsManager.java:543) [06:28:09 WARN]: at DragonTravel-01.008.02.jar//eu.phiwa.com.sk89q.minecraft.util.commands.CommandsManager.executeMethod(CommandsManager.java:520) [06:28:09 WARN]: at DragonTravel-01.008.02.jar//eu.phiwa.com.sk89q.minecraft.util.commands.CommandsManager.executeMethod(CommandsManager.java:475) [06:28:09 WARN]: at DragonTravel-01.008.02.jar//eu.phiwa.com.sk89q.minecraft.util.commands.CommandsManager.execute(CommandsManager.java:409) [06:28:09 WARN]: at DragonTravel-01.008.02.jar//eu.phiwa.dragontravel.core.DragonTravel.onCommand(DragonTravel.java:80) [06:28:09 WARN]: at DragonTravel-01.008.02.jar//eu.phiwa.com.sk89q.bukkit.util.DynamicPluginCommand.execute(DynamicPluginCommand.java:51) [06:28:09 WARN]: at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:172) [06:28:09 WARN]: at org.bukkit.craftbukkit.v1_18_R2.CraftServer.dispatchCommand(CraftServer.java:906) [06:28:09 WARN]: at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2390) [06:28:09 WARN]: at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2201) [06:28:09 WARN]: at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2182) [06:28:09 WARN]: at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:46) [06:28:09 WARN]: at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:6) [06:28:09 WARN]: at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$ensureRunningOnSameThread$1(PlayerConnectionUtils.java:51) [06:28:09 WARN]: at net.minecraft.server.TickTask.run(TickTask.java:18) [06:28:09 WARN]: at net.minecraft.util.thread.IAsyncTaskHandler.d(IAsyncTaskHandler.java:153) [06:28:09 WARN]: at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.d(IAsyncTaskHandlerReentrant.java:24) [06:28:09 WARN]: at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1427) [06:28:09 WARN]: at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:188) [06:28:09 WARN]: at net.minecraft.util.thread.IAsyncTaskHandler.y(IAsyncTaskHandler.java:126) [06:28:09 WARN]: at net.minecraft.server.MinecraftServer.be(MinecraftServer.java:1404) [06:28:09 WARN]: at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1397) [06:28:09 WARN]: at net.minecraft.util.thread.IAsyncTaskHandler.bo(IAsyncTaskHandler.java:114) [06:28:09 WARN]: at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:1531) [06:28:09 WARN]: at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1247) [06:28:09 WARN]: at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:321) [06:28:09 WARN]: at java.base/java.lang.Thread.run(Thread.java:833) [06:28:09 WARN]: Caused by: java.lang.NullPointerException: Cannot invoke "eu.phiwa.dragontravel.core.hooks.payment.PaymentManager.chargePlayer(eu.phiwa.dragontravel.core.hooks.payment.ChargeType, org.bukkit.entity.Player)" because the return value of "eu.phiwa.dragontravel.core.DragonTravel.getPaymentManager()" is null [06:28:09 WARN]: at DragonTravel-01.008.02.jar//eu.phiwa.dragontravel.core.commands.DragonTravelCommands.startCoordsTravel(DragonTravelCommands.java:565) [06:28:09 WARN]: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [06:28:09 WARN]: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) [06:28:09 WARN]: at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [06:28:09 WARN]: at java.base/java.lang.reflect.Method.invoke(Method.java:568) [06:28:09 WARN]: at DragonTravel-01.008.02.jar//eu.phiwa.com.sk89q.minecraft.util.commands.CommandsManager.invokeMethod(CommandsManager.java:533) [06:28:09 WARN]: ... 26 more

server version: Current: git-Purpur-1632 (MC: 1.18.2)*
Previous: git-Purpur-1428 (MC: 1.17.1)

  • I am running the latest version

NEW API

I've taken your base plugin and condensed it down to just 30KB. I removed all outside methods like commands and config and such. Basically, I turned it into a standalone API for working with dragons, but I've managed to break the plugin in the process somewhere. Is it possible for you to make a standalone API JUST for working with dragons, and have it support 1.12 and the 1.12 entity methods like addPassenger(Entity entity) and getPassengers()? It would be awesome and make things much easier. there currently is no API for controlling dragons that support 1.12. if you do this, you would be the only AND I would love you forever.

Add a command to update a station

Now to update a station,
We delete it and create it again,
this lead to two command with same argument.

Is able to use a new command to do that at once.

Could not pass Entity explode event

http://pastebin.com/bzvg78zd
on TnT explode

06.02 03:34:14 [Server] INFO Caused by: java.lang.NoClassDefFoundError: eu/phiwa/dragontravel/nms/v1_8_R3/RyeDragon

Seems we need to implement some sort of reflection here to prevent this error in the future.
I've implemented a temporary workaround for this issue by first checking if the entity exploding is an instanceof EnderDragon.

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.