Time Nick Message 00:58 hmmmm hrmmmm 00:58 hmmmm i just realized how big of a problem adding the compat layer for hud/particle spawners/etc. will be 00:59 hmmmm so the idea was to remove hud_add() from the core, and instead make a lua function that is a wrapper for a function in the client's builtin called "client_hud_add" 01:00 hmmmm but hud_add returns the ID, so i can't get away with assuming the operation was a success like i can the others 01:00 hmmmm i'd need to block in the server's hud_add() on the client's RPC response (the actual ID) 01:01 hmmmm i can keep it this way and accept it as being slow, and encourage people to use hud the new and improved way, or keep a server-side copy of the hud table for each player (eww) 01:01 hmmmm what do you guys think? 01:17 est31 particlespawners already have a playername value, how do they do it? 01:18 est31 blocking is very very bad, as then players can make the server lag. 01:18 est31 ofc it can have a timeout 01:19 est31 still its a bad thing to wait onto all clients to have responded. 01:20 est31 perhaps have two table types, one server-side which is central and includes all shared HUD elements, and one client-specific one, only containing the elements the client has? 01:20 hmmmm how are you going to know if the operation was actually successful 01:21 hmmmm and then you get into issues with having to stay synchronized between client and server 01:21 est31 the server also doesnt care what clients do when it sends node updates, does it? 01:22 hmmmm that's not necessarily a good design 01:22 hmmmm i'm thinking maybe i could fudge the ID as well 01:22 est31 I mean if player A mines something, and players B and C stand nearby, then should the server wait for B and C to confirm to have the update recieved until *doing anything else*? 01:24 est31 s/until/before/ 01:38 luizrpgluiz anyone knows etha? 01:42 luizrpgluiz or CactusPL? 01:56 hmmmm yeah, I suppose that is true 01:57 hmmmm but you can't break the existing interface 01:57 hmmmm what i was thinking is maybe maintaining a per-player-object mapping of IDs 01:58 hmmmm it returns instantaneously with the bogus pseudo-ID, and then allows the RPC response to come back asynchronously 01:59 hmmmm any further hud calls to that pseudo ID are mapped to the actual ID, or if not yet received, maps to it by name instead of ID 01:59 hmmmm on the client-side I'd have to do some re-ordering 02:00 hmmmm if hud commands are received and it turns out the calls failed because the specified hud element doesn't exist yet, it'll keep those actions pending in a buffer until the hud add command is received for real 02:41 est31 that sounds good 03:57 ShadowNinja ~tell Zeno` I have MCPE, they handle fast by --- not having a fast option. 03:57 ShadowBot ShadowNinja: O.K. 04:48 hmmmm oh shoot =] 04:48 hmmmm I've been leaking memory in GenElementManager::clear(), haven't I? 07:24 nrzkt hi ! 07:24 nrzkt Zeno` do you think i must cherry-pick some commits to stable 0.4 for the Android build to publish it on play store ? 07:25 nrzkt i see you do some commits which can improve the user's experience. Moreover a minetest_game update and some mods inclusion can be done 07:27 Zeno` hmm 07:28 Zeno` yeah I guess that's necessary if stable is always used for the Android release 07:29 Zeno` They are for the most part small changes anyway so won't cause conflicts; the build-related one (latest) would cause conflicts but I can't imagine that you'd cherry pick that ;) 07:31 nrzkt i will work on the new android release tomorrow, but i need to have a commit list to backport to stable 0.4 for android. Your android commits, but maybe some others 07:32 est31 Perhaps my loading bar commit too 07:32 est31 I had issues with earlier behaviour 07:33 est31 https://github.com/minetest/minetest/commit/e4f7c92cff0badd6c40b47bd90b1fc1b35456a1a 07:35 est31 #2409 07:35 ShadowBot https://github.com/minetest/minetest/issues/2409 -- Draw and react to signals while loading 07:35 nrzkt your commit bar is interesting :) 07:35 nrzkt do you think it's possible to get same think on "media" ? 07:36 est31 it already has the bar itself, adding percents is very easy, yes 07:37 nrzkt that could be cool it's another high loading time, having a progress could be interesting :) 07:38 nrzkt i really think we should switch player::HUD to std::map and remove this assert. With map we can't have id mapping problems, i will do a pr 07:43 est31 I really wonder why the media step takes so long on android 07:43 est31 in fact I have a suspicion 08:17 est31 ok it wasnt my suspicion... 08:29 nrzkt hm ? 08:31 est31 I was wondering why media load time takes so long on android 08:31 est31 I guess slower disk 08:37 nrzkt that could be possible :) 09:10 rubenwardy What does DSTACK(__FUNCTION_NAME) mean? 09:10 rubenwardy Is it used for tracebacks? 09:10 rubenwardy in client.cpp 09:10 sfan5 afaik it's used for tracebacks 09:24 nrzkt it's used when you have a Lua crash for example, it show the debug trace 09:25 nrzkt but you only see the functions which call it 09:25 rubenwardy What is a SourceImage? An image in minetest which doesn't have any ^[ filters applied to it? Eg SourceImageCache in client/tile.cpp 09:25 rubenwardy Ah, cool. I thought it was weird that not all the cpp functions had them 09:29 sfan5 rubenwardy: yes, SourceCache is for the source images before they are used for special commands 09:29 rubenwardy Thanks 09:33 nrzkt Zeno`, sfan5, kahrl, PilzAdam: what do we do with #2526 ? 09:33 ShadowBot https://github.com/minetest/minetest/issues/2526 -- findSpawnPos should use the static_spawnpoint to set the player position by nerzhul 09:35 sfan5 nrzkt: can you reword the comment you added 09:35 nrzkt which comment ? 09:35 sfan5 it's missing punctuation and isn't very clear 09:35 sfan5 nrzkt: https://github.com/minetest/minetest/pull/2526/files#diff-ad60d65b34e16a3319296bb5d683acd6R3188 09:36 nrzkt => Initialize nodepos with static_spawnpoint, if set this permit to solve 09:36 nrzkt in fact the comment is not updated since last rebase 09:37 nrzkt If the static_spawnpoint is set and we search a spawn position with the engine, return the static_spawnpoint. 09:38 sfan5 "we search a spawn position with the engine" is always the case because we're in findSpawnPos 09:38 sfan5 you could reduce it to "If static_spawnpoint is set, return it." 09:38 sfan5 that comment wouldn't be any help so you could omit it 09:38 nrzkt no sfan5, this function is called when the Lua call failed 09:39 sfan5 why would "we search a spawn position with the engine" not be true 09:39 sfan5 does findSpawnPos do something else too? 09:39 nrzkt in respawn for example: bool repositioned = m_script->on_respawnplayer(playersao); 09:39 nrzkt if(!repositioned){ 09:39 nrzkt v3f pos = findSpawnPos(m_env->getServerMap()); 09:39 sfan5 i get that 09:39 sfan5 but that doesn't make "we search a spawn position with the engine" necessary 09:40 nrzkt yes it does something else, because if we could not find any position the initial value is 0,0,0 then players are sent to 0,0,0 instead of static_spawnpoint if it's set 09:40 nrzkt and in fact, if we set a static_spawnpoint, the real function for it is to teleport players to this static spawnpoint not elsewhere 09:40 Zeno` This is what was causing me confusion as well the other day as well 09:41 sfan5 "the real function for it is to teleport players to this static spawnpoint not elsewhere" 09:41 sfan5 whatr 09:41 Zeno` Why is findSpawnPos() even called if there is a static spawnpoint? 09:41 sfan5 and why did static_spawnpoint even work? 09:41 est31 regarding #2560, I guess the problem isn't rebasing but false treatment of git. There was some pseudo-rebasing going on in the commits, and neither the commit message nor the PR title reflect the actual change. Should I post a fixed PR, or should the person learn it themselves? 09:41 ShadowBot https://github.com/minetest/minetest/issues/2560 -- Update singleplayer tab in mainmenu by poet-nohit 09:42 nrzkt for new players Zeno`, sfan5 : v3f pos = findSpawnPos(m_env->getServerMap()); 09:42 nrzkt no Lua call here 09:42 sfan5 nrzkt: you don't need to tell people to rebase their commits, we can do that when merging 09:42 Zeno` I don't get it because my new players always spawn at the static spawnpoint 09:42 nrzkt then if the 1000 loop occurences failed, the player is teleported to 0,0,0 09:43 nrzkt for me Zeno` in some cases it's not the case 09:43 sfan5 (at least not for small changes, it makes sense for the author to rebase if it's many changed) 09:43 sfan5 changes* 09:43 Zeno` how can it be happen "in some cases"? 09:43 Zeno` since that function doesn't even know about static spawnpoint? 09:44 Zeno` something isn't adding up :( 09:44 nrzkt https://github.com/minetest/minetest/blob/master/src/server.cpp#L3186 09:44 est31 "Try to find a good place a few times" 09:45 Zeno` that's what I mean... how is static spawnpoint working now when that function doesn't even use it? 09:45 nrzkt Zeno` you are right, this is very very strange 09:45 sfan5 Zeno`: builtin/game/static_spawn.lua:15: local static_spawnpoint = core.setting_get_pos("static_spawnpoint") 09:45 sfan5 it's done in lua 09:45 nrzkt yes but at player creation where is this called ? 09:45 nrzkt on_newplayer ? 09:45 sfan5 it's apparently not 09:45 Zeno` This is what I've been saying all along... I don't think it fixes the bug that triggered this fix being made 09:46 sfan5 actually it is being called 09:46 sfan5 core.register_on_newplayer(function(obj) 09:46 sfan5 put_player_in_spawn(obj) 09:46 sfan5 end) 09:46 sfan5 (builtin/game/static_spawn.lua:26-28)= 09:46 nrzkt then the problem is in Lua it's not triggered everytime 09:46 sfan5 hm, wasn't there that you can't do some things in on_newplayer? 09:47 sfan5 hm 09:47 sfan5 it works in my spawnpoints mod 09:47 sfan5 and i do basically the same in on_newplayer 09:47 sfan5 except that i return true 09:47 nrzkt it works ~95% on my server too 09:48 nrzkt i don't use any spawnpoint mod, only the original 09:57 rubenwardy How can I clean a directory path? 09:57 rubenwardy I want to read from a file in a directory 09:57 rubenwardy directory could be /some/dir or /some/dir/ 09:58 est31 rubenwardy, in which lang? 09:59 rubenwardy C++, Minetest 09:59 est31 or it can be C:\some\dir\... 09:59 rubenwardy Yeah, exactly 09:59 rubenwardy Basically, I want to join a directory path and the name of a file in that directory 10:00 est31 yea 10:03 sfan5 rubenwardy: if the last char is / or \ append the file name otherwise find out which seperator is used append the seperator and then the filename 10:03 Zeno` has the DMCA rubbish been sorted out? 10:03 Zeno` i.e. retracted 10:04 Zeno` because this might end up with Linux distros removing minetest from their repos if they get word 10:04 Calinou lol, no 10:05 Zeno` Umm, true 10:05 rubenwardy Thanks, sfan5 10:05 Zeno` because the last thing a distro wants is a DMCA takedown notice 10:05 rubenwardy Didn't think it would be as simple as that 10:06 Zeno` they'd have to take down all their ISOs and remove the software from the mirrors 10:06 Zeno` I can't imagine them liking to do that 10:07 Zeno` So they'll simply avoid packaging minetest "just in case" 10:08 nrzkt lol 10:08 Zeno` I guess I'm just finding it hard to get motivated contributing to a project that does not believe in free software 10:09 nrzkt Inventory works like Hud... with a version which could be desync because of wrong packet ordering... 10:10 sfan5 Zeno`: why would distros get a dmca about mt? 10:10 Zeno` same reason nrzkt sent out a DMCA to another complying fork 10:10 Zeno` (i.e. no idea) 10:10 nrzkt why would we send a DCMA against distros and compliant forks ? 10:11 nrzkt useless 10:11 Zeno` I don't know 10:11 Zeno` I wouldn't have thought we'd issue against compliant forks either 10:11 nrzkt then no DMCA :) 10:12 Zeno` So it was retracted? 10:12 sfan5 why would distros avoid packaging mt when they are complying with the terms? 10:12 Zeno` sfan5, the fork was complying with the terms as well 10:12 sfan5 i know 10:12 sfan5 but answer my question 10:12 Zeno` The "impression" is that we send out DMCA notices for no reason 10:12 Zeno` and that makes people nervous 10:13 Zeno` But a big distro, say RedHat, would probably just sue c55 10:13 Zeno` and keep distrubiting it 10:14 sfan5 uhh no 10:14 nrzkt Zeno`: google doesn't permit it 10:14 Zeno` how no? 10:14 sfan5 redhat would sue the person issuing the false dmca notices 10:14 Zeno` ok they'd sue nrzkt 10:14 Zeno` nrzkt, what doesn't google permit? 10:14 Zeno` LGPL software? 10:14 nrzkt retractation 10:15 Zeno` Well I guess you'd better hope the person doesn't have enough money to sue you lol 10:15 nrzkt the DMCA is a basic form with a text and a mail. After sending (without auth or anything) you only have notifications and no asnwers possible 10:15 sfan5 actually you can mail to the addr you got the mail from 10:15 sfan5 i think 10:15 nrzkt it's a no reply 10:15 Zeno` sfan5, so you're sure we can't all be sued? 10:15 Zeno` just the person who sent it? 10:16 Zeno` if so, I guess it's ok 10:16 sfan5 Zeno`: ianal 10:16 Zeno` heh 10:16 sfan5 other things just wouldn't make that much sense 10:16 sfan5 nrzkt: removals@google.com is noreply? 10:16 sfan5 actually 10:16 sfan5 it _can't_ be no reply 10:16 sfan5 i replied to that address before 10:17 nrzkt you are right 10:18 nrzkt try to change the thing 10:19 sfan5 Zeno`: consider this: bad person #123 is issuing false dmca requests in the name of company #321, why would company #321 get sued about that? 10:19 ShadowBot https://github.com/minetest/minetest/issues/123 -- crashes after about 10 seconds on game start 10:19 ShadowBot https://github.com/minetest/minetest/issues/321 -- New elements in formspec, item_image and item_image_button. by RealBadAngel 10:19 ShadowBot https://github.com/minetest/minetest/issues/321 -- New elements in formspec, item_image and item_image_button. by RealBadAngel 10:19 sfan5 thanks ShadowBot 10:19 sfan5 you've been very helpful 10:19 nrzkt xD 10:20 Zeno` true 10:30 nrzkt someone tested #2375 ? 10:30 ShadowBot https://github.com/minetest/minetest/issues/2375 -- Fix superflous shader setting updates by rubenwardy 10:30 Zeno` I tested it a while ago 10:30 rubenwardy It's flawed in design, too many factories 10:31 rubenwardy gregorycu has gone away, it appears 10:31 Zeno` getting rid of the class SkyBackgroundColorProvider would be a nice start 10:32 Zeno` either that or use it everywhere; even if it was used everywhere it seems like a bit of an overkill 10:33 Zeno` pretending to hide a global by adding another class that's global is sort of like those endless mirrors heh 10:33 nrzkt xD 10:36 Zeno` it does seem to result in a nice performance increase though 10:37 nrzkt Zeno`, rubenwardy, do you have some time to cleanup this PR to a better design ? 10:37 Zeno` Maybe I can look at it tomorrow 10:38 rubenwardy I'm not really the maintain, I just fixed a bug in it. I probably should have released it as a patch rather than a new PR. 10:38 Zeno` I think hmmm may have been looking at it as well but I'm not sure (maybe he was just commenting) 10:39 Zeno` class MainShaderConstantSetterFactory : public IShaderConstantSetterFactory <-- almost doesn't fit on one line of my editor hehe 10:39 nrzkt call it mscsf :D 10:42 Zeno` I kind of don't get it either... is there are meaning behind class IShaderConstantSetterFactory that I'm missing? It's got a single member function that's pure virtual 10:44 Zeno` Maybe it's so lists can have GameGlobalShaderConstantSetterFactory as well as some not yet implemented other type of factory, I really don't know :( 10:44 Zeno` YAGNI? 10:45 Zeno` Oh there's also MainShaderConstantSetterFactory 10:45 Zeno` so many factories 10:45 Zeno` I will look tomorrow I think, it's giving me a headache 10:46 kilbith you're not enough smart for that 10:47 Zeno` I will add a FactoryFactory 10:47 Zeno` kilbith, probably not 11:00 rubenwardy #2575 11:00 ShadowBot https://github.com/minetest/minetest/issues/2575 -- Add texture overriding by rubenwardy 11:04 xenkey Hi 11:09 rubenwardy Changed #2575 slightly, added "all" and "sides" 11:09 ShadowBot https://github.com/minetest/minetest/issues/2575 -- Add texture overriding by rubenwardy 11:10 rubenwardy Or it would have been added if Github isn't so bad atm 11:10 rubenwardy push isn't working... 11:11 rubenwardy done 11:21 est31 nrzkt, media updates are harder than I thought 11:25 PilzAdam rubenwardy, https://github.com/minetest/minetest/pull/2575/files#diff-34f48ad91ac6c202ac60b0348ae90e30R1638 you can just remove this whole if 11:25 PilzAdam just always append DIR_DELIM 11:27 rubenwardy That's safe? 11:28 PilzAdam yes, /some//dir/file.txt is a valid path 11:30 nrzkt est31: okay 11:38 nrzkt as i see on play store comments, users wants mobs 11:41 nrzkt hm... what about adding unified_inventory into the android minetest_game ? It could improve greatly user experience and add the missing feature for the crafting guide 11:41 Calinou unified inventory looks like crap 11:41 Calinou until this is fixed, it can't be considered for inclusion 11:42 nrzkt what is the problem with this mod ? 11:42 xenkey problem "looks like crap" 11:42 nrzkt then Calinou, propose a better UI :p 13:13 cd2 How can I compile minetest for windows on linux? (cross-compiling) 13:19 cd2 How to compile minetest for windows on linux? (cross-compiling) 13:25 sfan5 cd2: the buildbot allows you to do just that https://github.com/minetest/minetest/tree/master/util/buildbot 13:25 cd2 how do I use It? 13:26 cd2 I tryed it but I didnt undersatnd it :( 13:28 sfan5 you need to install mingw, adjust the toolchain.cmake files and the buildbot does the rest 13:31 cd2 thx 13:46 cd2 sfan5 : my computer says that there is no 7z package 13:47 cd2 and I cant install it with apt-get install 13:48 cd2 Is "7z" a command of 7zip? 13:48 sfan5 cd2: sudo apt-get install p7zip-full 13:49 cd2 thx 14:24 kilbith sfan5, i'd be interested by your opinion on the #2555 featuring 14:24 ShadowBot https://github.com/minetest/minetest/issues/2555 -- Add display resolution settings by kilbith 15:06 PilzAdam https://launchpadlibrarian.net/201607863/buildlog_ubuntu-precise-i386.minetest_201503301416-0~3653~ubuntu12.04.1_BUILDING.txt.gz 15:06 PilzAdam I get emails daily saying that the 12.04 build fails 15:06 PilzAdam can someone fix this? 15:53 rubenwardy #2575 15:53 ShadowBot https://github.com/minetest/minetest/issues/2575 -- Add texture overriding by rubenwardy 16:45 kahrl ShadowNinja: 93fcab952b didn't update the line util/bump_version.sh:90 to VERSION_STRING instead of VERSION_PATCH 19:22 luizrpgluiz as I force the players to be born within a cordenada x, y and z? 19:24 luizrpgluiz because the static spawn point does not work when new players enter the server 22:02 paramat hmmmm, working on treegen.cpp i notice trunk nodes only replace air, so will be chopped up by other tree's leaves instead of growing through them. can i force place trunk nodes instead? or, i could check for leaves and apple nodes but that is slower, also, trees are not placed under obstructions so forced trunks seems okay 22:32 hmmmm i think hard coding which nodes to force place is okay for trees because the entire tree generation algorithm is hardcoded 22:37 paramat i agree. i had to do some clever stuff with pinetree gen to avoid floating snow. i'll force place trunks the faster way then 22:38 hmmmm hrmm 22:39 hmmmm wonder how i should handle biomes cleared that are referenced in another decoration that wasn't deleted 22:39 paramat we still need to make sure schem trees force place trunks but not force place leaves, i'll be interested in how you do that 22:39 hmmmm man i have so many schematic things todo that i'll never get anything done with mapgen v8 22:41 paramat mapgen is enough for 2 full time jobs 22:42 hmmmm well i think that's only because minetest has a good mapgen infrastructure and lots of moddability 22:42 hmmmm in most other minecraft-like games it's a complete afterthought 22:42 hmmmm "yeah, perlin noise, procedural generation, cool. did that, next item of business..." 22:44 hmmmm anyway getting back to deleted biomes 22:45 hmmmm how it works with schematics, if the schematic list is cleared and there's still a ref to one from a decoration, it'll orphan the schematic 22:46 hmmmm it'll exist in memory and get deleted when the decoration using it is deleted, like a ref-counted smart pointer-lite, but this kind of logic isn't easily extensible to biomes 22:47 hmmmm i think i'll have to scan through the deco list for any decos using biomes and remove their biome refs 22:47 hmmmm this would desynchronize the core from the lua shadow table 22:48 hmmmm or i just duplicate the custom logic in the builtin register_thing wrapper