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
-
View User Profile
-
Send Message
Posted Aug 21, 2019In reply to Mosemister:
I re downloaded the plugin, got some new configs, however its now killing my server.
Under mobspawn
Ships::Event: o.s.i.b.e.BukkitListener (EntitySpawnEvent)
-
View User Profile
-
Send Message
Posted Aug 22, 2019In reply to bradyykennyy:
That looks like part of a error. Mind sending the whole crash so I can fix it?
Sorry your having all these issues.
-
View User Profile
-
Send Message
Posted Aug 22, 2019In reply to bradyykennyy:
Hello, I want to help you, because you re-downloaded the plugin, but the new plugin does not match the ship's registration flag, so it crashes.
Please solve the problem according to the method I specified.
1. Remove the Ships plugin first (location: plugins)
2. Copy the folder backup and delete the folder (location: plugins\Ships)
3. Enter the minecraft game and manually remove the signs (any and all) of all hulls.
4. Download the latest version of Ships -b 6.0.0.0 R2 Alpha 2.1
5. Start the server (this time your server crash should be resolved)
6. Run the command as an administrator (/ships config set config Advanced.Block.Movement ships:movement_ships_six)
7. Build the hull and test if the minecraft TPS has improved
-
View User Profile
-
Send Message
Posted Aug 22, 2019In reply to Mosemister:
If I get the errors again ill send them, because once the plugin started doing the purple boss bar at the top of the screen, every movement crashed the server and put out a lot of error lines. Appreciate the help.
In reply to kevinhsneh:
I will try that, thank you. I am however going to copy the blocklist over to the new config folder it creates since I had edited a lot in there.
-
View User Profile
-
Send Message
Posted Aug 22, 2019In reply to bradyykennyy:
Im confused. Do you have errors/crash logs?
-
View User Profile
-
Send Message
Posted Aug 22, 2019In reply to Mosemister:
Just got the error again after downloading the latest ships and switching to ships six movement. I made a 4000 block vessel and the TPS drops every time i right click the move sign and the server almost crashes when it moves.
It was not doing this before it had all the movement stuff in the config and bar visibility or what not.
Every time I make movement with any ships 6 config:
````````22.08 20:25:20 [Server] WARN Can't keep up! Is the server overloaded? Running 7114ms or 142 ticks behind
22.08 20:25:22 [Server] ERROR --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH - git-Paper-163 (MC: 1.14.4) ---
22.08 20:25:22 [Server] ERROR The server has not responded for 10 seconds! Creating thread dump
22.08 20:25:22 [Server] ERROR ------------------------------
22.08 20:25:22 [Server] ERROR Server thread dump (Look for plugins here before reporting to Paper!):
22.08 20:25:22 [Server] ERROR ------------------------------
22.08 20:25:22 [Server] ERROR Current Thread: Server thread
22.08 20:25:22 [Server] ERROR PID: 34 | Suspended: false | Native: false | State: RUNNABLE
22.08 20:25:22 [Server] ERROR Stack:
22.08 20:25:22 [Server] ERROR net.minecraft.server.v1_14_R1.IWorldReader.getChunkAt(IWorldReader.java:80)
22.08 20:25:22 [Server] ERROR net.minecraft.server.v1_14_R1.World.getChunkAt(World.java:334)
22.08 20:25:22 [Server] ERROR net.minecraft.server.v1_14_R1.World.getType(World.java:726)
22.08 20:25:22 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getNMS(CraftBlock.java:69)
22.08 20:25:22 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlockState.<init>(CraftBlockState.java:34)
22.08 20:25:22 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState0(CraftBlock.java:484)
22.08 20:25:22 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState(CraftBlock.java:322)
22.08 20:25:22 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState(CraftBlock.java:316)
22.08 20:25:22 [Server] ERROR org.ships.implementation.bukkit.world.position.BBlockPosition.getTileEntity(BBlockPosition.java:109)
22.08 20:25:22 [Server] ERROR org.ships.movement.MovingBlock.removeBeforePosition(MovingBlock.java:27)
22.08 20:25:22 [Server] ERROR org.ships.movement.MovingBlock.removeBeforePositionOverAir(MovingBlock.java:65)
22.08 20:25:22 [Server] ERROR org.ships.algorthum.movement.Ships6Movement$RemoveBlocks.run(Ships6Movement.java:55)
22.08 20:25:22 [Server] ERROR org.ships.implementation.bukkit.scheduler.BScheduler$RunAfterScheduler.run(BScheduler.java:16)
22.08 20:25:22 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.scheduler.CraftTask.run(CraftTask.java:84)
22.08 20:25:22 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:452)
22.08 20:25:22 [Server] ERROR net.minecraft.server.v1_14_R1.MinecraftServer.b(MinecraftServer.java:1147)
22.08 20:25:22 [Server] ERROR net.minecraft.server.v1_14_R1.DedicatedServer.b(DedicatedServer.java:417)
22.08 20:25:22 [Server] ERROR net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:1074)
22.08 20:25:22 [Server] ERROR net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:918)
22.08 20:25:22 [Server] ERROR java.lang.Thread.run(Thread.java:748)
22.08 20:25:22 [Server] ERROR ------------------------------
22.08 20:25:22 [Server] ERROR --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH ---
22.08 20:25:22 [Server] ERROR ------------------------------
22.08 20:25:27 [Server] INFO UUID of player Uz_i is 2a9e04a3-42c3-485e-a01a-a40cc7484ead
22.08 20:25:27 [Server] ERROR --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH - git-Paper-163 (MC: 1.14.4) ---
22.08 20:25:27 [Server] ERROR The server has not responded for 15 seconds! Creating thread dump
22.08 20:25:27 [Server] ERROR ------------------------------
22.08 20:25:27 [Server] ERROR Server thread dump (Look for plugins here before reporting to Paper!):
22.08 20:25:27 [Server] ERROR ------------------------------
22.08 20:25:27 [Server] ERROR Current Thread: Server thread
22.08 20:25:27 [Server] ERROR PID: 34 | Suspended: false | Native: false | State: RUNNABLE
22.08 20:25:27 [Server] ERROR Stack:
22.08 20:25:27 [Server] ERROR sun.misc.Unsafe.getObjectVolatile(Native Method)
22.08 20:25:27 [Server] ERROR java.util.concurrent.atomic.AtomicReferenceArray.getRaw(AtomicReferenceArray.java:130)
22.08 20:25:27 [Server] ERROR java.util.concurrent.atomic.AtomicReferenceArray.get(AtomicReferenceArray.java:125)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.PlayerChunk.a(PlayerChunk.java:258)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.ChunkProviderServer.getChunkFutureMainThread(ChunkProviderServer.java:247)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:150)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.World.getChunkAt(World.java:373)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.IWorldReader.getChunkAt(IWorldReader.java:80)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.World.getChunkAt(World.java:334)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.World.getType(World.java:726)
22.08 20:25:27 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getType(CraftBlock.java:211)
22.08 20:25:27 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState0(CraftBlock.java:329)
22.08 20:25:27 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState(CraftBlock.java:322)
22.08 20:25:27 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState(CraftBlock.java:316)
22.08 20:25:27 [Server] ERROR org.ships.implementation.bukkit.world.position.BBlockPosition.getTileEntity(BBlockPosition.java:109)
22.08 20:25:27 [Server] ERROR org.ships.movement.MovingBlock.removeBeforePosition(MovingBlock.java:27)
22.08 20:25:27 [Server] ERROR org.ships.movement.MovingBlock.removeBeforePositionOverAir(MovingBlock.java:65)
22.08 20:25:27 [Server] ERROR org.ships.algorthum.movement.Ships6Movement$RemoveBlocks.run(Ships6Movement.java:55)
22.08 20:25:27 [Server] ERROR org.ships.implementation.bukkit.scheduler.BScheduler$RunAfterScheduler.run(BScheduler.java:16)
22.08 20:25:27 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.scheduler.CraftTask.run(CraftTask.java:84)
22.08 20:25:27 [Server] ERROR org.bukkit.craftbukkit.v1_14_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:452)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.MinecraftServer.b(MinecraftServer.java:1147)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.DedicatedServer.b(DedicatedServer.java:417)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:1074)
22.08 20:25:27 [Server] ERROR net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:918)
22.08 20:25:27 [Server] ERROR java.lang.Thread.run(Thread.java:748)
22.08 20:25:27 [Server] ERROR ------------------------------
22.08 20:25:27 [Server] ERROR --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH ---
22.08 20:25:27 [Server] ERROR ------------------------------
From stress testing with some players and what not it seems that any config set to ships six kills the server and tps. However when its all ships five, tps only dips during a movement, (then quickly corrects itself) instead of slowing and crashing the whole server, so it's essentially still playable with ships 5 configs.
-
View User Profile
-
Send Message
Posted Aug 22, 2019In reply to bradyykennyy:
Thats interesting. So the ships 6 movement is in effect, but the issue in effect is that its attempting to do too much.
Ill release another update tomorrow, that will give you more fine control over the ships 6 block tracking and movement algorithm. Including how many blocks it will attempt to move at once and the delay between every attempt of movement. Ill also set the default values to something more reasonable then what ships 6 currently has. (Currently moves 100 blocks every millasecond)
-
View User Profile
-
Send Message
Posted Aug 22, 2019In reply to Mosemister:
Well I hope it helps not crash and fix Major TPS loss.
Also the boss bar visibility config only turns off movement when its right clicking a sign not left clicking, left clicking still shows the boss bar processing the movement. (I think its only with the EOT sign)
All with Ship5 Find and Movement:
Adjusting ship engine signs causes lots of lag. Like adjusting speed.
Also the some of the ships are having some issues keeping the player on the ship, like teleporting them back onto it when moving like above 5 block speed. Possibly because standing on slabs or stairs?
Also does having high EOT speed cause more lag?
EOT movement causes the most tps loss because of the constant movement. (duh)
https://gyazo.com/a6e8014461883ce9116422f5bdc2d1a5
https://gyazo.com/da83ce823a32f7ae8cb69baf3fa26c21
*dies*
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to bradyykennyy:
Hi, So ive been working on Ships for a while today. I found one of the issues. The Ships 6 block finder has something called a memory leak in the code. This is what is causing the server to crash. I am attempting to fix the issue now.
As for the EOT progress bar, you are correct, this has been fixed on my internal copy of Ships so it will be fixed in the next update.
The changing of engine speed will cause a lot of lag, this is due to the fact that it needs to get the max and min values it can be from the ship itself, for it to grab the ship it is connected to, it need to do the block find for the licence sign, so it uses the block finder.
Changing the speed of any ship should not effect anything, as the only difference between having a low speed compared to a high speed is the checking for detection between the two points, the process used to detect the two points is a very simple form of ray tracing, it is so simple that all it does is adds 1 to the XYZ and then checks the block at that position, if its a collide block then it will fail, if not then it carries on.
As for keeping the player on the ship, this has been reported before, but I can not pinpoint the reason of the fault. Standing on stairs and slabs should not effect the outcome. You can find out if the ship detects the player by simply right clicking the licence sign (showing total entities). Changing the speed of the vessel, as mentioned before, should not effect the outcome so I am stumped on that case.
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to Mosemister:
Alright, cool cool.
Is there anything can be done to reduce lag from changing the value on the engine side? Or is it basically fixed with Ships 6?
Iv'e noticed no specific TPS loss when the ship is moving at fast speeds with EOT, when know ones on it. Its just the teleporting the entity to the block they were last standing on that I believe causes the most TPS loss. That's probably obvious. I'll do whatever to not have to uninstall it due to popular demand.
Me having this plugin installed pisses everyone on the server off cause when I'm just enjoying sailing around, everyone else on the server isn't able to build etc. I just love the plugin though and I want to help make it smooth and lag free so everyone else can see why I enjoy it so much.
I really appreciate all the responses you've been giving.
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to bradyykennyy:
Hi, I am uploading the next update as you sent that message that fixes a lot of the issue you have addressed (not the entities teleporting to their previous position ... still stumped on that one). I have been testing it all day to see how the tps is though many tests. I hope this new update works for your server and stops your players being pissed off.
Once again the less tps option is to enable ships 6 for both movement and block tracking, don't worry the memory leak has been fixed as well as a bug with the ships 6 movement that I found when testing it with ships around the size of 3,6000 blocks.
The update is awaiting approval
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to Mosemister:
Awesome,
have you tried looking at Movecraft source code to see how they did the entity teleporting when standing on a moving ship?
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to bradyykennyy:
No. This is because Movecraft and Ships run very differently to one and another so almost no code nor algorithm will work for both.
The issue is probably (as you said before) my detection for entities on half slabs, im yet to test this theory.
Tell me how the new ships version works for you.
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to Mosemister:
I'll do some tests. Questions. What are the new Stack configs?
Also should I mess with the block finder 4000 value?
And should I switch both config types to Ships 6?
Another one I couldn't fit in the other reply:
23.08 23:20:55 [Server] WARN org.ships.exceptions.NoLicencePresent: Could not find Ships licence sign at 1378, 69, -2145, FijiWorld2: plugins/Ships/VesselData/ships.watership/EC.yml
23.08 23:20:55 [Server] WARN at org.ships.vessel.common.types.typical.ShipsVessel.getSign(ShipsVessel.java:47)
23.08 23:20:55 [Server] WARN at org.ships.vessel.common.types.typical.ShipsVessel.getName(ShipsVessel.java:61)
23.08 23:20:55 [Server] WARN at org.ships.vessel.common.types.typical.ShipsVessel.getId(ShipsVessel.java:98)
23.08 23:20:55 [Server] WARN at org.ships.vessel.common.loader.ShipsIDFinder.lambda$load$1(ShipsIDFinder.java:22)
23.08 23:20:55 [Server] WARN at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174)
23.08 23:20:55 [Server] WARN at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
23.08 23:20:55 [Server] WARN at java.util.HashMap$KeySpliterator.tryAdvance(HashMap.java:1577)
23.08 23:20:55 [Server] WARN at java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
23.08 23:20:55 [Server] WARN at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:498)
23.08 23:20:55 [Server] WARN at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485)
23.08 23:20:55 [Server] WARN at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
23.08 23:20:55 [Server] WARN at java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:152)
23.08 23:20:55 [Server] WARN at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
23.08 23:20:55 [Server] WARN at java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:464)
23.08 23:20:55 [Server] WARN at org.ships.vessel.common.loader.ShipsIDFinder.load(ShipsIDFinder.java:34)
23.08 23:20:55 [Server] WARN at org.ships.event.listener.CoreEventListener.onSignChangeEvent(CoreEventListener.java:139)
23.08 23:20:55 [Server] WARN at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
23.08 23:20:55 [Server] WARN at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
23.08 23:20:55 [Server] WARN at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
23.08 23:20:55 [Server] WARN at java.lang.reflect.Method.invoke(Method.java:498)
23.08 23:20:55 [Server] WARN at org.ships.implementation.bukkit.event.BEventLaunch.run(BEventLaunch.java:25)
23.08 23:20:55 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.lambda$call$1(BukkitListener.java:170)
23.08 23:20:55 [Server] WARN at java.lang.Iterable.forEach(Iterable.java:75)
23.08 23:20:55 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.call(BukkitListener.java:170)
23.08 23:20:55 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.onSignChangeEvent(BukkitListener.java:104)
23.08 23:20:55 [Server] WARN at com.destroystokyo.paper.event.executor.StaticMethodHandleEventExecutor.execute(StaticMethodHandleEventExecutor.java:38)
23.08 23:20:55 [Server] WARN at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80)
23.08 23:20:55 [Server] WARN at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70)
23.08 23:20:55 [Server] WARN at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:2567)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.PacketPlayInUpdateSign.a(SourceFile:44)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.PacketPlayInUpdateSign.a(SourceFile:10)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java:1012)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:1005)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:989)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:922)
23.08 23:20:55 [Server] WARN at java.lang.Thread.run(Thread.java:748)
23.08 23:20:55 [Server] WARN java.lang.NullPointerException
23.08 23:20:55 [Server] WARN at org.ships.vessel.common.types.typical.ShipsVessel.getId(ShipsVessel.java:98)
23.08 23:20:55 [Server] WARN at org.ships.vessel.common.loader.ShipsIDFinder.lambda$load$1(ShipsIDFinder.java:22)
23.08 23:20:55 [Server] WARN at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174)
23.08 23:20:55 [Server] WARN at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
23.08 23:20:55 [Server] WARN at java.util.HashMap$KeySpliterator.tryAdvance(HashMap.java:1577)
23.08 23:20:55 [Server] WARN at java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
23.08 23:20:55 [Server] WARN at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:498)
23.08 23:20:55 [Server] WARN at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485)
23.08 23:20:55 [Server] WARN at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
23.08 23:20:55 [Server] WARN at java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:152)
23.08 23:20:55 [Server] WARN at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
23.08 23:20:55 [Server] WARN at java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:464)
23.08 23:20:55 [Server] WARN at org.ships.vessel.common.loader.ShipsIDFinder.load(ShipsIDFinder.java:34)
23.08 23:20:55 [Server] WARN at org.ships.event.listener.CoreEventListener.onSignChangeEvent(CoreEventListener.java:139)
23.08 23:20:55 [Server] WARN at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
23.08 23:20:55 [Server] WARN at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
23.08 23:20:55 [Server] WARN at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
23.08 23:20:55 [Server] WARN at java.lang.reflect.Method.invoke(Method.java:498)
23.08 23:20:55 [Server] WARN at org.ships.implementation.bukkit.event.BEventLaunch.run(BEventLaunch.java:25)
23.08 23:20:55 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.lambda$call$1(BukkitListener.java:170)
23.08 23:20:55 [Server] WARN at java.lang.Iterable.forEach(Iterable.java:75)
23.08 23:20:55 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.call(BukkitListener.java:170)
23.08 23:20:55 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.onSignChangeEvent(BukkitListener.java:104)
23.08 23:20:55 [Server] WARN at com.destroystokyo.paper.event.executor.StaticMethodHandleEventExecutor.execute(StaticMethodHandleEventExecutor.java:38)
23.08 23:20:55 [Server] WARN at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80)
23.08 23:20:55 [Server] WARN at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70)
23.08 23:20:55 [Server] WARN at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:2567)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.PacketPlayInUpdateSign.a(SourceFile:44)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.PacketPlayInUpdateSign.a(SourceFile:10)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java:1012)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:1005)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:989)
23.08 23:20:55 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:922)
23.08 23:20:55 [Server] WARN at java.lang.Thread.run(Thread.java:748)
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to bradyykennyy:
So let me explain what a stack is first.
If we take the movement algorithm for example. Before the movement algorithm starts, it knows all the blocks current positions and the blocks positions to be. If it attempts to process all the blocks at once, you have the ships five movement algorithm.
To reduce the tps drop, it divides all the positions into smaller chunks, called stacks, and then handles a single stack in a single tick.
So in both the block finder and movement, a stack is a small section of the ship.
So in both the movement and the block finder you get 3 options for a stack, the limit, the delay and the delayunit. The limit is how big the stack is, the smaller the stack the less processing in a single tick that needs to be done, reducing lag. The delay and the delay unit is the time between dealing with the stack before to the new stack, reducing this may cause lag depending on your stack size.
Block finder, as long as your on ships 6 block finder, you can mess with it all you like. I personally tested it up to 50,000 and worked like a charm. Increasing it will allow for larger ships, the issue is the larger the ship, more time it takes to move.
As for both movement and block finder, i would definitely change the block finder. The Movement i would recommend changing for larger ships but the ships five version is a lot better then it was in ships 5 so it does well at medium sized ships. So its up to you.
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to Mosemister:
23.08 23:18:29 [Server] WARN java.nio.file.NoSuchFileException: plugins/Ships/VesselData/ships.watership/Quaker.yml
23.08 23:18:29 [Server] WARN at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
23.08 23:18:29 [Server] WARN at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
23.08 23:18:29 [Server] WARN at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
23.08 23:18:29 [Server] WARN at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:244)
23.08 23:18:29 [Server] WARN at sun.nio.fs.AbstractFileSystemProvider.delete(AbstractFileSystemProvider.java:103)
23.08 23:18:29 [Server] WARN at java.nio.file.Files.delete(Files.java:1126)
23.08 23:18:29 [Server] WARN at org.ships.event.listener.CoreEventListener.onBlockBreak(CoreEventListener.java:267)
23.08 23:18:29 [Server] WARN at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
23.08 23:18:29 [Server] WARN at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
23.08 23:18:29 [Server] WARN at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
23.08 23:18:29 [Server] WARN at java.lang.reflect.Method.invoke(Method.java:498)
23.08 23:18:29 [Server] WARN at org.ships.implementation.bukkit.event.BEventLaunch.run(BEventLaunch.java:25)
23.08 23:18:29 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.lambda$call$1(BukkitListener.java:170)
23.08 23:18:29 [Server] WARN at java.lang.Iterable.forEach(Iterable.java:75)
23.08 23:18:29 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.call(BukkitListener.java:170)
23.08 23:18:29 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.onBlockBreakByPlayer(BukkitListener.java:162)
23.08 23:18:29 [Server] WARN at com.destroystokyo.paper.event.executor.StaticMethodHandleEventExecutor.execute(StaticMethodHandleEventExecutor.java:38)
23.08 23:18:29 [Server] WARN at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80)
23.08 23:18:29 [Server] WARN at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70)
23.08 23:18:29 [Server] WARN at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerInteractManager.breakBlock(PlayerInteractManager.java:303)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerInteractManager.a(PlayerInteractManager.java:262)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerInteractManager.a(PlayerInteractManager.java:214)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1307)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.PacketPlayInBlockDig.a(SourceFile:40)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.PacketPlayInBlockDig.a(SourceFile:10)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java:1012)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:1005)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeAll(IAsyncTaskHandler.java:95)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:1134)
23.08 23:18:29 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:918)
23.08 23:18:29 [Server] WARN at java.lang.Thread.run(Thread.java:748)
23.08 23:18:30 [Server] WARN java.nio.file.NoSuchFileException: plugins/Ships/VesselData/ships.watership/Quaker.yml
23.08 23:18:30 [Server] WARN at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
23.08 23:18:30 [Server] WARN at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
23.08 23:18:30 [Server] WARN at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
23.08 23:18:30 [Server] WARN at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:244)
23.08 23:18:30 [Server] WARN at sun.nio.fs.AbstractFileSystemProvider.delete(AbstractFileSystemProvider.java:103)
23.08 23:18:30 [Server] WARN at java.nio.file.Files.delete(Files.java:1126)
23.08 23:18:30 [Server] WARN at org.ships.event.listener.CoreEventListener.onBlockBreak(CoreEventListener.java:267)
23.08 23:18:30 [Server] WARN at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
23.08 23:18:30 [Server] WARN at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
23.08 23:18:30 [Server] WARN at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
23.08 23:18:30 [Server] WARN at java.lang.reflect.Method.invoke(Method.java:498)
23.08 23:18:30 [Server] WARN at org.ships.implementation.bukkit.event.BEventLaunch.run(BEventLaunch.java:25)
23.08 23:18:30 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.lambda$call$1(BukkitListener.java:170)
23.08 23:18:30 [Server] WARN at java.lang.Iterable.forEach(Iterable.java:75)
23.08 23:18:30 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.call(BukkitListener.java:170)
23.08 23:18:30 [Server] WARN at org.ships.implementation.bukkit.event.BukkitListener.onBlockBreakByPlayer(BukkitListener.java:162)
23.08 23:18:30 [Server] WARN at com.destroystokyo.paper.event.executor.StaticMethodHandleEventExecutor.execute(StaticMethodHandleEventExecutor.java:38)
23.08 23:18:30 [Server] WARN at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80)
23.08 23:18:30 [Server] WARN at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70)
23.08 23:18:30 [Server] WARN at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerInteractManager.breakBlock(PlayerInteractManager.java:303)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerInteractManager.a(PlayerInteractManager.java:262)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerInteractManager.a(PlayerInteractManager.java:214)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1307)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.PacketPlayInBlockDig.a(SourceFile:40)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.PacketPlayInBlockDig.a(SourceFile:10)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java:1012)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:1005)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeAll(IAsyncTaskHandler.java:95)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:1134)
23.08 23:18:30 [Server] WARN at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:918)
23.08 23:18:30 [Server] WARN at java.lang.Thread.run(Thread.java:748)
https://gyazo.com/ddd15a7b5a3414a2230eca8d8fdeb18f
https://gyazo.com/14695e1607761f942453c9bfd29aa93c
Came back from AFK: https://gyazo.com/95358fc65cb82e40df8a36509622011b
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to bradyykennyy:
Thats really strange, so whats happening is there is a ship that has loaded in but the file has been deleted. Just restart your server (or if your able to reload just ships plugin then do that). If the problem persists, go into the following.
plugins/Ships/VesselData/ships.watership and make sure that all those waterships are still present. If all else fails just delete the VesselData folder.
It seems like your running on a Unix based platform (MacOS or a remote server), something i dont have access to, so sorry about the bugs, sadly can not test on them.
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to Mosemister:
My non Mac friend testing was also getting issues creating the ships with ships6 configs all set.
Is there a discord or do you have a discord so I can just help get stuff to you easier?
23.08 23:39:52 [Server] WARN Exception in thread "Thread-18" java.lang.RuntimeException: Failed to read BlockState at: world: FijiWorld2 location: (2573, 69, -652)
23.08 23:39:52 [Server] WARN at org.bukkit.craftbukkit.v1_14_R1.block.CraftBlockEntityState.<init>(CraftBlockEntityState.java:48)
23.08 23:39:52 [Server] WARN at org.bukkit.craftbukkit.v1_14_R1.block.CraftSign.<init>(CraftSign.java:19)
23.08 23:39:52 [Server] WARN at org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState0(CraftBlock.java:344)
23.08 23:39:52 [Server] WARN at org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState(CraftBlock.java:322)
23.08 23:39:52 [Server] WARN at org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock.getState(CraftBlock.java:316)
23.08 23:39:52 [Server] WARN at org.ships.implementation.bukkit.world.position.BBlockPosition.getTileEntity(BBlockPosition.java:109)
23.08 23:39:52 [Server] WARN at org.ships.vessel.common.types.typical.ShipsVessel.getSign(ShipsVessel.java:36)
23.08 23:39:52 [Server] WARN at org.ships.vessel.common.types.typical.ShipsVessel.getName(ShipsVessel.java:61)
23.08 23:39:52 [Server] WARN at org.ships.vessel.common.types.typical.ShipsVessel.getId(ShipsVessel.java:98)
23.08 23:39:52 [Server] WARN at org.ships.vessel.common.loader.shipsvessel.ShipsFileLoader.lambda$load$5(ShipsFileLoader.java:148)
23.08 23:39:52 [Server] WARN at java.util.Optional.ifPresent(Optional.java:159)
23.08 23:39:52 [Server] WARN at org.ships.vessel.common.loader.shipsvessel.ShipsFileLoader.lambda$load$6(ShipsFileLoader.java:129)
23.08 23:39:52 [Server] WARN at java.lang.Thread.run(Thread.java:748)
23.08 23:39:52 [Server] WARN Caused by: java.lang.IllegalStateException: Tile is null, asynchronous access? CraftBlock{pos=BlockPosition{x=2573, y=69, z=-652},type=OAK_WALL_SIGN,data=Block{minecraft:oak_wall_sign}[facing=north,waterlogged=false],fluid=net.minecraft.server.v1_14_R1.FluidTypeEmpty@61710c6}
23.08 23:39:52 [Server] WARN at com.google.common.base.Preconditions.checkState(Preconditions.java:444)
23.08 23:39:52 [Server] WARN at org.bukkit.craftbukkit.v1_14_R1.block.CraftBlockEntityState.<init>(CraftBlockEntityState.java:29)
23.08 23:39:52 [Server] WARN ... 12 more
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to bradyykennyy:
There isnt a discord but I do have it. Check your private message on here (next to the notification button) ill send you my discord
-
View User Profile
-
Send Message
Posted Aug 23, 2019In reply to bradyykennyy:
Hello, this time I am very sure, you should manually back up the ships folder file (or rename the ships folder directly to ships_Backup) and then create a new file for the new version of Ships -b 6.0.0.0 R2 Alpha 2.3.1. ,
Then you manually solve your problem by manually copying your ship registration and data to a new file.
Your message shows
The new version of the configuration file does not match the old data. According to my previous reply, please try it.