jtmnf / SimpleOreGenerator

A Simple Ore Generator with a lot of functionalities for Minecraft 1.8.9 to 1.11
https://minecraft.curseforge.com/projects/simpleoregen
2 stars 0 forks source link

[Solved - Version 0.4.3] blockoregen.xml gets overwritten during load #3

Closed rigerc closed 8 years ago

rigerc commented 8 years ago

Unless I'm doing something completely wrong, the blockoregen.xml gets overwritten with a clean version every time. Am I not supposed to edit that file? It doesn't seem to pick up my own XML file and can't find any documentation on it.

jtmnf commented 8 years ago

Are you using the last version? I tested it and it worked fine! The purpose is for you to change the file as you wish! Any other file will not work because the mod was written to acess that file, not other :\

rigerc commented 8 years ago

Yeah I'm using latest version with Forge 2073

jtmnf commented 8 years ago

Can you send me a pastebin of your xml file? I programmed the mod to overwrite the xml file when there is an error on it... Maybe that's the problem...

rigerc commented 8 years ago

Sure: http://pastebin.com/5RsU5TRL

But if that's the case there's probably an error in it. The XML validates but haven't had the time to thoroughly check it. Also I'm using block metadata, but was under the assumption it'd fail gracefully - maybe that's the problem?

jtmnf commented 8 years ago

Ok, I saw the problem... You added some biomes that probably it doesn't recognize, so it will crash... But, before I fix it, can you handle me your log too? I want to check if it's the same error that I get!

rigerc commented 8 years ago

The log is too big to pastebin, but I think I know what you're talking about:

[23:45:22] [Client thread/INFO] [SimpleOreGen/simpleoregen]: Block: Block{minecraft:netherrack} [23:45:22] [Client thread/INFO] [SimpleOreGen/simpleoregen]: Xml file created with a simple example. [23:45:22] [Client thread/TRACE] [simpleoregen/simpleoregen]: Sent event FMLPreInitializationEvent to

it's because I specified a nether biome in the overworld, right? Dumb oversight on my part :)

jtmnf commented 8 years ago

Actually no, I did not see if the biomes and dimensions are correct... What I can is that the "biome_essence" is ok, but the other final 3 aren't... The problem is that you have dimension's id but not names... I need to change that, I know... Try this http://pastebin.com/BRZet4La

rigerc commented 8 years ago

The world doesn't start for me, getting a 'IllegalArgumentException: bound must be positive', probably an error in my XML somewhere.

But it doesn't overwrite the XML anymore, thanks!

jtmnf commented 8 years ago

Pay attention that metadata is still not working... I'm working on it asap! It's 50% done right now...

rigerc commented 8 years ago

Hey, trying out the new update but it's not working for Substratum (NullPointerException). Pretty weird, can't get Substratum to work with other orespawn mods either. Do you know what they're doing different?

jtmnf commented 8 years ago

Hm... Substratum is from which mod?

rigerc commented 8 years ago

Substratum is a utility mod that adds several ores

jtmnf commented 8 years ago

I'm going to check that out! Thanks!

jtmnf commented 8 years ago

Ok... So, I went to the source of Substratum and I saw that the author uses variant=ore=copper... I didn't expect that, but I'll try to fix it ASAP... Having 2 equal signs makes my mod useless because it won't spawn anything (my program reports that is an error and it will return the default block)...

rigerc commented 8 years ago

Thanks for the reply! It's probably something that should be fixed on his side I'd think - I've previously made a issue for it on Substratum here: https://github.com/EXTER7/Substratum/issues/18

jtmnf commented 8 years ago

I already sent a message, but I'll fix it in my code too ;) I don't know how many mods use this in their json's variant file... Did you check the how to use metadata, right?

rigerc commented 8 years ago

Yeah, I used

