Minetest logo

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

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

All times shown according to UTC.

Time Nick Message
00:54 BackupCoder joined #minetest-dev
01:05 Taoki joined #minetest-dev
03:01 hmmmm yikes
03:02 hmmmm so i'm giving mapgen_v6.cpp 'the treatment' (you know, just clean code up and what not) and i am getting like 2x speed improvements on several components
03:02 hmmmm for example i sped up the base rock generation up from ~3400us to 1800
03:02 hmmmm i mean sure that's not much, but it's just demonstrating how doing things the right way can make things better
03:07 hmmmm can't really wait to sink my teeth into updateLighting()
03:07 hmmmm flowMud() is going to be another big one
03:35 RealBadAngel rewriting code x times always brings benefits
03:35 RealBadAngel i know that from demoscene times
03:36 RealBadAngel each time you can save a few cycles more
03:36 hmmmm this isn't rewriting code, this is just cleaning what already exists
03:37 hmmmm and it's not a few cycles, it's a lot
03:37 RealBadAngel but you got the meaning :)
03:37 hmmmm sure
03:37 RealBadAngel btw i think ive a bug
03:38 RealBadAngel formspec callback to handle fields doesnt send caller formname
03:38 hmmmm and it's supposed to?
03:38 RealBadAngel so every registered callback is called with formname = nil
03:38 hmmmm nobody's noticed it until now, so i wonder how useful formname is...
03:39 RealBadAngel well, if you give fields other names it will still work
03:39 RealBadAngel but if youre trying to do there some extra code youre fucked
03:40 RealBadAngel i noticed that because my callback was called even before it could be
03:40 RealBadAngel it was on_rightclick one
03:41 RealBadAngel and was called when i used inventory
03:41 RealBadAngel node wasnt placed on the ground so obviously values were nil
03:42 RealBadAngel started to dig wtf, and found that issue
03:42 hmmmm i see.... did you find the offending code?
03:42 RealBadAngel not yet
03:42 hmmmm ahhhh we have a lot of bugfixes to do
03:43 hmmmm by the way, is the 6d facedir thing going well?
03:43 RealBadAngel i just defined what exactly is wrong with it
03:43 RealBadAngel i need to polish it a bit more, thought it will be ready by weekend
03:43 RealBadAngel but got stuck in other project and bugs
03:44 RealBadAngel this last one took me a few hours to hunt
03:45 RealBadAngel im doing stargates transportation system for servers, and got now almost everything ready
03:47 RealBadAngel http://realbadangel.imgur.com/all/
03:47 RealBadAngel oops
03:47 RealBadAngel http://i.imgur.com/C5c6uDZ.jpg and http://i.imgur.com/BjqkAF6.png
03:48 hmmmm those do look pretty sweet
03:48 hmmmm so where do they teleport you
03:48 RealBadAngel to another stargate
03:48 hmmmm that one right there?
03:48 RealBadAngel which you can pick from list of your own
03:48 hmmmm you can't have two stargates that close, the wormhole won't connect
03:49 RealBadAngel or others which are marked as public
03:49 hmmmm so i take it you have a naquadah ore?
03:50 RealBadAngel i think i will replace naquadah with mithril :)
03:51 RealBadAngel this system is meant for server transport, bigger (4x4) will be used for inter-server travelling
03:51 VanessaE joined #minetest-dev
03:52 RealBadAngel wb VanessaE
03:52 VanessaE hey
04:02 RealBadAngel bbl, cya
04:02 VanessaE cya
07:25 BackupCoder joined #minetest-dev
08:27 iqualfragile joined #minetest-dev
08:41 celeron55 crap, finding something from the scriptapi implementation in github's source view just became about impossible
08:42 celeron55 the split is not logical enough, ctrl+f is useless and github doesn't have such code search
09:56 proller joined #minetest-dev
10:01 celeron55 http://forum.minetest.net/viewtopic.php?id=5059
10:02 celeron55 it shouldn't need any of that if this is done: http://dev.minetest.net/Releasing_Minetest#Tweak_Windows_package_a_bit
10:02 celeron55 so i ask: y u make broken packages?
10:22 serengeor joined #minetest-dev
10:38 Calinou joined #minetest-dev
10:38 thexyz oh crap
10:38 thexyz i forgot wrap_oal.dll
10:39 thexyz i'll repackage it in a moment
10:41 thexyz done
10:41 thexyz so, are we migrating to stl?
10:43 celeron55 i wonder what could be done to these kinds of things that would need a bit of testing before putting upstream
10:43 celeron55 they always seem to be a pain
10:45 celeron55 i vote for just merging it, it has been hanging around for too long already
11:11 darkrose joined #minetest-dev
11:11 darkrose joined #minetest-dev
11:13 Taoki joined #minetest-dev
11:37 thexyz why should we >Avoid iterators like the plague?
11:59 Taoki joined #minetest-dev
12:43 Taoki Is the GIT dead? There haven't been updates in 2 weeks
12:54 proller 8)
12:55 proller moved to https://github.com/minetest/minetest.git
13:10 Taoki Yeah, fixed it
13:15 hmmmm joined #minetest-dev
13:33 celeron55 thexyz: who says that?
13:39 thexyz celeron55: http://dev.minetest.net/Code_style_guidelines
13:40 thexyz hmmmm does
13:44 celeron55 that's quite vague
13:44 celeron55 i don't know why it even is there
13:44 celeron55 by the way, one thing i disagree with in that is "with the exception that cases in switch statements are indented a level"
13:45 celeron55 the linux kernel style is what minetest's code has always used
13:45 celeron55 also, one thing that minetest's code mostly does is use m_ prefix for member variables; it isn't mentioned in there
13:47 celeron55 actually, these days i code so that if it's a class, most of it's state is private and has m_, if a thing is a struct, most of it's state is public and it won't have any prefixes; i'm not sure how well the code might conform to that
13:50 celeron55 one thing i have bitched in the past is whitespace between "if" and "(", and ")" nad "{", but these days i don't even care, as long as it's either zero or one space
13:59 thexyz hmmmm: i think we should "merge and pray" my STL commit
14:00 thexyz it's not like anyone is going to review it
14:24 Taoki BTW, I have a suggestion regarding the Creative inventory menu: Can it be made so blocks are filtered by mods? Would make keeping it organized a bit easier
14:24 Taoki eg: Separating stuff from Technic mod and HomeDecor mod, etc
14:31 celeron55 joined #minetest-dev
14:35 RealBadAngel hi all
14:36 RealBadAngel taoki: its easy apply filter with mod name
14:36 Taoki ok. I'm using the default creative inventory menu so that's probably why I didn't see
14:37 RealBadAngel delete it and use UI
14:37 Taoki Also, I noticed there's a customized creative menu in one of the mods. But it goes away and reverts to the old one after clicking the first button
14:37 thexyz RealBadAngel: where can I download your "Stargate" mod?
14:37 RealBadAngel thexyz: its part of technic but its not finished
14:38 RealBadAngel im polishing it right now
14:38 thexyz RealBadAngel: so it can't be used without technic, can it?
14:38 RealBadAngel it can be
14:38 thexyz great then
14:38 RealBadAngel it is indpendent mod, but share same space
14:39 tW4r joined #minetest-dev
14:40 RealBadAngel taoki, that behaviour is when u havent deleted default creative
14:40 RealBadAngel such overhauls need creative to be deleted
14:40 Taoki ok, I probably will then. Though I still use it in a world where I disable mods
14:41 RealBadAngel have you seen latest UI?
14:41 RealBadAngel and hear it?
14:41 Taoki Only gave it a short test. It looks pretty awesome though :)
14:41 RealBadAngel http://i.imgur.com/NMvhjbM.png
14:42 RealBadAngel curent version is nicer
14:42 RealBadAngel it has also hotbar higlighted
14:43 Taoki Yeah, nice stuff
14:43 Taoki If only the item hotbar could also be themed like that
14:43 RealBadAngel sooner or later
14:43 RealBadAngel its not that hard
14:43 RealBadAngel it is that we are doing many things at the time
14:44 RealBadAngel and we cannot split ourselves
14:44 RealBadAngel to code more
14:44 tW4r O, um... Hi guys :)
14:44 RealBadAngel hi, you?
14:45 Taoki RealBadAngel: When it's done, I hope HUD elements will be moved to LUA too, and players allowed to define their own drawables
14:46 Taoki But yeah, it is true
14:46 RealBadAngel ive seen my next goal
14:46 RealBadAngel hud related
14:46 RealBadAngel minimap
14:47 RealBadAngel one is working on lua version
14:47 thexyz https://github.com/minetest/minetest/pull/520
14:47 RealBadAngel theres no minimap
14:47 thexyz but hud can be defined from lua there
14:48 RealBadAngel you think lua can handle minimap?
14:48 RealBadAngel i doubt so
14:48 thexyz i didn't say that
14:48 Taoki Interesting
14:48 Taoki Nah, no way to do a minimap in lua YET
14:48 Taoki I see animation blending there though. I hope that is indeed working
14:49 RealBadAngel thexyz, you have said you tested luajit, right?
14:49 thexyz i wonder why's he implemented another language for hud definition
14:49 thexyz RealBadAngel: i did
14:49 RealBadAngel thexyz, but can you say what mods have you tested with it?
14:50 thexyz hm...
14:50 thexyz well
14:50 thexyz RealBadAngel: why not test it yourself?
14:50 RealBadAngel i already know the answer
14:50 thexyz i can't remember everything
14:51 thexyz i think i tested animals + some other mods
14:51 thexyz but i cannot be sure
14:51 RealBadAngel you havent tested mods that require calculations. all over
14:51 thexyz and according to profiler report I've got slight perfomance decrease
14:51 RealBadAngel mesecons, technic
14:51 thexyz probably
14:51 thexyz test it yourself then
14:52 RealBadAngel we are using heavy maths there
14:52 thexyz like, multiplying numbers? :P
14:52 thexyz what do you use, actually?
14:53 RealBadAngel no, deep first search with remembering parent vertice
14:53 thexyz how's that "heavy math"?
14:53 RealBadAngel familiar with it?
14:53 thexyz of course i am
14:54 RealBadAngel so you know remembering parent is not part of regular algorithm
14:54 thexyz i wonder what should be called "regular algorithm"
14:55 RealBadAngel those defined
14:55 thexyz DFS is just DFS, no matter what
14:55 RealBadAngel i added my own modifications to it
14:55 thexyz you may remember entry/exit times and it's still DFS
14:56 RealBadAngel im aware some did the same propably
14:56 thexyz you may color vertices, it's still DFS
14:56 RealBadAngel but i needed very specific way
14:57 RealBadAngel regular dfs wont tell you way back to the point of origin
14:57 thexyz where can I look at your code?
14:57 RealBadAngel or let you replay it
14:57 RealBadAngel its for months in technic
14:57 thexyz it depends on what're you calling "regular dfs"
14:58 thexyz there is no regular implementation i think
14:58 RealBadAngel keepin wireing alive is using it
14:58 RealBadAngel but but but
14:59 RealBadAngel no matter what we should agree at another point
14:59 RealBadAngel Lua is not made for such things
14:59 thexyz fine, check it with luajit then
15:00 RealBadAngel i will
15:00 thexyz i don't get how language may be "not made for such things" though
15:00 RealBadAngel its not the language name, or something
15:01 RealBadAngel way of execution
15:01 RealBadAngel strict Lua version needed several seconds to spawn big oak
15:02 thexyz I'm not sure that was caused by Lua slowness
15:02 RealBadAngel c++ version is instant (point of user view)
15:02 thexyz looks more like lua<->minetest slowness
15:03 RealBadAngel it is also possible
15:03 RealBadAngel but not in such degree
15:04 RealBadAngel ive read a lot bout luajit and learned that benefits with heavy calculations
15:04 RealBadAngel not easy steps, but hard loops
15:33 Taoki http://forum.minetest.net/viewtopic.php?id=5072 Very curious what others think of this idea, and if it can be done currently.
15:36 jin_xi joined #minetest-dev
15:37 Taoki BBL
16:00 Jordach joined #minetest-dev
16:01 iqualfragile joined #minetest-dev
16:02 jin_xi hey all, little rambling coming up :)
16:03 jin_xi i've started working on taking the turtle system out of treegen to make something more general
16:04 jin_xi i think such a system paired with logo/forth/some dsl could be very powerful for generating all kinds of structures
16:04 jin_xi the branch is here: https://github.com/obneq/minetest/commits/turtle
16:06 celeron55 Taoki: it's Lua, not LUA
16:07 jin_xi here is some lua to use it: http://paste.ubuntu.com/5605147/
16:08 jin_xi i am looking for help and ideas on how to proceed, pls let me know what you think about the idea, kthxbai
16:19 Calinou joined #minetest-dev
16:23 thexyz inb4 jin_xi reimplements lua as "more advanced" turtle system
16:26 PilzAdam joined #minetest-dev
16:33 PilzAdam joined #minetest-dev
17:07 rubenwardy joined #minetest-dev
17:13 rubenwardy_ joined #minetest-dev
17:18 PilzAdam hmmmm, http://www.zimg.eu/i/64030040
17:19 jin_xi i think surface dungeons are intentional (and intentionally left open) from reading the code
17:22 VanessaE but the non-reflowed water?
17:22 VanessaE that's a bug for sure
17:23 PilzAdam the abm by proller forces an update after a while
17:30 VanessaE what about with non-finite water?
18:07 Jeija joined #minetest-dev
18:13 Jeija I need some help concerning the packet format of minetest, does TOCLIENT_INIT look like that:
18:13 Jeija 4 bytes protocol id | 2 bytes server peer id | 1 byte channel | 1 byte TYPE_ORIGINAL | 2 bytes TOCLIENT_INIT | data
18:13 Jeija Is that correct?
18:19 Jeija ok, I just checked it and it worked
18:19 jin_xi https://github.com/celeron55/minetest/blob/master/doc/protocol.txt
18:24 Exio minetest/minetest
18:25 rubenwardy so https://github.com/minetest/minetest/blob/master/doc/protocol.txt
18:26 jin_xi oops yes
18:29 Jeija thx
18:54 proller joined #minetest-dev
19:32 jin_xi joined #minetest-dev
19:46 rubenwardy joined #minetest-dev
19:49 Taoki http://i45.tinypic.com/an1lj4.png I like how this looks (done manually tho)
19:50 thexyz Taoki: I love the second block in your inventory
19:51 thexyz it hurts my eyes, yet i still love it
19:51 Taoki Yeah, haven't really placed it. It's called the frame or something, part of technic
19:52 Taoki Probably hurts the eyes cuz it creates the illusion of being inside out. Or 4D :)
20:30 hmmmm PlizAdam, yes?
20:31 hmmmm i didn't touch the transforming_liquids - that's not my fault at all
20:31 hmmmm and i am aware that it does that at times
20:32 PilzAdam I actually wanted to point you to dungeons being generated at surface
20:32 hmmmm besides, i see water_flowing blocks coming from the lake.
20:32 PilzAdam but I heard that its intentonal, so nvm
20:32 hmmmm actually, that's 100% intentional and good
20:39 hmmmm [09:50 AM] <celeron55> one thing i have bitched in the past is whitespace between "if" and "(", and ")" nad "{", but these days i don't even care, as long as it's either zero or one space
20:39 hmmmm this------^ why
20:39 hmmmm i have been fixing those no-spaces for some time
20:40 hmmmm if(you_do_this) you're+a+hacker(4/5+3,11,v2s16(x,y));
20:41 hmmmm while(you_look_at_how_condensed_my_code_is){this_is_killing_your_eyes=4+52-0*look_at_how_leet_i_am(m_some_stupid_member_variable); }
20:42 hmmmm like christ.... control statements keywords are not functions, they're control statement keywords
20:42 hmmmm and that is most definitely _NOT_ the linux kernel coding style
20:43 hmmmm the style that was used for the longest time was some bastard child of GNU and leet_h4x0r
20:44 thexyz hmmmm: any idea on what to do with STL patch?
20:44 thexyz celeron55 agreed to merge it
20:44 thexyz so i think it's fine
20:44 hmmmm i'll merge it, i just hope it doesn't add any bugs
20:44 hmmmm this needs to be done really soon
20:45 thexyz ok
20:46 hmmmm avoid iterators because they're worthless invention that serves to do nothing but attempt to hide pointers because pointers are "so horrible" and introduce subtle bugs
20:46 hmmmm they're a worthless*
20:46 hmmmm bloaty syntax
20:47 hmmmm like what makes an iterator so much better than for (int i = 0; i != foo.size(); i++) {?
20:47 hmmmm can anybody explain to me why that's inferior?
20:47 hmmmm no, it's simple, it works, and it's done the right way, but C++ had to come along and fuck it up
20:47 thexyz hm..
20:48 thexyz doesn't *i look simplier than foo[i]?
20:48 hmmmm there's no reason to do that though when you have a non-C++ equivalent that is even more clear
20:49 hmmmm the only time i'd use iterators is when dealing with std::map.  that's all.
20:49 thexyz std::set
20:49 thexyz std::list
20:49 thexyz what else?
20:50 hmmmm std::set is now only used in that one circumstance
20:50 Taoki joined #minetest-dev
20:50 hmmmm std::list doesn't require the use of iterators
20:50 hmmmm unless you're using find(), but in that case you'd probably be better off using std::map if this is something you needed to search
20:51 thexyz hmmmm: how are you going to iterate std::list then?
20:51 hmmmm oh, the linked list.  yeah, you need to use it there.  do we use a std::list at all though?
20:51 sapier1 joined #minetest-dev
20:52 thexyz we do
20:52 thexyz everywhere
20:52 sapier1 any chance to get this merged: https://github.com/minetest/minetest/pull/531
20:52 hmmmm haven't noticed
20:52 hmmmm well yeah, i'll do that later
20:52 hmmmm gotta merge some things..
20:53 sapier this commit just moves the function where it belongs
23:09 hmmmm thexyz, wait, are you ilya zhuravlev?
23:09 hmmmm when I cherry picked your STL migration thing that's what comes up as the author
23:24 hmmmm also, nice one sapier, the get_all_craft_recipes move doesn't even compile
23:29 RealBadAngel lol
23:29 RealBadAngel funny to see migration of own code ;)
23:30 RealBadAngel propably missing .h
23:31 hmmmm yeah i already did that
23:31 sapier it did when I issued the pull request
23:31 hmmmm oh crap
23:32 RealBadAngel what?
23:32 sapier btw what happened to the build bot?
23:32 hmmmm which means there's a duplicate prototype somewhere else
23:32 hmmmm ugh i don't care
23:32 sapier leave it out I'll try to fix it with latest github version tomorrow
23:33 hmmmm IT'S ALREADY BEEN FIXED jeez
23:33 sapier what was the problem?
23:33 RealBadAngel hmmm remember that missing formname bug i mentioned?
23:33 hmmmm what do you guys make of this https://github.com/minetest/minetest/issues/534
23:33 hmmmm the function prototype was missing from scriptapi_craft.h
23:33 hmmmm RBA, yeah?
23:34 RealBadAngel i got back from work and its gone
23:34 hmmmm hm?
23:34 hmmmm that's not good
23:34 RealBadAngel the variable is there
23:34 RealBadAngel i havent changed the sources
23:34 RealBadAngel dunno wtf
23:35 RealBadAngel something is screwed there definitely
23:35 sapier hmm sound's like i missed to commit the header ... sorry my fault
23:36 RealBadAngel sapier, before pulling do clone
23:36 RealBadAngel and compile
23:36 RealBadAngel it catches such mistakes
23:36 sapier yes but requires lots and lots of time
23:37 sapier and won't fix errors on update of pull requests
23:37 RealBadAngel but will catch stupid mistakes
23:37 RealBadAngel like missing file or header
23:39 sapier I know but on the other hands using 5 minutes 100 times to catch a fault fixed in 30 seconds isn't quite efficient
23:39 sapier and yes I know bugs like that are anoying and I try to avoid them wherever possible.
23:40 sapier 534 seams to occur on windows only is this correct?
23:42 hmmmm i guess, but there's something more interesting about it
23:42 hmmmm he says that happens on startup
23:42 hmmmm clearly, line 1802 is only executed on shutdown
23:43 sapier isn't 1802 the catchall exception handler?
23:44 hmmmm line 1802 is actually } catch (std::exception &e) {
23:44 hmmmm so actually that's only executing because there was an exception that happened which was caught by that exception handler
23:44 hmmmm and it somehow segfaults
23:45 sapier address=0 ? do we use function pointers somewhere?
23:46 hmmmm no, but we use virtual functions
23:46 hmmmm hmm
23:46 sapier member functions normaly have at least an offset
23:46 sapier maybe a constructor doesn't have an offset
23:46 hmmmm i'm saying that maybe that field was initialized to 0 when the object was allocated
23:47 hmmmm the vtable isn't filled until after the constructor
23:47 sapier sounds reasonable
23:47 hmmmm that's one way that could've gotten there
23:47 hmmmm also stack overflow
23:47 sapier does minetest run within valgrind?
23:48 hmmmm no
23:48 sapier let me be more precise can minetest be run within valgrind ;-)
23:48 hmmmm i mean you can try but it probably won't work out very well this time either
23:49 hmmmm erm but nevermind that whole theory of yours
23:49 hmmmm notice it says address is 0, not the faulting address
23:49 hmmmm the faulting address is 0x6954AC8E, which attempted a write of 0 at address 0 (NULL)
23:49 hmmmm so if this guy had debug symbols we'd have a chance at tracking what that is.
23:50 sapier at least if he can provide the binary
23:50 hmmmm look at how high up that address is, i'm willing to bet that the segfault happened in a DLL
23:51 sapier this is windows ... maybe we already have the binary?
23:51 Exio sapier: you can run it, you will get between 1 FPM to 2~
23:51 Exio (frames per minute)
23:51 sapier there aren't many ppl out ther compiling itself
23:51 hmmmm so, what libraries are dynamically linked against with windows?  irrlicht, openal, other things?
23:51 hmmmm sapier, the thing is, his OS decides what goes at that address which is not necessarily in the binary
23:52 sapier yes but we could make absolutely sure it's not within minetest itself
23:52 hmmmm i'm 98% sure that it's not within minetest
23:52 hmmmm my money is on OpenAL, personally.
23:52 sapier if this guy used a precompiled version most dlls are included within this package
23:53 sapier strange I thought of openal too once you suggested dll's ;-)
23:53 hmmmm maybe if those DLLs had a preferred load address, you'd need a PE file viewer in order to see though
23:55 sapier unless we know which version he did use we can only guess ... I'm asking him to provide more information
23:59 hmmmm ugh, git stash apply totally screwed up what i was working on
23:59 hmmmm what the hell do i even do now

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