Time Nick Message 01:38 hmmmmmm something for RBA to take a look at is irr::SIrrlichtCreationParameters::DriverMultithreaded 01:38 hmmmmmm also he didn't make map access thread safe at all. which is really the largest problem here. 01:39 hmmmmmm this is getting frustrating... it'd be quicker for me to fix RBA's code than to tell RBA each and every instance of where multithreaded safety is required 01:41 VanessaE I already gave him something else to fight with ahead of that :) 01:41 VanessaE (another part of minimap) 01:42 hmmmmmm also the texture for the round minimap doesn't have smoothed edges 01:42 hmmmmmm they need to be alpha antialiased 01:42 VanessaE that's because of the mask method he was using 01:43 hmmmmmm hmm 01:43 VanessaE (I guess he isn't using that same method now) 01:43 hmmmmmm and not to mention all the gajillion instances of sloppy code style 01:43 hmmmmmm I'm really not that strict about code style. but please don't make it look like a 5 year old wrote it 01:44 hmmmmmm ugh 01:44 hmmmmmm again, another thing that would be quicker if i just fixed it myself 01:44 * VanessaE takes away two of hmmmmmm's m's 01:44 VanessaE to be fair though, 01:44 hmmmmmm that means my internet dropped twice 01:44 VanessaE it has been said here on more than one occasion that what you propose should never be done. 01:44 VanessaE ("commit now, fix later") 01:45 hmmmmmm yeah 01:45 hmmmmmm that shouldn't be done.. 01:45 hmmmmmm maybe if I add a pull request to his own branch 01:46 VanessaE I'm not against the practice myself - I think it's better to push good, working code into mainline and then work on improving it later, simply because not doing so has a tendency to cause that good code to get lost 01:46 hmmmmmm anyway about the multithreaded stuff, maybe it'd be a good idea to redesign what the minimap thread actually does... 01:46 VanessaE (and then the code never gets revived and added) 01:46 hmmmmmm alright 01:47 hmmmmmm the slow part about the minimap is not creating textures or uploading them or fetching map 01:47 hmmmmmm the slow part is doing all the ground level probes 01:47 VanessaE right 01:47 VanessaE which makes me wonder - I thought the engine already HAD a heightmap 01:48 hmmmmmm so strip out all the rest of the irrlicht crud, add in an actual synchronization method, 01:48 hmmmmmm hm 01:48 hmmmmmm I doubt it 01:48 hmmmmmm that is a very interesting concept though, if it did exist 01:49 hmmmmmm even if it did have that it wouldn't be useful 01:49 hmmmmmm each mapblock has its own mesh 01:49 VanessaE yeah 01:49 hmmmmmm so you'd need to probe each mapblock 01:49 hmmmmmm and then check the mapblock mesh's height or something 01:50 hmmmmmm when each mapblock is only 16 high it's probably a lot faster to just check the node data itself 01:50 hmmmmmm that's at most 16 in-order accesses to some array, vs. some operation of unknown speed 01:52 hmmmmmm actually, I wonder if map access is something we ought to be concerned about 01:52 hmmmmmm there's a lot of copying going on 01:54 hmmmmmm maybe it won't matter as much after the first render, if we cache things intelligently 01:57 zat what did happen to the ability of specifying groups for place_on options of biomes? 01:58 hmmmmmm ??? 02:59 zat hmmmmmm: I'll better ask paramat for I asked him to introduce that feature 03:20 paramat i never added the feature because there was more important stuff to do =) 03:22 paramat and place_on already accepts a table, although i understand that's not quite as useful as groups 03:28 hmmmmmm place_on for decorations? 03:28 hmmmmmm ermm... it really really should do that already 03:28 hmmmmmm if it doesn't, then it's either a bug or a massive oversight 03:29 hmmmmmm two months ago or so i went on this rampage to clean up mapgen-related-thing interfaces, especially making them orthogonal, i.e. where one piece of syntax works, it'd work everywhere 03:31 paramat aha cool, i was just thinking perhaps it does that already 03:33 hmmmmmm it does 03:33 paramat ^ zat 03:34 hmmmmmm it might be a bug then 03:34 hmmmmmm although I don't see how... groups would need to be broken everywhere 03:39 hmmmmmm hmm, I think I should randomly generate mountains with no grass like this http://upload.wikimedia.org/wikipedia/commons/5/57/Sorapis_055.jpg 03:39 VanessaE might look interesting 03:39 hmmmmmm hehe 03:40 hmmmmmm this will be possible using nothing hard coded through the new biome system 03:40 hmmmmmm if i get it working correctly 03:46 paramat nice 03:47 paramat how much overgen will you need for variance calculation? 03:47 hmmmmmm it depends on the radius 03:48 hmmmmmm I think in the common use case the radius will be like 5 or something 03:49 hmmmmmm ooh.. you know what, I don't just need to overgen noise, i need to overgen *terrain* 04:09 paramat yes a little terrain overgen is extremely useful, especially vertical overgen 04:16 hmmmmmm do you overgen vertically or is that just noise? 04:17 paramat everything, terrain and biome nodes 04:17 paramat but in mgv5/v7 it's only base terrain 1 up 1 down 04:18 hmmmmmm oh you remember the idea about breaking chunk generation up into several stages? 04:18 hmmmmmm i finally recall what needed to be done 04:18 paramat yes to enable blur 04:18 hmmmmmm see the conversation in #minetest 04:18 paramat yep reading 04:18 hmmmmmm the basic jist is 04:20 hmmmmmm requested chunk in the emerge queue isn't generated? select stage 1 (cave and dungeon only) generation, enqueue stage 1 generation for all of its 26 cubic chunk neighbors as well 04:21 hmmmmmm requested chunk in the emerge queue already has stage 1 generation completed that weren't added by the emergethread internally? that means its neighbors must have stage 1 completed as well, continue onto stage 2 generation 04:21 hmmmmmm then after stage 2 generation, call on_generated and set the mapblock as not sent 04:25 paramat okay will reread both channels and think on this 04:31 paramat interesting i think im getting it, slowly :) 04:31 hmmmmmm like i said though 04:31 hmmmmmm i'm fearing performance problems and circular dependencies 04:31 hmmmmmm it might be a FUBAR concept altogether 04:32 hmmmmmm maybe instead of explicitly adding the dependencies, a stage 2 block will refuse to generate unless all neighbors satisfy the stage 1 dependency 04:32 hmmmmmm yeah that's a better simplification 04:32 hmmmmmm simpler to code too 04:33 paramat nice idea, worth trying 04:39 hmmmmmm oh also 04:39 hmmmmmm there can be a stage 3 mapgen as well 04:39 hmmmmmm and again, here each of the neighbors need to be at least stage 2 04:40 hmmmmmm stage 3 mapgen is where discrete structures that depend upon generated terrain are placed, i.e. all your trees, uh.. pyramids, etc. 04:40 hmmmmmm we'll call that the decoration stage 04:41 paramat ah like having overgen, anything that needs to know what is in the next mapchunk 04:44 hmmmmmm don't mean to go too wild here but what if stage 3 was biome placement, and then stage 4 was decoration placement 04:44 hmmmmmm huehuehue 04:44 hmmmmmm you can eliminate overgen 04:56 paramat 3 stages makes sense: cave/dungeon, base terrain, next-gen biome system (since you need overgen for that) 05:06 hmmmmmm you're right, stage 4 can be combined with stage 3 05:07 hmmmmmm this sounds incredible though 05:07 hmmmmmm i want to try this out first and see if i can't avoid overgenerating in the same chunk 06:26 RealBadAngel hmmmmmm, i told you that moving vmanip fill to main thread is not done yet 06:29 RealBadAngel about using driver, i can remove use of it from thread too 06:30 RealBadAngel in fact i can leave in thread only scanning 06:32 RealBadAngel about using mesh updates: i also had that idea, but thats a bit problematic. scan range can end in the middle of the block 06:32 RealBadAngel so data calculated for 16 nodes high column wont be useable in this case 06:39 RealBadAngel if we were using mapblock updates for minimap we can have smooth horizontal movement and jumpin by 16 nodes vertical 06:39 RealBadAngel that will feel and look awful 06:40 RealBadAngel thats why i dropped the idea 06:41 RealBadAngel on textures: mask antialiased? mask is for cutting map area we need. frame is displayed as overlay and separate image 06:42 RealBadAngel have to be, minimap and frame irrlicht materials are different (because of shaders) 06:44 RealBadAngel and what here looks like child's code? :P 07:16 hmmmmmm yes, leave the thread for scanning only 07:17 hmmmmmm i'm not sure if it's the mask or the frame, vanessa said you took care of it already, i was just saying from what i've seen in a screen shot 07:18 hmmmmmm you have missing indentations everywhere btw, inconsistencies abundant, etc. 07:18 hmmmmmm go over it and fix those things, pleaase 07:18 hmmmmmm check out http://dev.minetest.net/Code_style_guidelines if you're feeling adventurous 07:22 technomancy is there a good reformatter for lua? 07:25 RealBadAngel hmmmmmm, this is still playground and not yet a pr, i will make it look ok for sure 07:26 hmmmmmm oh didn't realize that 07:26 hmmmmmm sorry 07:26 RealBadAngel im rewriting whole parts of it each day, hard to take care of style during it 07:27 hmmmmmm doesn't your editor have auto-indentation? 07:27 RealBadAngel does, but works sometimes pretty weird 07:27 hmmmmmm how are you able to read your own code when you go to modify it 07:28 hmmmmmm don't you get confused when you have code like: 07:28 hmmmmmm for (foobar ... ) { 07:28 hmmmmmm doThing(); 07:28 hmmmmmm do_other_thing(); 07:28 hmmmmmm return blah; 07:28 hmmmmmm } 07:29 RealBadAngel nah, thats not a problem for me 07:31 RealBadAngel after some thinkin im going to try again that idea with mapblock mesh updates 07:31 RealBadAngel maybe it wont feel so bad 07:32 cd2 heyo 07:34 RealBadAngel thx to that full block scan (16*16*16) nodes will be done just on mablock change 07:35 RealBadAngel and in scanner number of scans will be n/16 07:35 RealBadAngel and thats pretty big difference 07:37 RealBadAngel hmmmmmm, but apart from all those technical details, have you tried it ingame? 07:38 hmmmmmm no 07:39 RealBadAngel oh cmon, give it a try :) 07:39 hmmmmmm I can see what it does from the screenshots 07:42 RealBadAngel there are few things dynamic in it, you cant see that on screenshots 10:24 Megaf gm 10:24 Megaf hm 10:25 Megaf I just tried to compile the latest git for my server and make failed 10:25 Megaf 990a965 10:25 Calinou paste of error message? 10:26 Megaf ^\make[2]: *** Deleting file `src/CMakeFiles/minetestserver.dir/network/serverpackethandler.cpp.o' 10:26 Megaf make[2]: *** wait: No child processes. Stop. 10:26 Megaf make[1]: *** [src/CMakeFiles/minetestserver.dir/all] Error 2 10:26 Megaf Quit 10:26 Megaf cmake complained it couldnt find Irrlicht 10:26 Megaf I will update my irrlicht and try again 10:30 Megaf Calinou: I think updating my Irrlicht worked 10:31 Megaf That's weird, spelially because I'm using the dev branch of Irrlich 10:31 Megaf Irrlicht* 10:32 Megaf Updated to revision 5105 10:41 Megaf Anyway, working now 14:31 est31 can sb have a look at #2722 ? 14:31 est31 https://github.com/minetest/minetest/pull/2722 14:31 est31 needs second +1 14:35 RealBadAngel est31, minimap is not yet ready, still some things to code. but its ready to test its funcionality 14:36 est31 I've already tested it, will test it again 14:36 Zeno` Why does return 3? 14:36 est31 ? 14:36 Zeno` err l_get_sky 14:36 Zeno` https://github.com/minetest/minetest/pull/2722/files#diff-9444313da8be4290e9304a4b1faed804R1478 14:37 Zeno` nvm 14:39 Zeno` https://github.com/minetest/minetest/pull/2722/files#diff-9444313da8be4290e9304a4b1faed804R34 14:39 Zeno` ^-- I don't like that 14:39 Zeno` But I guess that was already there? 14:40 est31 yes 14:40 Zeno` crappiest function-like macro I've seen in ages 14:40 Zeno` somebody should change it one day :) 14:40 est31 eg here https://github.com/minetest/minetest/blob/b785577f03d00c83236782876def4c900edbba4e/src/script/lua_api/l_env.cpp#L38 14:40 Zeno` it's not even function-like... it's just crap 14:41 Zeno` heh 14:42 Zeno` anyway the PR looks good to me 14:43 est31 fine, it can be pushed then 14:43 Zeno` *nod* 14:44 est31 so I do it? 14:45 Zeno` yeah, I agree so sure 14:46 est31 ("I" as in "I" vs "you") 14:46 est31 ok then 14:46 Zeno` I, we, them, us 14:46 Zeno` heh 14:46 VanessaE split the difference. zeno pushes half the code, est31 the other half :) 14:47 Zeno` umm 14:47 est31 I push the object tree, zeno the commit message :p 14:47 * Zeno` passes lol 14:47 VanessaE lol 14:50 Zeno` wait! 14:50 Zeno` I changed my mind 14:50 Zeno` lol, j/k 14:52 est31 this is a good speed for PRs to get merged 14:53 est31 ofc, the author also fixes the issues you point out very fast 14:58 celeron55 this might be of interest: https://hub.github.com/ 16:06 ElectronLibre RealBadAngel, currently, your minimap3 branche causes a crash during minetestserver's make recipe : http://pastebin.ubuntu.com/11414075/ (fetched about 2 hours ago). 16:07 sfan5 thats not a crash 16:07 sfan5 that a compile error 16:08 ElectronLibre Oops, sorry. I'm too used to mod crashes. Well, in either way, I can't get `minetestserver` with your branch. 16:08 RealBadAngel ElectronLibre, i will update the branch in about half an hour 16:08 RealBadAngel im preparing now update 17:05 zat hmmmm: that orthogonality thing sounds right 17:06 zat how do I get that feature in though? I had a patch that seemed fine for an older mapgen.cpp version, but seems like things have changed over there. 17:08 hmmmm i don't get what you mean 17:08 hmmmm are you saying that using a group in on_place does not work as of the most up-to-date minetest version? 17:09 zat hmmmm: looks like it is not, should it already? 17:10 hmmmm yes, it should 17:10 hmmmm if it does not work that's a bug 17:11 hmmmm before you file a bug report, make sure you're using the correct group name among other things 17:12 zat hmmmm: I am checking 17:16 zat I get a bunch of 2015-05-28 14:15:05: ERROR[main]: get_biome_list: failed to load biome (index 6) 17:16 zat 2015-05-28 14:15:05: ERROR[main]: register_decoration: couldn't get all biomes 17:18 hmmmm there was some register_decoration with a big list of biomes 17:18 hmmmm and the 6th biome wasn't valid 17:23 zat hmmmm: where do I find the most up to date documentation on registering biomes? neither lua_api.txt or http://dev.minetest.net/minetest.register_biome seem up to date. 17:23 hmmmm biomes are an undocumented feature of minetest 17:24 hmmmm you can use it if you'd like, but it's not officially supported 17:24 zat I will be reading the source then 17:25 zat but, who to ask for functionality? I might document it from that. 17:25 hmmmm there are other people who wrote unofficial documentation for register_biome() 17:25 hmmmm ask around on #minetest 17:26 zat hmmmm: I ask you there 17:26 hmmmm i don't write an official one because the biome system is not final at all 17:27 hmmmm it's an experimental feature, and the interface is especially volatile 17:27 hmmmm once something is added to lua_api.txt, it becomes a part of the minetest api where reverse compatibility is guaranteed 17:28 zat hmmmm: I thank that my approach might help to arrive to a final concept for the biomes API but I need it working first. 17:28 hmmmm it's not just an api 17:28 hmmmm the entire way biomes are calculated is subject to change 17:29 zat but its api should be abstract enough to not be affected 17:29 zat may I show you my code somewhere 17:30 hmmmm instead of asking to ask, just ask 17:30 zat I will pastebin 17:32 zat http://pastebin.com/e97u1z5t 17:32 zat http://pastebin.com/fitVFWS0 17:32 zat the idea is pretty self explanatory. 17:34 hmmmm i'm not quite sure what's going on here 17:35 hmmmm it seems to me like you made some kind of translator from your own biome table format to the one in minetest 17:35 zat biomes are registered programatically from a list based in the scientific list of biomes 17:35 zat of real earth biomes 17:36 zat the result was stunning, the landscapes formed are pretty real-life like. 17:36 hmmmm when i mentioned the biome system changing, i mean at a much more fundamental level than this 17:36 hmmmm internally 17:37 hmmmm not just the external interface 17:37 zat what I am interested in is in arriving to a stable Lua interface for it 17:39 zat is node_dust_water now depth_water_top? 17:41 hmmmm no idea, paramat might've changed it 17:41 zat ;uh ok 17:41 hmmmm but the issue is, there can't be a stable lua interface for something when the system itself fundamentally changes 17:42 hmmmm it's sort of like saying that you're going to design a car's body when you don't know if it's going to be a boat or a truck 17:42 hmmmm maybe you like what's currently existing 17:42 hmmmm i sure don't... 17:43 hmmmm there are major issues or limitations that you might not have encountered yet or otherwise don't know about 17:43 zat hmmmm: the example would be more accurate if it is about the controls to drive it :P 17:45 hmmmm aren't boat controls different from a car? 17:45 hmmmm anyway 17:46 hmmmm right now biomes work just based on what I like to call "climate" characteristics 17:46 hmmmm the Y-value cutoff is a hack 17:46 hmmmm it's difficult to optimize and results in unpredictable biomes, and cannot account at all for biomes with terrain characteristics 17:47 hmmmm a desert right now is an area with a certain amount of heat and humidity, based on which other biomes happen to be registered in the system at that given point in time 17:47 hmmmm whereas in actuality a desert has more to it than that 17:47 hmmmm a desert is mostly flat and dry, away from areas of water 17:48 hmmmm likewise a gently sloping hill cannot be distinguished from a mountain 17:49 hmmmm there are some fundamental things about biomes that won't change, like the fact that it has a name, and that it has a top node, filler node, and water node, but that's about it 17:49 hmmmm everything else is subject to change 17:51 hmmmm in fact I think I'm going to change what people use as the name right now to display_name, and make name more like a nodename is - "mymod:desert" 18:02 TeTpaAka #1496 can be closed now. 18:07 zat hmmmm: there are different kind of deserts 18:12 zat hmmmm: take a look at this 18:12 zat http://biobook.nerinxhs.org/bb/ecology/biomes/1000px-Lifezones_Pengo.png 18:14 zat with all that variables introduced the biomes can be near perfect. 19:06 RealBadAngel ElectronLibre, ive updated the branch, you may try now 19:28 TenPlus1 hi folks 19:28 TenPlus1 am getting an error: "2015-05-28 06:44:50: ERROR[ServerThread]: ServerEnv: Trying to store id=19721 statically but block (994,0,949) already contains 49 objects. Forcing delete." 19:28 TenPlus1 that particular node is underground and stone, no objects or players are nearby... any ideas ??? 19:29 ElectronLibre Still getting an error RealBadAngel : http://pastebin.ubuntu.com/11417426/ 19:30 RealBadAngel weird, VanessaE has just built it 19:32 VanessaE TenPlus1: that coordinate is a block address, not a node coord - multiply X, Y, Z by 16 and check again 19:33 TenPlus1 thanks Vanessa, checking... 19:35 TenPlus1 block in question is a quicksand node... still nothing untoward... 19:35 TenPlus1 is their a limit to how many objects a block area can hold ?? 19:36 RealBadAngel ElectronLibre, please try now 19:40 ElectronLibre The new one : http://pastebin.ubuntu.com/11417606/ 19:41 RealBadAngel ElectronLibre, are getting just patch or compile my whole branch? 19:42 ElectronLibre Compiling whole branch, with make clean && make. 19:42 VanessaE git reset --hard 43702ec6ac0fae7c8ef04be82bcca72ba9bec017 ; git pull -f ; sleep 5; cmake . -DRUN_IN_PLACE=1 -DCMAKE_BUILD_TYPE=Release -DENABLE_FREETYPE=true -DENABLE_LEVELDB=1 -DCMAKE_INSTALL_PREFIX=/usr ; make clean; make -j8 19:42 VanessaE this is how I'm compiling it 19:42 ElectronLibre Let's see. 19:43 VanessaE (the commit specified there is just a random commit that predates RBA's code, to ensure I always get exactly what he's pushed, if a force push happens_) 19:43 VanessaE the sleep was to give me time to cancel it before it starts compiling :) 19:45 ElectronLibre You're not compiling server. Are you? 19:45 RealBadAngel ElectronLibre, the branch compiles without any problems 19:46 ElectronLibre Try configuring it with -DBUILD_SERVER=1 and compiling. 19:46 RealBadAngel and yes, im not compiling server 19:46 ElectronLibre Otherwise, yes, it compiles. 19:46 RealBadAngel you dont need server for minimapper anyway 19:46 RealBadAngel this is only client side feature 19:47 ElectronLibre Yes, but I always compile both to have a local server to do tests with a separated binary. 19:47 ElectronLibre And here is the problem RealBadAngel, it breaks when compiling minetestserver target, so if you don't enable minetestserver binary, you won't get any error. 19:47 RealBadAngel i will fix server issues later today 19:48 RealBadAngel atm just build client and connect to your old server 19:48 ElectronLibre Weird, I still get minetest without my configuration, but it compiles well, whereas using -DBUILD_SERVER=1 breaks. 19:48 ElectronLibre s/minetest/minetestserver 19:48 ElectronLibre That's what I will do, thanks. 19:56 TenPlus1 is their a limit to how many active objects are allowed inside a map block ?? 20:00 sfan5 VanessaE: why sleep 5? 20:00 VanessaE sfan5: it's not needed now, but it was there just to give me time to abort before the compile at the time 20:01 VanessaE (I forget why) 20:10 TeTpaAka TenPlus1: max_objects_per_block = 49 in minetest.conf.example 20:10 TenPlus1 thanks TeTpaAka 20:10 TeTpaAka np 20:11 TenPlus1 nite all 23:07 paramat zat see https://github.com/paramat/biomesdev/blob/master/init.lua 23:08 paramat node_dust_water has been removed. now node_water_top replaces water to a depth of depth_water_top, to enable icesheet with definable thickness 23:09 paramat also node_stone has been added, it will replace all stone in a mapchunk, so you can use desert stone, sandstone.. 23:10 zat thx paramat, I was thinking on continuing the development of mod earth but the game runs so slow now 23:10 zat it is almost unplayable 23:10 paramat ? is it your mod that makes it slow? 23:11 zat paramat: it runs super slow alone, with no mods at all 23:12 paramat weird. there is a nasty memory leak at the mmoment that becomes a problem during long sessions 23:12 paramat (moment) 23:13 paramat apart from that MT has been getting faster over the last year 23:13 zat I am running version 0.4.11 23:14 paramat that's a broken version, use 0.4.12 23:15 paramat keep an eye on my 'mapgen news' thread in the forum for updates to biome API etc 23:15 paramat it's fairly settled down now, won't change much 23:15 paramat ..the biome API 23:17 zat I have got some ideas though 23:18 paramat i hope you continue with earth, and compromise on the alloy thing, or get help to code it and submit it 23:19 zat I need support from the core devs more than anything else 23:21 paramat the alloy feature would probably be accepted 23:21 zat I have got an idea for the biomes... 23:21 paramat also, we're understaffed and very busy, need more c++ devs 23:21 paramat tell me =) 23:22 zat how about an average altitude option for biomes 23:22 zat and the altitude is applied with some noise 23:22 zat so it is unequal 23:23 zat maybe I am being confusing... 23:23 paramat to avoid the straight-line borders of ymin, ymax? 23:23 zat look, in real life snow doesn't start at an exact altitude 23:23 zat yes, right 23:24 zat or, a better yet idea 23:24 zat make the heat map be colder the higher. 23:24 paramat aha 23:25 zat so snow in high altitudes will occur naturally looking 23:25 paramat nice idea but high-altitude floatlands should have all biomes available 23:26 paramat it's best to manually do that in biome definitions 23:27 paramat i'll think on the noisy altitude thing though 23:28 zat paramat: wouldn't high altitude float-lands be freezing in real life anyway? 23:28 zat if such lands were possible lol 23:29 paramat yes realistically, humidity would fall also, so they would all be tundra 23:30 paramat i reduced both in my mapgens at first, but decided it's more fun to have all biomes up there 23:30 zat lol 23:32 paramat so you're a member of the forum, but not at github? 23:33 zat Neither, I am not in the forums. 23:36 paramat i know you have your own git server, but joining github to take part in the discussions will increase your influence on features 23:36 paramat forum is helpful for asking questions 23:36 paramat you really should join both 23:42 hmmmm hrmm 23:42 paramat also a good way to build support from others for your suggestions 23:42 hmmmm paramat, ever since that biome cleanup it seems that grass is placed underwater now 23:43 paramat hmmm that happened to me too, fixed in latest biomesdev 23:43 hmmmm ahh okay 23:43 hmmmm did you need to add a new biome or something? 23:43 paramat it was due to defining a biome down to ymin = 1 instead of 2 23:44 paramat now the ocean biomes are ymax = 1, ymin = -31000 23:45 paramat above water biomes have ymin = 2 23:45 zat paramat: there is a serious issue with beaches now. 23:46 zat I made biomes for snowed beached, deserted beaches, beaches that have grass touching the water. 23:46 zat and iced beaches 23:46 zat now all beaches look exactly the same. 23:47 paramat so anyway desert and rainforest used to have ymin = 1, because now the final biome recalc is at water level those above-water biomes were chosen at water level and stayed in force underwater 23:48 hmmmm hmm 23:48 hmmmm does that make the most sense?? 23:48 hmmmm it's up to you since I'm abandoning it 23:48 hmmmm that's your biome system now 23:48 paramat zat i would need to see your code 23:49 paramat hmmm indeed possibly biome should be recalculated at every new surface underwater too 23:49 zat paramat: any biome registered for y_max < 5 or 3 23:49 hmmmm another thing, what about biomes such as "deep ocean"? 23:49 paramat exactly 23:49 hmmmm what if an underwater biome changes 23:49 hmmmm due to y coordinate 23:50 zat for cases like this the noisy average altitudes would work too 23:50 zat there can be irregular beaches 23:51 paramat hmmmmm okay i'll work on making that change 23:52 paramat it won't affect performance 23:54 paramat zat looking at your pastes, your above-water biomes, beach biomes, underwater biomes have overlapping ymin/ymax 23:55 paramat should be: above water biome: ymin = waterlevel + beachheight + 1 23:55 paramat underwater biome: ymax = waterlevel - 1 23:55 paramat and beach biomes unchanged 23:56 paramat the biome API has changed recently so dev in latest 0.4.12dev 23:57 zat its no use, there is always a beach overriding what I make 23:59 zat everything y <= 3 has mapgen_dirt