<copper_ore>
  <registry_name>substratum:ore[ore=zinc]</registry_name>
  <size_vein>11</size_vein>
  <n_tries>7</n_tries>
  <max_y>50</max_y>
  <min_y>20</min_y>
  <blockMatcher>minecraft:stone</blockMatcher>
  <biomes>0;Ocean, 1;Plains, 2;Desert, 3;Extreme Hills, 4;Forest, 5;Taiga, 6;Swampland, 7;River, 8;Hell, 9;The End, 10;FrozenOcean, 11;FrozenRiver, 12;Ice Plains, 13;Ice Mountains, 14;MushroomIsland, 15;MushroomIslandShore, 16;Beach, 17;DesertHills, 18;ForestHills, 19;TaigaHills, 20;Extreme Hills Edge, 21;Jungle, 22;JungleHills, 23;JungleEdge, 24;Deep Ocean, 25;Stone Beach, 26;Cold Beach, 27;Birch Forest, 28;Birch Forest Hills, 29;Roofed Forest, 30;Cold Taiga, 31;Cold Taiga Hills, 32;Mega Taiga, 33;Mega Taiga Hills, 34;Extreme Hills+, 35;Savanna, 36;Savanna Plateau, 37;Mesa, 38;Mesa Plateau F, 39;Mesa Plateau, 40;Gravel Beach, 41;Alps, 42;Bamboo Forest, 43;Bayou, 44;Bog, 45;Boreal Forest, 46;Brushland, 47;Chaparral, 48;Cherry Blossom Grove, 49;Cold Desert, 50;Coniferous Forest, 51;Crag, 52;Dead Forest, 53;Dead Swamp, 54;Eucalyptus Forest, 55;Fen, 56;Flower Field, 57;Grassland, 58;Grove, 59;Heathland, 60;Highland, 61;Land of Lakes, 62;Lavender Fields, 63;Lush Desert, 64;Lush Swamp, 65;Maple Woods, 66;Marsh, 67;Meadow, 68;Moor, 69;Mountain Peaks, 70;Mystic Grove, 71;Ominous Woods, 72;Orchard, 73;Outback, 74;Overgrown Cliffs, 75;Prairie, 76;Quagmire, 77;Rainforest, 78;Redwood Forest, 79;Sacred Springs, 80;Seasonal Forest, 81;Shield, 82;Shrubland, 83;Snowy Coniferous Forest, 84;Snowy Forest, 85;Steppe, 86;Temperate Rainforest, 87;Tropical Rainforest, 88;Tundra, 89;Wasteland, 90;Wetland, 91;Woodland, 92;Xeric Shrubland, 93;Mountain Foothills, 94;Glacier, 95;Oasis, 96;Coral Reef, 97;Kelp Forest, 98;Mangrove, 99;Origin Island, 100;Tropical Island, 101;Volcanic Island, 102;Flower Island, 103;Meneglin, 104;Hell, 105;Forgotten Sands, 106;Fungi Forest, 107;Blazing Inferno, 108;Freezing Blizzard, 127;The Void, 129;Sunflower Plains, 130;Desert M, 131;Extreme Hills M, 132;Flower Forest, 133;Taiga M, 134;Swampland M, 140;Ice Plains Spikes, 149;Jungle M, 151;JungleEdge M, 155;Birch Forest M, 156;Birch Forest Hills M, 157;Roofed Forest M, 158;Cold Taiga M, 160;Mega Spruce Taiga, 161;Redwood Taiga Hills M, 162;Extreme Hills+ M, 163;Savanna M, 164;Savanna Plateau M, 165;Mesa (Bryce), 166;Mesa Plateau F M, 167;Mesa Plateau M</biomes>
  <dimensions>0</dimensions>
</copper_ore>

also used variant=zinc, same error.

jtmnf commented 8 years ago

For Substratum it should be: substratum:ore[variants=ore=zinc]... But that doesn't work either because I programmed it wrong...

rigerc commented 8 years ago

I see you updated, does that mean this should be working?

