Resource icon

SkinChanger 1.0.2

SupremeMortal

Administrator
Staff member
SupremeMortal submitted a new resource:

SkinChanger - Set custom skins on players

Usage

Adding Skins

Create a folder insider the SkinChanger plugin folder with the name of your skin e.g. my.custom.skin
Add your geometry.json and skin.png to the folder making sure that the geometry name is the same your chosen skin name.

Example:

JSON:
{
  "my.custom.skin": {
    "bones": [
      {
        "name": "body",
        "pivot": [ 0.0, 24.0,...
Read more about this resource...
 

TheEvPatch

New Member
I got an error
my files looked like this
SkinChanger/dolphin.custom.skin/geometry.json
Code:
  {
"geometry.dolphin.custom.skin": {
    "bones": [
      {
        "name": "body",
        "pivot": [ 0.0, 24.0, 0.0 ],
        "cubes": [
          {
            "origin": [ -4.0, 12.0, -2.0 ],
            "size": [ 8, 12, 4 ],
            "uv": [ 16, 16 ]
          }
        ]
      }
    ]
  }
}
and SkinChanger/dolphin.custom.skin/skin.png is a regular skin image


11:17:53 [FATAL] Exception hgappened while ticking server
java.lang.NoSuchFieldError: premium
at com.github.suprememortal.skinchanger.SkinChangerPlugin.changeSkin(SkinChangerPlugin.java:84) ~[?:?]
at com.github.suprememortal.skinchanger.SkinChangerCommand.execute(SkinChangerCommand.java:39) ~[?:?]
at cn.nukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:257) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.Server.dispatchCommand(Server.java:751) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.Player.handleDataPacket(Player.java:2749) ~[nukkit-1.0-SNAPSHOT.jar:?]
at java.util.ArrayList.forEach(Unknown Source) ~[?:1.8.0_231]
at cn.nukkit.network.Network.processPackets(Network.java:197) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.network.Network.processBatch(Network.java:180) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.Player.handleDataPacket(Player.java:2080) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.network.RakNetInterface.handleEncapsulated(RakNetInterface.java:157) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.raknet.server.ServerHandler.handlePacket(ServerHandler.java:132) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.network.RakNetInterface.process(RakNetInterface.java:66) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.network.Network.processInterfaces(Network.java:80) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.Server.tick(Server.java:1121) ~[nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.Server.tickProcessor(Server.java:903) [nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.Server.start(Server.java:880) [nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.Server.<init>(Server.java:565) [nukkit-1.0-SNAPSHOT.jar:?]
at cn.nukkit.Nukkit.main(Nukkit.java:112) [nukkit-1.0-SNAPSHOT.jar:?]
11:17:53 [FATAL]
"Nukkit Asynchronous Task Handler #4" Id=31 WAITING on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at sun.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source)
at java.util.concurrent.SynchronousQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
...
"Nukkit Asynchronous Task Handler #3" Id=30 WAITING on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at sun.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source)
at java.util.concurrent.SynchronousQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
...
"Nukkit Asynchronous Task Handler #2" Id=29 WAITING on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at sun.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source)
at java.util.concurrent.SynchronousQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
...
"Nukkit Asynchronous Task Handler #1" Id=28 WAITING on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at sun.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source)
at java.util.concurrent.SynchronousQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
...
"Nukkit Asynchronous Task Handler #0" Id=27 WAITING on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at sun.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@28f150
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source)
at java.util.concurrent.SynchronousQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
...
"Watchdog" Id=26 TIMED_WAITING on cn.nukkit.utils.Watchdog@1aaa756
at java.lang.Object.wait(Native Method)
- waiting on cn.nukkit.utils.Watchdog@1aaa756
at cn.nukkit.utils.Watchdog.run(Watchdog.java:64)
"Timer-0" Id=25 WAITING on java.util.TaskQueue@15d001f
at java.lang.Object.wait(Native Method)
- waiting on java.util.TaskQueue@15d001f
at java.lang.Object.wait(Unknown Source)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
"Thread-5" Id=19 TIMED_WAITING
at java.lang.Thread.sleep(Native Method)
at gt.creeperface.holograms.task.HologramUpdater.run(HologramUpdater.java:146)
"luckperms-scheduler" Id=23 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@92827f
at sun.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@92827f
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
...
"Java2D Disposer" Id=22 WAITING on java.lang.ref.ReferenceQueue$Lock@1094e0c
at java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@1094e0c
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at sun.java2d.Disposer.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"threadDeathWatcher-3-1" Id=20 TIMED_WAITING
at java.lang.Thread.sleep(Native Method)
at io.netty.util.ThreadDeathWatcher$Watcher.run(ThreadDeathWatcher.java:150)
at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144)
at java.lang.Thread.run(Unknown Source)
"nioEventLoopGroup-2-1" Id=18 RUNNABLE (in native)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(Unknown Source)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(Unknown Source)
at sun.nio.ch.WindowsSelectorImpl.doSelect(Unknown Source)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source)
- locked io.netty.channel.nio.SelectedSelectionKeySet@1efd12c
- locked java.util.Collections$UnmodifiableSet@f76276
- locked sun.nio.ch.WindowsSelectorImpl@18876d
at sun.nio.ch.SelectorImpl.select(Unknown Source)
at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:759)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:400)
...
"Abandoned connection cleanup thread" Id=17 TIMED_WAITING on java.lang.ref.ReferenceQueue$Lock@1e8c38c
at java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@1e8c38c
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:43)
"RakNet Thread #15" Id=15 TIMED_WAITING
at java.lang.Thread.sleep(Native Method)
at cn.nukkit.raknet.server.SessionManager.tickProcessor(SessionManager.java:96)
at cn.nukkit.raknet.server.SessionManager.run(SessionManager.java:70)
at cn.nukkit.raknet.server.SessionManager.<init>(SessionManager.java:58)
at cn.nukkit.raknet.server.RakNetServer.run(RakNetServer.java:101)
"Thread-1" Id=13 TIMED_WAITING on org.jline.utils.NonBlockingPumpReader@4516ec
at java.lang.Object.wait(Native Method)
- waiting on org.jline.utils.NonBlockingPumpReader@4516ec
at org.jline.utils.NonBlockingPumpReader.wait(NonBlockingPumpReader.java:55)
at org.jline.utils.NonBlockingPumpReader.read(NonBlockingPumpReader.java:101)
at org.jline.utils.NonBlockingReader.read(NonBlockingReader.java:57)
at org.jline.keymap.BindingReader.readCharacter(BindingReader.java:133)
at org.jline.keymap.BindingReader.readBinding(BindingReader.java:110)
at org.jline.keymap.BindingReader.readBinding(BindingReader.java:61)
at org.jline.reader.impl.LineReaderImpl.readBinding(LineReaderImpl.java:786)
...
"WindowsStreamPump" Id=11 RUNNABLE
at com.sun.jna.Native.invokeInt(Native Method)
at com.sun.jna.Function.invoke(Function.java:390)
at com.sun.jna.Function.invoke(Function.java:323)
at com.sun.jna.Library$Handler.invoke(Library.java:236)
at org.jline.terminal.impl.jna.win.$Proxy16.WaitForSingleObject(Unknown Source)
at org.jline.terminal.impl.jna.win.JnaWinSysTerminal.readConsoleInput(JnaWinSysTerminal.java:176)
at org.jline.terminal.impl.jna.win.JnaWinSysTerminal.processConsoleInput(JnaWinSysTerminal.java:99)
at org.jline.terminal.impl.AbstractWindowsTerminal.pump(AbstractWindowsTerminal.java:459)
...
"Attach Listener" Id=5 RUNNABLE
"Signal Dispatcher" Id=4 RUNNABLE
"Finalizer" Id=3 WAITING on java.lang.ref.ReferenceQueue$Lock@1ea3bc0
at java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@1ea3bc0
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)
"Reference Handler" Id=2 WAITING on java.lang.ref.Reference$Lock@193e5bf
at java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.Reference$Lock@193e5bf
at java.lang.Object.wait(Unknown Source)
at java.lang.ref.Reference.tryHandlePending(Unknown Source)
at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
"main" Id=1 RUNNABLE
at sun.management.ThreadImpl.dumpThreads0(Native Method)
at sun.management.ThreadImpl.dumpAllThreads(Unknown Source)
at cn.nukkit.utils.Utils.getAllThreadDumps(Utils.java:112)
at cn.nukkit.Server.tickProcessor(Server.java:935)
at cn.nukkit.Server.start(Server.java:880)
at cn.nukkit.Server.<init>(Server.java:565)
at cn.nukkit.Nukkit.main(Nukkit.java:112)
 
Last edited:

TheEvPatch

New Member
Please add support for 1.14.0 I know 1.13.0 support was just added but we need this update like now.
Edit:
btw the reason we need an update is all 4D skins are invisible with Minecraft 1.14.0 (haven't tried regular skins)
 
Last edited:
Top