Time Nick Message 00:01 hmmmm looks good 00:14 Exio a random offtopic question, is in C++ "if (something)" the same as "if (something != NULL)"? (and same for "!something" and "== NULL") 00:20 PilzAdam I noticed that the conlock in server.cpp:851 takes often over 30s when running in valgrind; is that normal? 00:24 sapier1 valgrind emulates memory access conlock is required for map transfer to client .... sounds reasonable 00:24 Warr1024 Exio: I think if(X) is the same as if(X != 0), which is the same as if(X != NULL) if you can assume that NULL == 0. 00:25 Warr1024 which is true on all platforms I'm aware of, but I'm personally not that confortable with that assumption. 00:26 sapier1 it's true for all minetest supported platforms ... I have learned that other platforms are not of interest in to core developers ;-) 00:26 Warr1024 works 00:26 PilzAdam sapier1, Minetest definetly uses it like this 00:26 hmmmm sapier, what other platforms are there where that isn't valid? 00:26 Warr1024 my general rule is that I use == NULL or != NULL explicitly unless I'm committing to a project that already makes that assumption. 00:27 hmmmm according to the C++ standard, the integer representation of NULL shall be equal to 0 00:27 sapier1 :-) some embedded architectures I know of where memory is organized by token 00:27 sapier1 we already figured out that NULL is implementation specific ;-) 00:28 hmmmm sapier, and are you using valid C++ on those architectures, or some derivative? 00:28 sapier1 of course ;-) as NULL is implementation specific it can be everything on a different architecture 00:28 Warr1024 is NULL == 0 part of the C++ spec, or inherited from C? 00:28 sapier1 it's not very common to be something different than 0 00:29 hmmmm grr 00:29 hmmmm this again 00:29 hmmmm i need to bust open the standard 00:29 Warr1024 I know there are a number of standards for C 00:29 Warr1024 I actually don't work with C++ much... 00:29 Exio my C++ skills are the same as my C ones 00:30 Exio so they are like, nothing :P 00:30 sapier1 no you don't need to as it's used this way everywhere in minetest there's nothing wrong with using it same way as already done 00:30 PilzAdam everbody stop talking arguing if NULL == 0 is C++ standard or not 00:30 Warr1024 I was just curious 00:31 Exio NULL means -1 00:31 Exio so, shutup all! ;P 00:31 Warr1024 in any case, the correct thing to do is probably just imitate the style of code you're modifying... 00:31 PilzAdam we had this discussion already and its completly nonsense 00:31 PilzAdam for Minetest: 0 == NULL 00:31 PilzAdam ^ there, you have you haver your standard 00:31 PilzAdam -r 00:32 sapier1 lol :-) standard ... tztz ... there are so many standards ;-) ... I'd prefere to call it a minetest convention 00:33 hmmmm Possible definitions include 0 and 0L, but not (void*)0. 00:33 hmmmm 5.2.10 Converting an integral constant expression (5.19) with value zero always yields a null pointer (4.10), but converting other expressions that happen to have value zero need not yield a null pointer. 00:33 hmmmm so let's see here 00:34 hmmmm says *IN THE STANDARD* that possible definitions of NULL include 0 and 0L, and then converting either of these integral constant expressions with value 0 00:34 hmmmm we get a null pointer 00:34 Warr1024 so null is zero, but not all zero is null :-) 00:34 hmmmm depends on how the type gets promoted in comparison 00:35 hmmmm so what about a float 00:35 sapier1 thats like the difference between infinify + infinity and infinity * infinity ;-) 00:36 hmmmm floats with a value of 0 need not yield a null pointer when they are demoted 00:36 hmmmm er 00:36 sapier1 floats are completely different to integer values ;-) 00:36 hmmmm that's a stupid example because i don't even think you can have a valid conversion from float to any pointer type 00:36 hmmmm yes, but it doesn't say anything about integer values, it just says "other expressions that happen to have value zero" 00:37 hmmmm so i guess the right answer depends on what "have value zero" means 00:37 sapier1 it's to late here to think about that fine differences ;-) 00:37 Warr1024 hopefully you're not on one of those platforms where 0 != -0 :-) 00:37 hmmmm also what is with you and your smileys 00:37 hmmmm are you really happy about the C++ standard or something? 00:38 hmmmm it does back up what i originally said btw 00:38 Warr1024 naw, I'm just not really trying to argue or anything. 00:38 hmmmm well you and sapier for that matter 00:38 hmmmm ;-) 00:38 hmmmm ;-) 00:38 hmmmm ;-) 00:39 sapier1 guy's it's just been a comment ... I didn't think about some keywords instantly triggering same discussion over and over again ... e.g. keyword security features 00:40 hmmmm worrying about the representation of NULL is not security 00:40 hmmmm just like worrying about copying fixed length strings with strcpy is not security 00:40 hmmmm it's just being pedantic 00:41 Warr1024 I've always just used NULL because I thought the point of having a NULL keyword was so that you didn't *need* to know what the value of NULL was... 00:41 hmmmm it's a leftover from K&R C, really 00:41 Warr1024 strcopy? shit, I use memmove... 00:41 sapier1 you started this discussion again .... security is completely unrelated to this matter it's just a triggerword to start another useless discussion ;-P 00:43 PilzAdam we should have a list of badwords that lead to endless discussions in this channel 00:43 sapier1 hmmmm worrying about strcpy with fixed string lenghts is security as it's addressing human factor not technical reasons 00:43 PilzAdam "NULL" and "security" will be in this list 00:44 sapier1 lol just because some guys always want to have root access everywhere ;-P 00:44 hmmmm char foo[32]; strcpy(foo, "barbar"); <----- oh hell we're all doomed 00:44 sapier1 as I said HUMAN FACTOR 00:45 PilzAdam well, Im going to sleep now; bye 00:45 sapier1 a developer never using strcpy will NEVER happen to use it in a security relevant matter 00:45 hmmmm i would when it's reasonable 00:46 sapier1 so you believe you're without failure ... congratulations I never met a person like you before ;-) 00:46 Warr1024 I just don't need my compiler bitching at me about which of the competing strcpy/strncpy/strlcpy replacements I should be using :-/ 00:46 hmmmm there are even better ways to fail without needing to use strcpy 00:46 hmmmm what compiler are you using? 00:46 sapier1 I thougth flaw was a inherited feature of humanity 00:47 sapier1 but something completely different 00:48 sapier1 mod management 00:48 Warr1024 OpenBSD's fork of gcc. Lots of added paranoia. 00:48 Warr1024 isn't that another one of those "danger" terms? ;-) 00:48 hmmmm focusing on security like openbsd isn't healthy 00:49 Warr1024 well that depends on how dangerous the world around you really is :-) 00:49 sapier1 warr1024 you should realize that minetest only will be used in perfectly safe environents with only trustworthy users ;-) always and forever of course 00:50 sapier1 -ironic 00:50 hmmmm openbsd doesn't get anything accomplished ever because of its paranoia, and it's actually counterproductive because the whole "security" reputation discourages people to speak out about flaws 00:50 Warr1024 sapier1: I run it under its own account on my OpenBSD server, seems safe enough. 00:51 hmmmm also, i doubt you're going to run OpenBSD with no other daemons 00:51 sapier1 yes ... most ppl will run it with normal user privilege 00:51 hmmmm once you install any 3rd party software, all of that "muh security" is gone 00:51 Warr1024 hmmmm: not all 00:52 Warr1024 a lot of security isn't about perfect code, but about mitigating risk. 00:52 sapier1 you only have to be more secure than the one next to you :-) 00:53 hmmmm that being said, wouldn't you be more productive in securing your environment if you were to isolate things? 00:53 hmmmm like uh.. jails? 00:53 Warr1024 yeah 00:53 hmmmm so my stance is this: 00:54 hmmmm if you'd like to focus your effort on smaller things that don't really make as much of an impact, that's fine and all, but do keep in mind that you'll never have the time or energy to do the big things that actually matter and you'll be perpetually catching up 00:54 hmmmm and this is why i use freebsd 00:54 hmmmm not openbsd 00:54 Warr1024 ah 00:54 hmmmm pcc sucks by the way 00:54 Warr1024 I tried Free for a while. 00:55 Warr1024 it was a bit too chaotic for my taste, especially around the 5.x releases. 00:55 hmmmm it's quite fast, and has at least some support from software vendors 00:55 hmmmm and it's modern 00:56 hmmmm i wouldn't dream of using anything else if i didn't have to 00:58 Warr1024 That's fine for you, I guess... 00:58 Warr1024 I'm not sure what the point of this discussion was, though. 00:58 Warr1024 I'm well aware of the fact that everyone has their own preferences for operating system... 00:59 Warr1024 either way, minetest runs just fine on both of them. 02:41 tucebrin can you delete this thread 02:41 tucebrin i dont want it lol 02:41 tucebrin http://forum.minetest.net/viewtopic.php?id=6029 02:41 tucebrin sfan5 thexyz VanessaE 02:41 tucebrin i cant delete it on my own 02:55 ShadowNinja tucebrin: That goes in #minetest. 02:55 tucebrin im banned there so we 02:55 tucebrin can you say i said so pl 04:15 hmmmm hrmm 04:15 hmmmm was i on drugs or something when i came up with the mapgenparam crap? 04:16 hmmmm or maybe i just didn't waste too much time coming up with the ideal solution back then 04:16 hmmmm i can't come up with a good idea on how to do this to fit with the current paradigm 04:17 hmmmm maybe it's a result of overgeneralizing things 05:19 kahrl hmmmm: what are the problems with it? 05:20 kahrl for the fixed_map_seed thing I guess you could rename it to seed and tell people to adjust their minetest.conf 05:30 sfan5 you should be able to set the seed while creating the world IMO 05:35 kahrl I agree with that, maybe set the other mapgen params too 05:36 hmmmm it's just too overcomplicated for what it is, very messy, and if i duplicate default noiseparams to avoid leaks, i'd have to handle exceptions bette 05:36 hmmmm beter 05:37 hmmmm what i'd really like to do is setDefault to the result of g_settings->get(blah), but that goes against the original design 05:38 hmmmm i can't just set the defaults before i call readParams() either, since i would need to know what kind of MapgenParams it is 05:38 hmmmm so like.... erm 05:39 hmmmm do i remove the mapgen default parameters from defaultsettings.cpp and have setDefaults() as part of the interface for MapgenParams? 05:46 hmmmm no this is stupid. it makes way more sense to just change Settings the way i need it to work 05:48 kahrl I don't quite get the exceptions bit. Can there be any exceptions other than std::bad_alloc when you duplicate NoiseParams? 05:50 hmmmm erm no i mean exception with getNoiseParams 05:50 hmmmm the NoiseParam duplication bit is what i was originally doing, but this would cause more memory leaks because of the current way i set mapgenparams 05:51 kahrl you could write proper copy constructors and assignment operators for all mapgen params classes 05:51 kahrl lots of code though 05:52 hmmmm oh noo we don't do operator overloading 05:52 hmmmm but yeah i could also do that 05:53 kahrl there's a bunch of operator=s in the code base already 05:53 hmmmm that's not too good but it's there 05:53 kahrl why? 05:53 hmmmm why is it not good? 05:54 kahrl I don't see what's wrong with it 05:54 hmmmm because it hides details that are very important that you normally wouldn't know are there 05:54 hmmmm operator overloading is only really good for things like vectors and matricies, and makes sense there 05:55 hmmmm it gets iffy when you have an assignment operator doing frees and what not 05:55 kahrl I don't like overloading stuff like + and so on but I don't see a problem with operator= and operator== 05:56 kahrl meh. when I see an assignment of an object in C++ I look if there's an operator= 05:56 kahrl it's not really hidden 05:57 hmmmm but look at the extra effort you have to put in to go and check if there's something weird going on with operator= that you didn't expect 05:57 kahrl well, when I write my own code there isn't anything weird (to me) 05:57 kahrl I have my own rule that structs don't have operator= but classes usually do (if needed) 05:58 kahrl and the operator= makes sure pointer members are duplicated and freed as needed 05:58 kahrl anyway, is there a reason these NoiseParams have to be pointers? 05:58 hmmmm you know, it's ironic, operator overloading's purpose is so that you can carry out an operation that you'd expect some class to have so it's more 'natural', but instead you need to watch out for overloaded operators so that it doesn't do anything weird that you don't expect which is completely contradictory 05:59 hmmmm is there? hrm 05:59 kahrl oh, because getNoiseParams returns a pointer 06:00 hmmmm because they're too big, in my opinion, to be types that are copied around everywhere 06:01 kahrl how often are mapgen params copied? 06:01 hmmmm you mean noiseparams 06:01 hmmmm hrmm.. 06:01 hmmmm probably a lot more than they really need to be, which is fine because they're just pointers 06:01 kahrl no, mapgen params 06:01 hmmmm mapgen params are never copied 06:02 kahrl then I don't see a huge problem making them not pointers 06:02 hmmmm some params in the mapgenparams are copied for quick reference 06:02 hmmmm alright let me think about this 06:03 kahrl ohh I see now that the defaults are duplicated in mapgen_v6.h and defaultsettings.cpp 06:04 hmmmm i just feel like such a trivial detail, getting and setting some parameters, is made complicated 06:04 hmmmm and it doesn't need to be 06:05 hmmmm so yeah, you have a point.. NoiseParams in MapgenParams doesn't really need to be pointers 06:05 hmmmm the MapgenParams being used is only ever destroyed when the map is destroyed so that wouldn't pose a problem for other things to keep pointers of them 06:06 kahrl but readParams will be terrible to change because getNoiseParams returns a pointer 06:07 kahrl which can be NULL 06:07 hmmmm i'm not as worried about that as i am the inconsistency that some noiseparams must be freed and others must not 06:09 kahrl that's not really different from how it is now, is it? 06:09 hmmmm but that's what i set out to fix 06:09 kahrl for the getNoiseParams/getStruct thing I would make it accept a pointer to the struct and return bool 06:09 kahrl (or s/pointer/reference if you like) 06:10 kahrl if you do that there won't be many NoiseParams left that have to be freed 06:10 hmmmm i would do that too but there was a reason why i didn't 06:10 hmmmm which i am trying to remember 06:13 kahrl I see a commented out delete[] buf in there 06:13 hmmmm if i were to do that, i would remove the need to use templates 06:13 kahrl maybe the original design allowed an arbitrary number of outputs? 06:14 hmmmm oh no, that was because i was trying to use new exactly like malloc() size i was returning a void * originally 06:16 hmmmm alright, i can't see why i didn't do this originally then 06:16 hmmmm maybe i wanted to keep the pattern of just foo = getSetting("bar") 06:21 hmmmm if i do this, i'd be able to keep everything else the same, pretty much 06:21 hmmmm but the "everything else" is crap and i'd like to recode that as well.. meh 06:24 kahrl sorry I don't have any good ideas for that 06:28 hmmmm my getStruct() could've been so much cleaner, if only Settings get functions had a parse counterpart 06:29 hmmmm actually i could probably do that, but what would be the point now.... it's already done and it works and there are more pressing issues 06:31 hmmmm #define getV3F(s) parseV3F(get(s)), so then you could also reduce duplicate work; foo = get(s); if (!foo.empty()) parse(s) else do other thing here; 06:31 hmmmm such as what is done in the EmergeManager constructor 06:33 RealBadAngel hi hmmmm 06:33 hmmmm hey 06:33 RealBadAngel have you seen pics i posted in #minetest recently? 06:34 hmmmm wow looks like F.E.A.R. 06:34 kahrl I don't like have too many #defines 06:34 hmmmm pretty nice.. i saw what you did with water, and that's great as well 06:34 kahrl having* 06:34 RealBadAngel im really gettin better with shaders i think ;) 06:34 hmmmm well, inline functions if you want to be C++y then 06:35 kahrl yeah because that #define would mean no other class could have a getV3F method 06:35 hmmmm wait, can you inline a method? 06:35 hmmmm non-static method 06:35 kahrl sure 06:35 RealBadAngel im standing now by one problem. how should i add normal maps for textures? 06:36 hmmmm shrug 06:36 RealBadAngel second "tiles" table? 06:36 kahrl RealBadAngel: do you have any hardware lights yet? 06:37 RealBadAngel kahrl, not yet. i do have sun and moon pos (+wind) but those are only for calculations atm 06:38 kahrl I see. Well you can't test or really do much with normal maps then, I think 06:39 RealBadAngel they work pretty well without lighting 06:39 RealBadAngel seen the pictures? 06:40 RealBadAngel ofc light would introduce extra depth, but still effect is amazing imho 06:40 kahrl hmm I can't really see much difference to HD textures but my eyes are bad, also probably because of the static picture 06:41 RealBadAngel well i can make screenshot with on/off 06:41 RealBadAngel so you can compare 06:41 kahrl that might help 06:46 kahrl Personally I won't use HD textures because they make the tiling of the same texture over and over much more noticeable. But I can see why people like them. 06:49 RealBadAngel im uploading images, hold on a sec 06:50 RealBadAngel this is BEFORE: http://i.imgur.com/ArG6EDi.jpg 06:51 RealBadAngel and this is AFTER: http://i.imgur.com/M0uiadg.jpg 06:52 kahrl it does give it more depth. But I'm still not convinced this couldn't be done by changing the texture :P 06:52 hmmmm ewww yeah 06:53 RealBadAngel please do note this is with made with just one normal texture for everything yet 06:53 hmmmm especially now that you have it side-by-side like that, the latter screenshot could be the same thing except with textures that have some sort of edge detection 06:53 RealBadAngel and fake lights 06:54 RealBadAngel when we got real light sources it will automatically use them 06:59 RealBadAngel back to normals: i think i will duplicate "tiles" table for them 06:59 RealBadAngel and then if defined, shaders will be able to use the normal maps 07:00 RealBadAngel do you guys agree? 07:01 kahrl what if a texture pack wants to add normal maps to default textures? 07:02 kahrl maybe it should just look for _normal.png 07:02 kahrl perhaps only if some setting in minetest.conf is enabled 07:03 kahrl would that work or is there a use case for using the same normal map for different textures? (and you don't want to have a hundred copies of the same normal map) 07:05 RealBadAngel this is what im doin right now 07:05 RealBadAngel same map for all 07:05 kahrl but that's just a test 07:05 RealBadAngel ofc but in most cases it works suprisingly good 07:05 kahrl it doesn't look right on the ores 07:06 RealBadAngel yup, but i tested water bump also 07:06 RealBadAngel this works better 07:07 RealBadAngel hmmmm, maybe check for _normal.png is better solution 07:07 kahrl imo graphical details shouldn't be specified in a mod 07:07 kahrl mods should provide 16x16 textures by default and a user can install a HD texture pack if they want 07:08 RealBadAngel lookin for normal file just will eliminate need to define 07:09 RealBadAngel well, it shall make the code also lotsa easier in fact 07:10 RealBadAngel kahrl, btw you were right about using just another texture would do the trick 07:10 RealBadAngel but 07:10 RealBadAngel only for static picture 07:11 RealBadAngel major difference you can see when MOVING 07:13 RealBadAngel game feels totally different. i think i need to record a video 07:13 kahrl ah, that's what I thought 07:15 RealBadAngel and im pretty happy with performance 07:16 RealBadAngel i do have rather low end machine, 1.8ghz, radeon hd 4670, 4gb of RAM 07:16 kahrl oh that's pretty nice then 07:17 RealBadAngel and linux drivers are way slower than windows one 07:17 RealBadAngel all this, plus 128x texture pack and water shaders, bump mapping and i do have 40fps 07:17 RealBadAngel also filtering x2 07:38 sfan5 this confuses me, is a map seed u64 or int 07:39 sfan5 nvm 07:39 sfan5 map.h:481: u64 m_seed; <- I guess that means u64 08:15 sfan5 oh yeah, sure; when I use gdb to debug the problem it works fine, without gdb it fails 08:25 * sfan5 just finished "World seed text field in Create World dialog" 08:26 Jordach \o/ 08:26 sfan5 it hashes the seed and uses the first sizeof(u64) bytes 08:27 Jordach just like fixed_map_seed 08:27 Jordach you should emulate that conf function 08:30 sfan5 -> https://github.com/minetest/minetest/pull/729 11:02 PilzAdam sfan5, https://github.com/PilzAdam/minetest/commit/714ecc5e27c2c01b0f3ce0ba626abb6baca9af13 12:08 sapier https://github.com/minetest/minetest/pull/724 only thing missing is windows zip support ... still I'd prefere to add minizip in a separate commit instead of bloating this one even more 12:11 sapier what's up to https://github.com/minetest/minetest/pull/677 scriptapi split I've update some minor changes but as far as I know there are even more recent branches, should I merge those one or is one of those to be merged? 12:15 VanessaE PilzAdam: can you put that common/build/survival --> minetest_game merge through btw? 12:23 PilzAdam nobody seems to object, so I guess its fine 12:40 VanessaE PilzAdam: it might be a good idea to investigate that ABM randomness issue at the same time, since this merge will affect pretty much everyone 12:50 PilzAdam http://dev.minetest.net/User:PilzAdam/Common_drop 12:51 PilzAdam ^ here is what I plan to do 12:52 VanessaE *reads* 12:53 PilzAdam "Revert the following commits in the engine:" = "Remove the common mods part of it" 12:53 VanessaE this looks fair to me. 12:53 PilzAdam now another core dev needs to agree... 12:54 VanessaE *nod* 12:54 PilzAdam and we also need to define what "Later" means 12:54 VanessaE weed it out before 0.4.8 maybe. 12:54 VanessaE (leave it in for 0.4.7) 12:55 VanessaE plenty of time for any game authors to tweak their build scripts. 13:09 sapier ok after adding even credits tab to formspec menu I don't have any idea what to polish :-) ... time to repair brakes of my car ... 13:10 diligent stfu sapier 13:11 PilzAdam diligent, ehm... 13:11 VanessaE diligent = landmine. 13:11 diligent thanks for blowing my cover -_- 13:11 diligent noooooooooooooooooooooooooooooooooooooooo 13:11 diligent ooooooooooooooooooooooooooooooooooooooooooooooooooooooooo 13:12 diligent oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo 13:12 sapier :-) landmine happens to become a running gag ;-P 13:12 Jordach and thats why LM is an ass to you guys 13:12 VanessaE [05-18 09:10] stfu sapier 13:12 VanessaE and this is why people are an ass to him. 13:13 VanessaE s/an ass/asses/ 13:13 PilzAdam Jordach, the reason for the ban was the "nooooooooo[...]" 13:14 Jordach okay, thats reasonable 13:53 RealBadAngel so, PilzAdam, only comments were "where are lights gone?" ;) 13:57 * PilzAdam still waits for a core dev to agree to this: http://dev.minetest.net/User:PilzAdam/Common_drop 14:01 RealBadAngel and you are askin me for this? 14:01 RealBadAngel you know that i was trying to crucify you for this to happen :P 14:01 PilzAdam well, you are a core dev 14:02 VanessaE bbl 14:02 * RealBadAngel turns on lotsa green lights around 14:02 VanessaE back in 3-4 hours 14:02 PilzAdam RealBadAngel, I take this as an agreement then :-) 14:04 RealBadAngel of course 14:04 RealBadAngel i just made another fine normal map 14:05 RealBadAngel i thought i can use kinda script to generate them but i was wrong 14:06 RealBadAngel it heavily depends on surface kind 14:06 RealBadAngel http://i.imgur.com/FfaimWn.jpg 14:25 PilzAdam done 14:26 PilzAdam anything else to do? 14:26 sfan5 *edits his build script* 14:33 PilzAdam someone can write something in the forum 14:35 sfan5 you? 14:35 PilzAdam yea 14:36 PilzAdam in General Discussion? 14:36 sfan5 which section if not "General Discussion"? 14:43 hmmmm ohhh so that's why sapier was talking about the file dialog boxes 14:43 hmmmm wow, fgsfg.... that is a lot of work, the next gen menu thing 14:44 PilzAdam http://forum.minetest.net/viewtopic.php?pid=90753#p90753 14:44 hmmmm sounds good 14:48 hmmmm oh yay he's cleaning up game.cpp too 14:49 hmmmm this is huge... and no doubt, people are just going to shove it under the rug, especially in the changelog 14:49 hmmmm "minor non-related gameplay tweak: added lua configuration of main menu" 15:01 RealBadAngel sounds non harm as for a revolution ;) 15:08 PilzAdam https://github.com/PilzAdam/minetest/commit/d7bb184be756d944917e1794802e5442444d9cde 15:08 PilzAdam ^ the "new" mod system that was discussed here 15:15 PilzAdam ooops, little bug fixed: https://github.com/PilzAdam/minetest/commits/modsystem 16:20 sapier hmm ok if this "new mod" system is settled now I'm gonna implement the configure world dialog in next_gen mainmenu 16:21 sapier hmmmm maybe changelog could be made a little bit more impressive by adding fileselect dialog, vertical labels, and (transparent) textlist formspec support too ;-) 16:22 sapier maybe not fileselect dialog as you can't open it from in game lua 16:38 RealBadAngel i implemented one normal per texture 16:39 RealBadAngel so every texture can have normal map now 16:39 RealBadAngel if its not provided, texture will be used and shown in old way 16:40 RealBadAngel i mean old one will be used 16:40 RealBadAngel if shader can find _normal.png it will automatically use it 16:42 RealBadAngel i have to make now over 700 normal maps for my texture pack 16:42 RealBadAngel and i do have like 10 of them rdy by now 17:35 Pentium44 darkrose, hi 17:35 Pentium44 are you here? 17:35 PilzAdam Pentium44, please no chit-chat here 17:35 PilzAdam use PM 17:36 Jordach Pentium44, /msg darkrose blah 17:36 Pentium44 ok 17:36 Pentium44 It was going to be on development be fime 18:43 hmmmm why does it seem like it takes longer to get into a game 19:11 hmmmm no matter what i try to do, i can't seem to get those nonvirtual dtor warnings 20:22 Exio /home/exio4/sources/minetest/src/mapgen_v7.cpp:107:9: warning: deleting object of polymorphic class type ‘Noise’ which has non-virtual destructor might cause undefined behaviour [-Wdelete-non-virtual-dtor] 20:22 Exio /home/exio4/sources/minetest/src/mapgen_v7.cpp:108:9: warning: deleting object of polymorphic class type ‘Noise’ which has non-virtual destructor might cause undefined behaviour [-Wdelete-non-virtual-dtor] 20:22 Exio like those? 20:23 Exio i just got spammer by those 20:23 PilzAdam Exio, everonye except hmmmm gets these warnings 20:24 Exio s/spammer/spammed/ 20:24 Exio k 20:42 Exio got even more warnings with clang 20:44 PilzAdam so, any comments on the "new" mod system: https://github.com/PilzAdam/minetest/commits/modsystem 21:12 iqualfragile PilzAdam: make shure you tell sapier about it, he will be happy 21:13 PilzAdam he already knows 21:17 hmmmm anyway 21:17 hmmmm i'll push the fix to my fork and have someone compile it from scratch and give me all of the warnings 21:42 hmmmm what the fuck 21:42 Exio wut? 21:42 hmmmm i don't keep up with minetest for 2-3 weeks and it's noticably laggier, and loading textures takes 50x longer 21:42 hmmmm who did this 21:42 hmmmm not funny 21:44 sapier I've already implemented modmanager and gamemanager the way pilzadams changes make it official 21:45 sapier there have been some ppl recently complaining about performance degration but obviously noone was anoyed enough to investigate 21:46 hmmmm so other people have noticed it aside from me? 21:46 PilzAdam I havent noticed anything 21:48 sapier I've heared someone else complaining a week ago 21:48 sapier I don't exactly remember who 21:49 hmmmm well, at least the texture loading, why is that so much slower? 21:49 hmmmm to my understanding nothing at all was changed there, aside from the progress bar that was added while they're being loaded 21:49 PilzAdam maybe because of the FPS limit? 21:50 sapier maybe the progress bar update is implemented sub optimal? 21:54 PilzAdam is it a bit faster with menu_clouds = false ? 21:54 PilzAdam dunno 21:59 VanessaE hmmmm: it's the texture extrude code that's the hangup, or at least that's been the issue in the past. 22:03 hmmmm 4247ms with 22:03 hmmmm erm, so wait a minute, why can't i turn off preload item visuals 22:03 hmmmm it keeps getting reset to 1 22:04 PilzAdam are you sure that Minetest is closed while editing minetest.conf? 22:04 hmmmm yeah nevermind, pebkac.. there was another preload item visuals line in the conf 22:04 PilzAdam there is also a checkbox in the settings tab 22:05 hmmmm oh boy, an exciting poop colored brown background when menu clouds are disabled 22:06 hmmmm with menu clouds disabled, the load still takes about 4.2 seconds 22:07 VanessaE hmmmm: you wanna really see how bad it gets, try it with any big texture pack (sphax, HDX, minetoon, whatever) 22:07 hmmmm it's not the load screen stuff that's the problem 22:07 hmmmm not that i thought it was anyway 22:07 PilzAdam the only huge difference can be achieved by changing preload_item_visuals 22:08 PilzAdam and if you have it off then it should load fast 22:09 VanessaE http://digitalaudioconcepts.com/vanessa/hobbies/minetest/images/menu_overlay_minetest.png <-- PilzAdam, suggestion for the default menu overlay for minetest_game 22:09 VanessaE (background is transparent so that clouds will show through) 22:09 PilzAdam ehm, no? 22:10 PilzAdam it should use the header from minetest.net 22:10 PilzAdam also the header should be in menu_header.png, not in the overlay 22:11 PilzAdam I also dont know what is wrong with clouds only? 22:11 kahrl it looks a lot like the minecraft menu 22:11 VanessaE kahrl: it's inspired by one that cisoun did, I suppose it looks similar to MC, but wasn't meant to be 22:12 VanessaE PilzAdam: because plain clouds are boring and we always used to have some kind of little graphical identifier, but whatever. the image is there if you change your mind. 22:12 Exio i like it 22:14 sapier did anyone test current formspec menu? And if any known issues? 22:15 PilzAdam is it rebased against current master? 22:16 PilzAdam ok, it isnt 22:16 sapier of course not ... lol I don't rebase once an hour ;-) but I've rebased after out last talk 22:17 PilzAdam ok, I got an empty formspec with only the tab buttons and lots of error messages in the console 22:18 sapier atm it's 8 commits behind master 22:18 sapier can you post the error messages? 22:18 PilzAdam /builtin/mainmenu.lua:865: attempt to concatenate field 'current_tab' (a nil value) 22:20 sapier strange 22:20 sapier ok found it 22:20 PilzAdam why do you create the new main_menu_tab setting in minetest.conf if there is already selected_mainmenu_tab? 22:20 PilzAdam also line 676 add "or 1" 22:21 sapier because I didn't know side effects of the old setting 22:21 PilzAdam sorry, but it looks like shit in fullscreen mode 22:22 kahrl side effects? 22:22 sapier no 1 is wrong its text 22:22 sapier main_menu_tab is a text identifyer 22:22 kahrl hmm 22:23 kahrl use selected_mainmenu_tab and if the text is not found default to the first tab 22:23 sapier it's a matter of decision formspec scales to screensize atm 22:23 PilzAdam well, it just doesnt look good 22:24 PilzAdam I like the idea of having a formspec based main menu, but if it looks like this then its better to keep the current one 22:25 sapier I don't have any idea what you're talking about in window mode differences are next to none ... fullscreen mode ... no idea how it looks like there but I'm sure it can be fixed too 22:25 PilzAdam no difference? 22:26 sapier the only difference I know is tab buttons 22:26 * PilzAdam takes screenshots 22:28 sapier << waiting for screenshots 22:35 sapier pilzadam? 22:37 PilzAdam https://www.dropbox.com/s/1t19palzhedzavz/Small.png 22:37 PilzAdam (ignore the Minetest header) 22:38 sapier oops faourites shouldn't look like that "show public" is missing due to curl support atm 22:39 sapier except of tab and the completely redone aadvanced tab I don't see any other difference 22:40 PilzAdam https://www.dropbox.com/s/1ghsn386ez9rjgq/Big.png 22:40 sapier hmm i18n is missing too ... maybe we should think about adding lua i18n by default 22:40 PilzAdam the second one says it all 22:40 VanessaE sapier: eugh... that menu is way too big now, it'll break some menu overlays I expect. 22:40 VanessaE (it does look nice though, don't get me wrong) 22:41 sapier no problem size is tweakable ... and I guess I'll be able to add forced size formspecs too if you don't like menu scaling to big screens ... I personaly don't even think this is bad 22:41 PilzAdam also I dont know what you do with all the icons (game filter and credits tab), but they look very ugly 22:42 VanessaE PilzAdam: that's due to nearest-neighbor scaling most likely 22:42 sapier they are scaled to the size given ... most likely I didn't hit the native size 22:42 VanessaE why the engine doesn't use at least bicubic everywhere that it can stumps me 22:44 kahrl I don't think bicubic looks good on cartoonish icons 22:44 sapier ok so current issues are: 1) lock size of formspec even on big screens 2) fix favourite textlist 3) fix iconsizes 4) fix menu height ... guys you are aware that main menu is completely customizaben now are you? games even could add their own menu ;-) 22:45 PilzAdam 5) add public server list 6) only show "/ " in topleft corner in singleplayer game 22:45 sapier pilzadam favourite textlist is somehow related to your favourites 22:46 PilzAdam 7) add support for menu_.png 22:46 sapier already supported 22:46 PilzAdam why dont I see the "MINETEST" header then? 22:47 sapier because I don't have any minetest game including any of those overlays ;-) 22:47 PilzAdam 8) some hint(s) what tab you have selected 22:48 PilzAdam 9) better tab buttons 22:48 PilzAdam (i.e. not the normal buttons) 22:48 sapier 8) already done + 9) wont fix 22:48 VanessaE sapier: install the overlay I just posted a bit ago ;) 22:48 PilzAdam 10) port field in "Server" tab 22:49 PilzAdam 11) translation 22:49 sapier formspec doesn't have tabs and will never have without complete rebuild which I can't do because of compatibility 22:49 PilzAdam then add some fake images or something 22:50 PilzAdam 12) fix scaling of icons (gamefilter & credits tab) 22:50 sapier won't help because I'm not a graphics guy any graphics done by me will look even worse 22:50 PilzAdam 13) why does it show 0.4.7? 22:50 sapier 12 is duplicate of 4 22:50 sapier because reading minetest version is not supported and this won't be added prior 0.4.7 ;-P 22:52 PilzAdam is it possible to have checboxes with a slidebar? 22:52 PilzAdam it could be used in the settings tab 22:53 sapier formspec doesn't have container support 22:53 sapier this can't be added without either creating a real mess or break compatibility completely 22:54 PilzAdam how would it be possible to create a full minetest.conf "manager" then? 22:54 sapier don't know but there will be a solution 22:55 kahrl why would adding tabs mean a redesign of the formspec system? 22:55 Exio because there is not a thing like the containers? 22:55 kahrl it doesn't have to be a container 22:55 sapier atm order of elements within formspec doesn't mean anything thus parsing is context free (as of element point of view) 22:55 Exio following what sapier said 22:56 PilzAdam tabs could just act like buttons 22:56 PilzAdam they just look different 22:56 sapier that's how they do now 22:56 PilzAdam why dont you give buttons the ability to look like tabs? 22:57 sapier a button can look like everything if you provide the correct images 22:57 kahrl the width of the tab buttons changes depending on font, font size and translation 22:57 kahrl so images aren't really useful 22:58 sapier to me a tab is a set of sheets with only one completely visible but all others only show their buttons 22:58 sapier thus it's a container 22:58 kahrl sure, but that doesn't mean it has to work that way internally 22:59 PilzAdam as I said, they can act like normal buttons and just look like tabs 22:59 sapier true but pilzadam doesn't seem to like the current button suggestion too ;-) 22:59 kahrl irrlicht's tab control is not a container IIRC 23:00 kahrl it just provides the buttons 23:00 sapier if you can explain to me how a plane can look like a submarine plz tell me 23:01 PilzAdam sapier, just add the Irrlicht tabs to the menu; when they are clicked just do nothing except sending a normal "button clicked" event to Lua 23:03 sapier hmm interesing idea ... might even work 23:05 sapier someone could help with i18n ... I don't have any idea how to integrate po files within lua 23:06 sapier pilzadam could you have a look at favourites menu and why it looks so strange for you? 23:08 kaeza sapier, about i18n, it would help to integrate sfan5's mod/lib/whatever 23:08 sapier I don't know much about it but maybe it would work 23:08 sapier I guess we need some generic support for po files as we do have translation there 23:09 kaeza that mod has a .po file reader 23:09 kaeza but would help to export gettext to Lua too 23:09 kaeza *gettext symbols 23:10 sapier sounds like what I'm looking for 23:10 kaeza to work with .mo catalogs 23:10 PilzAdam sapier, I have no idea about the favorite list 23:10 PilzAdam but its comletly messed up 23:11 sapier maybe data provided in curl mode uses characters interpreted as formspec field separators 23:11 PilzAdam it contains parts of the public server list and parts of my world list 23:11 sapier hmm or data generation has a bug 23:12 sapier I'll have a look once tested tabheader 23:12 PilzAdam also the Adress /port dont change when selecting on entry 23:13 PilzAdam it shows me this in adress field: "0/100 0.4.6 CDP Mine Art 1 (See http" and this in the port: "//jpappsvr01.dyndns.org/ for more details.)" 23:13 sapier if formspec is misinterpreted it's most likely to be skrewed up completely ... in local mode it works for me 23:13 PilzAdam (and also writes it to favoriteservers.txt) 23:14 PilzAdam btw: s/favourites/favorites/g 23:14 sapier I wonder what's the problem ... special chars are [;,# 23:16 PilzAdam I guess the problem is not formspec related 23:17 sapier it has to be something with formspec as the textlist is either not shown at all or errorneous set to transparente mode