You'll need lines 1 - 104 (with the exception that the definition of ore_list must remain in a c file). Plus the declaration of update_all_chunks. You'll re-implement the functionality in parse_options and main, but probably copy pieces of them.
Hm...is there any way you could add something so it can replace ores with stone, essentially undoing its actions? Now that lapis lazuli has been de-nerfed, I feel kinda foolish making double deposits of it.
progress update: i have worked myself into c++ far enough that i have a gui which already changes the defaults and min/max values when you change the ore type.
the only problem is that i had to cut&paste the structs to a header file. i thought it would be possible to just look up the definitions in the c file by writing declarations into a header, but i had to change the oregen source.
as soon as i get everything to work, i’ll figure out what changes really need to be made so that oregen could be updated to provide all data (min/max values, default values), as well as an interface, in a header and everything else in the c file.
the gui is making progress. i have a preview-copy here: OreGenGui.
it should run on linux with Qt installed. i know that only the first two options are there ATM, and that the “Apply” button does nothing (i.e. it doesn’t actually do anything with any files). any suggestions apart from that?
PS: the gui will come out under gpl, which means that i’ll include the source code once it’s ready and no commercial organisation can use the code without asking me to relicense it first. since it’s my first c++ application, nobody would want it, anyway :wink.gif:
Hey thanks, this works great! Since Mine Plump went dark, there was no way to add new ores to a map. Any chance of using the same technique in Oregen? Instead of creating new ore clumps, find existing ones and make them bigger? Or does it do that already?
Rollback Post to RevisionRollBack
To tell them how to live is to prevent them living.
also, i think the changes needed to make oregen both work as a library and as standalone program are final:[*:1ztwb5yy]a header has to be generated where the definition of ore_list, the declaration of update_all_chunks(), as well as the definitions of all structs and preprocessor constants needed by those two are moved into.
[*:1ztwb5yy]a #ifndef OREGEN_AS_LIB … #endif has to be wrapped around the main function. i tried to make the changes minimal, but if you don’t want to include them, i’ll have to deal with it. i would understand it, because maintaining two files is more tedious than one, but when my changes are applied, our applications can interoperate without neediing one of us to do anything when the other one updates.
also, if you decide to do the changes, you might also expose other useful functions, if someone else wants to use oregen as library.