Time Nick Message 00:00 RealBadAngel i know your problem is different than mine. i do have wires to follow 00:00 RealBadAngel or tubes, pipes etc 00:01 sapier it's another level as your graph only consists of positions where tubes/wires split or merge 00:02 sapier world has always 4 directions .... and this already is a limitation 00:02 sapier but as paths are optimized in last step it's quite fine ignoring diagonal movement 00:02 RealBadAngel look at this from another point of view 00:03 sapier which one? 00:03 RealBadAngel implement finding shortest path connectin two points 00:03 RealBadAngel simple graph 00:03 sapier it's already implemented 00:04 sapier but there is no simple graph 00:04 RealBadAngel then consider walkable nodes in radius around the graph 00:04 RealBadAngel kina tunnel 00:04 RealBadAngel *kinda 00:04 sapier this is an A* algorithm working best on single surface 00:04 sapier I implemented this for lua 00:04 RealBadAngel if it breaks, no walkable found at some point, mob will stop 00:04 proller hmmmm, first version mapgen_indev - ready, with other noise 00:04 sapier but this has some drawbacks for 3d maps as minetest 00:05 proller https://github.com/proller/minetest/tree/mapgenindev 00:05 sapier currently dijkstra is working quite fine if implemente in core 00:06 sapier but I'll implement A* in core too 00:06 proller hmmmm, ups. correct - https://github.com/proller/minetest/commits/scaleindev 00:06 proller pull ? 00:07 RealBadAngel i will implement bfs with remembering parent vertices 00:08 sapier hmm maybe you could have a look at pathfinding as it remembers parent node too but it has to handle cycles too so maybe it's not really matching your requirements 00:08 RealBadAngel thx to it all mesecons, pipeworks and technic stuff will be way faster 00:11 proller hmmmm, https://github.com/minetest/minetest/pull/549/files 00:27 * VanessaE is back. 00:28 VanessaE my conclusion with luajit: It's stable enough for the server to have run for several hours of normal operation, and is proving to be at least 2x as fast in general - worldedit really cooks now. 00:28 sapier hmmm .... seems ww3 just started ... or american army is practicing once again ... dificult to distinguish 00:29 VanessaE moretrees/plants_lib is notably faster, enough so that I can consider it safe to enable beech trees to replace the default ones 00:29 VanessaE sapier: I saw a couple of military helicopters (the bi-rotor kind) flying over Asheville, NC today. haven't seen such in many years 00:30 sapier I wonder why those trees gain speed by luajit 00:30 VanessaE sapier: because of my terrain analysis code. 00:30 VanessaE I suspect the snow mod would see a similar improvement 00:31 sapier so you read out data from map prior analyzin it? 00:31 VanessaE I bet landup and that rivers/canyons mod would really shine, too 00:31 VanessaE sorta, I select the part to read using find_nodes_in_area (or whatever the name was) and then iterate through it 00:31 sapier It'll only help if there isn't excessive usage of get_node set_node throughout the code 00:31 VanessaE comparing for elevation, humidity, and a whole host of other controls. 00:32 sapier ok this is improved by luajit quite well 00:38 RealBadAngel i ve heard that worldedit also got massive speedup 00:38 VanessaE yes 00:39 VanessaE 15000 nodes set to cobble in 1 second, 1 million in a minute 00:39 VanessaE //fixlight on that larger area takes about 3 minutes now. 00:39 sapier worldedit ... this is another candidate better done in core imho 00:39 VanessaE yes, indeed it is 00:40 VanessaE (I guess that VoxelManipulator code hmmmm is working on will be useful to that end) 00:40 RealBadAngel some freaks can cross the border imho 00:40 sapier and the file format is a mess ... it's a overcomplicated raw dump of map 00:40 VanessaE but until that is the case, we have to work with the Lue version. 00:40 VanessaE but let's not stray off topic 00:40 RealBadAngel but tests are showing that for most of mods luajit speedup will be enough 00:41 sapier I guess it'll result in even more badly done mods out there but that's no reason against adding it 00:41 VanessaE that which is badly done will be shunned by the community anyway 00:41 RealBadAngel good ones will work faster 00:42 RealBadAngel bad ones no one care, just remove 00:43 RealBadAngel it impact overall lua performance, effecting with smoother gameplay 00:43 sapier ok lets see if mod's like mobf benefit ;-) 00:44 VanessaE sapier: remember, don't try to exploit functions known to be buggy in the core, like what you said about entities before 00:44 VanessaE otherwise you won't see any improvement 00:45 sapier what exactly do you mean? I don't exploit anythin I just removed any bad code to gain performance I doubt there's much to gain by luajit ... remember I tried compiled code and even got performance degregation 00:45 sapier don't know what lua compiler did mess up 00:45 RealBadAngel propably you fucked up somethin ;) 00:46 sapier I hope luajit doesn't do as bad as 00:46 VanessaE sapier: well you've said before that lots of use of entities can send the server into an infinite loop/lock-up state 00:46 VanessaE I don't remember the details now 00:47 sapier I don't remember too there was a dtime problem but that's not related to number of entities and is fixed in between 00:47 VanessaE oh ok 00:47 VanessaE well in that case, go apeshit :) 00:47 sapier but lots of entities will slow down server of course as they need to be processed 00:48 sapier as well as lots of abm's slow down server 00:49 VanessaE right now I'm watching around 20 NPCs walking around in a small area, no appreciable effect on my server's CPU 00:49 VanessaE (jojoa1997's peaceful_npc mod) 00:49 sapier mobf won't have either 00:49 VanessaE server's doing 8-9% CPU right now 00:50 sapier I've added 50 agressive mobs (wich are worst to be) in test code and had mobf cpu times about 1-3% 00:51 RealBadAngel about lags: ive recalled funny series of youtube vids: http://www.youtube.com/watch?v=p24DuUUf-Ug 00:51 sapier but completely unrelated I've fixed the metatable problem celeron mentioned yesterday, hope this completes security 00:52 VanessaE server actually varies quite broadly though, from 7% up to 65% or so, depending on what's happening. A user signing on always seems to spike it 00:52 VanessaE but besides that, everything is smooth 00:52 sapier hmm I assume user signing on is map loading too 00:52 VanessaE possibly 00:53 VanessaE doesn't matter, not germane to this discussion :-) 01:52 hmmmm i think i fixed the black tree bug 01:52 VanessaE cool 01:52 hmmmm i don't know how i did it, but i did 01:52 VanessaE but now, everything under water or higher than +10 m is black, right? 01:52 VanessaE ;-) 01:52 hmmmm everything that's supposed to be black is black 01:52 VanessaE hehe 01:52 VanessaE just kidding 01:53 hmmmm almost done with it 02:38 hmmmm man why am i the only person who commits anything 02:38 VanessaE *looks at log* 02:39 VanessaE no, see? one by thexyz right there....one by pilzadam.....50 by you... 02:39 VanessaE oh wait, there's one by me buried three months down :D 02:39 hmmmm that clearly says authored 02:39 hmmmm it's the committing i'm talking about 02:39 VanessaE I was kidding :) 02:39 hmmmm oh, yeah, menulogo update 02:39 hmmmm :/ 02:40 VanessaE you're just that good - you're drowning out all the other, less-frequent comitters 02:40 hmmmm mmmmmm.. 02:44 hmmmm worked out all the kinks, https://github.com/kwolekr/minetest/commit/6e02eb47eb441a70346b49b768400a162fca7450 02:46 VanessaE cool 02:46 hmmmm for a xeon e3-1230v2, freebsd 9.1 x64, compiled with gcc 4.2.2 at -O1, updateLighting takes: 60-80ms in a chunk of open air, 31-39ms for a chunk of open ground, 5-8ms for solid stone, 16-22 for cavey underground areas 02:47 VanessaE what did it used to be before? 02:47 hmmmm lots of variance in the execution time... on average, though, i estimate it to be about 22x faster than the original implementation 02:47 hmmmm like 880ms 02:47 VanessaE wow 02:47 hmmmm 800-880 02:47 VanessaE (right, I forgot about the 800-odd value, you mentioned it before) 02:48 hmmmm makeChunk now takes about 90-110ms total, lots better than the 1 second thing 02:48 hmmmm overall, map generation throughput is increased by an order of 10 02:48 VanessaE very impressive 02:49 hmmmm unfortunately i cannot SSE optimize this like i thought i'd be able to, because of the recursive nature of the spread calculations... 02:53 VanessaE what's next on your agenda? 02:54 VanessaE to kick your ass for asking what's next. 02:54 VanessaE ;) 02:55 hmmmm uhh i had jungles in mind 02:55 hmmmm so i can cross that out 02:57 hmmmm so you guys think i should push that to upstream? 02:58 VanessaE well you know my opinion on the jungles 02:59 VanessaE but, as long as the trees are coded entirely in C++, I see no logical reason they can't be included 02:59 hmmmm you think jungles should feature the moretrees things 02:59 VanessaE no 03:00 hmmmm ? then what is your opinion on jungles 03:00 hmmmm my goal was to just bring the status of jungles back to what it was before they were removed for some odd reason 03:00 VanessaE I just figure I already had the concept covered with moretrees, I just didn't wanna see anyone go through a bunch of duplicate work is all 03:00 hmmmm by duplicate work you mean copying/pasting a couple lines and cleaning up some code 03:00 VanessaE heh well if it's that simple 03:01 VanessaE I got the impression it was a whole big chunk of code being added back in or something 03:01 hmmmm well it is 03:01 hmmmm i'm not re-writing it though 03:01 VanessaE ah 03:01 VanessaE well then go for it 03:01 VanessaE but do me a favor? 03:01 hmmmm what 03:01 VanessaE don't use default leaves. 03:01 hmmmm i don't really have a choice if this is going to be usable with minimal 03:02 VanessaE copy my jungle leaves nodes, or come up with some new ones 03:02 VanessaE hrm 03:02 hmmmm also i really don't want to start making new game content 03:02 hmmmm that's for everybody else 03:02 VanessaE well I don't mean new content so much as making them not look like they're just a variant of a default tree 03:02 hmmmm the jungle_wood block takes care of that... no? 03:03 VanessaE well for the trunk, sure (default:jungletree). The leaves is the only real hangup 03:03 VanessaE are* 03:06 VanessaE so I just propose a new node, default:jungleleaves, with a texture that's a variation on the default trees, say more yellowish, brighter. 03:06 hmmmm i'm just curious, moretrees has an individual sapling type for each tree, correct? 03:06 VanessaE yes, it has. 03:06 hmmmm okay great 03:07 hmmmm anyway if i'm going to add a new thing of leaves, i might as well add a new sapling for jungle trees... 03:07 hmmmm are jungle trees replaced by something already existing in moretrees? 03:08 VanessaE sorta 03:08 hmmmm 'sorta'? 03:08 VanessaE moretrees redefines default:jungletree -> moretrees:jungle_tree_trunk 03:08 VanessaE and removes default:jungletree from the node listings and creative inventory 03:08 VanessaE to avoid duplicates 03:08 hmmmm if not, i'd prefer for jungle trees to coincide with your trees 03:09 VanessaE but it's easy enough for me to tweak moretrees to coexist with the defaults. 03:09 VanessaE s/redefines/aliases/ 03:09 hmmmm also, do understand that when moretrees is actually added, it's going to have to be much more tightly integrated 03:10 VanessaE how so? 03:10 hmmmm it's not that i don't like having a separate mod as part of minetest_game, it's that things will become a mess if i don't 03:10 VanessaE OH 03:10 hmmmm i'm going to need to create those trees from within the map generator too eventually 03:10 VanessaE yeah I see what you mean 03:11 hmmmm i trust that, when the time comes, you'll work with me on modifying what's necessary, right? 03:11 VanessaE absolutely 03:11 hmmmm great 03:12 VanessaE my only concern is backwards compatibility, but that's trivial to maintain 03:13 hmmmm oh i wanted to ask you, do you think a portion of large underground caves should be filled with water instead of lava? because i really feel like there are too many lava caves, and the mass of lava really ruins some interesting large caves 03:13 VanessaE yeah, I think that's a good idea 03:13 VanessaE lava should be pushed further down, too 03:13 hmmmm the reason why i'm okay with modifying this is because it's part of the cave generation, not the map generation, really... 03:14 hmmmm well there'd be more lava caves the further down you go, is my idea 03:14 VanessaE that's fair 03:15 VanessaE "Windfarm Sickness Spreads By Word of Mouth" <--- bullshit :-) 03:15 VanessaE 03:15 hmmmm ha ha, 'bull shit' 03:15 hmmmm 'farm' 03:16 VanessaE ok, I'm about to pass out now from fatigue 03:16 VanessaE time to go try to sleep, back some time tomorrow 04:19 hmmmm VanessaE, you will probably be interested in this: https://github.com/kwolekr/minetest/commit/5298e4ad6fe0486be1021acdeb49ded025714751 04:21 hmmmm this commit is on the branch check_cave_placement, to apply, fetch kwolekr/minetest check_cave_placement and cherry-pick 5298e4ad - note there is a caveat - there will be some exposed ore that wasn't replaced because they didn't fit the cave placement whitelist - this is not a proper fix for 'mapgen griefing', but it should do well enough 05:29 thexyz i wonder how did sapier "compiled" lua 06:45 RealBadAngel thexyz, no idea :) 06:53 celeron55 luac 06:53 celeron55 it 06:53 celeron55 it'll output lua bytecode 06:53 celeron55 but it's exactly the same thing that lua will do anyway when you load a script 07:16 celeron55 by the way, RBA could test luajit on this: http://forum.minetest.net/viewtopic.php?id=4985 08:24 celeron55 could be tried in minetest: http://www.reddit.com/r/gamedev/comments/1ae4lw/screenshot_saturday_110_buffer_overflow/c8wjusq 10:39 RealBadAngel celeron55, http://pastebin.com/Q9s91ukt 10:40 RealBadAngel chasm works faster with luajit 10:57 celeron55 RealBadAngel: good 11:41 Birk In Minetest 0.4.5 is a german translation, but with many bugs. How can i help to improve it? 11:42 PilzAdam http://translate.minetest.ru/projects/minetest/core/ 11:42 Birk ok 11:46 Birk PilzAdam, In the translation all seems to be right, but in the Game, there are Buttons like "Sound Volume" and "Trash" 11:46 PilzAdam the "Trash" field cant be translated because its in Lua 11:47 PilzAdam and thexyz hasnt updated weblate yet so "Sound Volume" isnt there yet 11:48 Birk So some problems need a change in core program and a system called 0.4.5-german? 11:50 Birk I'll start some developing things when my Pc is fixed. 13:49 celeron55 https://github.com/celeron55/minetest/commits/modtranslate 13:50 celeron55 somebody needs to write a port of https://github.com/kaeza/minetest-intllib on this and put it in builtin 13:52 celeron55 and then we need to figure out a way to translate formspecs 13:54 celeron55 (assuming this way of doing stuff seems acceptable to people) 13:56 celeron55 as of how it works now, it will send every translation of a description to every client 13:56 celeron55 it could be made to work so that a client sends it's preferred language to the server and the server chooses the string to send based on that 13:56 celeron55 the low-level mod API stays the same 13:59 celeron55 that server-based choosing might be necessary for formspecs, but i'm not sure... it definitely would be 100% useful for choosing language for per-player chat output 13:59 VanessaE celeron55: kaeza's i18n lib seems to work well enough. 13:59 VanessaE (it is used in homedecor and a couple of others, to provide spanish and french) 13:59 celeron55 VanessaE: it cannot give different translations to different players on the same server 13:59 celeron55 which is our goal 13:59 VanessaE ah 14:11 celeron55 bah, i'm too lazy to implement language sending to the server 14:12 celeron55 well, i'll wait for hmmmm's comments in any case 14:12 celeron55 (well, not lazy, but i want to work on an another thing) 14:26 celeron55 hmmmm: any comments? 14:28 hmmmm No comments. 14:32 celeron55 i'm sure you have something to say 8) 14:32 hmmmm i'm just reading the backlog right now.. i assume you mean the tiered terrain in the reddit link? 14:33 celeron55 no no :P 14:33 celeron55 i mean the last hour 14:33 celeron55 altough you can comment that too 14:34 hmmmm it looks neat but i have a feeling that ultimately it would be too boring 14:34 hmmmm i could try it 14:36 hmmmm the i18n lib is a disaster 14:36 hmmmm trying to update that really screwed my package db up and i had to reinstall 14:37 celeron55 wtf are you now talking about :P 14:37 hmmmm the thing you were talking about an hour ago? 14:38 celeron55 wtf, kaeza's intllib screwed up... what? 14:39 hmmmm hmm he made the lib himself 14:39 hmmmm i figured it was libi18n or whatever it's called 14:39 celeron55 seriously, i have understood like under third of your messages so far 8D 14:40 hmmmm what happened was this: looking at the chat, i thought this feature was going to add another dependency to minetest, in particular one that is notorious for screwing up everything else because there are so many things dependent on it 14:41 hmmmm however i found this to not be the case, so nevermind 14:42 hmmmm it's just that the particular string of letters of numbers "i18n" brings me memories of pain 14:42 sapier I've done some performance comparisions for plain lua luajit compiled lua core and core release ... luajit results are quite impressive http://ompldr.org/vaHJ5dw/performance_comparison_pathfinding.pdf 14:42 celeron55 so, any senseful comments now? 8) 14:43 sapier does anyone have an idea why compiled lua does behave that bad? 14:43 celeron55 why would it behave any different; lua compiles stuff to bytecode always first when it runs stuff 14:43 VanessaE sapier: because "compiled" Lua just means tokenized, which is what Lua does when you load a file anyway 14:44 celeron55 luajit is pretty impressive in that one 14:45 VanessaE (what are "Core" and "Core Release" in your tables?) 14:45 celeron55 VanessaE: the correct question is "what are -O0 and Release" 14:45 sapier core is -O0 so no optimization at all 14:45 hmmmm so, comments on internationalization support for mods, without adding an additional dependency? sure, why not? it's not a priority for me, however, and i have other things to work on 14:45 celeron55 VanessaE: the answer is: they are optimization levels 14:45 VanessaE I got that, but what does he mean by "Core" at all? 14:45 VanessaE some function executed in C++? 14:45 hmmmm yes 14:45 VanessaE ok 14:45 sapier implementation of same algorithm in c++ 14:46 celeron55 hmmmm: so you don't want to decide at all on it - ok 14:46 celeron55 hmmmm: you do agree that internationalization of mods should be done so that each player can get stuff on their own language on the same server? 14:46 sapier simple is a simple path on surface direct movement no obstacles 14:46 hmmmm no no, i think it's great and all, i just don't want to be the one to do it 14:47 sapier comples is a smal labyrinth 14:47 hmmmm yes i agree with that 14:47 celeron55 ok; this shall be the base for that then 14:47 sapier and "far" is about 20 blocks y directions through mountains 14:47 celeron55 i'll work a bit more on this at some point if nobody else doesn't 14:48 sapier i18n for mods? great idea :-) 14:48 hmmmm you know, looking at this http://i.imgur.com/goqiVgS.jpg i'm thinking that pathfinding algorithm could be used for villagers when those get in eventually 14:49 sapier btw this is dijkstra only as I haven't ported A* to core by now 14:50 sapier A* is in many cases about 100 times faster (in plain lua) don't know if difference is that big in core but I assume it'll be a lot faster too 14:50 celeron55 isn't A* just dijkstra with a heuristic? 14:50 hmmmm yes 14:50 sapier yes therefor it'll work pretty fine on surface 14:50 sapier but very bad within buildings 14:51 celeron55 well, it's either same or better than dijkstra always 14:51 celeron55 only overhead can make it a bit slower in the worst case 14:51 sapier yes 14:51 sapier it's difficult to obtain benefit within buildings 14:52 sapier but very easy on surface I'll add A* either way in next step 14:53 celeron55 one good trick is to first try searching from both ends of the path towards the other, limiting to a few nodes 14:53 celeron55 that way you immediately know if the path is going to fail at near either end 14:53 celeron55 which is a common case of failing to find a path 14:54 celeron55 (like, if the target is in a small closed room) 14:54 celeron55 (few nodes being something like 10 or 20 iterations in A*) 14:55 sapier good idea I'll add this ... atm I'm focused on optimizing positive case 14:56 sapier it's implemented as 2 phase algorithm 14:56 sapier first step builds a local copy containing all possible block transitions and their costs 14:57 sapier second step tries to finde a way through this 14:57 sapier you can even see this division in results 14:58 sapier the more time first step requires the bigger core implementions benefit 15:58 whirm hi everyone 15:59 whirm how can I debug the minetest startup? I'm trying to run current master's head in awesome and it gets stuck after loading two textures 15:59 sapier gdb ./minetest 15:59 sapier after building a debug build 16:00 whirm http://pastebin.com/HYVt6XGq 16:00 celeron55 then hit ctrl+c in gdb's shell once it gets stuck and ask it something like "thread apply all bt" 16:01 whirm oh, that's weird, now it reacted 16:01 whirm after a cople minutes waiting... 16:01 whirm Ill run it again with gdb 16:02 sapier singleplayer or did you connect to an internet server? 16:02 celeron55 whirm: have you ran it in some other WM? 16:02 whirm single player, just ./minetest, no args 16:03 whirm I don't have any other WM in this machine right now 16:03 celeron55 if it's specific to some WM, then it's some kind of an WM-X-Irrlicht interaction problem 16:03 whirm let me build with debug info and print the bt 16:05 whirm do I need to pass the -g flag via CFLAGS or is there a cmake arg I should use? 16:06 celeron55 cmake . -DCMAKE_BUILD_TYPE=Debug 16:06 celeron55 or so 16:07 whirm ok 16:07 celeron55 it will put -g in there, remove some optimizations and make minetest not try to handle unhandled exceptions 16:11 hmmmm i did a lot on this http://dev.minetest.net/Mapgen 16:11 hmmmm :)!! 16:11 hmmmm comments, concerns? 16:11 whirm celeron55: http://pastebin.com/MPhYy5U0 <<-- doesn't look so informative :( 16:12 whirm I just typed continue and the minetest menu showed instantly 16:12 whirm hm..., if I switch tags (I go to the chat tag and back where the minetest window was) then it shows correctly 16:13 celeron55 what version is that? what is on main.cpp:1573? 16:13 PilzAdam hmmmm, isnt there "public:" missing in the example classes? 16:13 whirm it looks like it hangs until the window gets unmapped and remapped again or something like that 16:13 hmmmm probably the main menu draw sleep 16:13 celeron55 i guess it's either main.cpp:1605 or main.cpp:1686 of upstream master 16:14 hmmmm ahhh yes, thank you pilzadam, they are 16:14 hmmmm do you see any other errors in that code? it's completely untested 16:14 celeron55 whirm: what if you click in the window when it is in that "hanged" state? 16:14 celeron55 or something 16:14 whirm it's current master from https://github.com/celeron55/minetest.git 16:14 celeron55 that's old 16:14 whirm celeron55: let me try 16:14 celeron55 https://github.com/minetest/minetest.git is upstream 16:15 whirm oh 16:15 whirm let me switch to that then :) 16:16 celeron55 won't probably make a difference in terms of errors, but at least you'll have same line numbers as others 8) 16:16 whirm :D 16:16 celeron55 (maybe i should rename it so that people would notice it's just my personal fork) 16:17 celeron55 (no i won't, too lazy) 16:18 whirm ok, clicks won't make any difference, but if I switch tags it works instantly 16:20 celeron55 i wonder what "switching tags" means in terms of a regular WM 16:22 whirm celeron55: the window gets unmapped and remapped I guess (like minimizing and maximizing) 16:23 whirm like switching virtual desktops 16:23 whirm without compositing 16:24 celeron55 it seems to me that minetest is running perfectly normally in a menu 16:25 whirm http://pastebin.com/dCd7HbuL 16:25 celeron55 i be something that irrlicht does 16:25 celeron55 i'm relatively sure it must* 16:26 whirm this is after clicking several times to the black window and then interrupting the execution 16:26 celeron55 enter "n" in gdb and flood some tens of enter and paste the result :P 16:26 whirm XD ok 16:30 whirm http://pastebin.com/Uty6pht6 16:30 whirm I had to finish on some functions with no debug symbols 16:31 whirm so its a mix of n and finish :) 16:31 celeron55 regular operation from minetest's part 16:32 celeron55 something is messed up somewhere in awesome-X-irrlicht-gpu interaction 16:33 celeron55 can't really guess where 16:34 whirm :D ok, now at least I know it works if I switch tags :) 16:34 hmmmm awesomewm doesn't seem so awesome anymore 16:34 celeron55 can you try some other program that uses irrlicht? 16:34 whirm thamks! 16:34 celeron55 supertuxkart maybe 16:35 whirm hmmmm: its a bit rigid with buggy behaviours, java, old openoffice versions... 16:35 whirm ok, Ill try 16:35 celeron55 it's quite large to be solely used for testing but... anyway 16:37 whirm its downloading 16:37 celeron55 alternatively you could just run some of the examples from the irrlicht source distribution :P 16:41 whirm nah, I'm not in a hurry :) 16:42 whirm 3 minutes more of download :) 16:46 whirm celeron55: same behaviour with tuxcart, only the music plays in the background 16:46 celeron55 8) 16:47 celeron55 next stop: #irrlicht 16:48 celeron55 they might want to know in which version of irrlicht that has started to occur, if any 16:48 celeron55 at least minetest will compile fine with the 1.7 series, if you care to test 16:49 hmmmm he is using 1.7.4 if you read his pastebin link 16:49 celeron55 oh 16:49 celeron55 well, then maybe test 1.8 16:57 whirm well, if it some day I get irritated enough with this I will do it, for the moment Ill play a bit :), thanks a lot 16:58 celeron55 one thing that i notice is that google doesn't come up with any results related to this - i guess those using awesome don't play games or something 16:58 whirm hehe, could be 16:59 celeron55 but anyway, have fun playing then 8) 16:59 whirm I don't play many games on this machine either 17:00 Calinou " i guess those using awesome don't play games or something" who does that anyway? 17:01 thexyz who does what? 17:23 hmmmm elite hackers with 50 instances of vim running use awesomewm 17:23 hmmmm they are also likely to use gentoo or arch and have cmatrix running in at least 2 terminals at any given time 17:25 whirm hmmmm: I'm exactly like that, except I have bb running instead of cmatrix 17:25 whirm I also code virus in 3D while I dance ;) 17:26 hmmmm well.... this is awkward... 17:26 hmmmm good luck on hacking the gibson 17:27 whirm :D 17:57 ecube why would anyone want to waste two terminals on cmatrix 17:58 hmmmm why is the grass green? 17:59 PilzAdam hmmmm, wouldnt it be better to set an mapgen alias for stairs instead of adding the name directly to the code? 17:59 PilzAdam something like mapgen_stair_cobble 18:00 hmmmm would it? stairs aren't part of default 18:01 PilzAdam if a game doesnt define stairs:stair_cobble then there will be undefined nodes in dungeons 18:01 hmmmm i'll add a fallback to cobble block then 18:14 celeron55 the ultimate fallback should probably somehow be made to automatically be something more reasonable than content_ignore 18:14 celeron55 because ignore is such a PITA in the end result 18:15 celeron55 dirt might be a good final fallback 18:21 hmmmm or how about air 18:21 hmmmm (you know, something included in the engine?) 18:24 celeron55 well... that's ok too 18:25 celeron55 we should probably aim (in the *very* long term) to make the engine work without anything that even remotely resembles minecraft, like some specific ground types, so i guess air in that case is the only one that makes sense 18:25 celeron55 well, actually there are some problems in that goal 18:25 celeron55 like the lighting; it's quite specific to certain proportions and flat-ish ground and so 18:26 hmmmm i have a good idea for a non-minecraft-like game that uses minetest.. i'd do it but i have better things to do and i don't enjoy using lua either 18:26 celeron55 hmm, i wonder if that is a good goal 18:27 hmmmm what's the specific problem with the lighting? the range? 18:28 celeron55 the fact that you don't see anything if you have things blocking the way in anywhere in the Y direction... in some uses (like some space game), you don't want such global lighting 18:28 celeron55 or some caves-only game 18:28 * khonkhortisan installs cmatrix with the intent of running it every time a terminal opens 18:30 hmmmm oh... that's a shame... i deleted the bounceRay() crap that i was trying out before 18:31 hmmmm before, i was trying out a different strategy where you'd send rays of LIGHT_SUN in whatever direction, when it hits something where light doesn't propogate, it'd bounce in the two directions it didn't hit (for a y ray, it'd bounce in +-x, +-z) and then it'd bounce the next time it hits something, recursively 18:31 celeron55 maybe for such we should have different lighting modes, set in game.conf; one is "minecrafty sunlight", other is static global illumination to which light sources are added 18:31 hmmmm i thought it was neat, but for most above ground caves, it lit too much 18:32 hmmmm and it was slower than the revised recurse-through-each-light-propogating-node strategy 18:32 PilzAdam hmmmm, how great is the speed improvement in the last commit (optimize lighting)? 18:32 hmmmm on average 22 times faster 18:33 PilzAdam and the whole mapgen? 18:33 celeron55 what even was the bottleneck? 18:33 hmmmm celeron, your update lighting took 880ms 18:33 hmmmm plizadam, about 10x improvement overall 18:33 celeron55 i know 18:33 celeron55 but i don't know what made up for that sum 18:34 PilzAdam thats worth a new win build :-) 18:34 hmmmm how the frig is nearly a second NOT a bottleneck? 18:34 celeron55 ... 18:34 hmmmm pilzadam, hold up and wait for my jungle re-addition 18:34 celeron55 do i need to rephrase 18:34 RealBadAngel hmmm, btw, shouldnt you use lsystem jungle trees for that? 18:34 celeron55 i am wondering what particular part of the lighting code was so slow 18:35 hmmmm oh, 18:35 hmmmm i actually did look at each individual component, and they all took roughly the same time 18:35 RealBadAngel you can generate them from the engine easily, mod is not needed 18:35 hmmmm clearlightandcollectsources, propogatesunlight, unspreadlight, spreadlight all around either 70-130ms on their own 18:35 celeron55 i know that 18:35 hmmmm and then you looped it for the night bank 18:36 celeron55 that too 8) 18:36 hmmmm i am assuming it's pushing everything to that map of light_sources 18:37 hmmmm when i first looked at it, that was about a 750,000 items per iteration 18:37 hmmmm that's the biggest problem i'd say 18:37 hmmmm the other problem is the over-checking 18:38 hmmmm you make absolutely no assumptions in that code, you emerge all of it each spreadLight (iirc) which requires an O(n^3) loop, etc. 18:38 hmmmm you clear light when it's already initialized to 0 18:38 hmmmm and it's very good code, don't get me wrong, it just doesn't scale 18:38 PilzAdam hmmmm, when will you push the jungles? 18:38 celeron55 so the problem is mostly that the vmanip implementation is over-generic for purposes of map generation 18:39 hmmmm celeron, perhaps yes 18:39 hmmmm pilzadam, soon, i need to work on it a bit more, but i'd say it'll be done within 2 hours 18:39 hmmmm realbadangel, L-system trees won't work here because minetest_game is missing all of those assets and you don't even have a jungle tree model from what i heard 18:40 proller https://github.com/minetest/minetest/pull/549 18:40 RealBadAngel we dont have models? 18:40 hmmmm you know what i mean 18:41 hmmmm rule set, leaf/wood textures 18:41 celeron55 just put them in; improving is always easier than doing everything perfectly from the ground u 18:41 celeron55 up* 18:41 hmmmm besides, my goal is to bring it back to the state it was before it was removed, with non-visual improvements where needed 18:42 RealBadAngel we have 3 different models for jungle trees 18:42 RealBadAngel http://realbadangel.pl/jungle7.png 18:42 khonkhortisan ~/.bashrc: cmatrix -sbx :P 18:43 hmmmm the moretrees will fit in with my plans for DecorationDef, which is rather elegant... you'll be able to say exactly what gets placed where from within lua 18:43 hmmmm it will use the same mechanism as the chests in dungeons 18:44 RealBadAngel ok, but we do have all the axioms, rules, textures ready for a long time 18:44 hmmmm i'm going fast :( 18:44 RealBadAngel Haven 128x texture pack even have hd textures for all the trees 18:45 PilzAdam someone needs a dump of a chat segfault from wine? https://gist.github.com/PilzAdam/5177721 18:45 RealBadAngel also all the trees have own wood and saplings 18:46 hmmmm hah.... very helpful pliz 18:46 hmmmm pilz 18:58 hmmmm ahh so there are two new configurable noiseparams: np_v6_apple_trees, np_v6_humidity; the former controls the prevalence of apple trees within regular trees, the latter controls the prevalence of jungles 18:58 whirm is it a known bug that if new_style_water is enabled, water doesn't render correctly? 18:58 hmmmm remind me to add those to minetest.conf.example 18:58 hmmmm water does render correctly 18:59 hmmmm are you talking about if a solid node is right on top of a water source node? 18:59 PilzAdam whirm, yes 18:59 PilzAdam hmmmm, new_style_water is a setting to set the water lower without using shader 19:00 PilzAdam its broken since 0.4 19:00 celeron55 new_style_water is to be removed and the regular water is to be made to look like new_style_water without shaders 19:00 hmmmm i wouldn't call it 'broken'... 19:00 PilzAdam there is a pull request by me flying arround that fixes new_style_water 19:00 hmmmm i'll look at it 19:01 PilzAdam https://github.com/minetest/minetest/pull/475 19:02 celeron55 new_style_water has the serious problem that it cannot take any advantage of the tile optimization and smooth lighting that the mesh generation does; that is why it has to go 19:02 hmmmm ah 19:03 whirm ok, thanks :) 19:03 PilzAdam whirm, use 0.3, it works there 19:04 whirm I was uploading a couple screenshots but I guess its not needed then 19:04 whirm minetest 0.3? 19:04 hmmmm who in their right minds would use minetest 0.3 19:04 hmmmm there is an infinite amount of improvement in 0.4 19:04 whirm goint to eat something brb 19:04 PilzAdam someone who wants jungles 2 hours earlier? ;-) 19:05 hmmmm jungles murder my framerate. 19:05 celeron55 hmmmm: ...don't even think about moretrees then 19:05 celeron55 they'll murder it 5x more 19:05 hmmmm well 19:06 hmmmm does opaque_leaves work for those too? 19:06 PilzAdam hmmmm, do you want "kwolekr" or "hmmmm" in the changelog? 19:06 celeron55 i'd guess it does 19:07 celeron55 it doesn't help as much as for oldskool jungle trees though 19:07 hmmmm doesn't matter 19:07 celeron55 moretrees makes huge amounts of leaves-to-air surfaces 19:07 hmmmm alright well here's what i did: http://pastebin.com/WdF8Sawa 19:08 hmmmm it's up to someone else to bring back the jungletree texture/definition and make a new jungleleaves definition 19:08 hmmmm even if nobody does, it's still there and it works right 19:09 hmmmm i need to make jungle trees faster though because 150ms for creating a jungle block is ridiculous 19:10 PilzAdam junglespalings would be nice too 19:10 hmmmm that's completely lua..... which means completely your job 19:11 PilzAdam the current saplings have their abms in content_abm.cpp 19:11 hmmmm ahhh 19:11 hmmmm alright i'll add the hooks for those 19:11 * PilzAdam needs textures for jungleleaves and -saplings... 19:12 celeron55 well, saplings should be put in lua 19:12 celeron55 i think there is an api call for making a regular tree? 19:12 PilzAdam nope 19:12 PilzAdam only l_system tree 19:12 celeron55 well shit :P 19:12 hmmmm ugh 19:12 hmmmm so why isn't there an l-system rule for a regular tree? should be dead simple 19:15 celeron55 well... i sure have no idea how to make them; RealBadAngel probably can whip one up in no time 19:23 hmmmm uh hmm 19:23 celeron55 https://github.com/VanessaE/moretrees/blob/master/tree_models.lua 19:23 hmmmm how do i get a NodeDef from MakeTreesFromSaplingsABM? 19:23 celeron55 this L-system language is the closest to brainfuck that i have seen, that actually is not brainfuck 19:23 hmmmm agreed; these people have a lot of time on their hands... 19:25 celeron55 what do you mean by getting a nodedef from it? 19:25 hmmmm mm nevermind, i'll just get it every trigger 19:25 RealBadAngel hmmm, beeches were intended to replace default trees 19:25 hmmmm s/from/in/ by the way 19:26 celeron55 (related note: beech is found in that file i linked) 19:27 RealBadAngel http://imgur.com/a/PXyaA#1 19:27 jojoa1997 does anyone know what the spawning requirements for dungeons are 19:27 celeron55 there aren't any, it's completely random 19:27 celeron55 but you have to set the flag yourself, they aren't on by default 19:27 RealBadAngel beeches use old trees textures and sapling 19:28 jojoa1997 mg_flags = trees, caves, v6_biome_blend, dungeons 19:29 jojoa1997 that right? 19:29 celeron55 yes 19:29 hmmmm do you really want v6_biome_blend? yuck 19:29 jojoa1997 do you guys know the rarity of dungeons at least 19:29 hmmmm pretty rare 19:29 jojoa1997 what is v6_blend 19:30 PilzAdam jojoa1997, disable caves to see them better 19:30 hmmmm the biome blending you see on the edges that looks like dithering 19:30 hmmmm lots of people hate it 19:30 hmmmm which is why it's an option 19:30 celeron55 biome dithering is a better name for it :P 19:30 jojoa1997 i like it 19:30 jojoa1997 are they underground? 19:32 jojoa1997 yay found one 20:29 PilzAdam https://github.com/PilzAdam/minetest_game/commits/jungles 20:31 ShadowNinja has any progress been made on the send issue from the stl commit? 20:46 hmmmm ahhhh 20:47 hmmmm PilzAdam, can you add the alias "default:junglesapling" -> "junglesapling" like sapling has already? 20:47 hmmmm in the ABM that's what i use to follow suit 20:47 PilzAdam sure 20:49 PilzAdam hmmmm, the sapling alias is in legacy, so should I make it mapgen_junglesapling instead? 20:49 hmmmm probably not... 20:49 hmmmm it's not part of the mapgen anyway 20:50 hmmmm why is the sapling alias legacy? 20:50 PilzAdam to support 0.3 maps where the node was called "sapling" 20:51 * hmmmm sigh 20:51 hmmmm i'll make it default:junglesapling then.. 20:51 hmmmm i don't think i should be changing it though 20:51 PilzAdam that will force other games to have a default mod 20:52 PilzAdam Ill add the alias 20:52 hmmmm okay 20:56 PilzAdam done 20:56 PilzAdam https://github.com/PilzAdam/minetest_game/commits/jungles 21:06 hmmmm done too 21:06 hmmmm https://github.com/kwolekr/minetest/commit/6823ce99a7deabe410dd8b143b688cd364490cec 21:06 hmmmm i didn't test the sapling stuff because i didn't have the saplings 21:09 hmmmm would you like to test it? 21:09 PilzAdam yep 21:16 PilzAdam hmmmm, works fine 21:18 PilzAdam http://www.zimg.eu/i/2504368456 21:20 PilzAdam hmmmm, a growing jungletree destroys every node in its way 21:21 PilzAdam could you do something like this: https://github.com/minetest/minetest/blob/master/src/treegen.cpp#L45 21:28 khonkhortisan a growing tree also remove(d)s nodes 21:51 proller trying large caves: 21:51 proller - max_tunnel_diameter = ps.range(7, ps.range(8,24)); 21:51 proller + max_tunnel_diameter = ps.range(7, ps.range(8,ps.range(24,100))); 21:52 proller maybe they must be more rare 22:53 hmmmm sure thing pilz 22:58 hmmmm PilzAdam, which part of the jungletree destroys things? 22:58 hmmmm the vertical branch? 22:58 PilzAdam the trunk 22:58 hmmmm alright 22:59 VanessaE you're hard-coding the jungle tree model? 22:59 PilzAdam http://www.zimg.eu/i/248589486 23:00 hmmmm is that glass covering the very bottom 23:00 PilzAdam the glassblock is solid 23:00 PilzAdam I only removed 1 node to place the sapling 23:01 hmmmm do you want that bottom platform to not be placed as well? 23:01 PilzAdam sure 23:01 hmmmm well 23:01 hmmmm that's needed though 23:01 hmmmm it's intentional for that to remove any other nodes 23:01 VanessaE WHy don't you just use the L-systems method? it already checks for air when growing a tree. 23:02 hmmmm because i'm not doing something big and grand, we're just bringing something back that was removed 23:02 PilzAdam hmmmm, it could be abused to remove chests etc. 23:03 hmmmm ahh good point 23:03 hmmmm really what would be ideal is if we remove whatever's in the base at least when being done by the mapgen, don't remove otherwise 23:07 hmmmm ah found a bug with the original tree code 23:08 PilzAdam maybe check for buildable_to instead of CONTENT_AIR 23:09 hmmmm wait a minute am i reading this right? you can have a sapling grow anywhere? 23:10 PilzAdam yep 23:10 hmmmm do we want this?? 23:10 PilzAdam nope 23:10 VanessaE definitely not 23:10 hmmmm i'll add a check for grass in the ABM too 23:10 VanessaE why should a sapling be able to grow on, say, cobble? 23:11 PilzAdam but we cant do much about it while its in the engine 23:11 hmmmm well, you can... 23:11 hmmmm you do have commit powers 23:11 PilzAdam hmmmm, if you check for grass then also check for dirt 23:11 hmmmm yeah 23:12 VanessaE Might also be a good idea to check for a jungle trunk as well, in case someone wants to build double-tall structures. 23:12 VanessaE (I've seen this before) 23:12 hmmmm but you can't grow a tree on a tree.... 23:13 PilzAdam just place a dirt block on the tree while the sapling is growing 23:15 hmmmm vanessa, your final opinion on the topic? the list of things that a sapling can grow on is: dirt_with_grass, dirt 23:15 VanessaE go with that 23:35 hmmmm well, okay 23:37 hmmmm anyway i did that https://github.com/kwolekr/minetest/commit/003ce644faedcdd9310b93a4bae3007209c426df 23:37 hmmmm should work. 23:43 hmmmm erm anyway PilzAdam, if you test that and everything works great, then push your additions to minetst_game to upstream, i'll push this to upstream too and then you can make the win32 snapshot build 23:45 PilzAdam I already did a win build... 23:45 PilzAdam testing.... 23:51 PilzAdam hmmmm, the saplings of the jungletrees arent removed 23:53 hmmmm woops 23:53 hmmmm i guess infinite trees 23:56 PilzAdam I have set interval and chance to 1 and its fun to watch the trees get bigger and bigger :-) 23:56 PilzAdam you end up with a very blocky tree 23:57 hmmmm anyway let's try again https://github.com/kwolekr/minetest/commit/e3badd7062d4bee62335cf100f3f91ef4c370aae 23:58 hmmmm after this, it should be perfect