SuperMartijn642 / Fusion

20 stars 3 forks source link

[Bug] Resourcepack just not loading when attempting overlays. #62

Open ZeroLevels opened 2 months ago

ZeroLevels commented 2 months ago

Version Info

Are you using OptiFine: Yes or no

Description of the Bug When I try to reload resourcepacks with my pack, it simply fails to reload resources. I've attempted editing the options file directly to have it loaded on startup, but that wasn't working either. I've checked and re-checked my resources and the paths written in their JSON files, and either I can't see what I'm missing or it's not functioning correctly.

I've specifically attempted to make grass blocks spread to gravel with an overlay.

Until I get it working, I've placed/named the texture file resourcepacks\zltweaks_fusion_compat\assets\example\textures\grass_block_overlay.png with an accompanying grass_block_overlay.png.mcmeta in the same file location.

I've put a modified gravel model in the expected location at assets/minecraft/models/block/gravel.json with a modified example from your Creating the gravel model section of the Block Overlay Example portion of the wiki.

I even ran the various json files through something to verify I didn't break them somehow.

{
   "loader": "fusion:model",
   "type": "connecting",
   "parent": "block/block",
   "textures": {
      "particle": "#all",
      "all": "block/gravel",
      "grass_block_overlay": "example:grass_block_overlay"
   },
   "connections": {
      "grass_block_overlay": [
         {
            "type": "match_block",
            "block": "minecraft:grass_block"
         } ...   

Steps to Reproduce Attempt to load the resourcepack.

Screenshots not_working

And if you'd like to look at the whole setup, here's a zip containing the bare minimum resourcepack I'm trying to load: zltweaks_fusion_compat.zip

I'm really hoping I didn't just miss something incredibly simple.

SuperMartijn642 commented 2 months ago

Can you share the logs/latest.log file from starting the game, enabling the resource pack, and it failing to reload?

The only thing I can notice from what you shared, is that the example:grass_block_overlay texture is not added to the block atlas. You need to either add it using an atlas sources file or just place the texture in the blocks folder. You can find a better explanation here https://github.com/SuperMartijn642/Fusion/issues/34#issuecomment-1845570108. This, however, will just result in the purple and black missing texture and would not cause the resource pack to fail to load.

As a side note, the grass texture for the vanilla grass block is tinted using a block tinting provider. These providers are hard-coded per block and the gravel block has no tinting provider. The grass texture will thus simply appear as is, gray, on the gravel block. I do plan on adding a way to have custom tinting eventually, however for now, the only workaround is to have the gravel overlay onto the grass, rather than the grass onto the gravel.

ZeroLevels commented 2 months ago

Can you share the logs/latest.log file from starting the game, enabling the resource pack, and it failing to reload?

Here's the log: https://pastebin.com/Kh4SMJVe

The only thing I can notice from what you shared, is that the example:grass_block_overlay texture is not added to the block atlas. You need to either add it using an atlas sources file or just place the texture in the blocks folder. You can find a better explanation here #34 (comment). This, however, will just result in the purple and black missing texture and would not cause the resource pack to fail to load.

The annoying thing about this (not your fault) is that there was one instance where I did get the missing texture thing, but after reloading with no changes, it went back to simply not loading. Not sure why that was.

As a side note, the grass texture for the vanilla grass block is tinted using a block tinting provider. These providers are hard-coded per block and the gravel block has no tinting provider. The grass texture will thus simply appear as is, gray, on the gravel block. I do plan on adding a way to have custom tinting eventually, however for now, the only workaround is to have the gravel overlay onto the grass, rather than the grass onto the gravel.

Ah, so I can't much use it for my purposes currently. I've been looking for something to replace optifine for this, but the tint is important since the grass spreading is the main feature of my pack. I look forward to trying again at that time, but until then I'll just work on different connections.