Skip to content

TTF file support for resourcepack #643

@Whitebrim

Description

@Whitebrim

Agreements

  • I am using an official build of Nova.
  • I am running the latest version of Nova.
  • I am using a server software supported by Nova
  • I am running the latest version of my server software.
  • I have checked for similar issues.

Check for plugin incompatibilites

There are no other plugins running on my server.

Plugin Version, Server Software, Server Version

Nova 1.18.1

Nova Addons and Versions

Expected behavior

.ttf file in placed in resource_pack.zip without merging, default.json is merged.

Observed/Actual behavior

Task crashed; resourcepack was not generated; in dm was told bullsh*t that ttf is not supported; was unfriended; 0/5⭐ experiense.

Steps to reproduce

KatsuAvatars-v2.zip

Server log

Error below

Errors

[14:54:22 WARN]: [Nova] Plugin Nova v0.18.1 generated an exception while executing task 18041
java.lang.UnsupportedOperationException: Unsupported font provider type: ttf
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.font.provider.FontProvider$Companion.fromDisk(FontProvider.kt:65) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.font.Font$Companion.fromDisk(Font.kt:135) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.task.font.FontContent.discoverFonts(FontContent.kt:88) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.task.font.FontContent.discoverAllFonts(FontContent.kt:77) ~[Nova-0.18.1.jar:?]
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?]
	at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?]
	at kotlin.reflect.jvm.internal.calls.CallerImpl$Method.callMethod(CallerImpl.kt:97) ~[?:?]
	at kotlin.reflect.jvm.internal.calls.CallerImpl$Method$Instance.call(CallerImpl.kt:113) ~[?:?]
	at kotlin.reflect.jvm.internal.KCallableImpl.call(KCallableImpl.kt:108) ~[?:?]
	at kotlin.reflect.full.KCallables.callSuspend(KCallables.kt:54) ~[?:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.task.PackFunction.run(PackTask.kt:122) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.ResourcePackBuilder.runPackFunction(ResourcePackBuilder.kt:351) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.ResourcePackBuilder.access$runPackFunction(ResourcePackBuilder.kt:116) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.ResourcePackBuilder$buildPackPreWorld$1$5.invokeSuspend(ResourcePackBuilder.kt:263) ~[Nova-0.18.1.jar:?]
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) ~[?:?]
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) ~[?:?]
	at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:263) ~[?:?]
	at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:94) ~[?:?]
	at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:70) ~[?:?]
	at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source) ~[?:?]
	at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:48) ~[?:?]
	at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source) ~[?:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.ResourcePackBuilder.buildPackPreWorld$nova(ResourcePackBuilder.kt:263) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.builder.ResourcePackBuilder.buildPackCompletely$nova(ResourcePackBuilder.kt:219) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.resources.ResourceGeneration.createResourcePack$nova(ResourceGeneration.kt:123) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.command.impl.NovaCommand.createResourcePack$lambda$6(NovaCommand.kt:259) ~[Nova-0.18.1.jar:?]
	at Nova-0.18.1.jar/xyz.xenondevs.nova.util.SchedulerUtilsKt.runAsyncTask$lambda$3(SchedulerUtils.kt:39) ~[Nova-0.18.1.jar:?]
	at org.bukkit.craftbukkit.scheduler.CraftTask.run(CraftTask.java:78) ~[paper-1.21.4.jar:1.21.4-75-9f90b4c]
	at org.bukkit.craftbukkit.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[paper-1.21.4.jar:1.21.4-75-9f90b4c]
	at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[paper-1.21.4.jar:?]
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
	at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]

Additional context

I manually added .ttf file, added provider to the default.json to the resource_pack.zip and it worked.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions