wisp-forest / alloy-forgery

Alloy smelter mod for Fabric
MIT License
44 stars 21 forks source link

[Suggestion] Temperature and/or Fuel restrictions #95

Open Lancelotbronner opened 1 year ago

Lancelotbronner commented 1 year ago

I'm trying to make a modpack with realistic primitive metal processing and more often than not, the fuel makes more difference than the material used.

So for example, trying to fuel the forge with sticks versus with lava will not allow you to work the same metals. This is not currently doable as I believe any forge tier can accept any fuel.

Here's my idea: Forge definitions could optionally restrict the fuels that may be used in it. This way I could circumvent my above issue by having the player build a slightly different material in order to force the use of those higher-tier fuels. This could simply be done with an optional item tag to use as fuel restriction.

There is also the issue of more primitive recipes which ideally shouldn't be present in higher tier forges, this could be done by supporting the override's tier specification in the main recipe's tier requirement, so I could specify a recipe with say 1 to 3 as its tiers with its overrides for tiers 2 and 3 but it wouldn't show up in a tier 4 forge.

Noaaan commented 1 year ago

I do not like restricting fuel types in your Forge, as the main idea with it is to fuel it with Lava. Currently this is not planned, but we are yet to discuss internally what to do in that regard. For the latter, specifying recipes with tier ranges, specifically using the syntax "1 to 3" for example, is supported. I think that functionality has existed since initial release. I advice looking through the wiki on how this works: https://github.com/wisp-forest/alloy-forgery/wiki/Adding-recipes-and-fuels

Dragon-Seeker commented 1 year ago

I believe that fuel restrictions are cool in concept but would require some work to properly track the given fuel within the Forge though it seems more frustrating than anything to require certain fuels as it would be another level for users to manage.