<copper_ore>
  <registry_name>substratum:ore[variants=ore=copper]</registry_name>
  <size_vein>11</size_vein>
  <n_tries>7</n_tries>
  <max_y>50</max_y>
  <min_y>20</min_y>
  <blockMatcher>minecraft:stone</blockMatcher>
  <biomes>0;Ocean, 1;Plains, 2;Desert, 3;Extreme Hills, 4;Forest, 5;Taiga, 6;Swampland, 7;River, 8;Hell, 9;The End, 10;FrozenOcean, 11;FrozenRiver, 12;Ice Plains, 13;Ice Mountains, 14;MushroomIsland, 15;MushroomIslandShore, 16;Beach, 17;DesertHills, 18;ForestHills, 19;TaigaHills, 20;Extreme Hills Edge, 21;Jungle, 22;JungleHills, 23;JungleEdge, 24;Deep Ocean, 25;Stone Beach, 26;Cold Beach, 27;Birch Forest, 28;Birch Forest Hills, 29;Roofed Forest, 30;Cold Taiga, 31;Cold Taiga Hills, 32;Mega Taiga, 33;Mega Taiga Hills, 34;Extreme Hills+, 35;Savanna, 36;Savanna Plateau, 37;Mesa, 38;Mesa Plateau F, 39;Mesa Plateau, 40;Gravel Beach, 41;Alps, 42;Bamboo Forest, 43;Bayou, 44;Bog, 45;Boreal Forest, 46;Brushland, 47;Chaparral, 48;Cherry Blossom Grove, 49;Cold Desert, 50;Coniferous Forest, 51;Crag, 52;Dead Forest, 53;Dead Swamp, 54;Eucalyptus Forest, 55;Fen, 56;Flower Field, 57;Grassland, 58;Grove, 59;Heathland, 60;Highland, 61;Land of Lakes, 62;Lavender Fields, 63;Lush Desert, 64;Lush Swamp, 65;Maple Woods, 66;Marsh, 67;Meadow, 68;Moor, 69;Mountain Peaks, 70;Mystic Grove, 71;Ominous Woods, 72;Orchard, 73;Outback, 74;Overgrown Cliffs, 75;Prairie, 76;Quagmire, 77;Rainforest, 78;Redwood Forest, 79;Sacred Springs, 80;Seasonal Forest, 81;Shield, 82;Shrubland, 83;Snowy Coniferous Forest, 84;Snowy Forest, 85;Steppe, 86;Temperate Rainforest, 87;Tropical Rainforest, 88;Tundra, 89;Wasteland, 90;Wetland, 91;Woodland, 92;Xeric Shrubland, 93;Mountain Foothills, 94;Glacier, 95;Oasis, 96;Coral Reef, 97;Kelp Forest, 98;Mangrove, 99;Origin Island, 100;Tropical Island, 101;Volcanic Island, 102;Flower Island, 103;Meneglin, 104;Hell, 105;Forgotten Sands, 106;Fungi Forest, 107;Blazing Inferno, 108;Freezing Blizzard, 127;The Void, 129;Sunflower Plains, 130;Desert M, 131;Extreme Hills M, 132;Flower Forest, 133;Taiga M, 134;Swampland M, 140;Ice Plains Spikes, 149;Jungle M, 151;JungleEdge M, 155;Birch Forest M, 156;Birch Forest Hills M, 157;Roofed Forest M, 158;Cold Taiga M, 160;Mega Spruce Taiga, 161;Redwood Taiga Hills M, 162;Extreme Hills+ M, 163;Savanna M, 164;Savanna Plateau M, 165;Mesa (Bryce), 166;Mesa Plateau F M, 167;Mesa Plateau M</biomes>
  <dimensions>0</dimensions>
</copper_ore>

Because I'm still getting a NullPointerException :(

jtmnf commented 8 years ago

That should be working, yes... Damn it... I'll try to figure that out!

jtmnf commented 8 years ago

Try this new build: http://www.mediafire.com/download/ok87l9mfvm9fif2/simpleoregen-1.10.2-0.4.3.jar

rigerc commented 8 years ago

