Minetest logo

IRC log for #minetest-dev, 2013-03-16

| Channels | #minetest-dev index | Today | | Google Search | Plaintext

All times shown according to UTC.

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:12 sapier left #minetest-dev
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
01:59 iqualfragile joined #minetest-dev
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 <hmmmm> 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 </offtopic>
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:00 ShadowNinja joined #minetest-dev
05:13 mrtux joined #minetest-dev
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 SpeedProg joined #minetest-dev
08:24 celeron55 could be tried in minetest: http://www.reddit.com/r/gamedev/comments/1ae4lw/screenshot_saturday_110_buffer_overflow/c8wjusq
08:53 markveidemanis joined #minetest-dev
08:53 markveidemanis left #minetest-dev
09:52 serengeor joined #minetest-dev
09:52 serengeor_ joined #minetest-dev
10:13 PilzAdam joined #minetest-dev
10:30 iqualfragile joined #minetest-dev
10:39 RealBadAngel celeron55, http://pastebin.com/Q9s91ukt
10:40 RealBadAngel chasm works faster with luajit
10:53 Calinou joined #minetest-dev
10:57 celeron55 RealBadAngel: good
11:05 nyuszika7h joined #minetest-dev
11:13 darkrose joined #minetest-dev
11:13 Jordach joined #minetest-dev
11:40 Birk joined #minetest-dev
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:53 serengeor joined #minetest-dev
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:17 hmmmm joined #minetest-dev
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:41 sapier joined #minetest-dev
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:25 PilzAdam joined #minetest-dev
15:58 whirm joined #minetest-dev
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:49 Calinou joined #minetest-dev
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 proller joined #minetest-dev
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:38 markveidemanis joined #minetest-dev
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 markveidemanis left #minetest-dev
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 iqualfragile1 joined #minetest-dev
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 joined #minetest-dev
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
19:33 jojoa1997 left #minetest-dev
19:33 ShadowNinja joined #minetest-dev
20:09 PilzAdam joined #minetest-dev
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:22 serengeor joined #minetest-dev
21:28 sfan5| joined #minetest-dev
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:14 whirm joined #minetest-dev
22:31 Kray joined #minetest-dev
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 Taoki joined #minetest-dev
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

| Channels | #minetest-dev index | Today | | Google Search | Plaintext