Quplet / Qu-Enchantments

Me just adding whatever enchantments I think is cool that fit with vanilla Minecraft.
Apache License 2.0
2 stars 7 forks source link

qu seems to remove the player skin overlay #13

Closed bloodyeyesblackblood closed 1 year ago

bloodyeyesblackblood commented 1 year ago

everything works in singleplayer, skin overlay is only gone when i join a server, even if this server has this mod, idk why it does happen.

without qu image

with qu image

it took a long time 'till i found it, tried also to disable every mods besides qu and fabric-api to see if it might be a conflict with another mod but.. sadly nope.

tried it also with cloth config enabled and disabled.

1.20.1, non-specific server, but i tested it on a fabric server, the other server should have been a modless server.

Quplet commented 1 year ago

That's very strange. My mod doesn't touch skin overlays. The only thing it does on the rendering side is allow horse armor to have enchantment tint. I'll look into this and see if I can reproduce.

bloodyeyesblackblood commented 1 year ago

That's very strange. My mod doesn't touch skin overlays. The only thing it does on the rendering side is allow horse armor to have enchantment tint. I'll look into this and see if I can reproduce.

yes, i also wondered why a enchanting mod touches skins, but if you cant reproduce i'll also can look again and make a video what and how exactly i do (not really much, just putting the mod in and starting mc lol)

also, as a reminder, it only happens on online servers, not the singleplayer.

Quplet commented 1 year ago

I just created my own independent server and joined it, my skin's overlay was there and functioning, so as of right now I can't reproduce. Was this your skin or another player's skin that wasn't displaying right?

Also could you send me what other mods you were using alongside it?

bloodyeyesblackblood commented 1 year ago

I just created my own independent server and joined it, my skin's overlay was there and functioning, so as of right now I can't reproduce. Was this your skin or another player's skin that wasn't displaying right?

Also could you send me what other mods you were using alongside it?

that's weird, well it's my skin and the skin from other ppl, so everyone hasn't the skin overlay. https://youtu.be/HXICC-iEDaQ

more information: modrinth, fabric & quilt, their apis (for quilt the quilt ones for farbic the fabric one) + cloth config. unmodded server. 1.20.1

also removed flags just in case, didn't help.

i'll have an idea, i'll test something, but this could take me another 10-20 minutes.

i'll use graalvm ee, could break mods but never happened to me maybe until now? back in a few minutes

Quplet commented 1 year ago

Yeah idk. My setup was functionally similar. Is there anything in the MC logs that show any sort of rendering error?

Also you shouldn't need to manually have cloth config, it's bundled into my mod now.

bloodyeyesblackblood commented 1 year ago

