Every Compat (Stone Zone)

Every Compat (Stone Zone)

39.2k Downloads

[šŸž]: MCW Bridges: Stonecutter Balustrade Conversion Failures - MCW Fences: Missing Value in Modern Stone Wall Stonecutter Template

xparadise95 opened this issue Ā· 5 comments

commented

Code of Conduct

  • Always check you are using the latest version of the mods and its dependencies
  • Remove mod that enhances Minecraft: Optifine, Sodium, others. The issue still persists.
  • If you are unsure which mod is the culprit.
    Disable all of your mods and enable them 1-2 mods each time to isolate the culprit
  • Confirm that there is no existing issue with a similar description submitted in the list of issues.

Version - Loader (DO NOT FORGET TO SELECT THE CORRECT VERSION)

1.20.1 - FORGE

EveryCompat Version

everycomp-1.20-2.7.24

Moonlight Lib Version

moonlight-1.20-2.13.79

Issue with mods

Source mods: MCW Bridges (mcwbridges) - MCW Fences (mcwfences)
Target mods: ad_astra, alexscaves, supplementaries, deep_aether, naturalist, twigs, deeperdarker, aether (all referenced by names like balustrade_glacio_stone_bricks_bridge)

Issue Detail

MCW Bridges':
EveryCompat’s dynamic recipe template for MCW Bridges’ ā€œmossy stone bricks balustrade bridgeā€ hard‑codes its output type as minecraft:stone. When EveryCompat attempts to automatically ā€œconvertā€ that generic stone into each mod’s custom stone type (e.g. ad_astra:glacio_stone), the conversion fails — the template’s output type doesn’t match the target block’s registry type.

MCW Fences:
EveryCompat tried to read the JSON at mcwfences:recipes/modern_stone_wall_stonecutter.json, but the file’s missing its required ā€œresultā€ field, causing a NoSuchElementException.

OPTIONAL: Latest.log | Crash-report Attachment

https://mclo.gs/pDxxlR9

OPTIONAL: To Produce

Hi there! I don’t want to be intrusive in your codebase, but here are two minimal, non‑intrusive patches you can drop into EveryCompat to prevent those recipe‑generation errors:

MCW Bridges':
SimpleEntrySet.builder("balustrade", Blocks.STONE_BRICKS, BalustradeBlock.class, StonecuttingRecipe::new)
// Convert hard‑coded minecraft:stone output into each mod’s correct block
.convertOutput("minecraft:stone", Map.of(
"ad_astra", "ad_astra:glacio_stone",
"alexscaves", "alexscaves:guanostone",
"supplementaries", "supplementaries:ash",
"deep_aether", "deep_aether:aseterite",
"deeperdarker", "deeperdarker:sculk_stone",
"aether", "aether:holystone"
))
.build();

MCW Fences:
SimpleEntrySet.builder("modern_stone_wall", Blocks.STONE_BRICKS, WallBlock.class, StonecuttingRecipe::new)
// Skip any template missing a valid ā€œresultā€ field to avoid NoSuchElementException
.addCondition(template -> template.contains("result"))
.build();

commented

wait. isn't this related to StoneZone?

commented

Oh.. Maybe xD

commented

i checked the latest.log. and it is.

EDIT:
Moved it to StoneZone's github

commented

I'm looking into this. and saw you just cropped a part of latest.log. I need the whole content of the latest.log.


EDIT:

ok I've fixed the missing recipe for Macaw's Fences & Walls' modern_andesite_walls

and the error about the stonecutter recipe. I put it under the wrong block. it's fixed.

commented

FIXED in v2.7.16