[Suggestion] Config to make miner's trees generate ores instead of teleporting them
saltyseadoggo opened this issue ยท 6 comments
The Suggestion
A configuration option that, when enabled, would make miner's trees generate new ore blocks instead of teleporting existing ones to it.
Why Should It Be in the Mod?
I feel like the miner's tree could be an interesting reward item in some kind in a skyblock pack, given its ability to bring ores to the player. However, its requirement to actually find ores in the world to teleport up to itself means that it doesn't work in a skyblock world, where there are no ores. This suggestion would allow it to function in skyblock worlds for this purpose, bringing new ores to the player in exchange for them needing to connect it to some sort of stone generators to give it stone to put the ores into. If one wants it to place the ores in the air, that can already be accomplished with the ore magnet's replaceable blocks tag if I understand correctly.
In addition to custom skyblock settings, even the skylight forest config option with twilight oaks enabled benefits from this, as the miner's trees found in leaf dungeons would actually have a use.
Please Read and Confirm the Following
- I have confirmed this suggestion is unique and has not been suggested already.
My only concern with this is balance, no resource cost (besides stone but that's basically free) infinite ore generator sounds really broken.
So I checked, and it looks like we can make litTime
in AbstractFurnaceBlockEntity
public, and furnace will burn until litTime
reaches 0
.
What we can do is as long as this furnace is running and that AbstractFurnaceBlockEntity#getItem(0).isEmpty()
returns true, then we can make the Mining Core pull blocks and continue replacing stone blocks with the ore blocks (This would actually be rather nice to keep since it's now "seeding" the ores into the block)
I actually had the mind that we could probably implement this as a gamerule so it's save-specific, than being a config thing. Hell, we could make a bunch of our config settings gamerule-based, and pluck the defaults from the config, but that's irrelevant to this ticket
So I checked, and it looks like we can make
litTime
inAbstractFurnaceBlockEntity
public, and furnace will burn untillitTime
reaches0
.What we can do is as long as this furnace is running and that
AbstractFurnaceBlockEntity#getItem(0).isEmpty()
returns true, then we can make the Mining Core pull blocks and continue replacing stone blocks with the ore blocks (This would actually be rather nice to keep since it's now "seeding" the ores into the block)
This confuses me. Can you explain what the mining core has to do with AbstractFurnaceBlockEntity
?
Ah, that's interesting!
I also thought just now that some sort of weighted rarities for the ores that are brought in would be needed to keep rarities reasonable. If there was a data file that managed this, almost like a loot table, it would be world-specific and able to have changes made to it for compatibility.