Hm, it doesn't choke on the config anymore, but I'm getting this error/crash

[18:52:38] [Server thread/WARN]: Unable to find spawn biome [18:52:40] [Server thread/ERROR]: Encountered an unexpected exception net.minecraft.util.ReportedException: Exception initializing level at net.minecraft.world.WorldServer.func_72963_a(WorldServer.java:894) ~[ls.class:?] at net.minecraft.server.integrated.IntegratedServer.func_71247_a(IntegratedServer.java:87) ~[bzl.class:?] at net.minecraft.server.integrated.IntegratedServer.func_71197_b(IntegratedServer.java:120) ~[bzl.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:431) [MinecraftServer.class:?] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_25] Caused by: java.lang.IllegalArgumentException: bound must be positive at java.util.Random.nextInt(Random.java:388) ~[?:1.8.0_25] at com.jtmnf.simpleoregen.handler.OreGenHandler.generateBlock(OreGenHandler.java:162) ~[OreGenHandler.class:?] at com.jtmnf.simpleoregen.handler.OreGenHandler.worldGenerator(OreGenHandler.java:137) ~[OreGenHandler.class:?] at com.jtmnf.simpleoregen.handler.OreGenHandler.generate(OreGenHandler.java:105) ~[OreGenHandler.class:?] at net.minecraftforge.fml.common.registry.GameRegistry.generateWorld(GameRegistry.java:120) ~[GameRegistry.class:?] at net.minecraft.world.chunk.Chunk.func_186034_a(Chunk.java:1001) ~[asv.class:?] at net.minecraft.world.chunk.Chunk.func_186030_a(Chunk.java:969) ~[asv.class:?] at net.minecraft.world.gen.ChunkProviderServer.func_186025_d(ChunkProviderServer.java:154) ~[lr.class:?] at net.minecraft.world.World.func_72964_e(World.java:303) ~[aid.class:?] at net.minecraft.world.World.func_175726_f(World.java:298) ~[aid.class:?] at net.minecraft.world.World.func_180495_p(World.java:842) ~[aid.class:?] at net.minecraft.world.World.func_175623_d(World.java:223) ~[aid.class:?] at net.minecraft.world.World.func_184141_c(World.java:203) ~[aid.class:?] at net.minecraft.world.WorldProvider.func_76566_a(WorldProvider.java:67) ~[atl.class:?] at net.minecraft.world.WorldServer.func_73052_b(WorldServer.java:950) ~[ls.class:?] at net.minecraft.world.WorldServer.func_72963_a(WorldServer.java:872) ~[ls.class:?] ... 4 more and this during the xml parsing stage:

[18:51:46] [Client thread/INFO] [SimpleOreGen/simpleoregen]: No properties added to the block 'biomesoplenty:biome_finder'. Returning the default state.

But I think that's because I maybe used the wrong name? Either way I removed those blocks (also had it Extreme Reactor's yellorite) and I still get the crash.

jtmnf commented 8 years ago

Did you change the xml? If so, can you send it again?

rigerc commented 8 years ago

The xml I'm using: http://pastebin.com/E6xys49e

to not get the error durring the xml parsing delete the yellorium and biome_finder entries, but they should work regardless, those blocks exist in my game.

jtmnf commented 8 years ago

Which mod adds yellorite? BR didn't had an update to 1.10.2, right?

rigerc commented 8 years ago

Yeah there was a fork to 1.10. It's Extreme Reactors on Curse.

jtmnf commented 8 years ago

I'll check that out tomorrow! Thanks ;)

jtmnf commented 8 years ago

How to spawn ores

I guess I was wrong... Remove the "variants=" part... For example, instead of substratum:ore[variants=ore=platinum], you have substratum:ore[ore=platinum]

It doesn't fix everything, but it works for other parts...

The version that I sent you and the version that is on Curse does NOT support metadata in the spawn command yet

jtmnf commented 8 years ago

