NivOridocs / heater

https://modrinth.com/mod/heater
MIT License
0 stars 1 forks source link

Mod Integration: Energy Based Heater #6

Open JasdanVM opened 2 weeks ago

JasdanVM commented 2 weeks ago

I'd love it if you added an electrical heater that consumed energy for the heat generation, so having lots of energy get another use on the pretty limited Fabric energy ecosystem. I have other ideas regarding electrical Thermoregulators, but this one addition would be huge.

NivOridocs commented 2 weeks ago

I have already considered bridging Heater and the Energy API in some way. Still, I've never implemented anything and probably never will for one simple reason: I don't want to make Heater too bloated with features. I like my mods to do only one thing, but well.

That said, I'm thinking of extracting part of Heater (namely, the third-party furnace compatibility feature) to a new API that everyone can use and developing another mod (a Heater companion mod, I might say) that makes every Heater-compatible furnace (Heater's heater included) able to at least receive heat as energy from the Energy API. This last mod should do what you're asking and more.

Since I have yet to write a single line of code about all of this, any suggestion is much welcome.

Spoiler: I'm already moving to Minecraft 1.21, so every new implementation will be for that version.

(Though, now I'm curious about these electrical Thermoregulators of yours...)

JasdanVM commented 2 weeks ago

Well, the ideas I had for Thermoregulators are as follow: The addition of blocks that consume energy and in turn generate heat or cold. The heaters would be compatible with Farmer's Delight, cooking food faster when under a Skillet than regular fire, and they'd be able to replace Blaze Burners from Create (except for their Super-Heated state). Coolers would turn water over them into Ice in any biome, and when boosted up, they'd create Packed Ice. This blocks could get electrical fans attached, (but would also work with the airflow of Create's Encased Fans) that alter the temperature of enclosed spaces, the more Heater/Cooler blocks used and the more power consumed, the bigger the area that can be transformed, useful for mods such as Scorcheful and Frostiful (and other temperature survival mods) for overridding the biome conditions you are in. There could also be integration with mods that simulate rain, such as Create: Slice and Dice for submerging a build into an eternal Snowstorm and generating snow. Hyper-heated rooms would have a chance of setting wood and mobs on fire, and would simulate the Nether's water evaporation effect. Super-cooled rooms would apply slowness and a chance to give powdered snow effect to mobs, and trap dropped items in ice if Rare Ice is installed. A new (2x1) container could be added that resembled both a freezer, and a large electric oven, a Heater/Cooler connected to it would determine if it warms or cools items inside, Datadriven recipes so pack makers have something to work with, maybe by default it could add a Refreshness and Warm tag to food that gives some positive bonus; also, mods like SpoiledZ and Spoiled wouldn't touch anything that is being cooled (or it would spoil a lot slower after some time), and would degrade stuff that has been warming up faster. 2x2 "Industrial Fans" that can be used with Heaters/Coolers, but also are animated and provide cheap passive cooling in the direction they point at. And of course Heaters and Coolers would damage and burn/freeze mobs directly standing on them.

JasdanVM commented 2 weeks ago

An extra advanced utility would be the distribution of hot/cold air through pipes. So, regular heaters should melt away snow and ice in a large area around them, pipes could be used to distribute hot air on bigger areas, if enough heat is transmitted, underground pipes could warm the ground enough for snow to not form on it ever.