Realistic Ore Veins

Realistic Ore Veins

310k Downloads

A couple of issues and one crash: ArrayIndexOutOfBoundsException

vicitafirea opened this issue ยท 3 comments

commented

MINECRAFT: 1.15.2
FORGE version: 31.2.21
oreveins-forge-1.15.2-5.1.4

First issue, which may be just me being dumb:
At first following the documentation to make the datapack I tried the path: "data/oreveins/this_datapack_whatever/oreveins " and it didn't work, anything I put in there would never be loaded in any testing world.
Then following the examples for json's (which aren't linked in the github documentation, by the way) I tried the path used in those: "data/oreveins/oreveins/tests " and it worked. I'm not sure what is the correct path anymore but at least something works lol

Second issue:
Everytime I try to test a datapack that mostly follows the documentation it crashes.
At first I thought it was my fault, so i kept trying until I got to those useful examples. I used this one: { "type": "sphere", "stone": "minecraft:air", "ore": "minecraft:black_concrete", "rarity": 10, "max_y": 100, "min_y": 60, "biomes": { "type": "tag", "biomes": "cold" } }
and it worked perfectly, because it replaces air.

But if I change it to replace stone, the tag forge:stone, or whatever underground it seems, it just crashes.

the json is this:
{ "type":"cluster", "ore":"minecraft:coal_ore", "stone":[ "#forge:stone", "#forge:sandstone" ], "clusters":1, "count":20, "rarity":1, "min_y":1, "max_y":255, "density":500, "vertical_size":2, "horizontal_size":4 }

I do use the mod YUNG's Better Caves and Quark, but to my understanding these mods shouldn't change anything about features/mineral veins.

Finally I tought it was a mod compat issue, but using only two mods: Realistic Ore Veins and DRP - Global Data Pack it also didn't work, it just resulted in the same crash that I have with 152 other mods installed.

report & logs

commented

Interesting. I'm tempted to say because you're defining "clusters": 1. This makes the cluster vein type just a worse sphere vein. Although looking at the code it seems like it's an issue that can technically pop up with any amount of clusters, it's just much rarer if that value is higher.

commented

you're defining "clusters": 1. This makes the cluster vein type just a worse sphere vein.

I guess so. My idea was to make mineral veins kind of similar to vanilla.

Also I forgot to post my config (if it's of any use):

[general]
	#Enable debug commands such as /veininfo, /clearworld, /findveins
	debugCommands = true
	#Stop all vanilla ore gen calls? Warning: this includes calls such as andesite/diorite, and potentially others that internally behave the same as ores. For more customization, see the disabled ores option.
	noOres = false
	#Try to avoid placing veins on the edge of their range as defined by min / max y, so they don't get cut off at the border.
	avoidVeinCutoffs = true
	#Extra chunk search range when generating veins
	#Use if your veins are getting cut off at chunk boundaries
	#Range: 0 ~ 20
	extraChunkRange = 0
	#Vanilla ore gen to disable. Must be specified as a list of block states, i.e. minecraft:gold_ore, minecraft:iron_ore, etc.
	disabledOres = ["minecraft:dirt", "minecraft:gravel", "minecraft:infested_stone", "minecraft:coal_ore", "minecraft:iron_ore", "minecraft:gold_ore", "minecraft:diamond_ore", "minecraft:lapis_ore", "minecraft:redstone_ore", "minecraft:emerald_ore"]

(Double also: I lied, Quark does make some features changes, under the World tab there's "Big Stone Clusters")

commented

My idea was to make mineral veins kind of similar to vanilla.

While you can do that with this mod, I'd recommend you didn't. This mod is designed for massive multi-chunk-spanning veins with hundreds to thousands of blocks in them. It generates those very effectively compared to other similar world gen mods. As a result, using this to generate plenty of small veins is going to be worse for performance, harder to configure, and just generally not as good.

That said, I can see the source of the crash you have sent and have fixed that. I do not see any issues with using tags. I need to fix a typo in the docs concerning domains but the short answer is your data pack must have a path: data/[your domain]/oreveins/..., similar to data/[your domain]/recipes/... for minecraft as an example. Ore veins uses the domain oreveins, and puts all veins under tests as they are excluded at build time via that folder, resulting in data/oreveins/oreveins/tests/.... If you encounter any other issues please open separate issues for them.