I removed the Immersive Engineering ores, Mekanism ores and the biome_finder and the log is this: [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:clay'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:clay' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:obsidian'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:obsidian' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: minecraft:stone[variant=andesite] [00:43:35] [Client thread/INFO]: Processed 'minecraft:stone[variant=andesite]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: minecraft:stone[variant=diorite] [00:43:35] [Client thread/INFO]: Processed 'minecraft:stone[variant=diorite]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: minecraft:stone[variant=granite] [00:43:35] [Client thread/INFO]: Processed 'minecraft:stone[variant=granite]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:coal_ore'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:coal_ore' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:iron_ore'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:iron_ore' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:redstone_ore'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:redstone_ore' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:gold_ore'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:gold_ore' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:lapis_ore'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:lapis_ore' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:emerald_ore'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:emerald_ore' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:diamond_ore'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:diamond_ore' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: substratum:ore[ore=copper] [00:43:35] [Client thread/INFO]: Processed 'substratum:ore[ore=copper]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: substratum:ore[ore=tin] [00:43:35] [Client thread/INFO]: Processed 'substratum:ore[ore=tin]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: substratum:ore[ore=nickel] [00:43:35] [Client thread/INFO]: Processed 'substratum:ore[ore=nickel]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: substratum:ore[ore=silver] [00:43:35] [Client thread/INFO]: Processed 'substratum:ore[ore=silver]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: substratum:ore[ore=lead] [00:43:35] [Client thread/INFO]: Processed 'substratum:ore[ore=lead]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: substratum:ore[ore=platinum] [00:43:35] [Client thread/INFO]: Processed 'substratum:ore[ore=platinum]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: BlockFinder: bigreactors:brOre[ore=yellorite] [00:43:35] [Client thread/INFO]: Processed 'bigreactors:brOre[ore=yellorite]' correctly for BlockMatcher[[minecraft:stone[variant=stone]]] [00:43:35] [Client thread/INFO]: No properties added to the block 'minecraft:quartz_ore'. Returning the default state. [00:43:35] [Client thread/INFO]: Processed 'minecraft:quartz_ore' correctly for BlockMatcher[[minecraft:netherrack]] [00:43:35] [Client thread/INFO]: BlockFinder: substratum:oreDust[ore=niter] [00:43:35] [Client thread/INFO]: Processed 'substratum:oreDust[ore=niter]' correctly for BlockMatcher[[minecraft:netherrack]] [00:43:35] [Client thread/INFO]: BlockFinder: substratum:oreDust[ore=sulfur] [00:43:35] [Client thread/INFO]: Processed 'substratum:oreDust[ore=sulfur]' correctly for BlockMatcher[[minecraft:netherrack]]

And when generating a world it generates everything correctly. I used this xml.

rigerc commented 8 years ago

Alright! Weird that the others don't work then, maybe because they do things differently? Thanks for your help anyway

rigerc commented 8 years ago

Ok so it seems I fucked up, should've been using biome_block instead of biome_finder of course. Now I get no errors in the XML, sadly the world still won't generate - that's probably IE then?

edit: After removing both the IE ore and the biome_block the world doesn't crash on generation. It's probably the biome_block fuckig it up

jtmnf commented 8 years ago

Weird... biome_block is from Biomes'O Plenty?

rigerc commented 8 years ago

Yes, but it only generates in The End. But both the IE ore and the BoP ore make the generator crash at the moment

jtmnf commented 8 years ago

Hm, ok! During this day I'll test it and try to figure that out ;)

jtmnf commented 8 years ago

First error that I detected: min_y and max_y are switched :P the program didn't have any protection to that, but I added it now ;) If you try to go to the Nether, it will crash too! I'm trying to see more things...

jtmnf commented 8 years ago

If you change the min_y and max_y, it will run now :) I'll update a version that fixes some stuff (the commands and the protection to that part). Everything generated for me, in my tests ;)

rigerc commented 8 years ago

Can confirm!

http://i.imgur.com/nMOxiz2.png

jtmnf commented 8 years ago

Nice ^^