idk if those are the right logs, i would need some guidance to provide better informations also some mods still use cloth config, isn't the ressource usage higher when having cloth config and a mod that also has it bundled into it? i also seen some switching to yetanotherconfig because cloth doesn't won't (let me lie) fix some of it's issues? (shedaniel's post)

[15:41:46] [main/INFO]: Loading Minecraft 1.20.1 with Fabric Loader 0.14.22
[15:41:46] [main/INFO]: Loading 59 mods:
    - cloth-config 11.1.106
       \-- cloth-basic-math 0.6.1
    - fabric-api 0.87.0+1.20.1
       |-- fabric-api-base 0.4.30+7abfd51577
       |-- fabric-api-lookup-api-v1 1.6.35+4d8536c977
       |-- fabric-biome-api-v1 13.0.10+b3afc78b77
       |-- fabric-block-api-v1 1.0.9+e022e5d177
       |-- fabric-blockrenderlayer-v1 1.1.40+b3afc78b77
       |-- fabric-client-tags-api-v1 1.1.1+97bb207577
       |-- fabric-command-api-v1 1.2.33+f71b366f77
       |-- fabric-command-api-v2 2.2.12+b3afc78b77
       |-- fabric-commands-v0 0.2.50+df3654b377
       |-- fabric-containers-v0 0.1.63+df3654b377
       |-- fabric-content-registries-v0 4.0.9+b3afc78b77
       |-- fabric-convention-tags-v1 1.5.4+a1a980da77
       |-- fabric-crash-report-info-v1 0.2.18+aeb40ebe77
       |-- fabric-data-generation-api-v1 12.2.2+1e61dba177
       |-- fabric-dimensions-v1 2.1.53+8536527b77
       |-- fabric-entity-events-v1 1.5.22+b3afc78b77
       |-- fabric-events-interaction-v0 0.6.1+e91849a877
       |-- fabric-events-lifecycle-v0 0.2.62+df3654b377
       |-- fabric-game-rule-api-v1 1.0.38+b04edc7a77
       |-- fabric-item-api-v1 2.1.27+b3afc78b77
       |-- fabric-item-group-api-v1 4.0.10+23d9108177
       |-- fabric-key-binding-api-v1 1.0.36+fb8d95da77
       |-- fabric-keybindings-v0 0.2.34+df3654b377
       |-- fabric-lifecycle-events-v1 2.2.21+b3afc78b77
       |-- fabric-loot-api-v2 1.1.39+b3afc78b77
       |-- fabric-loot-tables-v1 1.1.43+9e7660c677
       |-- fabric-message-api-v1 5.1.7+3265161977
       |-- fabric-mining-level-api-v1 2.1.49+b3afc78b77
       |-- fabric-model-loading-api-v1 1.0.2+709a987177
       |-- fabric-models-v0 0.4.1+9386d8a777
       |-- fabric-networking-api-v1 1.3.10+eeb8eb3677
       |-- fabric-networking-v0 0.3.50+df3654b377
       |-- fabric-object-builder-api-v1 11.1.1+6beca84877
       |-- fabric-particles-v1 1.1.1+201a23a077
       |-- fabric-recipe-api-v1 1.0.20+b3afc78b77
       |-- fabric-registry-sync-v0 2.3.2+4df89eb277
       |-- fabric-renderer-api-v1 3.1.2+6bdb2ed077
       |-- fabric-renderer-indigo 1.4.2+6bdb2ed077
       |-- fabric-renderer-registries-v1 3.2.45+df3654b377
       |-- fabric-rendering-data-attachment-v1 0.3.34+b3afc78b77
       |-- fabric-rendering-fluids-v1 3.0.27+b3afc78b77
       |-- fabric-rendering-v0 1.1.48+df3654b377
       |-- fabric-rendering-v1 3.0.7+b3afc78b77
       |-- fabric-resource-conditions-api-v1 2.3.5+ea08f9d877
       |-- fabric-resource-loader-v0 0.11.9+132c48c177
       |-- fabric-screen-api-v1 2.0.7+b3afc78b77
       |-- fabric-screen-handler-api-v1 1.3.29+b3afc78b77
       |-- fabric-sound-api-v1 1.0.12+b3afc78b77
       |-- fabric-transfer-api-v1 3.3.0+cdf060b277
       \-- fabric-transitive-access-wideners-v1 4.3.0+6c31357e77
    - fabricloader 0.14.22
    - java 17
    - minecraft 1.20.1
    - qu-enchantments 1.3.6-1.20
       |-- com_github_llamalad7_mixinextras 0.1.1
       \-- mm 2.3
[15:41:46] [main/INFO]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=file:/C:/Users/{COMPUTER_USERNAME}/AppData/Roaming/com.modrinth.theseus/meta/libraries/net/fabricmc/sponge-mixin/0.12.5+mixin.0.8.5/sponge-mixin-0.12.5+mixin.0.8.5.jar Service=Knot/Fabric Env=CLIENT
[15:41:47] [main/INFO]: Compatibility level set to JAVA_16
[15:41:47] [main/INFO]: Compatibility level set to JAVA_17
Quplet commented 1 year ago

Do a trail run where you log into the server and observe the bug, then quit. In your Minecraft instance folder (In the modrinth app, you can find "open folder" when you click on the instance), go to logs then upload latest.log. Uploading the file would be better than copying and pasting.

bloodyeyesblackblood commented 1 year ago

latest.log

Quplet commented 1 year ago

I believe I see what could be causing it. Though I'm not entirely sure if there's much I can do about it. Do you know what mods/datapacks/plugins are on the server you're connecting to? Have you tried connecting to a vanilla server? Or a server that also only has my mod active and nothing else?

bloodyeyesblackblood commented 1 year ago

I believe I see what could be causing it. Though I'm not entirely sure if there's much I can do about it. Do you know what mods are on the server you're connecting to? Have you tried connecting to a vanilla server? Or a server that also only has my mod active and nothing else?

none, no mods, i did also try with only fabric api than with qu-enchant and fabric api and than fabric, cloth, qu there also are different servers i joined, every time there was no skin overlay, i'll try a paper server.

edit: tried paper server, issue is stillt here

Quplet commented 1 year ago

I guess I should explain what the primary cause seems to be.

java.lang.IllegalStateException: Invalid entity data item type for field 9 on entity class_746['ReiWasHere'/271, l='ClientLevel', x=-6.50, y=82.00, z=0.50]: old=0(class java.lang.Byte), new=20.0(class java.lang.Float)
    at net.minecraft.class_2945.method_12785(class_2945.java:204) ~[client-intermediary.jar:?]
    at net.minecraft.class_2945.method_12779(class_2945.java:191) ~[client-intermediary.jar:?]
    at net.minecraft.class_634.method_11093(class_634.java:529) ~[client-intermediary.jar:?]
    at net.minecraft.class_2739.method_11808(class_2739.java:46) ~[client-intermediary.jar:?]
    at net.minecraft.class_2739.method_11054(class_2739.java:10) ~[client-intermediary.jar:?]
    at net.minecraft.class_2600.method_11072(class_2600.java:22) ~[client-intermediary.jar:?]
    at net.minecraft.class_1255.method_18859(class_1255.java:156) ~[client-intermediary.jar:?]
    at net.minecraft.class_4093.method_18859(class_4093.java:23) ~[client-intermediary.jar:?]
    at net.minecraft.class_1255.method_16075(class_1255.java:130) ~[client-intermediary.jar:?]
    at net.minecraft.class_1255.method_5383(class_1255.java:115) ~[client-intermediary.jar:?]
    at net.minecraft.class_310.method_1523(class_310.java:1175) ~[client-intermediary.jar:?]
    at net.minecraft.class_310.method_1514(class_310.java:802) ~[client-intermediary.jar:?]
    at net.minecraft.client.main.Main.main(Main.java:250) ~[1.20.1-0.14.22.jar:?]
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.22.jar:?]
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.22.jar:?]
    at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.22.jar:?]
