Embers Rekindled

Embers Rekindled

12M Downloads

Stamping recipes always result in Embers plates

RipleyHyena opened this issue ยท 3 comments

commented

Unsure if this is a KubeJS, AlmostUnified, or Embers issue, but with Create having a higher priority in AlmostUnified, or even a custom kubejs recipe replacing yours with the same #forge:plates/copper, the result is always an Embers plate. I made sure items are tagged correctly.

embersrekindled-1.20.1-1.0.2.jar
almostunified-forge-1.20.1-0.7.0.jar
kubejs-forge-2001.6.3-build.83.jar
create-1.20.1-0.5.1.f.jar

It seems like iron and copper sheets are the only two affected, electrum from createadditions works, as well as Create's gold sheets.

commented

Setting the custom recipe output to be exactly from Create causes the recipe to output nothing

`event.custom(
    {
        'type': 'embers:tag_stamping',
        'fluid': {
          'amount': 90,
          'tag': 'forge:molten_copper'
        },
        'output': 'create:copper_sheet',
        'stamp': {
          'item': 'embers:plate_stamp'
        }
      }
)`

huh

commented

The JSON shows that it's using a tag for the output: https://github.com/RCXcrafter/EmbersRekindled/blob/rekindled/src/generated/resources/data/embers/recipes/stamping/plates/copper.json#L16

There are many mods using tag-based outputs but the approach Embers is using here is really bad. Especially since it just writes the tag as a string primitive to the JSON. No system supports that. Not Almost Unified and not KubeJS.

This should be reworked and improved. Write the tag as a JsonObject and resolve the item on deserialization. You could even add Almost Unified compat to do that for you. Occultism does that as well. Serializing it as a JsonObject would also allow you to remove the unnecessary recipe type for the tag output. Just do that in one type.

Can offer a PR if you want.

commented

The plate, ingot and nugget recipes are recipes with tag outputs, you can change their preferred outputs in the config. If you want to create a recipe that outputs a specific item you should set the type to embers:stamping