Minetest logo

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

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

All times shown according to UTC.

Time Nick Message
00:24 ShadowNinja https://github.com/minetest/minetest/blob/master/builtin/mainmenu_helper.lua#L59 It seems this replaces newlines with spaces. Why?
00:30 diemartin joined #minetest-dev
00:58 kaeza joined #minetest-dev
01:26 kaeza joined #minetest-dev
01:49 diemartin joined #minetest-dev
02:34 jojoa1997 joined #minetest-dev
02:38 blaaaaargh joined #minetest-dev
02:51 jojoa1997 joined #minetest-dev
03:09 ch98 joined #minetest-dev
03:10 hmmmmm joined #minetest-dev
03:21 hmmmmmm joined #minetest-dev
03:25 hmmmmm joined #minetest-dev
04:20 ssieb joined #minetest-dev
04:35 neko259 joined #minetest-dev
06:01 ch98 joined #minetest-dev
07:00 NakedFury joined #minetest-dev
08:45 darkrose joined #minetest-dev
08:55 Calinou joined #minetest-dev
09:01 Taoki joined #minetest-dev
09:20 kahrl https://github.com/minetest/minetest/issues/822
09:21 kahrl ^ causes VanessaE's server to be down currently
09:26 around joined #minetest-dev
09:37 proller joined #minetest-dev
10:28 whirm joined #minetest-dev
10:34 kaeza joined #minetest-dev
11:16 Calinou joined #minetest-dev
11:27 serengeor joined #minetest-dev
11:40 diemartin joined #minetest-dev
11:42 PilzAdam joined #minetest-dev
13:06 around joined #minetest-dev
13:53 diemartin joined #minetest-dev
13:58 proller joined #minetest-dev
14:10 NakedFury joined #minetest-dev
14:16 hmmmm joined #minetest-dev
14:49 Jordach joined #minetest-dev
15:28 Calinou joined #minetest-dev
15:49 kaeza joined #minetest-dev
16:20 tango_ joined #minetest-dev
16:29 smoke_fumus joined #minetest-dev
16:48 iqualfragile joined #minetest-dev
16:55 neko259 joined #minetest-dev
16:55 ssieb joined #minetest-dev
16:58 Zeg9 joined #minetest-dev
17:18 Calinou joined #minetest-dev
18:15 iqualfragile joined #minetest-dev
19:05 proller joined #minetest-dev
19:10 PilzAdam joined #minetest-dev
19:11 iqualfragile joined #minetest-dev
19:16 Jordach_ joined #minetest-dev
19:22 hmmmmm joined #minetest-dev
19:29 sapier joined #minetest-dev
19:30 Anchakor1 joined #minetest-dev
19:33 sapier ShadowNinja newlines are replaced because there is exactly one gui element that is capable of newlines and that one isn't very often used within mainmenu. In all other gui elements newlines will result in major graphics glitches. Decision is to either let newlines in, resulting in test not beeing drawn at all or replace them so at least the information is preserved.
19:34 sapier ok it's preserved as far as possible if there's no space left it can't be shown anymore
19:34 ShadowNinja sapier: Shouldn't you not convert them and have usrs fix mods if they have newlines? That way you can use that one graphical element.
19:35 sapier the escape function isn't called automaticaly
19:35 sapier but maybe adding a bool value to the escape function would be a nice feature for menu programmers
19:40 ShadowNinja sapier: Also, why mainmenu_helpers.lua and not just helpers.lua?
19:41 sapier actualy I wanted to distinguish between server lua files and mainmenu files but ... yes it's not consistent with modmgr modstore and gamemgr too
19:42 sapier I already thought about renaming those but atm I'm still looking for a better option
19:46 thexyz_ joined #minetest-dev
19:46 VanessaE_ joined #minetest-dev
19:49 ShadowNinja sapier: dofile(minetest.get_modpath("__builtin").."misc_helpers.lua") In the main mainmenu file.
19:52 sapier yes I guess that's a usefull optmization now after almost all helpers have been added to mainmenu_helper too
19:53 sapier right after the bugfixes ;-)
19:53 sfan5 joined #minetest-dev
20:07 sapier https://github.com/minetest/minetest/pull/823 plz check and merge: alphabetic sorting, selection of new created world
20:08 sfan5 sapier: one word: squash
20:09 sapier no
20:09 PilzAdam sfan5, the core dev who merges it can squash it
20:09 PilzAdam sapier, Ill test it
20:09 sapier I won't squash different features anymore as they can't be merged separatly if squashed
20:10 sapier btw the first 2 ones should already be merged to core
20:10 PilzAdam "util/updatepo.s doesnt work anymore is a can't fix" <- this means "I will gladly update all the .po files by hand in the future, since I have broken our utils"
20:11 sapier if you don't want that you'll have to remove formspec menu completely I don't se any way to parse texts from buttons
20:12 sapier i18n is known to be broken since I first proposed formspec menu
20:14 PilzAdam thats not good
20:14 sapier but maybe we can add a core feature to create po files in runtime ... while this could be used by mods too it requires each gui element to be activated to be saved to the file
20:16 around joined #minetest-dev
20:17 PilzAdam "No newline at end of file" be sure to have an empty line at the end of files
20:19 sapier can someone explain to me why this is a problem? ... yes I know some compilers etc complain about it but I still don't undertand why it should be a problem
20:19 PilzAdam its better code style
20:19 PilzAdam it looks too cut-off if there isnt one
20:19 sapier coding style for purpose of coding style isn't a reason
20:20 PilzAdam also since almost everyone does it, you can be sure that your editor doesnt miss a line
20:20 sapier if anyone is happy with nsa surveillance I still wont be ;-) ... but I guess you don't know a real reason too
20:21 PilzAdam I just listed 2 reasons....
20:22 sapier looks cut of and everyone does it are no reasons and why should a editor miss a line I'm the one writing the lines? ;-)
20:22 proller sapier, did you fix public server description?
20:22 proller with port and flags
20:23 sapier what exactly do you mean? I fixed some things about public server list yesterday ... don't remember anything about flags
20:23 PilzAdam sapier, uniformity is a major reason why we have code style guidelins at all; so "everyone does it" is a completly valid reason
20:24 PilzAdam sapier, https://github.com/PilzAdam/minetest/commit/52beafff5310ae9fd0078af38ac2bb9142ac2cfb
20:24 sapier any good coding style rule has at least some real reason "just because anyone does" it isn't one ... improves readability e.g. is one
20:26 PilzAdam what about using right and left key to switch the game? </random_suggestion>
20:26 sapier your commit seems do be fine
20:26 sapier interesting idea but I suggest adding this later
20:26 PilzAdam and alt + left/right switching tab or so
20:26 sapier no
20:28 sapier at least not by me :-) modifyer keys are something completely different irrlicht is already unable to cope with doubleclicks ;-)
20:28 kahrl sapier, I often use unix tools (grep, sed, awk, ...) to work on minetest
20:28 kahrl and I don't know if all of them handle a missing newline at the end gracefully
20:29 sapier hmmm as the newline rule seems to be more common on unix that might even be the real reason for it ... thx kahrl
20:29 PilzAdam sapier, updated #814
20:30 thexyz we need lua codestyle guidelines
20:30 sapier what about the "All the mods of modpacks" how do we want to fix it? treelists in lua aren't available right now
20:30 PilzAdam thexyz, just look at what we already have in builtin and minetest_game
20:31 sapier thexyz true but who should write them the c++ coders or the modders?
20:31 PilzAdam sapier, treelists would be a good solution
20:31 sapier but not very intuitive to be built as formspec
20:32 sapier not talking about selection handling
20:32 PilzAdam maybe just show all the sub-mods of modpacks if one of the mods or the modpack is selected
20:33 thexyz sapier: I vote for celeron55
20:33 sapier still quite complex ... what about a similar way I took for game mods?
20:34 sapier a checkbox if selected all modpack mods are shown too (in different color) if not they're hidden
20:34 PilzAdam maybe
20:35 PilzAdam btw, the "Hide Game" looks very missplaced at the bottom
20:35 sapier if you know a better place ;-)
20:35 sapier hmm  I already dislike my suggestion ... it'll require a list handling as complex as worldlist handling :-(
20:35 PilzAdam I just noticed that I have 2 "abhängig von" lists
20:36 sapier oops .. one should be named different
20:37 PilzAdam ... and the "Hide Game" switch doesnt even work for me
20:37 sapier do you have game mods?
20:37 PilzAdam minetest_game
20:37 sapier they should be shown in blue
20:37 PilzAdam they arent
20:38 sapier I wonder what broke them again
20:38 PilzAdam it works in Pilztest
20:38 sapier strange
20:39 PilzAdam and there is much debug output printed to console
20:39 sapier debug output by which part?
20:40 PilzAdam e.g. "checkbox nether disabled", "found disabled mod: >nuke<"
20:40 PilzAdam and the "Enable all" button is missing
20:41 sapier :-) plz update 814
20:41 sapier wait
20:41 sapier enable all is available for modpacks only
20:42 PilzAdam there should be one for all mods
20:42 kahrl btw it shouldn't look for depends.txt in modpacks, I don't think the core loads them
20:42 sapier as far as I remember depends.txt is used to decide if it's a modpack or not
20:43 kahrl no, modpack.txt
20:43 sapier ahh yes
20:43 kahrl parseModContents is the exact algorithm
20:44 sapier isn't done in core
20:44 PilzAdam sapier, 814 updated
20:45 kahrl maybe parsing mods and their dependencies should be delegated to the core
20:45 kahrl having it done twice in different ways leads to bugs and inconsistencies
20:45 sapier I'm not sure about the enable all button ... especialy as we want to make users enable mods on per world base
20:46 PilzAdam sapier, added one more point
20:46 sapier it's almost useless if you have different mods downloaded you most likely never will use same time
20:46 sapier and I guess that will be most common case
20:46 PilzAdam there are many people that always use all their mods
20:47 PilzAdam and the button was a good excuse when they whined because of the new per world system
20:47 sapier that is a decision of how you want to design minetest
20:47 sapier should engine be a base for different games or for a single one only
20:47 sapier if you view it from "different games" perspective enable/disable all are useless buttons
20:48 proller sapier, before you servers in list have name and flags
20:48 sapier name and description should be shown
20:48 kahrl maybe for more complex configurations we could add a "copy configuration" button
20:48 PilzAdam sapier, you cant really know how people will use it; and a useless button is not as bad as a missing one
20:48 sapier is this wrong .. flags should be shown too
20:49 kahrl which copies the mod configuration from one world to another
20:49 sapier but yes you're right i remember they arent
20:49 sapier gui just isn't big enough to put all this in on mask
20:49 sapier a crowded gui is as bad as a missing feature
20:51 sapier imho we should decide how we see minetest and create a gui for this. everyone now can create it's own gui so we aren't forced to push two views that never can match into one
20:52 sapier kahrl I'd suggest to add the copy to world creation ... same as game selection add a different dropdown to allow copying mod settings from that world
20:53 kahrl that could be done too
20:53 kahrl but it's also a useful feature for existing worlds
20:54 sapier yes but you have to keep in mind the gui is quite simple
20:54 PilzAdam kahrl, push your voxelarea helpers already :-)
20:54 kahrl PilzAdam: ok :)
20:54 sapier if we would have rightclick context menus and mouseclick events that'd be easy but we havent
20:55 sapier with current menu we almost need a new dialog to make copy at least a little bit intuitive
20:55 kahrl sapier: the idea I had was making the world configuration contain multiple tabs: "Addon Mods" "Game Mods" "World Mods" "Copy"
20:55 sapier interesting idea but lots of work to do
20:56 sapier we don't have tabs in menu
20:56 PilzAdam sapier, updatepo.sh detects all the gettext() calls in .cpp and .h files in src/ AFAIK, how about just "faking" one that isnt compiled that contains all of the messages?
20:56 kahrl can't the main menu tabs be reused somehow?
20:56 sapier no
20:56 kahrl hmm
20:56 sapier tabs in formspecs are just a buttonlist
20:57 sapier you'd need to copy the tab mechanism from mainmenu and switch between those
20:57 sapier possible yes ... but lots of typework and work to get it clean
20:59 sapier remember we only have a tabheader element in formspec ... the whole gui change needs to be done in lua everytime a tabbutton is clicked ... you don't even get the tabname but only the index
21:00 kahrl unrelated: any idea what should be done about https://github.com/minetest/minetest/issues/822?
21:00 kahrl PilzAdam, hmmmmm ^
21:00 sapier PilzAdam would be at least better than updating by hand still that "fake-file" needs to be written by hand
21:01 SpeedProg joined #minetest-dev
21:01 sapier 4096 nodes? WOW
21:02 PilzAdam kahrl, do what 791 tried to do
21:03 PilzAdam sapier, do you want to write 1 file by hand or 22?
21:04 sapier as I said better than updating by hand still we could find a better solution ;-)
21:04 PilzAdam maybe add comments with "gettext()" in the .lua files and include them in updatepo.sh?
21:04 hmmmmm [04:19 PM] <sapier> can someone explain to me why this is a problem? ... yes I know some compilers etc complain about it but I still don't undertand why it should be a problem
21:04 hmmmmm technically it isn't valid C++ if it doesn't have a newline at the end of a file
21:05 sapier it's lua ;-)
21:05 hmmmmm and "newline missing" warnings are very annoying and cannot be supressed
21:05 hmmmmm oh
21:05 hmmmmm yeah, seriously, consistency purposes, just do it.  it's not breaking your finger to press the enter key, is it?
21:05 sapier but thexyz alread gave another good explanation command line tools on unix like os
21:05 kahrl would it be possible to change CONTENT_IGNORE and CONTENT_AIR to 0 and 1?
21:06 kahrl does anything in minetest rely on the exact values?
21:06 hmmmmm not really
21:06 hmmmmm why would you do that, though?
21:06 kahrl hmmmmm: changing ContentFeatures array to a vector
21:06 hmmmmm oh right
21:06 hmmmmm yeah, sure, air and ignore could be 0 and 1 just fine
21:06 kahrl any serialization problems?
21:06 hmmmmm nope
21:07 hmmmmm why do i have a feeling that something else is going to break even though it shouldn't
21:08 hmmmmm also i have literally no idea why they're 126 and 127 in the first place.  it's so arbitrary
21:08 kahrl a relic from 0.3
21:08 hmmmmm back when 8 bit content_ts were in, there was a reason
21:08 hmmmmm and they were 254 and 255
21:08 PilzAdam hmmmmm, to troll Jordach: https://github.com/minetest/minetest/issues/822#issuecomment-20805844
21:08 hmmmmm but these are...halved?
21:09 hmmmmm "which is probably air" - way to assume
21:09 hmmmmm you know what they say about assuming?  it makes an ass out of u and me
21:09 kahrl the top bit specified that the rest of the content_t was stored in param2
21:09 kahrl and that was bad for performance if every air and ignore node had that property
21:09 hmmmmm oh
21:10 kahrl ...afaik, it's been a long time
21:10 hmmmmm yeah, that seems real old
21:10 hmmmmm I sorta like what Blockscape does with their versions of MapNodes
21:10 hmmmmm instead of having just a content_t, they split it up into a block shape and a material
21:11 hmmmmm so you can have only one stairs block and it could be textured in any way you wish
21:16 nyuszika7h joined #minetest-dev
21:28 Miner_48er joined #minetest-dev
21:30 Mind_ joined #minetest-dev
21:33 Mind_ left #minetest-dev
21:46 kahrl changing it to a vector is certainly not as easy as #791 made it out to be
21:47 kahrl for example the client relied on the fact that all unused node IDs have a valid ITexture* for unknown_node.png
21:47 kahrl of course with a vector they don't even exist
21:47 kahrl I'm tempted to make a CONTENT_UNKNOWN = 2 for just this purpose
21:48 hmmmmm i say do it
21:48 hmmmmm also, this would make things a bit cleaner so you can differentiate between "node not found" and "error"
21:49 hmmmmm and "nothing had been placed here"
21:57 kahrl so should I change getId(name) to return CONTENT_UNKNOWN on error?
21:57 kahrl seems like a significant change
21:58 hmmmmm it is.... that ought to stay the same, but for any new interfaces, CONTENT_UNKNOWN should be used if the node is unknown and CONTENT_IGNORE for an error
22:26 iqualfragile joined #minetest-dev
22:44 * VanessaE_ peeks in
22:45 VanessaE_ oh sure, the conversation dies down an hour before I return home.  figures :)
22:45 sapier left #minetest-dev
22:51 SpeedProg1 joined #minetest-dev
22:57 PilzAdam https://github.com/PilzAdam/minetest/commit/6517377c9be8f83ec9d5ba02c437e802e0ee8fc5
22:57 PilzAdam I found this old issue https://github.com/minetest/minetest/issues/79 and though its a good idea
23:05 ecube joined #minetest-dev
23:29 iqualfragile joined #minetest-dev
23:32 kahrl this is what I got so far: http://mysticpaste.com/view/VqoAGphbDQ?3
23:32 kahrl it works (surprisingly) without any problems in singleplayer
23:33 VanessaE_ why hard-code it to 0xfff?
23:33 VanessaE_ nevermind, I'm not reading it clearly.
23:33 kahrl I also tried removing register_node calls and loading the map, adding more than 4096 register_node calls and loading the map, etc.
23:33 kahrl works
23:34 kahrl when I joined a server all air was unknown nodes, as would be expected
23:34 kahrl so this also needs a protocol version bump
23:36 hmmmmm you sure that having getIds return CONTENT_UNKNOWN is a good idea?
23:36 hmmmmm if not found*
23:36 hmmmmm you'd have to change a lot
23:36 hmmmmm getId rather
23:37 kahrl did I do that?
23:37 Exio4 kahrl: how does a client react to that?
23:37 Exio4 (to that = change)
23:37 hmmmmm CNodeDefManager::get()
23:37 Exio4 old client i mean, too :P
23:37 kahrl Exio4: haven't tried hosting a server
23:37 kahrl hmmmmm: not sure
23:37 hmmmmm unless i'm somehow reading it wrong
23:38 hmmmmm in any case, there's a lot of code that relies on getId returning CONTENT_IGNORE on not found
23:38 hmmmmm so it'd break all that
23:38 Exio4 kahrl: and that client to some server? (just wondering, and i'm leaving right now :/)
23:38 kahrl getId still returns CONTENT_IGNORE
23:39 kahrl Exio4: all air is unknown nodes (solid)
23:39 kahrl and I didn't check, but I think whatever is content_t = 0 on the server would be CONTENT_IGNORE on the client
23:39 PilzAdam I am not sure if this huge incompatibility is good, currently you can connect to to a 0.4.4 server without major issues
23:39 Exio4 you said that, nevermind..
23:40 hmmmmm oh, nevermind, i misread that
23:40 kahrl I thought there were several protocol changes since then
23:40 hmmmmm for some reason that diff is really hard to read
23:40 PilzAdam kahrl, but nothing major
23:42 kahrl I don't think it's possible to change the values of CONTENT_AIR/IGNORE then
23:43 kahrl will be possible to leave them intact I guess, but will make NodeDefManager hard to understand
23:43 PilzAdam cant you just hack in somewhere and swap 0 and 126 when recieving content from an old server?
23:43 Exio4 is there anything that would cause big protocol "changes" like this?
23:44 Exio4 so you pack the changes in "one big change that breaks compatibility" and not more than one? :P
23:44 kahrl PilzAdam: could but that sounds really hacky
23:44 kahrl Exio4: yeah, let's do the move to TCP ;)
23:45 Exio4 hehe
23:45 Exio4 kahrl: where you one with that "request-chunks" branch?
23:45 Exio4 where the client requested mapblocks to the server instead of the server guessing them
23:45 Exio4 s/requested/requests/
23:46 hmmmmm that was someone else
23:46 hmmmmm that guy doesn't come around anymore.....
23:46 Exio4 i don't recall how that branch was called nor who did that, that is why i asked
23:46 kahrl celeron wrote the TCP socket code and someone (DavidMikeSimon?) wrote the client-request-blocks code
23:47 hmmmmm i think we should continue on with that
23:48 Exio4 kahrl: work for you! ;P
23:50 hmmmmm hmmmmmm i guess it's a good time to try out my idea of sending all the blocks in the radius like minecraft does
23:50 kahrl https://github.com/celeron55/minetest/commits/tcp_blocks_2 I think this is the newest version of that branch
23:50 PilzAdam any comments on https://github.com/PilzAdam/minetest/commit/6517377c9be8f83ec9d5ba02c437e802e0ee8fc5 ?
23:51 kahrl PilzAdam: not sure but are player names case sensitive?
23:52 kahrl other than that it looks good
23:53 PilzAdam yes, they are case sensitive
23:53 kahrl even on windows?
23:54 kahrl how does it use different player files?
23:54 PilzAdam good question
23:55 kahrl this is starting to look like a deeper problem :P
23:55 PilzAdam ... as always ;-)
23:56 kahrl guess you can do a case insensitive comparison in that commit, to be always on the safe side
23:57 Exio4 kahrl: two things, would be possible to reserve like the first 16 ids to "placeholders"? in case in a future MT gets a CONTENT_SOMETHING or so, (i say 16, but i guess it can even be 8?)
23:57 Exio4 and doesn't break the compat with that change, the other thing, will you work with the TCP code? :P
23:58 hmmmmm don't really see any point to that....
23:58 kahrl ^ yeah, there's not really much reason to add new CONTENT_ codes
23:59 Exio4 i don't see any point right now either

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