[19:46:14] [Render thread/INFO]: Loaded 2 advancements
[19:46:14] [Render thread/ERROR]: Error executing task on Client
java.lang.IllegalStateException: Invalid entity data item type for field 17 on entity class_746['ReiWasHere'/271, l='ClientLevel', x=-6.50, y=82.00, z=0.50]: old=0(class java.lang.Integer), new=127(class java.lang.Byte)
    at net.minecraft.class_2945.method_12785(class_2945.java:204) ~[client-intermediary.jar:?]
    at net.minecraft.class_2945.method_12779(class_2945.java:191) ~[client-intermediary.jar:?]
    at net.minecraft.class_634.method_11093(class_634.java:529) ~[client-intermediary.jar:?]
    at net.minecraft.class_2739.method_11808(class_2739.java:46) ~[client-intermediary.jar:?]
    at net.minecraft.class_2739.method_11054(class_2739.java:10) ~[client-intermediary.jar:?]
    at net.minecraft.class_2600.method_11072(class_2600.java:22) ~[client-intermediary.jar:?]
    at net.minecraft.class_1255.method_18859(class_1255.java:156) ~[client-intermediary.jar:?]
    at net.minecraft.class_4093.method_18859(class_4093.java:23) ~[client-intermediary.jar:?]
    at net.minecraft.class_1255.method_16075(class_1255.java:130) ~[client-intermediary.jar:?]
    at net.minecraft.class_1255.method_5383(class_1255.java:115) ~[client-intermediary.jar:?]
    at net.minecraft.class_310.method_1523(class_310.java:1175) ~[client-intermediary.jar:?]
    at net.minecraft.class_310.method_1514(class_310.java:802) ~[client-intermediary.jar:?]
    at net.minecraft.client.main.Main.main(Main.java:250) ~[1.20.1-0.14.22.jar:?]
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.22.jar:?]
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.22.jar:?]
    at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.22.jar:?]

