MineColonies

MineColonies

53M Downloads

Crafters using the new Tag system sometimes don't honor the tags the way you'd expect..

Mekle001 opened this issue ยท 4 comments

commented

Version: minecolonies-0.13.16-ALPHA-universal.jar

Expected behavior

  • Tags to evaluate products, and then ingredients so that product marking always takes precedence.

Actual behaviour

  • Evaluated with exclusions of both products and ingredients and then inclusions of them both.

Steps to reproduce the problem

  1. Define Brick @ stonesmelter, and Stick @ Sawmill
  2. Attempted to add "Clay Shingle Slab" to Sawmill (It's explicitly marked sawmill_product)
  3. adding the recipe fails, because brick is marked "sawmill_ingredient_excluded" as it arguably should be.
  4. ... Profit
commented

brick isn't in the sawmill_ingredient_excluded by default. Are you saying you added it and it still allowed it?

commented

Actually, it is with the recent changes, since Brick is also a forge:ingot. That particular marking doesn't make a lot of sense, but it is what it is.

I believe to fix it right, there are two changes: One fix the ordering of evaluation, two add minecolonies:sawmill_product to the blacksmith_product_exclude.

commented

An exclusion is an exclusion, that is always the case.

commented

My logic here:
Explicit marking of products for a crafter should always take precedence over possible exclusions of ingredients.

This makes things much easier to alter in a modpack where recipes are significantly altered, but you still want the product to go to the correctly themed crafter.

It also addresses tags that could be considered 'overreach' like "forge:ingot" being applied to a brick, even though logically a brick is used by the stonemason.