Ships
Ships
Source Code - Github |
JavaDocs |
Sponge version |
Discord channel |
Translate Core |
---|
Looking for Dev builds?
Dev builds give off new features and bug fixes before they are officially released, however these features and bug fixes may not have been tested as much as a release on here
Old page:
I am testing this new page out. I am aware of some parts that are missing such as ship types, but please say if there is anything that you wish to see. I plan on making a FAQ's that includes common questions such as how to change ship requirements.
If you want to see the old page, it is here
Video tutorial
Ships 6 changes
Ships has gone through many changes, Ships 6 is the latest rewrite of the plugin. The latest rewrite fixes multiple bugs found in the root of previous versions of Ships.
Features
Moving ships
As the name of the plugin suggests, you can create your own ship and move it with just a single click.
Works with all blocks
There is a fully-fledged list where you can configure every block to react differently for the ships, including being able to add a block type to interact with Ships, detect it as a collide, and even not react at all.
Teleport to ships
There have been many requests to be able to teleport to ships for not only this plugin but others like it. This feature has been added to Ships, however, if it is something you do not wish, then you can disable to command by not adding the command.
Falling Ships
Ships will fall/sink if requirements are not met, this could be done through your own interaction such as running out of fuel, or by something else such as a TNT explosion.
Ship types
Airship | Link |
Ship | Link |
Marsship | Link |
Submarine | Link |
Plane | Link |
Hybridship | Coming soon |
Move the ship:
In Ships, movement is done by signs. You can see all signs here
Collide types:
Name | ID | Description |
---|---|---|
Detect collide | DETECT_COLLIDE | If Ships detects this block in the way of a ship moving then the ship will not move with the error of this block being in the way |
Material | MATERIAL | Material means that you can build a ship out of this block and the Ships block detection system will detect it as part of your ship |
Ignore | IGNORE | If Ships detects this block in the way of a ship moving then the block will break and the ship will take its place |
Permissions
Permission node | Description |
---|---|
ships.cmd.info |
Allows the player to use the command '/ships info' |
ships.cmd.blockinfo |
Allows the player to use the command '/ships blockinfo' |
ships.cmd.shiptype.create |
Allows the player to use the command '/ships shiptype create' |
ships.cmd.config.set |
Allows the player to use the command '/ships config set' |
ships.cmd.config.view |
Allows the player to use the command '/ships config view' |
ships.cmd.blocklist.set |
Allows the player to use the command '/ships blocklist set' |
ships.cmd.blocklist.view |
Allows the player to use the command '/ships blocklist view' |
ships.cmd.ship.track |
Allows the player to use the command '/ships ship track' |
ships.cmd.ship.eot |
Allows the player to use the command '/ships ship eot' |
ships.cmd.ship.crew |
Allows the player to use the command '/ships ship crew' |
ships.move.own.ships.airship | Allows a player to move own airship |
ships.move.own.ships.watership | Allows a player to move own ship |
ships.move.own.ships.marsship | Allows a player to move own marsship |
ships.move.other.ships.airship | Allows a player to move anyones airship |
ships.make.ships.airship | Allows a player to make a airship |
ships.remove.other |
Allows a player to destroy anyones ships sign |
Developers:
Looking for a development wiki? maven/gradle dependencies? or something else relating to ships or translate core? Take a look at the getting started wiki
For the vault add-on, what do I add to the config to set my prices?
In reply to tacspat:
The vault addon, the prices are set on a per vessel basis with the price being located within the ship types file.
/plugins/Ships/Configuration/VesselType
Inside the file there should be a value you can change that will look like this
Flags:
VaultAddon:
Price: 100
Beta 6:
Beta 6 has just been uploaded and awaiting approval. This upcoming update contains the big three requests I get all the time.
It also includes some other updates which will help control your ships plugin even more. Enjoy.
Oh and if you are wondering, this beta is now over the 1000Kb mark however its not quite a Mb in terms of binary bytes.
Supported MC versions:
Bukkit 1.16
For those who don't know, the Spigot team have been hard at work with 1.16.1. They have released a 1.16.1 build for everyone to use.
Ships 6.0.0.0 R2 Beta 5 works absolutely fine on the 1.16.1 server build. However like 1.14, 1.15 and now 1.16, there will not be specific features for those versions until Ships 6.0.0.0 fully releases as I am still wanting Ships 6.0.0.0 full release to be 1.13 supported.
Get this error message and the server crashes everytime I try to do anything with the ships plugin. I can create the signs but if I break them I get this error and the server crashes. If I try to use the signs nothing happens.
[10:30:43] [Paper Watchdog Thread/ERROR]: The server has not responded for 60 seconds! Creating thread dump
[10:30:43] [Paper Watchdog Thread/ERROR]: ------------------------------
[10:30:43] [Paper Watchdog Thread/ERROR]: Server thread dump (Look for plugins here before reporting to Paper!):
[10:30:43] [Paper Watchdog Thread/ERROR]: ------------------------------
[10:30:43] [Paper Watchdog Thread/ERROR]: Current Thread: Server thread
[10:30:43] [Paper Watchdog Thread/ERROR]: PID: 24 | Suspended: false | Native: false | State: RUNNABLE
[10:30:43] [Paper Watchdog Thread/ERROR]: Stack:
[10:30:43] [Paper Watchdog Thread/ERROR]: java.lang.Object.hashCode(Native Method)
[10:30:43] [Paper Watchdog Thread/ERROR]: java.util.HashMap.hash(HashMap.java:339)
[10:30:43] [Paper Watchdog Thread/ERROR]: java.util.HashMap.put(HashMap.java:612)
[10:30:43] [Paper Watchdog Thread/ERROR]: java.util.HashSet.add(HashSet.java:220)
[10:30:43] [Paper Watchdog Thread/ERROR]: java.util.AbstractCollection.addAll(AbstractCollection.java:344)
[10:30:43] [Paper Watchdog Thread/ERROR]: java.util.HashSet.<init>(HashSet.java:120)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.config.blocks.ExpandedBlockList.lambda$reloadBlockList$3(ExpandedBlockList.java:54)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.config.blocks.ExpandedBlockList$$Lambda$4104/566181598.accept(Unknown Source)
[10:30:43] [Paper Watchdog Thread/ERROR]: java.lang.Iterable.forEach(Iterable.java:75)
[10:30:43] [Paper Watchdog Thread/ERROR]: java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1080)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.config.blocks.ExpandedBlockList.reloadBlockList(ExpandedBlockList.java:48)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.config.blocks.ExpandedBlockList.getBlockList(ExpandedBlockList.java:35)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.config.blocks.BlockList.getBlockInstruction(BlockList.java:19)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.movement.Movement.move(Movement.java:102)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.movement.Movement$RotateLeftAroundPosition.move(Movement.java:221)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.vessel.common.types.typical.ShipsVessel.rotateLeftAround(ShipsVessel.java:94)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.vessel.sign.WheelSign.onVesselRotate(WheelSign.java:143)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.vessel.sign.WheelSign.access$000(WheelSign.java:29)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.vessel.sign.WheelSign$1.onStructureUpdate(WheelSign.java:88)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.vessel.common.loader.ShipsOvertimeUpdateBlockLoader$OvertimeRunnable.onShipsStructureUpdated(ShipsOvertimeUpdateBlockLoader.java:42)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.algorthum.blockfinder.Ships6BlockFinder$Overtime.lambda$new$0(Ships6BlockFinder.java:95)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.algorthum.blockfinder.Ships6BlockFinder$Overtime$$Lambda$3999/1876091277.run(Unknown Source)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.ships.implementation.bukkit.scheduler.BScheduler$RunAfterScheduler.run(BScheduler.java:16)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftTask.run(CraftTask.java:84)
[10:30:43] [Paper Watchdog Thread/ERROR]: org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:461)
[10:30:43] [Paper Watchdog Thread/ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.b(MinecraftServer.java:1253)
[10:30:43] [Paper Watchdog Thread/ERROR]: net.minecraft.server.v1_15_R1.DedicatedServer.b(DedicatedServer.java:430)
[10:30:43] [Paper Watchdog Thread/ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:1170)
[10:30:43] [Paper Watchdog Thread/ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:959)
[10:30:43] [Paper Watchdog Thread/ERROR]: java.lang.Thread.run(Thread.java:748)
[10:30:43] [Paper Watchdog Thread/ERROR]: ------------------------------
[10:30:43] [Paper Watchdog Thread/ERROR]: --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH ---
[10:30:43] [Paper Watchdog Thread/ERROR]: ------------------------------
[10:30:44] [Paper Watchdog Thread/ERROR]: ------------------------------
In reply to VintageCookiie:
Hey, sorry about the issue, the crash report you submitted is to do with some inefficient code that is being fixed in the next update. Thankfully you can disable the inefficient code in the latest update.
If you go into the Ships config file and find the following
Movement:
Requirements:
Check:
Max:
BlockType: true
change the true to false, this will disable the check for max of a specific block type, disabling the inefficient code. Hope that helps, if not then there are other improvements you can do.
Hello,
so to keep this short, i always get a wall of errors whenever I do anything related to moving a ship and my TPS goes down to 0 for a short period during that. The server doesnt exceed 50% of its power when moving a 700ish block vessel. Please do guide me if its related / not related to ships on possible ways to fix that, I'm fairly new to all of this. ( also sorry if this isnt the place to post this )
[17:03:37 INFO]: [ TPS Meter ] The server's TPS is bellow 0.0, is it lagging or crashed?
[17:03:41 ERROR]: --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH - git-Paper-334 (MC: 1.15.2) ---
[17:03:41 ERROR]: The server has not responded for 20 seconds! Creating thread dump
[17:03:41 ERROR]: ------------------------------
[17:03:41 ERROR]: Server thread dump (Look for plugins here before reporting to Paper!):
[17:03:41 ERROR]: ------------------------------
[17:03:41 ERROR]: Current Thread: Server thread
[17:03:41 ERROR]: PID: 19 | Suspended: false | Native: false | State: RUNNABLE
[17:03:41 ERROR]: Stack:
[17:03:41 ERROR]: java.util.HashMap$KeySpliterator.tryAdvance(HashMap.java:1573)
[17:03:41 ERROR]: java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
[17:03:41 ERROR]: java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:499)
[17:03:41 ERROR]: java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:486)
[17:03:41 ERROR]: java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
[17:03:41 ERROR]: java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:152)
[17:03:41 ERROR]: java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
[17:03:41 ERROR]: java.util.stream.ReferencePipeline.findAny(ReferencePipeline.java:536)
[17:03:41 ERROR]: org.ships.config.blocks.ExpandedBlockList.lambda$reloadBlockList$3(ExpandedBlockList.java:55)
[17:03:41 ERROR]: org.ships.config.blocks.ExpandedBlockList$$Lambda$6381/1272872148.accept(Unknown Source)
[17:03:41 ERROR]: java.lang.Iterable.forEach(Iterable.java:75)
[17:03:41 ERROR]: java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1082)
[17:03:41 ERROR]: org.ships.config.blocks.ExpandedBlockList.reloadBlockList(ExpandedBlockList.java:48)
[17:03:41 ERROR]: org.ships.config.blocks.ExpandedBlockList.getBlockList(ExpandedBlockList.java:35)
[17:03:41 ERROR]: org.ships.config.blocks.BlockList.getBlockInstruction(BlockList.java:19)
[17:03:41 ERROR]: org.ships.movement.Movement.move(Movement.java:97)
[17:03:41 ERROR]: org.ships.movement.Movement$AddToPosition.move(Movement.java:298)
[17:03:41 ERROR]: org.ships.vessel.common.types.typical.ShipsVessel.moveTowards(ShipsVessel.java:76)
[17:03:41 ERROR]: org.ships.vessel.sign.MoveSign.onVesselMove(MoveSign.java:239)
[17:03:41 ERROR]: org.ships.vessel.sign.MoveSign.onSecondClick(MoveSign.java:189)
[17:03:41 ERROR]: org.ships.event.listener.CoreEventListener.lambda$onPlayerInteractWithBlock$6(CoreEventListener.java:123)
[17:03:41 ERROR]: org.ships.event.listener.CoreEventListener$$Lambda$6303/752760891.accept(Unknown Source)
[17:03:41 ERROR]: java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
[17:03:41 ERROR]: java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
[17:03:41 ERROR]: java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1556)
[17:03:41 ERROR]: java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
[17:03:41 ERROR]: java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
[17:03:41 ERROR]: java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
[17:03:41 ERROR]: java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
[17:03:41 ERROR]: java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
[17:03:41 ERROR]: java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:485)
[17:03:41 ERROR]: org.ships.event.listener.CoreEventListener.onPlayerInteractWithBlock(CoreEventListener.java:122)
[17:03:41 ERROR]: sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[17:03:41 ERROR]: sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[17:03:41 ERROR]: sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[17:03:41 ERROR]: java.lang.reflect.Method.invoke(Method.java:498)
[17:03:41 ERROR]: org.ships.implementation.bukkit.event.BEventLaunch.run(BEventLaunch.java:41)
[17:03:41 ERROR]: org.ships.implementation.bukkit.event.BukkitListener.lambda$call$2(BukkitListener.java:206)
[17:03:41 ERROR]: org.ships.implementation.bukkit.event.BukkitListener$$Lambda$6247/2098045994.accept(Unknown Source)
[17:03:41 ERROR]: java.lang.Iterable.forEach(Iterable.java:75)
[17:03:41 ERROR]: org.ships.implementation.bukkit.event.BukkitListener.call(BukkitListener.java:206)
[17:03:41 ERROR]: org.ships.implementation.bukkit.event.BukkitListener.onPlayerInteractWithBlockEvent(BukkitListener.java:163)
[17:03:41 ERROR]: java.lang.invoke.LambdaForm$DMH/1758386724.invokeStatic_L_V(LambdaForm$DMH)
[17:03:41 ERROR]: java.lang.invoke.LambdaForm$BMH/236782369.reinvoke(LambdaForm$BMH)
[17:03:41 ERROR]: java.lang.invoke.LambdaForm$MH/487316194.invoke_MT(LambdaForm$MH)
[17:03:41 ERROR]: com.destroystokyo.paper.event.executor.StaticMethodHandleEventExecutor.execute(StaticMethodHandleEventExecutor.java:38)
[17:03:41 ERROR]: co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80)
[17:03:41 ERROR]: org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70)
[17:03:41 ERROR]: org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607)
[17:03:41 ERROR]: org.bukkit.craftbukkit.v1_15_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:471)
[17:03:41 ERROR]: org.bukkit.craftbukkit.v1_15_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:438)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.PlayerInteractManager.a(PlayerInteractManager.java:143)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.PlayerConnection.a(PlayerConnection.java:1359)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.PacketPlayInBlockDig.a(SourceFile:40)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.PacketPlayInBlockDig.a(SourceFile:10)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.PlayerConnectionUtils$$Lambda$5786/828099301.run(Unknown Source)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.TickTask.run(SourceFile:18)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.ba(MinecraftServer.java:1097)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.executeNext(MinecraftServer.java:1090)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeAll(IAsyncTaskHandler.java:95)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:1224)
[17:03:41 ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:962)
[17:03:41 ERROR]: java.lang.Thread.run(Thread.java:748)
[17:03:41 ERROR]: ------------------------------
[17:03:41 ERROR]: --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH ---
[17:03:41 ERROR]: ------------------------------
[17:03:43 WARN]: Can't keep up! Is the server overloaded? Running 5330ms or 106 ticks behind
In reply to Drakket:
Hi there.
So this is a common issue with ships. Its where ships requests too much information at once.
There is a easy fix.
If you go into the Ships config file, you will find a option called BlockFinder under algorithm. By default its set to Ships 5. If you change the value to Ships 6.
After that, there should be three options below/above that.
The three options are
Delay
DelayUnit
Limit
If you change the limit to 2, the delay to 1 and the delayunit to TICKS that should sort the issue out.
If you save the file and then boot your server back up, your issue should be solved
If your worried about modifing config files, then you can use the command
/Ships config set <key> <value>
The benefit of using the command is you dont dont to shut down your server to make changes and it will prevent you from putting a value that is invalid (it also gives suggestions where it can).
In reply to mosemister:
Hi again,
thanks for the quick response! After i changed it it seemed to definitely work faster but the wall of errors persisted. I'll add it again and my ships config, maybe that will help find the problem.
[17:45:31 INFO]: [ TPS Meter ] The server's TPS is bellow 0.0, is it lagging or crashed?
[17:45:33 ERROR]: --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH - git-Paper-334 (MC: 1.15.2) ---
[17:45:33 ERROR]: The server has not responded for 15 seconds! Creating thread dump
[17:45:33 ERROR]: ------------------------------
[17:45:33 ERROR]: Server thread dump (Look for plugins here before reporting to Paper!):
[17:45:33 ERROR]: ------------------------------
[17:45:33 ERROR]: Current Thread: Server thread
[17:45:33 ERROR]: PID: 19 | Suspended: false | Native: false | State: RUNNABLE
[17:45:33 ERROR]: Stack:
[17:45:33 ERROR]: java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174)
[17:45:33 ERROR]: java.util.HashMap$KeySpliterator.tryAdvance(HashMap.java:1577)
[17:45:33 ERROR]: java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
[17:45:33 ERROR]: java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:499)
[17:45:33 ERROR]: java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:486)
[17:45:33 ERROR]: java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
[17:45:33 ERROR]: java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:152)
[17:45:33 ERROR]: java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
[17:45:33 ERROR]: java.util.stream.ReferencePipeline.findAny(ReferencePipeline.java:536)
[17:45:33 ERROR]: org.ships.config.blocks.ExpandedBlockList.lambda$reloadBlockList$3(ExpandedBlockList.java:55)
[17:45:33 ERROR]: org.ships.config.blocks.ExpandedBlockList$$Lambda$6279/1119251178.accept(Unknown Source)
[17:45:33 ERROR]: java.lang.Iterable.forEach(Iterable.java:75)
[17:45:33 ERROR]: java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1082)
[17:45:33 ERROR]: org.ships.config.blocks.ExpandedBlockList.reloadBlockList(ExpandedBlockList.java:48)
[17:45:33 ERROR]: org.ships.config.blocks.ExpandedBlockList.getBlockList(ExpandedBlockList.java:35)
[17:45:33 ERROR]: org.ships.config.blocks.BlockList.getBlockInstruction(BlockList.java:19)
[17:45:33 ERROR]: org.ships.movement.Movement.move(Movement.java:97)
[17:45:33 ERROR]: org.ships.movement.Movement$AddToPosition.move(Movement.java:298)
[17:45:33 ERROR]: org.ships.vessel.common.types.typical.ShipsVessel.moveTowards(ShipsVessel.java:76)
[17:45:33 ERROR]: org.ships.vessel.sign.MoveSign.onVesselMove(MoveSign.java:239)
[17:45:33 ERROR]: org.ships.vessel.sign.MoveSign.onSecondClick(MoveSign.java:189)
[17:45:33 ERROR]: org.ships.event.listener.CoreEventListener.lambda$onPlayerInteractWithBlock$6(CoreEventListener.java:123)
[17:45:33 ERROR]: org.ships.event.listener.CoreEventListener$$Lambda$6242/253579343.accept(Unknown Source)
[17:45:33 ERROR]: java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
[17:45:33 ERROR]: java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
[17:45:33 ERROR]: java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1556)
[17:45:33 ERROR]: java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
[17:45:33 ERROR]: java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
[17:45:33 ERROR]: java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
[17:45:33 ERROR]: java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
[17:45:33 ERROR]: java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
[17:45:33 ERROR]: java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:485)
[17:45:33 ERROR]: org.ships.event.listener.CoreEventListener.onPlayerInteractWithBlock(CoreEventListener.java:122)
[17:45:33 ERROR]: sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
[17:45:33 ERROR]: sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[17:45:33 ERROR]: java.lang.reflect.Method.invoke(Method.java:498)
[17:45:33 ERROR]: org.ships.implementation.bukkit.event.BEventLaunch.run(BEventLaunch.java:41)
[17:45:33 ERROR]: org.ships.implementation.bukkit.event.BukkitListener.lambda$call$2(BukkitListener.java:206)
[17:45:33 ERROR]: org.ships.implementation.bukkit.event.BukkitListener$$Lambda$6240/723578289.accept(UnknownSource)
[17:45:33 ERROR]: java.lang.Iterable.forEach(Iterable.java:75)
[17:45:33 ERROR]: org.ships.implementation.bukkit.event.BukkitListener.call(BukkitListener.java:206)
[17:45:33 ERROR]: org.ships.implementation.bukkit.event.BukkitListener.onPlayerInteractWithBlockEvent(BukkitListener.java:163)
[17:45:33 ERROR]: java.lang.invoke.LambdaForm$DMH/1758386724.invokeStatic_L_V(LambdaForm$DMH)
[17:45:33 ERROR]: java.lang.invoke.LambdaForm$BMH/1610637596.reinvoke(LambdaForm$BMH)
[17:45:33 ERROR]: java.lang.invoke.LambdaForm$MH/108441808.invoke_MT(LambdaForm$MH)
[17:45:33 ERROR]: com.destroystokyo.paper.event.executor.StaticMethodHandleEventExecutor.execute(StaticMethodHandleEventExecutor.java:38)
[17:45:33 ERROR]: co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80)
[17:45:33 ERROR]: org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70)
[17:45:33 ERROR]: org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607)
[17:45:33 ERROR]: org.bukkit.craftbukkit.v1_15_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:471)
[17:45:33 ERROR]: org.bukkit.craftbukkit.v1_15_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:438)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.PlayerInteractManager.a(PlayerInteractManager.java:143)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.PlayerConnection.a(PlayerConnection.java:1359)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.PacketPlayInBlockDig.a(SourceFile:40)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.PacketPlayInBlockDig.a(SourceFile:10)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.PlayerConnectionUtils$$Lambda$5695/1461537599.run(Unknown Source)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.TickTask.run(SourceFile:18)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.ba(MinecraftServer.java:1097)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.executeNext(MinecraftServer.java:1090)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.sleepForTick(MinecraftServer.java:1051)
[17:45:33 ERROR]: net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:966)
[17:45:33 ERROR]: java.lang.Thread.run(Thread.java:748)
[17:45:33 ERROR]: ------------------------------
[17:45:33 ERROR]: --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH ---
[17:45:33 ERROR]: ------------------------------
[17:45:35 WARN]: Can't keep up! Is the server overloaded? Running 14040ms or 280 ticks behind
In reply to Drakket:
The server load is still too much.
Try changing TICKS to seconds. It will slow down ships a lot, but hopefully it will give a base line of what works.
The error reported is sadly not that useful in this case as all it tells me is that the server hasnt responded, meaning that all the data below is just the point at which it gave up, the issue could have been at a previous point and that it powered though it.
If the message is something different, then crash reports like this are typically helpful.
In reply to mosemister:
Still getting that TPS drop and error wall. Also I got plenty of unused memory and such so I don't get why this happens.
In reply to Drakket:
Its not always to do with memory. In this case its needing to process a lot at once, however because minecraft doesnt support multi threaded workloads it needs to pause the whole server to be processed, which something called "the watchdog" will throw this error or one like it if the server is paused for too long. So really it comes down to your processor
Interesting thats its still occuring despite those settings in play. Do you mind if I take a look myself by joining your server?
In reply to mosemister:
If you don't mind doing it a tad bit later then sure. In the mean time, I'm using the host from minecraft-hosting.pro for this server, I'm not too good at computer hardware stuff (so I'm not sure what you want to know about ) but I'm sure they have the specs listed on their home page. Take a look if interested.
In reply to Drakket:
Sure. Send me a message with your server ip when your ready
In reply to Drakket:
Thanks for the dontation
It might be a problem on my end, but for some reason when I press the wheel sign or the move sign it takes 30 seconds to work. I tried checking the script to see if there was any sort of delay, but I didn't find anything. Any help? (It might be a problem on my end i dont know).
Im using minecraft 1.15.2 and the newest version of the plugin
In reply to sccfornow:
Hi there,
Have you changed any of the settings in the config file? And how large is your ship? (In block count)
In reply to mosemister:
I was going to change the required wool blocks for a ship, but when I saw it was 25% I said that was reasonable. So no.
I always test plugins and to test this one I made a 7x7 raft with a sail. I did everything with the furnace, netherrack and signs.
Block Count: ~80
If there is anything that I can fix by myself please tell me, because I do know a very little bit of java as it is somewhat similar to C# and I might be able to fix something.
Thanks!
In reply to sccfornow:
Its odd that its taking around 30 seconds for a ship the size of roughly 80 blocks.
If you go into the config and change the "auto update" from true to false, does the issue still continue?
In reply to mosemister:
il try it