Diagonal Walls

Diagonal Walls

4M Downloads

[Bug]: Compatibility - Tardis Refined

Jeryn99 opened this issue ยท 4 comments

commented

Mod Loader (Required)

Fabric

Minecraft Version(s) (Required)

1.20.x

Mod Version(s) (Required)

DiagonalWalls-v8.0.3-1.20.1-Fabric

Minimal Setup (Required)

Yes

Notes (Required)

I am one of the Developers of the Tardis Refined mod. Within our mod we have a crafting system that allows for the player to craft blocks or items using blocks in the real world, examples being seen here

Users have a compatibility issue with your mod installed, as the blocks we check for are replaced by the ones from your mod - meaning that users are block from progression due to the blocks they require essentially become "unobtainable"

image

Is there something we need to do on our side that we have missed?

You can see where we do our validation check for recipes here: https://github.com/WhoCraft/TardisRefined/blob/20f13cbe80a6d93c131650447f6d276c1516e28c/common/src/main/java/whocraft/tardis_refined/common/crafting/astral_manipulator/ManipulatorCraftingIngredient.java#L37-L42

latest.log (Required)

N/A

commented

I have two ideas that should solve this:

1. Support block tags for your crafting ingredients

Diagonal blocks inherit all block tags from the original blocks. Maybe that can be useful here? Is it important for you to have access to the block state properties, or is a block enough for the recipe ingredient?

You could switch your block state codec here to one that supports either a block or block tag together with the block state properties (if the properties are necessary to have): https://github.com/WhoCraft/TardisRefined/blob/20f13cbe80a6d93c131650447f6d276c1516e28c/common/src/main/java/whocraft/tardis_refined/common/crafting/astral_manipulator/ManipulatorCraftingIngredient.java#L22
And then all polished blackstone walls would need to have a block tag which is used in the recipe, e.g. tardisrefined:ingredients/polished_blackstone_wall.

Maybe you can even generate a block tag dynamically for all blocks used in manipulator recipes via dynamic data generation. Although since this issue only seems to affect two blocks (polished blackstone walls & glass panes) for now that's probably overkill.

2. Blacklist your recipe ingredients from turning into diagonal blocks

Alternatively there is a block tag for blacklisting walls from being converted to the new diagonal blocks: diagonalwalls:non_diagonal_walls. You could include polished deepslate walls in the tag in your mod jar, so if both mods are loaded together there will be no issues. Also this seems to affect glass panes in terraformer.json.

Those are the only two solutions that come to mind without introducing dedicated compatibility.

commented

For the meantime, it may be good for us to go with solution 2 and see how everything fairs before leaping to create a tag per block we use

commented

How else could i do it as im using a mod pack and may corrupt things if i delete the mod

commented

if you shift click on a diagonal block it reverts to its minecraft default