mcMMO Horses
Description
McMMOHorses is a plugin that add new abilities to horses. You can claim, name, summon, and level up abilities for your horse.
Skills
- Swiftness - Increases the speed of your horse (Activates when the horse jumps)
- Agility - Increases the chance of dodging attacks (Activates when the horse is attacked)
- Vitality - Increases the health of your horse (Instantly activates- Increases when your horse is attacked)
- Wrath - Temporarily disables damage and increases speed (Activates when the horse is attacked with a projectile/ thorns)
Features
- SQLite support
- Summon/banish horses
- Horse ownership (protection configurable)
- Horse skills/abilities
- Multiple horses
- Horse claim/buy/sell (Vault)
- Horse scoreboard
- More config options
- More admin commands
- More permissions
- Horse Races integration
- Skill leaderboard
- Currently Available - Will be available soon
Getting started
- To get started, claim a horse by taming it and giving it a saddle. Then, while riding it, use /h claim.
- To level up your horse stats, ride for long distances for a Swiftness increase. To increase it's health, wrath, or agility, let your horse take damage.
- To heal your horse, give them sugar, apples, carrots, golden apples, or golden carrots.
- To view your horses stats, use /h stats
- To protect your horse from damage when you are not riding it, use /h protect
- When you disconnect from the server, your horse will despawn to protect it. When you join the server again, use /h summon to summon your horse again.
- If you wish to rename your horse, use /h set name <the new name>
For Server owners:
Currently, I am planning on making most of the features in the plugin configurable, so this plugin can fit on any server. All global variables to configure the plugin can be found in the Horsedata.yml file. Here is a list of all the variables:
savetype: 2
Savetype controls how the server will save horse data. By Default, it is set to 2, which will save all data to the horsedata.yml file. If you wish for the server to save data to an SQL database, change the savetype to 3. If after saving the data to a database you wish to return to a file, change the save type to 1.
disable_banishment: false
Disable banishment disables the banish command. This is useful if you do not users to be able to temporarily remove horses from the world. By default, this is set to false.
banish_on_disable: true
Banish on disable will banish all horses in the world when the server reloads. When this id disabled, it is useful for removing the plugin (if you ever want to) without losing the horses. By default, it is set to true
banish_on_player_quit: true
Banish on player quit controls if horses should be banished when a player leaves the server, whether it be by logging off, kick, ban, or joining another server. When this is disabled, horses are persistant to the world, allowing other players to interact or even damage the horse (Which may be good for faction servers). By default, this is set to true
Permissions:
As a quick overview, there are only two permissions that you need to know about:
mcmmohorses.user
This is the permission given to all default users. This is what allows all players to claim, summon, level up, banish, and buy horses. A list of all of it's child permissions can be found below:
mcmmohorses.help
-Players can use the command "/h help"
mcmmohorses.me
-Players can use the command "/h me" to show all of the user's stats
mcmmohorses.stats
-Players can use the command "/h stats" to show all of the horse's stats
mcmmohorses.skills.info
-Players can use the command "/h skills" which shows the skill stats for their horse
mcmmohorses.claim
-Players can use the command "/h claim" which claims the horse the player is riding
mcmmohorses.buy
-If Enable-Economy is enabled in the config.yml, players will need to buy horses in order to claim them. This command allows users to buy horses.
mcmmohorses.sell
-Players can use the command "/h sell".
mcmmohorses.summon
-Players can use the command "/h summon" to summon horses
mcmmohorses.banish
-Players can use the command "/h banish" to remove horses from the world, which can be summoned using "/h summon"
mcmmohorses.kill
-Players can use the command "/h kill", which will kill one of their horses.
mcmmohorses.groups.default
mcmmohorses.admin
This permission lets the player control the database, and gives them permission to addXP, change their horses appearance, change their name, and even protect their horse against damage. All of the child permissions can be found below:
mcmmohorses.groups.admin
mcmmohorses.admin.protect
-Allows players to use "/h protect" to protect their horse from damage.
mcmmohorses.admin.unprotect
-Allows players to use "/h unprotect" to remove the protection
mcmmohorses.admin.addxp
-Allows players to use "/h addxp" to add xp to a specific stat
mcmmohorses.admin.delxp
-Allows players to use "/h delxp" to remove xp from a stat
mcmmohorses.admin.set
-Allows players to use "/h set" commands
mcmmohorses.admin.set.name
-Allows players to use "/h set name" command to change the horse's name
mcmmohorses.admin.set.color
-Allows players to use "/h set color" command to change the horse's color (can only be used on default horses, not donkeys, mules, llamas, or undead horses)
mcmmohorses.admin.set.style
-Allows players to use "/h set style" command to set the horse's style(can only be used on default horses, not donkeys, mules, llamas, or undead horses)
mcmmohorses.admin.set.type
-Allows players to use "/h set type" command to change their horse's type (Can be set to Donkeys, Mules, Llamas, Skele, or Zombie horses)
mcmmohorses.admin.create
-Allows players to use "/h breed" command to create a new horse
mcmmohorses.admin.save
-Allows players to use "/h save" command to save all horses on the server to a database
mcmmohorses.admin.db
-Allows players to use "/h db" command to view the database
mcmmohorses.admin.reload
-Allows players to use "/h reload" to reload all the horse data.
Plugin Wiki
Please visit https:github.com/GetGoodKid/Horse-RPG/wiki for installation instructions, permissions, commands, and more.
Cool People
- Dreamrdawn - donated :)
- mc.empirescraft.net - Gave a donation & awesome feedback :D
Donations
I have a really busy schedule so money motivation is always nice! There is a button in the top right corner to do so :) Even if you don't want to donate, I could use other forms of help. If anyone wants to help create a wiki/youtube tutorial or give ideas please message me. I can list you as a sponsor/helper on this page and promote your server. Also, any feedback is much appreciated!
Currently, Zombie_Striker is updating the plugin. All money donated to this project will go to the original author of this plugin, GetGoodKid.
Horse Races
Check out my Horse Races plugin which allows you to race horses and give prizes, etc. This plugin will soon be compatible with Horse Races.
This plugin does update automatically:
This plugin checks for updates and will download updates. If you do not want this plugin to automatically update, all you need to do is edit one line in the "plugins\AUpdater\global.yml" file. Just change the one variable in there to false (or, if you run into any problems, copy the code below)
# Updater by ArsenArsen
# Global config
# Sets should updates be downloaded globaly
update: false
How to Install
Drop this plugin into you plugins folder and restart your server.
is their a way to unclaim a horse without killing it?
Is there a way to see how much money you got?
How on earth do I breed? Its getting really annoying. When I try to breed it just says 'one or more horses is unable to breed'then says neither of them can breed. How do I make them able to breed?
If a player is mounted will you be able to warp or teleport using signs or ports with your mount?
This plugin its so amazing. Can you add more resources or other plugin like "mcMMO Pets"?
Ahh, im from brazil and my english is median haha but i translated your plugin messages to my language (pt-BR) if you interested, here is the link to download: messages ptBR
Hello! After opening the horse shop and choosing a horse of any specific color
it throws me this error:
[23:51:48 INFO]: NolberH issued server command: /mcmmohorse:h shop
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: The server has stopped responding! This is (probably) not a Spigot bug.
[23:53:00 ERROR]: If you see a plugin in the Server thread dump below, then please report it to that author
[23:53:00 ERROR]: *Especially* if it looks like HTTP or MySQL operations are occurring
[23:53:00 ERROR]: If you see a world save or edit, then it means you did far more than your server can handle at once
[23:53:00 ERROR]: If this is the case, consider increasing timeout-time in spigot.yml but note that this will replace the crash with LARGE lag spikes
[23:53:00 ERROR]: If you are unsure or still think this is a Spigot bug, please report to https://www.spigotmc.org/
[23:53:00 ERROR]: Be sure to include ALL relevant console errors and Minecraft crash reports
[23:53:00 ERROR]: Spigot version: git-Spigot-1a3504a-84f3da3 (MC: 1.13.2)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Server thread dump (Look for plugins here before reporting to Spigot!):
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Server thread
[23:53:00 ERROR]: PID: 20 | Suspended: false | Native: false | State: RUNNABLE
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.util.Random.next(Unknown Source)
[23:53:00 ERROR]: java.util.Random.nextDouble(Unknown Source)
[23:53:00 ERROR]: java.lang.Math.random(Unknown Source)
[23:53:00 ERROR]: com.blueskullgames.horserpg.RPGHorse.randomName(RPGHorse.java:128)
[23:53:00 ERROR]: com.blueskullgames.horserpg.utils.ShopManager.onClickInv(ShopManager.java:85)
[23:53:00 ERROR]: sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[23:53:00 ERROR]: sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[23:53:00 ERROR]: sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[23:53:00 ERROR]: java.lang.reflect.Method.invoke(Unknown Source)
[23:53:00 ERROR]: org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:312)
[23:53:00 ERROR]: org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:66)
[23:53:00 ERROR]: org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507)
[23:53:00 ERROR]: org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PlayerConnection.a(PlayerConnection.java:2108)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PacketPlayInWindowClick.a(SourceFile:33)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PacketPlayInWindowClick.a(SourceFile:10)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:9)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PlayerConnectionUtils$$Lambda$2425/1476360491.run(Unknown Source)
[23:53:00 ERROR]: java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
[23:53:00 ERROR]: java.util.concurrent.FutureTask.run(Unknown Source)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.SystemUtils.a(SourceFile:199)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:896)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Thread-12
[23:53:00 ERROR]: PID: 36 | Suspended: false | Native: true | State: RUNNABLE
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: sun.nio.fs.WindowsNativeDispatcher.GetQueuedCompletionStatus0(Native Method)
[23:53:00 ERROR]: sun.nio.fs.WindowsNativeDispatcher.GetQueuedCompletionStatus(Unknown Source)
[23:53:00 ERROR]: sun.nio.fs.WindowsWatchService$Poller.run(Unknown Source)
[23:53:00 ERROR]: java.lang.Thread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Timer-0
[23:53:00 ERROR]: PID: 33 | Suspended: false | Native: false | State: TIMED_WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: java.util.TimerThread.mainLoop(Unknown Source)
[23:53:00 ERROR]: java.util.TimerThread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Netty Server IO #1
[23:53:00 ERROR]: PID: 32 | Suspended: false | Native: true | State: RUNNABLE
[23:53:00 ERROR]: Thread is waiting on monitor(s):
[23:53:00 ERROR]: Locked on:sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source)
[23:53:00 ERROR]: Locked on:sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source)
[23:53:00 ERROR]: Locked on:sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source)
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
[23:53:00 ERROR]: sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(Unknown Source)
[23:53:00 ERROR]: sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(Unknown Source)
[23:53:00 ERROR]: sun.nio.ch.WindowsSelectorImpl.doSelect(Unknown Source)
[23:53:00 ERROR]: sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source)
[23:53:00 ERROR]: sun.nio.ch.SelectorImpl.select(Unknown Source)
[23:53:00 ERROR]: io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:62)
[23:53:00 ERROR]: io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
[23:53:00 ERROR]: io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
[23:53:00 ERROR]: io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
[23:53:00 ERROR]: java.lang.Thread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: WorldEdit Session Manager
[23:53:00 ERROR]: PID: 31 | Suspended: false | Native: false | State: TIMED_WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: java.util.TimerThread.mainLoop(Unknown Source)
[23:53:00 ERROR]: java.util.TimerThread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Netty Server IO #0
[23:53:00 ERROR]: PID: 30 | Suspended: false | Native: false | State: BLOCKED
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:491)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PacketStatusListener.a(PacketStatusListener.java:101)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PacketStatusInStart.a(SourceFile:23)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PacketStatusInStart.a(SourceFile:8)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.NetworkManager.a(NetworkManager.java:141)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.NetworkManager.channelRead0(NetworkManager.java:130)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.NetworkManager.channelRead0(NetworkManager.java:1)
[23:53:00 ERROR]: io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
[23:53:00 ERROR]: io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
[23:53:00 ERROR]: io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
[23:53:00 ERROR]: io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
[23:53:00 ERROR]: io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.LegacyPingHandler.channelRead(LegacyPingHandler.java:88)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
[23:53:00 ERROR]: io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
[23:53:00 ERROR]: io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[23:53:00 ERROR]: io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[23:53:00 ERROR]: io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
[23:53:00 ERROR]: io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
[23:53:00 ERROR]: io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647)
[23:53:00 ERROR]: io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582)
[23:53:00 ERROR]: io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499)
[23:53:00 ERROR]: io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461)
[23:53:00 ERROR]: io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
[23:53:00 ERROR]: java.lang.Thread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: ObjectCleanerThread
[23:53:00 ERROR]: PID: 29 | Suspended: false | Native: false | State: TIMED_WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: java.lang.ref.ReferenceQueue.remove(Unknown Source)
[23:53:00 ERROR]: io.netty.util.internal.ObjectCleaner$1.run(ObjectCleaner.java:54)
[23:53:00 ERROR]: io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
[23:53:00 ERROR]: java.lang.Thread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Spigot Metrics Thread
[23:53:00 ERROR]: PID: 28 | Suspended: false | Native: false | State: TIMED_WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: java.util.TimerThread.mainLoop(Unknown Source)
[23:53:00 ERROR]: java.util.TimerThread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Spigot Watchdog Thread
[23:53:00 ERROR]: PID: 27 | Suspended: false | Native: false | State: RUNNABLE
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: sun.management.ThreadImpl.dumpThreads0(Native Method)
[23:53:00 ERROR]: sun.management.ThreadImpl.dumpAllThreads(Unknown Source)
[23:53:00 ERROR]: org.spigotmc.WatchdogThread.run(WatchdogThread.java:86)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Java2D Disposer
[23:53:00 ERROR]: PID: 25 | Suspended: false | Native: false | State: WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: java.lang.ref.ReferenceQueue.remove(Unknown Source)
[23:53:00 ERROR]: java.lang.ref.ReferenceQueue.remove(Unknown Source)
[23:53:00 ERROR]: sun.java2d.Disposer.run(Unknown Source)
[23:53:00 ERROR]: java.lang.Thread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Server console handler
[23:53:00 ERROR]: PID: 23 | Suspended: false | Native: true | State: RUNNABLE
[23:53:00 ERROR]: Thread is waiting on monitor(s):
[23:53:00 ERROR]: Locked on:org.bukkit.craftbukkit.libs.jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:169)
[23:53:00 ERROR]: Locked on:org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:261)
[23:53:00 ERROR]: Locked on:org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:198)
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: org.fusesource.jansi.internal.Kernel32.ReadConsoleInputW(Native Method)
[23:53:00 ERROR]: org.fusesource.jansi.internal.Kernel32.readConsoleInputHelper(Kernel32.java:761)
[23:53:00 ERROR]: org.fusesource.jansi.internal.Kernel32.readConsoleKeyInput(Kernel32.java:794)
[23:53:00 ERROR]: org.fusesource.jansi.internal.WindowsSupport.readConsoleInput(WindowsSupport.java:97)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.WindowsTerminal.readConsoleInput(WindowsTerminal.java:215)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.WindowsTerminal.access$000(WindowsTerminal.java:55)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.WindowsTerminal$1.read(WindowsTerminal.java:157)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:169)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:137)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:246)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:261)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:198)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readCharacter(ConsoleReader.java:2145)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readLine(ConsoleReader.java:2349)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.DedicatedServer$2.run(DedicatedServer.java:91)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Thread-4
[23:53:00 ERROR]: PID: 24 | Suspended: false | Native: false | State: RUNNABLE
[23:53:00 ERROR]: Thread is waiting on monitor(s):
[23:53:00 ERROR]: Locked on:java.io.BufferedOutputStream.flush(Unknown Source)
[23:53:00 ERROR]: Locked on:java.io.PrintStream.flush(Unknown Source)
[23:53:00 ERROR]: Locked on:java.io.PrintStream.flush(Unknown Source)
[23:53:00 ERROR]: Locked on:java.io.PrintStream.flush(Unknown Source)
[23:53:00 ERROR]: Locked on:sun.nio.cs.StreamEncoder.flush(Unknown Source)
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.io.FileOutputStream.writeBytes(Native Method)
[23:53:00 ERROR]: java.io.FileOutputStream.write(Unknown Source)
[23:53:00 ERROR]: java.io.BufferedOutputStream.flushBuffer(Unknown Source)
[23:53:00 ERROR]: java.io.BufferedOutputStream.flush(Unknown Source)
[23:53:00 ERROR]: java.io.PrintStream.flush(Unknown Source)
[23:53:00 ERROR]: java.io.FilterOutputStream.flush(Unknown Source)
[23:53:00 ERROR]: java.io.PrintStream.flush(Unknown Source)
[23:53:00 ERROR]: java.io.PrintStream.flush(Unknown Source)
[23:53:00 ERROR]: java.io.FilterOutputStream.flush(Unknown Source)
[23:53:00 ERROR]: sun.nio.cs.StreamEncoder.implFlush(Unknown Source)
[23:53:00 ERROR]: sun.nio.cs.StreamEncoder.flush(Unknown Source)
[23:53:00 ERROR]: java.io.OutputStreamWriter.flush(Unknown Source)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.flush(ConsoleReader.java:976)
[23:53:00 ERROR]: org.bukkit.craftbukkit.v1_13_R2.util.TerminalConsoleWriterThread.run(TerminalConsoleWriterThread.java:44)
[23:53:00 ERROR]: java.lang.Thread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: DestroyJavaVM
[23:53:00 ERROR]: PID: 22 | Suspended: false | Native: false | State: RUNNABLE
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Server thread
[23:53:00 ERROR]: PID: 20 | Suspended: false | Native: false | State: RUNNABLE
[23:53:00 ERROR]: Thread is waiting on monitor(s):
[23:53:00 ERROR]: Locked on:org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492)
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.util.Random.next(Unknown Source)
[23:53:00 ERROR]: java.util.Random.nextDouble(Unknown Source)
[23:53:00 ERROR]: java.lang.Math.random(Unknown Source)
[23:53:00 ERROR]: com.blueskullgames.horserpg.RPGHorse.randomName(RPGHorse.java:128)
[23:53:00 ERROR]: com.blueskullgames.horserpg.utils.ShopManager.onClickInv(ShopManager.java:85)
[23:53:00 ERROR]: sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[23:53:00 ERROR]: sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[23:53:00 ERROR]: sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[23:53:00 ERROR]: java.lang.reflect.Method.invoke(Unknown Source)
[23:53:00 ERROR]: org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:312)
[23:53:00 ERROR]: org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:66)
[23:53:00 ERROR]: org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507)
[23:53:00 ERROR]: org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PlayerConnection.a(PlayerConnection.java:2108)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PacketPlayInWindowClick.a(SourceFile:33)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PacketPlayInWindowClick.a(SourceFile:10)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:9)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.PlayerConnectionUtils$$Lambda$2425/1476360491.run(Unknown Source)
[23:53:00 ERROR]: java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
[23:53:00 ERROR]: java.util.concurrent.FutureTask.run(Unknown Source)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.SystemUtils.a(SourceFile:199)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:896)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:417)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:831)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:729)
[23:53:00 ERROR]: java.lang.Thread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Server Infinisleeper
[23:53:00 ERROR]: PID: 21 | Suspended: false | Native: false | State: TIMED_WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Thread.sleep(Native Method)
[23:53:00 ERROR]: net.minecraft.server.v1_13_R2.DedicatedServer$1.run(DedicatedServer.java:66)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: NonBlockingInputStreamThread
[23:53:00 ERROR]: PID: 18 | Suspended: false | Native: false | State: WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.NonBlockingInputStream.run(NonBlockingInputStream.java:278)
[23:53:00 ERROR]: java.lang.Thread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Snooper Timer
[23:53:00 ERROR]: PID: 16 | Suspended: false | Native: false | State: WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: java.lang.Object.wait(Unknown Source)
[23:53:00 ERROR]: java.util.TimerThread.mainLoop(Unknown Source)
[23:53:00 ERROR]: java.util.TimerThread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Attach Listener
[23:53:00 ERROR]: PID: 5 | Suspended: false | Native: false | State: RUNNABLE
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Signal Dispatcher
[23:53:00 ERROR]: PID: 4 | Suspended: false | Native: false | State: RUNNABLE
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Finalizer
[23:53:00 ERROR]: PID: 3 | Suspended: false | Native: false | State: WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: java.lang.ref.ReferenceQueue.remove(Unknown Source)
[23:53:00 ERROR]: java.lang.ref.ReferenceQueue.remove(Unknown Source)
[23:53:00 ERROR]: java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 ERROR]: Current Thread: Reference Handler
[23:53:00 ERROR]: PID: 2 | Suspended: false | Native: false | State: WAITING
[23:53:00 ERROR]: Stack:
[23:53:00 ERROR]: java.lang.Object.wait(Native Method)
[23:53:00 ERROR]: java.lang.Object.wait(Unknown Source)
[23:53:00 ERROR]: java.lang.ref.Reference.tryHandlePending(Unknown Source)
[23:53:00 ERROR]: java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
[23:53:00 ERROR]: ------------------------------
[23:53:00 INFO]: Startup script './start.sh' does not exist! Stopping server.
[23:53:00 INFO]: Stopping server
In reply to nolberh:
You really had to paste the whole console log into your comment? Why not just use a pastebin link (or at the very least an expandable spoiler), then you wouldn't be ruining the comment section for everyone else.
Hey I got a bug or something on my bukkit 1.15.2 server.
Other players using /h summon can summon my horse and I dont know why.
Thanks for your help!
Best regards
Ducky
Use on my sever
Hello,
This plugin is great and popular in China.
So, can I reprint it to the forum in China and translate it into Chinese?
Someone had reprinted it before, but he couldn't keep it up to date, He asked you to reprint the authorization on spigotmc.
With your permission, I will reprint the address of the donation together.
I hope you will allow it.
www.mcbbs.net
In reply to aikinitt:
Sure. You can translate it/upload it if you would like.
In reply to Zombie_Striker_bukkit:
QA Can I do that too?
In reply to aikinitt:
Sure
Hi I have named a horse as my mount and successfully called my horse in the game.
However, whenever the server is shut down and the server is restarted, my horse can't call. The message tells me that I don't have a horse?
I tried to open horsedata.yml to view the horse's data. I found that if the user name has a comma (.) in the middle, the user cannot call the horse because the horsedata.yml file divides the User Name into two lines, but there is no comma. This problem will not happen. May I ask if I have any way to solve such a mistake? Thank you.
The plugin is nice. I'm glad that its beign mantained.
Could you please add an alternative control for sprint though? it makes no sense that after jumping you are suddenly faster.
Maybe rightclick with a particular item or double left click or something?
And could you please allow us to modify the leveling curve?
Thanks, and Good luck!
Edit: Thanks a lot for addign the source!
Hello, I have a suggestion for you, being able to modify the shop and being compatible with BossShopPro for example.
Keep up your work your plugin is awesome :wink:
Just one issue that you can't fix I suppose undead and skeleton horses are still considered as monster so with towny if the town does not accept monsters the disappear.
Hi was wondering if there was a set or change owner command, we have an economy on my server but we trade emeralds rather than a plugin so if we could transfer ownership that would be amazing.
Would it be possible to help me figure out how to breed horses? I have a few claimed (both male and female) but is always says "not allowed" when I try to breed them? I have base game breeding on as well. Thanks!
Unable to load.
https://pastebin.com/dhdKkdU5
In reply to RevJesus: