Minetest logo

IRC log for #minetest-dev, 2013-08-20

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

All times shown according to UTC.

Time Nick Message
00:47 AllegedlyDead joined #minetest-dev
01:34 NakedFury joined #minetest-dev
01:55 Miner_48er joined #minetest-dev
02:44 smoke_fumus joined #minetest-dev
03:13 salamanderrake joined #minetest-dev
04:45 neko259 joined #minetest-dev
05:50 Ritchie joined #minetest-dev
06:01 ecube joined #minetest-dev
06:22 Weedy left #minetest-dev
06:22 darkrose joined #minetest-dev
06:22 darkrose joined #minetest-dev
06:25 sfan5[Mac] joined #minetest-dev
06:34 nore joined #minetest-dev
07:10 kahrl #814: "It happens sometimes that the selection in a list follows the mouse (reproduceable by moving the scrollbar slider and then clicking outside of the formspec) (not in win build)"
07:10 kahrl managed to reproduce this using a small irrlicht example http://paste.dy.fi/7nn
07:11 kahrl so it has to do with the formspec disallowing focus change
07:13 kahrl if you change canTakeFocus() to "return true;" the problem goes away
08:27 psedlak joined #minetest-dev
08:33 Calinou joined #minetest-dev
09:31 darkrose joined #minetest-dev
09:31 darkrose joined #minetest-dev
09:51 Calinou joined #minetest-dev
10:12 proller joined #minetest-dev
10:34 Akien joined #minetest-dev
10:45 troller joined #minetest-dev
11:05 Calinou joined #minetest-dev
11:08 Jordach joined #minetest-dev
11:19 PilzAdam joined #minetest-dev
11:22 nore joined #minetest-dev
12:18 kahrl PilzAdam: I figured out why the first problem in #814 happens: http://paste.dy.fi/kaj
12:18 kahrl but I can't think of any way to fix it
13:01 nore joined #minetest-dev
13:36 PilzAdam kahrl, its not a big problem, dont waste too much time on it
13:46 kahrl I don't think I can even do anything about it unless we use a custom listbox
13:47 kahrl ... which I'm planning right now (but for different reasons)
14:33 proller joined #minetest-dev
14:52 kahrl ideas/design/examples for a "table" formspec element: http://paste.dy.fi/BJ9
14:55 nore kahrl, I like it
15:03 rubenwardy joined #minetest-dev
15:07 hmmmm joined #minetest-dev
15:13 Calinou joined #minetest-dev
15:17 celeron55 kahrl: tell us when you've used an equal amount for this that it would've taken to implement a client side lua based menu so we can all cry
15:17 celeron55 anyway yeah it looks fine for a formspec thing
15:18 kahrl I don't think it will take that much work
15:18 kahrl copying CGUIListBox gives a head start
15:18 celeron55 irrlicht has it's table element too; is it useless?
15:18 kahrl I didn't look at it yet
15:19 kahrl but I expect there to be complications :P
15:21 celeron55 sounds like a wise expectation 8)
15:21 kahrl it can't be used as is because it doesn't support images, tooltips, or obviously indents
15:21 kahrl but it might be better code to start from than CGUIListBox
15:23 kahrl dang it, broke the irrlicht online docs
15:23 kahrl Guru Meditation!
15:24 kahrl IGUITable::getRowCount() "Get amount of rows in the tabcontrol." huh?
15:57 Miner_48er joined #minetest-dev
16:09 proller https://github.com/proller/minetest/compare/heat
16:09 proller https://github.com/proller/minetest/compare/liquid63
16:19 BlockMen joined #minetest-dev
16:21 BlockMen because im working on the formspecs atm i thought why not the menus too
16:21 BlockMen what do you guys think of this -> http://i.imgur.com/3kD4HPM.png ?
16:22 ironzorg german is hard
16:22 andersje except for the fact that I can't read German, that's awesome.
16:22 rubenwardy nice
16:22 rubenwardy What about the chat menu?
16:23 BlockMen not done yet
16:23 rubenwardy cool
16:23 BlockMen first wanted hear if it is ok, else it would be work for nothing^^
16:23 PilzAdam the buttons seem very randomly thrown at the screen
16:24 ironzorg this ↑
16:24 ironzorg it doesn't look like a menu
16:24 ironzorg just a bunch of buttons
16:24 PilzAdam also where are the default controls and debug info?
16:25 PilzAdam the idea that it should cover the whole screen is good, though
16:25 BlockMen kicked out, instead of that info the controls should be added to menu as setting
16:25 BlockMen like in that pull request
16:26 BlockMen ^IMO
16:32 thexyz yeah of course we need controls and debug info displayed every time user presses [ESC]
16:45 Ritchie joined #minetest-dev
16:53 nore about menus I have a suggestion: a Lua function that declares a new button for the menu, that calls a custom callback
16:54 sapier joined #minetest-dev
16:57 BlockMen are the buttons better this way? -> http://i.imgur.com/D06Sw65.png
16:57 PilzAdam yes
16:57 Calinou "Pause Menu" is obnoxious imo
16:58 Calinou on top of that, it's not even a pause
16:59 BlockMen i guess it would be kinda har to make it pause for real (singleplayer)
16:59 BlockMen *hard
17:01 salamanderrake joined #minetest-dev
17:03 sapier1 joined #minetest-dev
17:05 celeron55 BlockMen: no it wouldn't (and that actually should be made)
17:05 celeron55 but for multiplayer it obviously shouldn't pause anything
17:08 BlockMen celeron55, all the better. but i have no idea where to start
17:39 neko259 joined #minetest-dev
18:03 Zeitgeist_ joined #minetest-dev
18:06 kahrl what is m_Textures in GUIFormSpecMenu for?
18:07 kahrl it's only ever pushed to but never read
18:07 kahrl if I have to push the used textures to that list when implementing the table that'll make a lot of code ugly
18:19 Miner_48er joined #minetest-dev
18:21 kahrl also: why are the texture names in image[], background[], image_button[], image_button_exit[] not escaped
18:54 sapier1 as far as I remember m_Textures is used to cleanup background textures on close of main menu
18:56 sapier1 I guess the cleanup is missing resulting in a texture leak
18:57 sapier1 are texture names escaped anywhere?
18:57 sapier1 maybe it's still a bug I cleant up much in formspec but not everything for sure ;-)
18:58 sapier1 kahrl if you do cleanup there could you add 4 to the textlist member cout ? docs allow skipping last two parameters but code doesn't
19:05 kahrl hello sapier1
19:06 kahrl I fixed the missing cleanup by moving formspec's texture management to ITextureSource
19:06 kahrl ISimpleTextureSource to be precise, which implements only getTexture
19:06 sapier1 I guess then it's useless there
19:06 kahrl yeah I removed it in formspec
19:07 kahrl texture names are not escaped, would changing that break anything?
19:08 sapier1 I don't think there are any escape chars used there ... aren't "; , \ \n \r" dissalowed on most fs either?
19:09 kahrl nope
19:09 kahrl at least on linux I think everything but / is allowed
19:09 sapier1 yes but / isn't required to be escaped
19:09 kahrl well sure
19:10 kahrl but what if minetest is in a path that contains ;
19:10 sapier1 ok ok I'm convinced ;-)
19:10 sapier1 it should be escaped too
19:11 kahrl not that other parts of the code are innocent in that respect, there are problems with loading the database when the minetest path contains non-ascii characters
19:12 kahrl seems to be a problem in sqlite
19:12 sapier1 :-) yes the texture names are not unescaped ever since but that's no reason for not fixing it
19:14 sapier1 https://github.com/minetest/minetest/pull/846 any reason why this bugfix isn't merged yet? VanessaE seemd to be quite annoyed by that issue?
19:15 kahrl what should I do about textlist? fix the docs or the code?
19:16 PilzAdam sapier1, whats wrong with mainmenu.lua:505 and 506 in that diff?
19:16 sapier1 doc is wrong in any case as it doesn't mention 5 parameter textlists are allowed too
19:17 sapier1 I guess this is a whitespace fixup not visible correctly in github diff
19:17 PilzAdam have you used tabs there?
19:18 sapier1 I don't have any idea its 20 days old ;-P
19:19 sapier1 as of raw view seems to be tabs yes
19:19 sapier1 8 spaces tabs shown for display argh
19:20 kahrl 8 is the unix default, I use it in vim
19:20 sapier1 whoever invented tabs should be punished to infinity for not specifying number of spaces
19:20 kahrl just use spaces unless at the beginning of the line
19:21 PilzAdam in Minetest a tab is 4 spaces
19:21 sapier1 8 is very very old default as it's almost useless for coding unless you use mixed mode indentions
19:21 kahrl I have no problem with 8
19:21 kahrl but I don't do insane nesting either
19:22 sapier1 ... 8 and 80 char limit is quite challanging ;-)
19:23 celeron55 anyone can use any kind of tabs they please, but line width limitation is calculated with 4 tabs
19:23 celeron55 and tabs should be used so that tab width doesn't affect formatting
19:24 celeron55 4-space tabs*
19:25 sapier1 I use tabs for "table style" initialization of multiple variables too (in lua) ... I know not quite consistent
19:25 celeron55 (in practice that means that if you want to align something in two lines, they should have the same tab indentation and spaces after that as needed
19:25 celeron55 )
19:25 BlockMen joined #minetest-dev
19:29 sapier1 btw I need async lua events ;-) similar to this one https://github.com/sapier/minetest/tree/async_lua_functions
19:33 sapier1 reason is mobf adds a lot of on_mapgen actions done at once those add huge delays to map spawning ... but they don't need to be done instantly thus can be executed later
19:34 hmmmm sapier1, can't you just add the information to some queue and execute them in server steps?
19:34 sapier1 atm I queue them in a global table and make global on_step handle those queued jobs until some time limit is passed ... of course this works but it'd be better if those could use multicore
19:34 sapier1 :-)
19:34 sapier1 already done
19:35 hmmmm i've been thinking about multithreaded lua and i think we should go ahead with multiple interpreters
19:35 sapier1 if I remember correctly the async prototype creates a interpreter for each async job
19:36 hmmmm for some projects in the past i had a dedicated async callback thread
19:36 sapier1 thus all information as well as the function to be executed needs to be serialized prior passing to that interpreter
19:36 jin_xi joined #minetest-dev
19:36 hmmmm yes, that isn't really as difficult as we initially made it out to be, though.
19:37 hmmmm nor is it inconvenient
19:37 sapier1 have a look at the proove of concept implementation
19:37 hmmmm besides, with client-side lua, we're going to have to develop a serialization thing anyway
19:37 sapier1 it's already capable of serializing functions
19:37 hmmmm probably your thing is our best shot then
19:38 hmmmm when i say we, i mean you, from the way it's looking i might not be able to work on minetest anymore with the new job unless i negotiate the contract
19:38 kahrl how does it improve performance? thinking about e.g. envlock
19:38 sapier1 it needs some updating of course as it's quite old and  most important we need to sort out which calls can be used from async threads and which cant
19:38 hmmmm karhl, computation bound things would benefit from multicore.
19:39 kahrl ah well yeah
19:39 hmmmm well
19:39 kahrl I thought the spawning algorithms had to access the map
19:39 sapier1 but yes kahrl envlock limits benefit quite a lot
19:39 hmmmm those could probably be done outside of an envlock
19:40 sapier1 yes kahrl ut maybe they could just read the part of the map they're interested in and work at that local copy ... not sure if this helps
19:40 sapier1 better option would be map access is locked only
19:41 kahrl not sure how it works at the moment but aren't on_generated callbacks run from the EmergeThread?
19:41 kahrl basically async
19:42 sapier1 if they are they still block main task due to envlock ... hmmm guess this means async threads will have same effect
19:42 hmmmm he wants them to be asyncronous from the emerge thread though
19:42 hmmmm erm
19:43 kahrl they shouldn't have to lock envlock if all they do is use mapgen objects
19:43 sapier1 I want them to not interfere with map creation or mainloop
19:43 hmmmm just FYI, i know you don't like unlocking the environment while in the script but just consider that it'd be safe to assume the data after you unlock doesn't instantly become invalid
19:43 hmmmm it's sort of like map generating
19:44 sapier1 actually they result in huge delays ... but I can't tell for sure by what reason
19:44 hmmmm you have no idea if the area you are currently generating is already there or modified or not, but you carry out the generation anyway and then 'merge' them together when you get back into the lock
19:44 hmmmm and I really doubt the map is going to change in any significant enough way to modify the path or areas to place
19:44 hmmmm within the time you take to computei t
19:44 hmmmm compute it*
19:45 sapier1 and what I can tell too is the variant queuing the spawn algorithms and doing them in on_step loop doesn't result in this big delay (most likely because the main loop doesn't need to call all jobs in a single step)
19:47 sapier1 disadvantage is if your server crashes for some other reason while jobs are queued in lua they're lost forever
19:53 VanessaE kahrl: new bug for you....
19:54 VanessaE just noticed this today, might be caused by your diagonal flowing fix:  http://digitalaudioconcepts.com/vanessa/hobbies/minetest/screenshots/Screenshot%20-%2008202013%20-%2003:53:39%20PM.png
19:54 VanessaE I don't think the water's edge is supposed to do that :D
19:54 sapier1 looks like a monster face ;-)
19:55 PilzAdam VanessaE, do you use new_style_water?
19:55 VanessaE yup
19:56 VanessaE I do
19:56 PilzAdam then dont use it
19:56 VanessaE sapier1: haha
19:57 PilzAdam this has nothing to do with the diagonal water
19:57 VanessaE PilzAdam: I'm pretty sure this started with that commit or very recently at least.
19:57 VanessaE it's never done that before that I remember seeing.
19:58 PilzAdam I know it does it since I fixed new_style_water
19:58 Akien joined #minetest-dev
19:58 VanessaE hm, guess I never noticed it before then
19:59 kahrl something is trying to load the texture "\0" in the main menu
19:59 kahrl strange
19:59 sapier1 no it isn't
19:59 sapier1 ohhh
20:00 sapier1 ok it is ... I should read more precise after answering :)
20:01 kahrl ok well here's why
20:01 sapier1 some empty variable?
20:02 kahrl unescape_string is still not fixed (I found that bug months ago and forgot about it)
20:02 kahrl "i <= s.length()"
20:02 sapier1 :-)
20:18 kahrl committed what I have so far: https://github.com/kahrl/minetest/commit/ae81adbeef9593ca2e68175937c6991207e1f363
20:18 kahrl ^ sapier1, in case you want to look
20:21 kahrl working on the table thing and textlist now
20:21 sapier1 diff is terrible on that I can't even tell whats new and what got moved only
20:21 kahrl hmm, dunno what to do about that
20:22 kahrl basically TextDestGuiEngine and MenuMusicFetcher were moved, the other things are actual changes
20:22 kahrl I moved them because they caused a bunch of headers to be pulled in
20:23 sapier1 ok maybe you should do this in different commits?
20:23 kahrl maybe
20:23 sapier1 it's hard to review those changes if different things are mixed
20:25 kahrl does git have a command "git add --lines X,Y,Z µ.cpp"?
20:25 sapier1 I don't know I'm still new to git
20:26 PilzAdam kahrl, try --interactive
20:26 kahrl PilzAdam, thanks
20:29 kahrl now how do I use this thing
20:29 PilzAdam I never used it
20:30 PilzAdam git add --help, see "Interactive Mode"
20:31 kahrl tl;dr I'll do this by hand
20:46 kahrl sapier1: https://github.com/kahrl/minetest/commits/isimpletexturesource2
20:46 proller joined #minetest-dev
20:48 sapier1 way more easy to read yes :-)
21:01 BlockMen joined #minetest-dev
21:22 kaeza joined #minetest-dev
21:28 Jordach joined #minetest-dev
21:30 proller joined #minetest-dev
21:30 proller https://github.com/proller/minetest/compare/heat
21:30 proller https://github.com/proller/minetest/compare/liquid63
21:30 proller need to make bot for autoposting...
21:59 diemartin joined #minetest-dev
22:11 Miner_48er joined #minetest-dev
22:16 VanessaE joined #minetest-dev
22:17 Guest71250 joined #minetest-dev
22:22 Zeitgeist_ joined #minetest-dev
23:49 kaeza joined #minetest-dev

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