Something is causing desynced mod loading on either the client or server, which when the client tries to sync the world entities, including the player, with the server, its causing mismatches in several fields. This does seem to have funky rendering effects.

So basically, I believe connecting to a server that has my mod running on it would see it be fine. Connecting to a server that doesn't have my mod loaded possibly would result in this mismatch as the client is expecting to populate some of my mods fields but the server doesn't supply it.

But you say that connecting to a server with my mod installed as well still has the issue?

EDIT: Ok, I was able to reproduce the effect! It only happens when connecting to a server that doesn't have my mod loaded. At least for me. My mod is required on both the client and server to function so if you're connecting to a server that doesn't use it, you shouldn't have it enabled anyway.

bloodyeyesblackblood commented 1 year ago

everything works in singleplayer, skin overlay is only gone when i join a server, even if this server has this mod, idk why it does happen.

yes, i did try it with the mod on my server

Quplet commented 1 year ago

Could you grab the log file when you connect to your server that has my mod installed and upload it?

bloodyeyesblackblood commented 1 year ago

alright it works (when i only use qu-enchantmens with its apis etc, without the leftovers from other mods), idk what happened BUT, if i have multiple mods on my server, without the client-side only mods it seems to also happen? (client has every mod that the server has + some client side only ones) and it does cache it? i need to look further into it i think?

or do i need to upload every mod my client has to the server?

Quplet commented 1 year ago

Multiple mods loaded in does seem to be capable of causing this error, but typically only if any of them are required on both the client and server and is missing from one. I've run a few servers with my mod plus many other both client and server specific and never had an issue but I've found reports of it.

or do i need to upload every mod my client has to the server?

Clientside only mods, no. Like Sodium, etc. Check on Modrinth if the mods are required on client or server or both. If they say both, yes put it on both.

bloodyeyesblackblood commented 1 year ago

Clientside only mods, no. Like Sodium, etc. Check on Modrinth if the mods are required on client or server or both. If they say both, yes put it on both.

that's exactly what i did, i'll gonna try it again but since it takes a lot of time, i'll gonna do it tomorrow on my free time, i also try to put every one in, maybe there is a mod with wrong requirements

bloodyeyesblackblood commented 1 year ago

btw just in case, i would like to put in the mod list here, where do i get the text format of which mods are in? EDIT: for now i did create a bat to do it for me list.txt EDIT2: i put in dashloader after testing it, since it's something that caches things

bloodyeyesblackblood commented 1 year ago

nah idk, i did setup it again carefully and it seems to work now, maybe an outdated file, cannot be but who knows..

or i forgot to put in a lib/api/config on my client (some don't get auto-downloaded and do not get names in the logs until i put those mods on the server), maybe i had a lib/config/api on the server but not on my client, but it would be weird, since this weird owo-lib would tell me that there's a missmatch. (and than there's also something called cache)

i'm gonna close this issue for now. thank you for taking your time, much appreciated!