Versions: Culinary Compat 1.0.9-beta (behavior unchanged in 1.0.12-beta per decompile), Farmer's Delight 1.20.1-1.3.1, Forge 47 / MC 1.20.1, dedicated server.
What happens
With an item already on a Farmer's Delight cutting board, right-clicking with any tool that is not in forge:tools/knives places 1 of the held tool onto the board as a display item instead of processing the cutting recipe.
Repro: place a leather helmet on a cutting board, right-click with vanilla shears → the shears are deposited into the display slots; the FD salvage recipe (farmersdelight:salvaging/leather_armor, tool = shears_dig / #forge:shears) never runs.
Why
The mixin fd.CuttingBoardUse#culinarycompat$multiUse is @Inject(method="use", at=@At("HEAD"), cancellable=true). When the held stack is non-empty, not tagged forge:tools/knives, the board is occupied, and slot 0 has count ≤ 1, it inserts the held item into the extras handler and cancels with SUCCESS — so CuttingBoardBlockEntity.processItemUsingTool is unreachable for every non-knife tool.
In our pack that gates ~140 of 297 cutting recipes: all axe recipes (FD's own log stripping/tree bark), pickaxe recipes (coral, FD amethyst salvaging), shovel (FD clay), hoe (FD chest-boat salvaging), shears (FD leather-armor salvage, Supplementaries quiver), plus item-specific tools (Ends Delight's nether star, Twilight Delight's minotaur axe).
Suggested fix
Before treating the held item as a display extra, check whether the (board item, held item) pair matches any CuttingBoardRecipe — if it does, return without cancelling so FD's normal processing runs. A cheaper heuristic (held item exposes any ToolAction, or is damageable) would cover most cases, and a config toggle for the extras-placement feature would help packs that hit edge cases.
Workaround we're using
A datapack adding minecraft:shears, #forge:shears, #minecraft:axes/pickaxes/shovels/hoes (+ the two item-specific tools) to forge:tools/knives, so the gate lets them through. Works, but it pollutes the knives tag for every other consumer.
Thanks for the mod — the CFB/FD bridging is great on our family server; this one interaction is the only rough edge we've hit.
Versions: Culinary Compat 1.0.9-beta (behavior unchanged in 1.0.12-beta per decompile), Farmer's Delight 1.20.1-1.3.1, Forge 47 / MC 1.20.1, dedicated server.
What happens
With an item already on a Farmer's Delight cutting board, right-clicking with any tool that is not in
forge:tools/knivesplaces 1 of the held tool onto the board as a display item instead of processing the cutting recipe.Repro: place a leather helmet on a cutting board, right-click with vanilla shears → the shears are deposited into the display slots; the FD salvage recipe (
farmersdelight:salvaging/leather_armor, tool =shears_dig/#forge:shears) never runs.Why
The mixin
fd.CuttingBoardUse#culinarycompat$multiUseis@Inject(method="use", at=@At("HEAD"), cancellable=true). When the held stack is non-empty, not taggedforge:tools/knives, the board is occupied, and slot 0 has count ≤ 1, it inserts the held item into the extras handler and cancels with SUCCESS — soCuttingBoardBlockEntity.processItemUsingToolis unreachable for every non-knife tool.In our pack that gates ~140 of 297 cutting recipes: all axe recipes (FD's own log stripping/tree bark), pickaxe recipes (coral, FD amethyst salvaging), shovel (FD clay), hoe (FD chest-boat salvaging), shears (FD leather-armor salvage, Supplementaries quiver), plus item-specific tools (Ends Delight's nether star, Twilight Delight's minotaur axe).
Suggested fix
Before treating the held item as a display extra, check whether the (board item, held item) pair matches any
CuttingBoardRecipe— if it does, return without cancelling so FD's normal processing runs. A cheaper heuristic (held item exposes any ToolAction, or is damageable) would cover most cases, and a config toggle for the extras-placement feature would help packs that hit edge cases.Workaround we're using
A datapack adding
minecraft:shears,#forge:shears,#minecraft:axes/pickaxes/shovels/hoes(+ the two item-specific tools) toforge:tools/knives, so the gate lets them through. Works, but it pollutes the knives tag for every other consumer.Thanks for the mod — the CFB/FD bridging is great on our family server; this one interaction is the only rough edge we've hit.