Time Nick Message 03:26 hmmmm heh, terrain looks a little bit cooler with mgv6_np_terrain_higher.offset = 40 instead of 20 03:31 hmmmm what do i name this commit.... 03:34 hmmmm alright so i totally cleaned up that hack to make the mapgen name a string in that last commit. i have a new arbitrary factory class thing going on, but new mapgens need to do some additional work now; define a factory class derived from MapgenFactory that will return a new instance of a Mapgen and a new instance of a MapgenParams 03:34 hmmmm https://github.com/kwolekr/minetest/commit/ecd99ae6f49720da9eb58937a964bf5cad9837d2 03:34 hmmmm and ServerMap gets the EmergeManager on construction (again) 03:36 hmmmm the only thing mapgen makers have to modify outside of their own source files now is mapgen.cpp, EmergeManager's ctor, they just add a registerMapgen("mapgen_name_here", new MapgenFactoryHere()); 03:37 hmmmm if we ever get to the point where .dlls and .sos are loaded, i can export EmergeManager::registerMapgen(), and they just call that 03:38 hmmmm of course i'll document ALL of this in due time 06:22 darkrose urgh, what idiot decided right clicking was a good way to open a door? 06:35 hmmmm someone who wanted to be able to mine them out easily 07:05 hmmmm sfan5: https://github.com/kwolekr/minetest/commit/dcd2047b08589353e52d9cdabcc8d039697f3def 07:05 hmmmm shoot i left in an unused variable 07:22 hmmmm https://github.com/kwolekr/minetest/commit/819dd7723ca0357dedbf67fe3cd5ba5c648c11a6 08:50 celeron55_ thexyz: the translation template file should be updated using the updatepo.sh script or whatever it was 08:50 celeron55_ thexyz: also, i gave access to https://github.com/minetest 08:59 celeron55_ < hmmmm> damn how do you even break this up into two lines <- typedef, man 10:00 celeron55_ i quite like how the trees look in these: http://forum.minetest.net/viewtopic.php?pid=65416#p65416 http://forum.minetest.net/viewtopic.php?pid=65436#p65436 10:00 celeron55_ that is a good size 10:00 celeron55_ or, well, a good varation of sizes 14:32 RealBadAngel hi all 14:33 RealBadAngel celeron55, youre comparing those screenshots in this topic to l-system trees or what? 14:37 RealBadAngel im asking, because if im not blind, those ARE L-system trees... 14:39 RealBadAngel you still havent tried them but commenting out some screenshots... 14:39 hmmmm he likes l-system trees in general, he just thinks that a few of them are too big, but those are well-sized trees 14:39 RealBadAngel so epic fail 14:40 RealBadAngel because he just said he likes my models of jungle trees which he said were too big 14:40 RealBadAngel repeat: he just watches some random screenshot and not tryin how they look ingame 14:41 RealBadAngel we finally have a proof 14:41 hmmmm some trees really are huge IRL. 14:41 RealBadAngel yes, ofc, sequoia avg is 120meters 14:41 hmmmm i don't judge things by how they look in-game either, it is a lot of hassle to set it up 14:42 thexyz celeron56 / celeron55_: wtf does that one do and why should it be executed by tool which only changes *.po? 14:42 RealBadAngel but this was comic indeed 14:42 thexyz also, we probably should discuss which languages to add 14:42 hmmmm 'comic'? hardly.... 14:42 hmmmm what's so funy 14:42 hmmmm funny 14:43 RealBadAngel on one screenshot it was too big for gameplay, and on another its ok? 14:43 hmmmm are they the same tree? 14:43 RealBadAngel i do recognize my models 14:43 RealBadAngel i wrote them 14:43 hmmmm well let me be the judge of that.... what are the screenshots we're comparing here exactly 14:44 hmmmm lemme just look up in the logs 14:44 RealBadAngel download plantlib/moretrees and check for yourself 14:44 hmmmm lol i love how the smiley face sheep are humping in the foreground there 14:45 hmmmm perhaps he didn't realize there was more to the sequoias to the right in the first screenshot. *shrug* 14:46 hmmmm as for the second screenshot...... those are indeed smaller examples of the l-system trees 14:47 RealBadAngel there are currently 12 kinds of trees 14:47 RealBadAngel only one is bigger than old jungle tree 14:48 RealBadAngel sequoia 14:48 hmmmm how much bigger? 14:48 RealBadAngel 1/3 or something like that 14:48 RealBadAngel lookin now a place in the world to make a screenshot 14:48 hmmmm that's really not that much 14:49 hmmmm the whole size argument does seem dumb now 14:49 RealBadAngel btw i posted early today a patch to treegen engine 14:49 RealBadAngel can some1 check it out? 15:03 RealBadAngel couldnt find a nice spot for screenshot, so placed some sapling 15:03 RealBadAngel gonna take a while for them to grow ;) 15:13 RealBadAngel dont have jungle ones yet, but made one view 15:13 RealBadAngel http://realbadangel.pl/scr1.png 15:13 RealBadAngel its actual mapgen creation 15:13 hmmmm hah i like those palm trees 15:13 hmmmm they really add a nice feeling 15:14 hmmmm https://github.com/kwolekr/minetest/commit/7365cae0b053cc9cc5d9f0d85ede34683d5ec243 15:28 RealBadAngel hmmm, one thing, since you have moved defalut trees to v6.cpp i think i should remove the leftovers from treegen.cpp 15:28 RealBadAngel theyre not functional anymore 15:30 hmmmm leave that to me 15:31 hmmmm i actually want all tree generation to stay in treegen.cpp, so it'd be much more organized if the copy in the mapgen was removed 15:37 RealBadAngel http://realbadangel.pl/scr2.png 15:37 RealBadAngel another nature capture 15:50 RealBadAngel hmmmm, palms vs the biggest ones: http://realbadangel.pl/scr3.png 15:51 RealBadAngel hi PilzAdam 15:51 PilzAdam hi 15:53 RealBadAngel and palm beach itself 15:54 RealBadAngel http://realbadangel.pl/scr4.png 15:55 RealBadAngel PilzAdam, those screenshots i post are actual mapgen generated ones 15:59 celeron55_ RealBadAngel: so you're not fine with me being fine with the trees? okay, i'll be against them then 15:59 RealBadAngel hehe, no 15:59 celeron55_ thexyz: ...i don't even know; how is the translation template updated, then? 16:00 RealBadAngel i just pointed that once you called them too big, once proper sized 16:00 RealBadAngel lookin at the very same trees :) 16:00 celeron55_ thexyz: i think we should use the same policy as openttd uses - include anything that is 90% translated, and exclude everything if they get outdated to under 90% 16:00 celeron55_ s/exclude everything/exclude anything/ 16:01 celeron55_ thexyz: because there isn't really a reason to exclude a language as long as it's complete 16:02 RealBadAngel celeron55_: dont get me wrong please. i was just laughin :) 16:02 RealBadAngel and i really think you shall try to play with them 16:03 RealBadAngel when we made them generated on mapgen, world is just marvellous 16:04 RealBadAngel you really feel youre going somwhere now 16:04 RealBadAngel before there was almost no point to move and explore because world was the same whenever you went 16:05 RealBadAngel when played at server only point to explore was to find clay 16:06 RealBadAngel nothin more 16:13 Jeija I want to send a command to all clients straight from the scriptapi (spawn particle). Sending the command from the server e.g. on an event works, but what is the recommended way to make the scriptapi trigger the command? 16:13 celeron55_ see the code that launches a custom formspec 16:13 celeron55_ just add a method to Server and add a wrapper to scriptapi.cpp 16:14 Jeija thank you, didn't think of that, the formspec code is was I was looking for 16:14 celeron55_ (scriptapi.cpp should really be only wrappers, and all real functionality should be accessible via C++ interfaces so the core can use them all too) 16:17 thexyz celeron55_: i don't get it, why should it be updated when translation is changed? 16:17 celeron55_ thexyz: where do the translation services get the strings they give for users to translate? 16:17 celeron55_ if i edit C++ code, how do they get the new original string 16:18 thexyz source = msgid, translation = msgstr 16:18 thexyz well, i don't think that should be done by translation service (and afaik, weblate can't do that) 16:19 celeron55_ ...but how does the mapping get done? 16:19 thexyz what mapping? 16:19 celeron55_ to my understanding something can generate the translation template file, .pot 16:19 celeron55_ and such service will read the pot 16:19 celeron55_ and generate .po files based on it 16:19 celeron55_ the .pot is never edited by hand, but rather gettext automatically can generate it from C++ 16:20 celeron55_ in some way; and i am wondering what that way is 16:21 celeron55_ yes, it happens in updatepo.sh 16:21 celeron55_ xgettext --package-name=minetest -kN_ -kwgettext -F -n -o $potfile src/*.cpp src/*.h 16:21 thexyz there's also another problem, regarding your suggestion >include anything that is 90% translated, and exclude everything if they get outdated to under 90 16:21 celeron55_ and then it updates the .po files based on it 16:21 hmmmm by the way, did you check out the commit to fix the mapgen name string hack 16:21 celeron55_ for what has changed 16:21 thexyz weblate is only able to work with .po's that are in the repo 16:22 thexyz hm.. well, it can merge with git repo 16:22 celeron55_ launchpad eats the .pot and produces any languages from it 16:22 celeron55_ in any case i'll run updatepo.sh now and commit the changes, so we are getting new translations in any case 16:23 thexyz ok 16:23 celeron55_ a lot has changes since it was last run 16:23 celeron55_ changed* 16:24 thexyz i think we can translate using weblate and then run updaterepo.sh by hand from time to time 16:24 thexyz and to support more languages firstly we have to add empty .po's 16:25 celeron55_ there should be some place to request .pos for new languages 16:25 thexyz i think it may be a good idea to put some kind of poll for that 16:25 celeron55_ add a thread on forum and link to it from weblate? 16:25 thexyz and then add empty po's for most popular languages 16:25 thexyz probably 16:25 celeron55_ well, people should request on the thread only if they are ready to translate a lot 16:27 celeron55_ .pot and existing .po files have now been updated 16:27 thexyz ok 16:27 thexyz yes, sure 16:28 celeron55_ much seems to be the same, but there are many new messages 16:31 celeron55_ hmmmm: no, maybe add a pull request or something so it isn't forgotten 16:32 celeron55_ or, well, link it now and maybe i will have time to immediately check it 16:32 celeron55_ a pull request is generally the best idea though 16:34 thexyz celeron55_: does that look fine http://bpaste.net/show/TVBPGbelSFBru9skchUD/ ? 16:34 celeron55_ depends on what the content is 16:35 celeron55_ if it basically reverts it to the point where it was before the update, then it's so wrong you should cry 16:35 celeron55_ 8) 16:38 hmmmm Jeija.... https://github.com/Jeija/minetest/commit/45c48f79652e92a2f31aa0569ebb20cfc2cf6699#L3R465 %z is a glibc-ism and should be entirely avoided. 16:38 hmmmm it's an invalid format specifier with anything other than gcc. 16:39 celeron55_ thexyz: probably the best way to make sure all is right is to run updatepo.sh on top of that, then commit, and then squash them to one that will surely end up being a clean update 16:39 celeron55_ ...or something like that 16:40 celeron55_ hmmmm: related to that: also, the %ll and whatever are different sizes on 64bit vs. 32bit and might even differ in different compilers; there are some macros for proper compatibility 16:42 celeron55_ (of course, if actually long long is used, then %ll is right; but it isn't right for int64_t or so) 16:42 hmmmm what? %ll is fine for int64 16:43 hmmmm long long is at least 64 bits 16:43 thexyz oh, well, the only change that was made by Calinou is not needed in latest git so I decided to reset the local repo 16:43 celeron55_ ehm... well, SOME of the printf things have that problem 16:43 thexyz seems everything went fine 16:43 Calinou thexyz: what change? 16:44 hmmmm as far as C++ is concerned, you use %ll in a format specifier, you better pass a long long int. or else problems may happen. 16:44 Calinou talking about changes, can my glitch ladder fix be merged please? 16:44 thexyz Calinou: translation 16:44 Calinou ah 16:44 Calinou I was testing ;-) 16:44 celeron55_ here's such a fix in musicd: https://github.com/Kray/musicd/commit/3308701c09beddff38c1ac0026a7becb4cba8df0 16:45 celeron55_ hmm, i wonder what the original problem in that has been 16:45 hmmmm you have no idea unless you look at the definition of track, really 16:46 celeron55_ https://github.com/Kray/musicd/blob/3308701c09beddff38c1ac0026a7becb4cba8df0/src/track.h 16:46 hmmmm this wins the shitty code award of the month size = pow(2, ceil(log(size)/log(2))); 16:48 hmmmm well if you notice the commit topic he says he replaces "ld li and lu", not "lld lli and llu" 16:48 celeron55_ (that is an invalid argument unless you provide with a replacement that is less shitty) 16:49 celeron55_ hmm so you're saying that that fix could have been as well just using ll instead of l in all of those 16:49 celeron55_ do all compilers support ll? 16:49 celeron55_ or, well, standard libraries 16:49 hmmmm yes. 16:49 hmmmm it's STANDARD C 16:49 hmmmm if something doesn't support ll then it's defective 16:50 celeron55_ something being defective doesn't mean you wouldn't have to support it 16:51 celeron55_ i asked about that elsewhere, i'll mention here if the answer is useful 16:51 hmmmm of course, but when something's defective, you don't bend over backwards for it because it's junk 16:52 hmmmm i used to do handstands for windows support for my own programs 16:52 celeron55_ if it's gcc, mingw, llvm of msvc, minetest will bend 720 degrees to handle it 8) 16:52 hmmmm it's ridiculous at times though 16:53 celeron55_ it's one of the policies i won't change, until windows has less than 20% of market share 16:53 celeron55_ then i promise all windows support will be dumped like it was never there 16:56 hmmmm well windows is pretty bad but it could be worse, so what i said wouldn't really apply here 16:56 hmmmm especially since windows support is already here and excellent 16:58 Calinou "until windows has less than 20% of market share" <= did you count mobile devices? :P 16:59 celeron55_ http://stackoverflow.com/questions/5140871/sprintf-for-unsigned-int64 16:59 celeron55_ seems to be pretty messed up 17:00 celeron55_ Calinou: minetest runs only on desktop, so desktop OSes 17:01 celeron55_ everybody keeps saying that %l is 64bit on 64bit, but nobody says if %ll is 64bit or not 17:01 celeron55_ it could be 128 on something, but... 17:01 hmmmm doesn't matter if it's 128 or not, it's "at least 64" which is what you need 17:01 celeron55_ "You need to use %I64u with Visual C++" sounds like fun, and sounds like going in hand with MSVC not supporting C99 17:02 hmmmm %l is 32 bit on 64 bit windows 17:02 hmmmm you can still use %ll in windows, no need for I64u 17:02 hmmmm PRIu64 is part of C99 though, so we should probably use that. 17:05 hmmmm of course.. inttypes.h is not available on windows 17:06 celeron55_ i wonder why windows hasn't already been sued to death because of harming programmer's health 17:07 hmmmm it's not too bad, what you need to do is #ifdef _MSC_VER #define PRIu64 "%I64u" #define PRId64 "%I64" #else #include #endif 17:09 hmmmm by the way, i don't know if anybody pointed this out to you before or not, but the # in preprocessor needs to be the first character of the line as per the C standard, it's technically invalid if it's been indented. 17:09 hmmmm i don't know of any compiler that strictly follows those rules, however, and you already indented the hashtag, so I followed suit 17:09 celeron55_ i don't think any of the compilers we support has problems with that 17:09 darkrose http://code.google.com/p/msinttypes/ <- could be useful 17:11 celeron55_ we don't need even 2% of that, but could be a reliable source for checking things are done right 17:24 RealBadAngel i made some fried apple pan cakes 17:24 RealBadAngel anybody want some? :) 17:25 hmmmm no 17:26 RealBadAngel theyre tasty, believe me :) 17:27 sfan5 i would like a faster computer to compile linux 3.8-rc4 17:27 RealBadAngel hehehe 17:28 sfan5 i just want to try out f2fs :( 17:28 RealBadAngel i afraid i cant make one out of just flower, milk, eggs, sugar and apples ;) 17:29 thexyz oh, please, →#minetest 17:29 RealBadAngel slight oftopic, sorry 17:29 hmmmm sfan 17:29 hmmmm did you see my patch for you 17:30 RealBadAngel hmmm, have you moved also caves to another file? 17:30 hmmmm no 17:30 RealBadAngel uff, i got patch for them 17:31 RealBadAngel based on your avg height idea, but just more points to get it (you know where) 17:34 hmmmm i didn't want to continue using that method 17:34 hmmmm it fixes things to an extent but it doesn't solve the core problem 17:36 RealBadAngel have any better idea to make cavegen stop to generate caves on any height? 17:37 RealBadAngel by now you can go at y=30000 and theyre still there generating 17:37 celeron55_ it's still not really about the height, it's about what it replaces :P but if it's the one that disables them above the maximum of a chunk, it's acceptable (until we have floating islands, which again makes it unusable) 17:38 celeron55_ (because you want occasional caves in them too) 17:39 RealBadAngel so maybe simply let caves replace only basic nodes 17:39 RealBadAngel like stones, sand, etc 17:39 hmmmm that already happens 17:39 hmmmm but the problem is the overlapping bits 17:39 RealBadAngel but they do destroy everything 17:40 RealBadAngel all stuff generated with mapgen 17:41 RealBadAngel and this is not makin world look any better. it looks ugly 17:41 celeron55_ i have already said this, but will say again: the right solution currently is to disable the cave generator in places that both 1. are generally on top of the ground and 2. are inside the xz borders of the not-yet-fully-generated area 17:42 celeron55_ because that is where the trees get busted 17:42 celeron55_ eh, s/inside/outside/ 17:42 RealBadAngel avg height was supposed to solve 1. 17:43 celeron55_ the caves need to only be disabled if 1 && 2 17:43 celeron55_ certain features of the world depend on caves getting generated if 1 and !2, or if !1 and 2 17:44 RealBadAngel but they do generate inside trees. removing they trunks, cut holes in leaves, placin there blobs 17:44 celeron55_ are you aware that limiting the caves by the maximum of a chunk does not get rid of all of the tree chopping? 17:44 celeron55_ we really have two problems in here 17:45 celeron55_ one is chopping of trees, one is caves going far above the ground 17:45 RealBadAngel i already posted onve patch that solved all the issues 17:45 RealBadAngel all of them 17:45 celeron55_ yeah sure, disabling caves gets rid of all cave problems 17:45 celeron55_ it's not a solution 17:45 RealBadAngel no, they were still there 17:45 RealBadAngel even was makin holes in the ground or cliffs 17:46 * celeron55_ will not argue this same discussion again 17:46 RealBadAngel i will try to make that code even better and post it again 17:47 celeron55_ don't overwork on it unless you know it's going to be good; wasted coding isn't fun 17:48 RealBadAngel those are not big changes 17:48 RealBadAngel just bunch of skip conditions in right place 17:50 RealBadAngel btw i will apply seed changes to trees with next patch 17:51 PilzAdam why not in the current patch? 17:51 RealBadAngel because this one was ready 1 week ago 17:51 RealBadAngel and wasnt posted before it was tested 17:52 RealBadAngel ive changed style of pushin. 17:52 RealBadAngel im not pushing anything before im not 100% sure its ok 17:53 PilzAdam you still dont use branches? 17:53 RealBadAngel of course i do 17:53 RealBadAngel but not using github 17:54 celeron55_ has somebody tested these? https://github.com/celeron55/minetest/pull/436 17:54 celeron55_ other than this guy who just joined 8) 17:54 RealBadAngel lol 17:54 doserj heh 17:55 PilzAdam celeron55_, ive tested the first 3 commits 17:55 celeron55_ hmm, i think the fourth might be not good 17:56 celeron55_ consider this: you launch minetest, edit and save config, shut down minetest 17:56 celeron55_ edit = add an option 17:56 celeron55_ currently, changed configuration is just changed in there and you addition stays intact 17:56 celeron55_ after that patch, your addition will be removed; as far as i understand 17:57 RealBadAngel celeron55_, we have talked once bout mapgen spikes, you remeber? 17:57 doserj celeron55_: i currently also removes it if you happen to change a different one 17:57 RealBadAngel http://realbadangel.pl/spike.png 17:57 RealBadAngel one example of those 17:57 celeron55_ RealBadAngel: as if i hadn't seen them; talk to hmmmm or somebody; i can't and won't handle everything 17:58 RealBadAngel i know, but such spike looks just ugly 17:58 celeron55_ (the spikes are a real bitch in v6 if you try to tune it to do something different) 17:59 RealBadAngel is it perlin bug? 17:59 celeron55_ it is not a bug, it is a glitch 17:59 celeron55_ doserj: umm? 18:07 doserj celeron55_: it would only keep your addition if you didn't change some setting in minetest 18:08 doserj or did i read that code wrong? 18:08 celeron55_ so it does already overwrite the whole file out of memory if it updates something? 18:08 celeron55_ hmm, well then your commit is fine i guess 18:11 doserj celeron55_: it keeps most of the file intact, like comments, etc, but it only keeps actual settings in the file, if those are also in m_settings. 18:11 celeron55_ merged thoes ones 18:11 celeron55_ those* 18:11 celeron55_ doserj: can't remember everything; it was one of the first things i wrote in this whole project 8) 18:11 doserj if you are in a mood to merge stuff: https://github.com/celeron55/minetest/pull/439 18:11 doserj celeron55_: np 18:12 doserj :P 18:14 celeron55_ have you tested for liquid-liquid and liquid-glass and liquid-leaf glitches? 18:17 doserj it doesn't draw faces for liquid-liquid, it does draw for liquid-glass 18:17 celeron55_ does it introduce any changes regarding to those? 18:18 celeron55_ i don't care if there are no changes, but a change could be either good or bad 18:21 doserj i didn't change anything for that. basic check was (and still is) draw a face if !same_liquid && !(solidness == 2) 18:22 iqualfragile can someone explain the mapgen-thing to me? what hammened? 18:22 doserj except for top-sides, which are also drawn if the top neighbor is solid 18:23 doserj (still, as before) 18:24 celeron55_ thexyz: i linked http://translate.minetest.ru/projects/minetest/core/ on dev.minetest.net 18:24 thexyz fine, now we need some forum thread 18:25 celeron55_ more specifically, here http://dev.minetest.net/Translation 18:28 doserj celeron55_: but wait, there may be an issue 18:55 celeron55_ https://github.com/celeron55/minetest/pull/426 18:55 celeron55_ ^ this'll have to wait until i have time for a thorough check 18:55 celeron55_ modifying on-disk map format is a bitch if something goes wrong 8) 18:56 doserj yeah 18:57 Calinou new comment just now ;-) 18:59 doserj celeron55_: there seem to be quite some things to work out for liquid faces. for example, liquid sources currently don't draw interiour faces against glass, but they do draw the exterior ones. my patch for flowing liquids draws interior faces exactly when the exterior face is drawn. 19:00 celeron55_ umm... what is an inferior and exterior face? 19:00 celeron55_ ...interior 19:00 doserj interior is what you see when the camera is inside the node, looking outwards 19:01 celeron55_ ah... well, you'll immedialy run into z fighting problems if you try to draw the interior face that touches glass behind it 19:02 celeron55_ basically you need to choose which one, and the glass is the important one in that case 19:03 celeron55_ -> interior faces should be drawn only when facing air 19:03 doserj ok, i will have to change my patch then for flowing liquids 19:04 doserj well, air and things like signs, torches, etc 19:04 celeron55_ there probably are some fancy ways of doing that (at least with shaders), but they are probably out of scope of this patch 19:04 celeron55_ yes... umm... whatever the term for that would be 19:04 doserj not quite related: what is the intended status of new_style_water? 19:05 celeron55_ things that mostly contain air at their node boundaries 19:05 celeron55_ it's to be removed and the thing done in shaders is to be moved to a mesh generation post processing stage 19:06 celeron55_ somehow 19:06 celeron55_ well, that's a plan - i'm not 100% sure it's viable 19:06 celeron55_ should be 19:07 celeron55_ point is, we want (at least i want) that water source surfaces use the smooth lighting and simple tessellation that regular node surfaces have 19:08 celeron55_ so the main surface should come from from where regular node surfaces come, but it should be postprocessed to be lower where applicable 19:09 doserj ah, makes sense 19:09 celeron55_ so it would be a bit like this in here https://github.com/celeron55/minetest/blob/master/src/mapblock_mesh.cpp#L1090 19:12 celeron55_ probably a flag needs to be added to this list, like MATERIAL_FLAG_WATER_TO_BE_LOWERED: https://github.com/celeron55/minetest/blob/master/src/tile.h#L169 19:12 celeron55_ s/WATER/LIQUID/ 19:12 celeron55_ or... something 19:12 celeron55_ the data path is there, it just needs to be put to use 19:13 celeron55_ (that is a good starting point in this large a codebase...) 19:13 celeron55_ of course, feel free to find out it's not doable and find some other solution 8) 19:32 thexyz celeron55_: german translation is completed, ># Your branch is ahead of 'origin/master' by 9 commits.; will you bitch about number of commits? ^^ 19:34 thexyz the problem with rebasing is that those commits are made by different people 19:34 thexyz squashing^ 19:36 PilzAdam thexyz, maybe mention the authors in the commit message 19:38 thexyz dunno, i'm not sure whether squashing will break something or not 19:38 thexyz so i'd better just push what is here 19:55 doserj celeron55_: one more thing: liquid sources currently don't draw any face against liquid sources of a different liquid. my patch does draw these faces for flowing liquids. 19:57 celeron55_ liquid sources are generically handled as solidness=1, right? 19:57 doserj liquid sources are handled in makes_face(), depending on difference in solidness and visual_solidness. flowing liquids are handles in mapblock_mesh_generate_special() 19:58 doserj yes 19:58 celeron55_ i think there is a comment about this case in there 19:59 doserj this: TODO: Add 3: Both faces drawn with backface culling, remove equivalent ? 19:59 celeron55_ ah, the comment is at... yes, that one 20:01 celeron55_ maybe that should happen when two different (that are also different liquid) solidness=1 nodes make a face in between (that is, there would be two faces, so that from each liquid you will see the other liquid at the face) 20:03 celeron55_ it's a bit laborous to implement; getTileInfo's handling of face_contents has to be extended, as well as getTileInfo's interface, as well as updateFastFaceRow that uses getTileInfo 20:03 celeron55_ and it has to be fast 20:04 doserj to start with: if (contentDiffers && f1.solidness == 1 && f2.solidness == 1) return 3; 20:04 doserj in makes_face()? 20:05 celeron55_ you mean face_contents? 20:05 doserj erm, yes 20:06 celeron55_ i guess something like that (dunno about visual_solidness; it's handling will probably have something to do with flowing liquids (they are solidness=0, visual_solidness=1 IIRC)) 20:07 celeron55_ if they are so, they should work out fine with that logic 20:07 celeron55_ ...maybe 20:08 doserj solidness=0, visual_solidness=0 for flowing liquids. 20:08 doserj visual_solidness=1 for glass and leaves 20:09 celeron55_ hmm, i wonder why it is so 20:09 celeron55_ well, better not fiddle with that, there is likely a reason 20:10 celeron55_ that probably has something to do with some face-making priorities 20:11 doserj face_contents basically says draw the face with the bigger solidness 20:11 celeron55_ it's funny how everything starts seeming like sheets of paper instead of solid cubes when you think these things 8) 20:12 celeron55_ yes; originally it did just that 20:12 celeron55_ then it has bloated up a bit 20:12 doserj and then adds some special cases 20:19 hmmmm the spikes thing... that's a big WONTFIX 20:20 hmmmm it's hard to prevent and the occurance of them is rare, some people might even find them interesting 20:20 hmmmm sorry RBA 20:20 celeron55_ more like CANTFIX, with the clause: one is free to try, but it will likely only cause his head to explode 20:21 celeron55_ hmmmm: they're a PITA if you want to try to make v6 to make large mountains - but it isn't designed for that anyway 20:21 hmmmm celeron, if you'd like v6 to make large mountains it's as easy as modifying the offset and scale of terrain_higher 20:21 hmmmm i've tried it before and i must say the results are neat 20:21 celeron55_ i tried it for multiple hours and i must say nope 20:22 hmmmm what, tried different settings? 20:22 celeron55_ you did try to also make them very wide? 20:22 hmmmm no 20:22 celeron55_ different parameters, those stored in map_meta.txt 20:22 celeron55_ i tried to make that happen too 20:22 hmmmm you didn't like the results? 20:22 hmmmm i thought it was cool. 20:22 celeron55_ it just doesn't work; every large wide mountainy mountain ends up having spikes on top of it 8) 20:23 celeron55_ or on the sides of it 20:23 hmmmm oh yeah 20:23 celeron55_ depends of things 20:23 hmmmm i know what you mean there 20:23 hmmmm i've seen that 20:23 hmmmm in order to fix that i think you'd have to modify the noise for the steepness 20:23 celeron55_ the steepness factor and the level selector noises are really hard to control 20:24 celeron55_ really we'd need a generator that allows modifying the parameters of a noise with other noises 20:24 hmmmm inception 20:24 celeron55_ it's how the generator of Ternadim works 20:24 celeron55_ and how some 0.2 minetest worked 20:24 hmmmm never heard of Ternadim 20:25 celeron55_ i'm getting you a screenshot if my connection permits 20:25 hmmmm you have DSL... how bad can it be? 20:25 celeron55_ very bad 20:25 hmmmm :/ 20:25 celeron55_ http://i.imgur.com/fhMq5.jpg 20:25 celeron55_ a bit old, but anyways 20:25 hmmmm this is 0.2 minetest or ternadim? 20:26 doserj ok, pushed an update for the interior faces of flowing liquids. faces between liquid sources of different kinds will have to wait (at least until tomorrow). 20:26 celeron55_ ternadim 20:26 celeron55_ it's an in-development RTS game by me 20:26 hmmmm which noise parameters have you actually modified with noise? 20:26 thexyz celeron55_: will you comment on that translating issue? 20:26 celeron55_ glorious closed source 20:27 hmmmm ahh this is the simpler game you were talking about 20:27 celeron55_ hmmmm: it's useful to modify at least the persitence 20:27 celeron55_ offset may be too, to get some very large or very small scale variation on top of some middleway octaves 20:28 hmmmm that's useful 20:28 hmmmm i'm going to have something like that for v7 20:29 celeron55_ really locking to "octaves" is an arbitrary limitation too - the difference in the used noise scales applied together to form perlin noise could be anything instead of 2x 20:29 hmmmm i think it'll definitely reduce the "seen it before" factor one experiences when generating new land in minetest 20:29 celeron55_ it's really hard to make unpredictable terrain predictably 20:30 celeron55_ you need to take huge samples to make sure you're maybe getting what you want 8) 20:30 celeron55_ it's a skill to do it in large scale without sampling results so much 20:30 celeron55_ an another limitation we/you are going to face is that 2d noise can't make interesting cliffs; it requires 3D 20:31 celeron55_ dunno how that could be handled 20:31 hmmmm i disagree there 20:31 hmmmm i think i can make neat cliffs with 2d 20:31 celeron55_ you can only prove me wrong by actually doing it 20:32 hmmmm i have some ideas on how to make that happen, but i need to do other stuff first 20:32 hmmmm which really isn't too much more now that i think about it 20:32 celeron55_ one thing i know for sure is that 3d noise is a silver bullet for interesting cliffs 20:32 celeron55_ it really is 20:33 hmmmm i believe you, i've seen it 20:33 hmmmm quite nice 20:33 celeron55_ if in trouble, just slap in 3d noise; done 20:33 celeron55_ 8D 20:33 celeron55_ computationally heavy, but it just does it 20:34 hmmmm i can generate an 80x80x80 piece in about 110ms 20:34 celeron55_ ...why do you even consider anything else then? 20:34 hmmmm because 20:34 hmmmm i think it's more challenging this way 20:34 hmmmm more interesting (to me) 20:34 celeron55_ there's no reason to take extra challenges; we're struggling to get results even without any of them 20:34 hmmmm (not to the end user) 20:35 * celeron55_ the producer 20:35 hmmmm the sooner i get done with the current stuff, the sooner i can get working on some really cool noise. 20:36 hmmmm nearly done with the Lua functions for the new perlin noise things 20:37 hmmmm who is the guy with the "set node range" lua function? was that plizadam? 20:37 celeron55_ yes 20:37 hmmmm i don't think that function is useful on its own 20:37 hmmmm it needs a "get node range" as well 20:37 hmmmm i should talk to him about that 20:37 celeron55_ sounds like a lua interface to voxelmanipulator 20:37 hmmmm yes. 20:37 hmmmm that was my original plan. 20:38 celeron55_ that has been on the todo lists since forever 20:38 hmmmm i was going to do it but someone did something that approximates it faster than i got to it 20:38 celeron55_ well, directly after "find out if it's of any real use" 20:38 hmmmm s/faster/sooner/ 20:38 hmmmm of course it is 20:38 celeron55_ also, please note that VM is broken by design 20:38 celeron55_ especially now for lua 20:39 celeron55_ it doesn't handle node metadata, and doesn't handle node constructors/destructors/anything 20:39 celeron55_ it's just fast and doesn't care about anything 20:39 hmmmm i don't believe that matters 20:39 hmmmm if you're setting bulk nodes, would you really care about metadata and that stuff? 20:39 celeron55_ there's kind of two levels of node manipulation in minetest - one is using them as plain data, and the other one is using them like game elements 20:40 celeron55_ maybe they should be clearly said to be so 20:40 celeron55_ to not cause confusion 20:40 celeron55_ well, that'll go in the lua documentation of VM, if that becomes to exist 20:41 hmmmm the VM i won't document 20:41 hmmmm i'm sure you understand it better and what not 20:41 hmmmm i just know how to use ie 20:41 hmmmm s/ie/it/ 20:41 celeron55_ there are two points in VM 20:42 celeron55_ 1) it allows copying node data between threads 20:42 celeron55_ 2) it allows constructing something from nodes (a bit faster than on a regular map), but most importantly it happens without lighting, and it can be then bulk-updated afterwards 20:43 celeron55_ (well, also heavy algorithms are faster on them, but it's kind of 2 again) 20:45 celeron55_ dunno if that was any news to anyone, but i had to say it anyway 8) 20:47 celeron55_ actually, 2 is doable without them too, but it's a bit messy 20:47 celeron55_ or... different 20:58 hmmmm how do i do a pull request for a specific commit? 20:59 celeron55_ make a branch that has only it on top of c55/master 20:59 celeron55_ now that i think of it, i've actually never made a single pull request 8D 20:59 hmmmm ugh that's a lot more work, i was hoping there was some github option 21:00 celeron55_ well, tbh, that isn't a lot of work 21:01 celeron55_ it implicitly makes sure the thing actually can be merged on master too 21:03 thexyz just send a .patch then 21:04 celeron55_ a patch is fine too; just go to your commit on github and append .patch to the page 21:04 celeron55_ it's like magic, except more magical 21:06 hmmmm alright, so i back up my directory i'm working with, checkout -b mapgen_factories, now what, git fetch upstream/master? 21:08 celeron55_ depends on what your initial state was, in detail 21:08 celeron55_ a branch that has many unrelatedcommits? 21:08 celeron55_ +space 21:10 hmmmm i want to set the contents of the branch 21:10 hmmmm oh wait, maybe what i do is checkout to master, and THEN do the checkout -b from there. 21:11 celeron55_ i'd maybe first fetch upstream, then branch from it rather than your stuff, and then cerry-pick the commit into it 21:11 celeron55_ yeah, branch -d mapgen_factories and start over like that 8) 21:15 hmmmm alright so i'm at the point where i have the latest code, and i'm on a new branch 21:15 hmmmm now i have to use "cherry-pick" or something along those lines 21:16 celeron55_ if you have a single commit to put in the branch, try git cherry-pick hashstuff 21:17 hmmmm i just did that 21:17 hmmmm alright 21:17 hmmmm so i think i'm good 21:18 hmmmm ah no i need to push to origin first 21:20 hmmmm alright great 21:22 hmmmm I did it 21:23 hmmmm so what's the point of the "followers" thing on github? i can't really figure it out 21:31 doserj you can "follow" users and "watch" repositories to see on your github homepage what they do 21:32 hmmmm https://github.com/celeron55/minetest/pull/441 https://github.com/celeron55/minetest/pull/442 21:32 hmmmm why would i bother with that 21:32 hmmmm i don't care what other people are doing 21:33 doserj it#s the social network thing. it's hip! all the cool kids are doing it :) 21:34 doserj but seriously, there are cases where it is useful 21:48 celeron55_ i use none of that 8) 21:49 celeron55_ but otoh, i guess people find it useful to follow my repo 21:50 celeron55_ can somebody make a pull request that doesn't compile? just for the kicks, as we have those fancy travis messages in there? 8)