Time Nick Message 00:12 paramat hmmmmm before vertextangents 38fps, after 30fps, fps falls to 79%. view range 320 no fog. i was hoping the drop was small but this supports your tests 00:15 VanessaE paramat: RBA is gonna hate you now. :) 00:50 hmmmmm paramat: i was hoping it was just me too. type covariance works, the problem was that there's a std::vector of S3DVertexes, in order to make it "work" you'd have to store pointers to the vertexes instead of the vertexes themselves 00:50 hmmmmm which would be ok if they're heap allocated which I am not sure if they are 00:51 hmmmmm I think it would ultimately help more to find out what it is about s3dvertextangent that makes it so much slower and fix *that* 00:51 paramat ok thanks, i hope there's some way to improve performance with shaders disabled 00:53 paramat hopefully RBA can come up with something that makes the fps drop worth it, bumpmaps are not 00:53 hmmmmm i hate to say this paramat but it's not likely you will personally be able to solve this, there's a lot of prerequisite knowledge involved in how to profile these sorts of things and it's very likely the issue exists at a lower level of abstraction 00:54 paramat i agree i'm sure i won't be able to :) 02:50 gregorycu Hey kids 02:53 gregorycu Anyone else care to comment on https://github.com/minetest/minetest/issues/3204 02:59 hmmmmm what's wrong with extracting it to a temp directory? 02:59 hmmmmm fwiw the virtual filesystem is what eduke32 does and it's a total mess 03:01 gregorycu Not familiar with eduke32 to be honest 03:01 gregorycu I see 03:02 gregorycu Thought this would be more correct 03:02 hmmmmm the simpler solution that requires less coding is more correct :-) 03:02 gregorycu (I was initially thinking of unzipping, but they may not want any/all of the mods in the zip_ 03:02 gregorycu ) 03:03 hmmmmm if that's a concern they can make a PR about it later 03:03 gregorycu ? 03:03 hmmmmm i'm saying that your what-if scenario is scope creep 03:03 gregorycu Prefer to avoid the problem in the first place? 03:04 hmmmmm right now i'm sure 95% of users would be satisifed with the solution that takes all of 30 lines 03:06 hmmmmm yea so i vote for the extract-to-temp-dir solution over the vfs 03:06 gregorycu Alright 03:07 hmmmmm unless you already coded the VFS thing.. 03:07 gregorycu Half way 03:07 hmmmmm i feel like that's a lot of unnecessary bloat, though 03:07 hmmmmm how did you implement it 03:07 hmmmmm i guess you just replaced all the filesystem calls with minetest ones? 03:08 gregorycu I've hooked dofile which was simple 03:08 gregorycu Then i saw questions around mod security, so I'm not actually sure how far down the rabbit hole I actually need to go 03:08 hmmmmm yup there's all that too 03:08 gregorycu The vfs is just a map of filepaths to uncompressed data 03:09 hmmmmm oh i get it, so you're extracting files on an as-needed basis 03:10 hmmmmm are you sure hooking dofile would work as intended? what about all the asset files 03:11 gregorycu Yep, they would need special treatment 03:23 paramat floodable PR is updated and tested https://github.com/minetest/minetest/pull/3501 03:34 gregorycu Thanks paramat 03:35 paramat don't forget to follow up "decompressZlib(std::istream &is, std::ostream &os) actually looks very broken?" hmmmm is the schematics guy 03:35 gregorycu Awesome 03:38 gregorycu First off, readsome may return no data, when there is more data to read, secondly z.avail_in is never reset back to 0, which is required for it to read more data... I think 03:38 gregorycu hmmmmm: Are you able to take a look to see if I'm crazy or not 03:38 gregorycu serialization.cpp line 128 03:38 hmmmmm I dunno man the unit tests work for zlib 03:40 gregorycu Maybe I should contrive a failing unit test then? 03:40 hmmmmm that would be best yeah 03:40 hmmmmm that's the standard procedure at my current workplace 03:40 gregorycu Can I ask where you work? 03:40 hmmmmm if we find a bug you need to write a unit test that exposes the bug, unless it's really technically implausible to do so 05:43 gregorycu hmmmmm: Naturally that change didn't fucking work 06:06 gregorycu The change is causing uget to fail 06:07 gregorycu Not really sure what can be done, to be honest 06:11 hmmmmm hrmmm interesting 06:12 sofar so forceload_block causes the server to load an area, but is there a way to have a *client* receive map data on demand from lua? 06:12 hmmmmm i have no idea why unget would be failing, step through it with a debug version of libstdc++ perhaps? 06:13 hmmmmm sofar: not to my knowledge, no, you'd have to mark the block as unsent 06:14 gregorycu lol, looking at the code, it may not be 06:14 sofar I'm wondering if it may be worth adding - e.g. send predictive map data to clients 06:15 gregorycu sofar: I think c55 was looking at stuff in this area 06:15 hmmmmm c55 changed a lot of the map sending algorithm with his farblock feature 06:15 sofar e.g. teleporters, rails, could really benefit 06:15 hmmmmm i would personally wait before adding a new api to do this 06:16 sofar obviously 06:16 gregorycu I agree with what you're saying, but yeah... wait :) 06:16 sofar yeah I've heard the farmesh rumors... lol 06:33 gregorycu hmmmmm: "Errors are signaled by modifying the internal state flags: ... failbit: The construction of sentry failed (such as when the stream state was not good before the call)." 06:33 gregorycu not good before the call 06:34 gregorycu I'm going to try clearing the eof before calling unget 06:38 hmmmmm well the eof bit just means that the last attempted read failed due to eof being reached, and you can unget after reaching the end of the buffer 06:38 hmmmmm i think is.clear(); ... for (blah blah blah) { is.unget(); should do the trick 06:39 hmmmmm god damn istream 06:43 gregorycu The FPS is like 3 with windows debug build 06:44 hmmmmm really? 06:44 hmmmmm i always run minetest in debug and i seem to get a solid 25 or so fps 06:44 gregorycu It's now about 8 06:44 gregorycu Windows? 06:44 hmmmmm no 06:44 hmmmmm i thought windows was supposed to be better at video games 06:44 gregorycu I think I know what the problem is 06:45 gregorycu The issue is std::vector 06:46 gregorycu With windows debug, it's very very slow 06:46 hmmmmm are there any std::vectors in minetest even? 06:47 gregorycu Yep 06:47 gregorycu collisionMoveSimple 06:47 hmmmmm ahhh that'd explain it 06:47 hmmmmm simple, just don't move around so muhc 06:47 gregorycu 2/3 of the game loop was spent in that function 06:48 gregorycu Move around so much, or at all 06:49 gregorycu FPS is like 80 after changing it to vector 06:49 sofar bool vs char? 06:49 sofar wowsa 06:49 hmmmmm i thought the bitmap vector was supposed to be an optimization 06:49 hmmmmm oh well 06:50 gregorycu It's a size optimisation, with windows debug, it uses a shitload of templates 06:50 gregorycu Which it doesn't optimise 06:50 gregorycu So you have these crazy fucking callstacks 06:50 gregorycu (for sofar's benefit) 06:51 nrzkt Hello, i merged https://github.com/minetest/minetest/pull/3532 because we merge a fix with the wrong test and it's a little bit critical to let this in the repository. It's a trivial fix 06:52 gregorycu Thanks for that, and sorry 06:52 gregorycu That's was stupid of me 06:52 nrzkt no problem the reviewers understand your fix but didn't notice that you test the wrong variable. Sorry from me then :) 06:53 gregorycu All good in the end 07:07 gregorycu hmmmmm: https://github.com/minetest/minetest/pull/3533 07:08 hmmmmm well? does it work? 07:09 gregorycu Yep 07:09 gregorycu I mean "of course, I wrote it" 07:09 hmmmmm the problem does not happen with readsome because readsome reads *up to* N number of chars or until the end of the buffer, whichever comes first, but it does not set eofbit if it encounters the end of the buffer 07:10 hmmmmm by design, readsome will not set eofbit. it either clears eofbit or checks its current position against gcount before performing the read 07:11 gregorycu I'm not amazingly familiar with readsome, as you can see 07:11 gregorycu Or rather, with that level of detail 07:14 gregorycu Thank you 07:16 kaeza remind me, is there a way to tell from Lua if a player disconnected because of timeout or regular disconnection? 07:16 hmmmmm no 07:16 hmmmmm there's no way to tell from C++ either for that matter 07:18 kaeza :/ 07:18 kaeza still, not that important TBH 07:18 kaeza thank you, though 07:21 gregorycu Really? 07:22 gregorycu That sucks 07:22 hmmmmm of course not, that would require saving state for disconnected players 07:23 hmmmmm (well, in memory, not talking about the player file) 07:23 hmmmmm i suppose you could add a "last_disconnect" in addition to last_connect (wait, do we have that...?) and perhaps last_disconnect_reason or whatever 07:24 kaeza but doesn't the engine know when a player times out? can't that be exported somewhere? 07:24 hmmmmm I suppose somebody could write a PR for adding last_connect/last_disconnect/last_disconnect_reason/etc. and lua getters if it's really an important issue for them 07:25 hmmmmm no, their Player object is destroyed when they are no longer on the server 07:27 kaeza sounds too much change for a marginally useful feature 07:29 hmmmmm well don't forget you're also getting last_connect/last_disconnect timestamps so you're able to now write a stats mod to see what times/days/length of times players play on your server for 07:30 hmmmmm er, no nevermind, you were already able to do that 07:30 hmmmmm okay yeah this is pretty useless. 07:45 gregorycu Should I replace vector with vector ? 07:46 Krock Hello. Isn't it 'u8' what you need? 07:46 * Krock looks at the logs.. 07:53 Hunterz congratulations: https://opensource.com/life/15/12/top-5-open-gaming 07:54 gregorycu Hooray! We are the best! 07:55 Hunterz :) 07:56 Krock I expected rank 5 or something.. 08:01 Krock supertux cart with dynamic lighting :< 08:11 gregorycu http://www.minetest.net/downloads/ 08:11 gregorycu Works now 08:11 Krock was it broken? :/ 08:12 gregorycu Yeah, bad gateway 08:15 gregorycu est did those settings fixes didn't he, the perf is way better than i remember now I think about it 08:53 Hunterz hmm new landing page... nice 08:55 kaeza TBH, the screenshots there look quite shitty 08:56 kaeza and the header image or whatever does not quite convey much about the game 08:56 kaeza except "caves" 09:00 gregorycu Check out the android version screenshots 09:01 gregorycu https://lh4.ggpht.com/l3hNcqR_p3HKO9GghbUYDdqq2vcnFLNSW5t8iRjUe9OZaIYFsTuubgH812PsFeSVo1k=h900 09:01 gregorycu lol wtf 09:05 kaeza so... is that where the MESE aliens are from? :) 09:06 kaeza the Android screens look much better, but still quite don't show the beautiful natural landscape :/ 09:08 hmmmmm http://i.imgur.com/HBqZDaf.png 09:09 hmmmmm that's a nice screenshot I took when I was debugging a mapgen problem with the caverealms mod 09:12 gregorycu Do we have beautiful natural landscape? 11:09 celeron55 frankly i would put OpenTTD in place of Minetest in that top 5 list but i guess whatever 11:09 celeron55 maybe i'm too frank 11:09 nrzkt no you are celeron55 :) 11:09 nrzkt frank is not here :p 11:20 Krock lol 12:04 gregorycu I was about to say that joke 12:04 gregorycu How come freeminer isn't in the top 5? 13:01 Megaf (21:54:25) Calinou_: and it has pretty compile output, for once :P with percentage and such 13:01 Megaf I totally agree 13:09 gregorycu I want lambdas dammit 13:14 nrzkt gregorycu, top 5 of what ? 13:15 gregorycu https://opensource.com/life/15/12/top-5-open-gaming 13:17 nrzkt gregorycu, ty 13:18 gregorycu c55 and nrzkt: could use your expert opinions 13:18 gregorycu Also, bb in 2 hours 13:41 kahrl if the server was linked to irrlicht, you could use IFileSystem which already implements a VFS for archives 13:52 celeron55 we can't link the server with irrlicht because most distributions have huge dependencies from irrlicht to graphical and 3D stuff 13:53 kahrl yeah, definitely 13:54 kahrl but maybe we could simply copy/adapt the CFileSystem source 13:56 celeron55 maybe zips would be implemented only in the client? 8) 13:56 celeron55 i mean, singleplayer 13:57 kahrl talk about confusing :P 14:04 sfan5 useful things i did today: https://servers.minetest.net/ now supports HTTPS 14:06 kahrl ohh, nice 14:15 kahrl should we change the default of serverlist_url to https://servers.minetest.net/? 14:16 kahrl (er, without the trailing /) 14:16 sfan5 hell no 14:17 sfan5 the mingw windows builds do not support TLS 14:17 sfan5 not sure about the msvc ones 14:17 sfan5 (i can ofc add tls to libcurl but i don't feel like doing that right now) 14:18 kahrl maybe set the default to https or http depending on whether curl is built with tls 14:19 sfan5 that'd be possible 14:19 kahrl my question was mostly about whether the server is beefy enough to handle lots of tls connections 14:19 sfan5 congratulations: https://opensource.com/life/15/12/top-5-open-gaming 14:20 sfan5 i would've put supertuxkart way higher 14:20 kahrl agreed 14:21 gregorycu I've already half-written the vfs stuff 14:21 gregorycu I can go through a zip archive and identify files 14:21 gregorycu Shoudn't be too much work, to be honest 14:22 gregorycu My questions/concerns are around mods writing to their folders etc. 14:23 sfan5 my question was mostly about whether the server is beefy enough to handle lots of tls connections 14:23 sfan5 it will probably be fine 14:23 sfan5 it has 4 cores and 4 GB of ram 14:23 kahrl ah, great 14:23 sfan5 (and 1 gb swap) 14:24 sfan5 gregorycu: mods shouldn't write to their folders, i'm not even sure whether the security thingy allows it 14:24 gregorycu Gaming is serious business 14:24 gregorycu tls 14:25 gregorycu Is server performance something that is a problem, in general? 14:28 nrzkt yes with > 20 players 14:32 sfan5 kahrl: note that i added TLS becuase we wanted to move www.minetest.net to HTTPS too and that requires servers.minetest.net to have it too 14:32 sfan5 IMO serverlist fetches don't actually need TLS 14:35 kahrl true. The most someone could do by impersonating servers.minetest.net, I think, is to deliver a serverlist with malicious servers on it 14:35 kahrl but they could just as well simply announce their malicious server the normal way 14:36 kahrl well, I guess something else they could do is to exploit a bug in the code that parses the serverlist response, if there is one 14:37 gregorycu Is >20 a common usecase? 14:37 kahrl so using TLS for the serverlist is really more a defense-in-depth thing 14:38 sfan5 i suggest making it an options 14:38 sfan5 and potentially adding it into some sort of "advanced options" stuff in the menu 14:38 sfan5 s/stuff/submenu/ 14:38 kahrl well, you can already change serverlist_url to https://... 14:47 nrzkt gregorycu, not common in fact, but on the evening 3-4 servers are over this limit 14:57 gregorycu Hmm... 14:57 gregorycu Well, I can look at perf stuff for large numbers of players 16:30 Guest21193 Pushing #3432 (Doxyfile inprovement) 17:35 red-001 https://github.com/minetest/minetest_game/pull/602 19:34 RealBadAngel kahrl, porting piece of irrlicht into our codebase is imho quite good idea, we do already have a few pieces ported 19:36 RealBadAngel that will allow certainly both server and the client use it, without server being dependent on irr 19:37 lezzy can anyone tell me why the nametag for an object only shows on linxu builds and not windows builds? 19:37 sfan5 maybe your windows build is outdated 19:37 lezzy it is the latest from the site, tried 4 other users builds as well 19:38 ShadowNinja Oops, I apparently forgot to actually add the main page file in that Doxygen commit. 19:39 ShadowNinja This is what I have currently, any suggestions for improvement before I push it? : http://ix.io/n9Y 19:42 celeron55 i'm adding rubenwardy to the core team on github so that he can upload installer packages 19:42 celeron55 (just so that everyone knows what's going on) 19:42 sfan5 people with push rights can't upload files? 19:42 codus Hi, is there a way to get the biome for a position? 19:43 celeron55 hmm, actually, i think i'll add a "trusted people" team which really isn't the core team but has the same access 19:46 RealBadAngel codus, ask paramat bout that 19:46 codus ty 20:29 sofar Posted this: Please help out making mintest mods a big success and redice minetest mod fragmentation, as well as providing a central place for users to look for maintained mods 20:29 sofar https://github.com/minetest-mods 20:30 sofar I've sent a few of you invite requests to be OWNER of this project, together with me 20:30 sofar please read the manifest, and comment 20:30 sofar https://github.com/minetest-mods/Manifest 20:52 red-001 so what about mod packs ? 20:52 sofar I want to keep those out of there, as I wrote in the manifest 20:55 sofar the problem with modpacks is that they frequently include stuff that's "oh cool this is somewhat similar" 20:55 sofar just look at the biome_lib split out, signs_lib etc. 20:57 sofar I've pulled my mods into minetest-mods, I hope many will follow 20:59 rubenwardy What about modpacks like food? 20:59 red-001 or mesecons 20:59 rubenwardy where the API and content is separated 20:59 sofar well, for those I'll consider an exception, since they really integrate and splitting them out makes no sense 21:00 sofar but I'm weary of things like homedecor 21:00 sofar and plantlife_modpack 21:00 * sofar looks at food 21:01 sofar hmm, food contains a library 21:01 sofar see that I don't like... 21:01 sofar what if I want other_food that requires food_library 21:01 sofar but not food_foods 21:02 rubenwardy huh? 21:02 RealBadAngel sofar, what about technic? 21:02 rubenwardy You mean another mod that wants food and not food_basic? 21:03 sofar another mod that uses the food API 21:03 rubenwardy They should probably be separated into different repos, and be brought together as a modpack in "releases" 21:03 sofar exactly, that 21:03 sofar that's why I have issues with modpacks 21:04 RealBadAngel technic, pipeworks, mesecons are the most complex mods out there, and propably most popular 21:04 sofar mesecons_core wouldn't be a bad thing 21:04 sofar food_lib? 21:04 sofar mesecons_lib? 21:04 sofar technic_lib? 21:05 sofar note: see also the note in the manifest about minetest-games and minetest-modpacks 21:05 sofar I'm convinced that splitting it out will help 21:05 red-001 the note is confusing 21:05 sofar it'll be much more enticing for mod developers to use technic_lib if they don't have to pull in the rest 21:06 red-001 are you saying you are considering making those? 21:06 sofar yes, I would be 21:06 sofar -games more than modpacks, tbh 21:06 rubenwardy It's a PITA for end-users to download dependencies. 21:06 rubenwardy unless they're packaged 21:07 sofar I feel games are the better way 21:07 red-001 not really 21:07 rubenwardy Yes. I believe the power of Minetest is with subgames, not with mods 21:07 sofar hehe 21:07 red-001 If I want play technic I download technic 21:07 rubenwardy (this is tending torwards non-#minetest-dev chatter) 21:07 red-001 not a full subgame 21:07 sofar rubenwardy: thanks for accepting the invite already 21:07 RealBadAngel technic already has game, just a bit abandoned 21:08 sofar I'd think we can have this discussion in #minetest just fine 23:13 lezzy ok the nametags still are not showing on the windows build, i just installed win7 ultimate on a vm, got everything and compiled it from todays code. this is not funny, can someone link me a build that is a few days old please or just fix the issue. 23:20 red-001 what do you mean? 23:20 red-001 In my version they show 23:20 red-001 when did this start? 23:27 lezzy nametags on players show but not on mobs 23:27 lezzy or other entities 23:28 Hijiri general entity nametags are in the dev version? 23:30 lezzy i compiled dev ver on windows nope lol unix its fine 23:31 red-001 is the windows version from git? 23:33 RealBadAngel what "nametags" you want to see over entities? 23:34 RealBadAngel im not quite sure what do you mean, can you show me a screenshot from that "unix" version showing that? 23:38 lezzy RealBadAngel: the objects have a nametag just like a player if you set the property "nametag = "string-here" that is what im refering to 23:39 lezzy red-001: there is a windows build on git? 23:40 red-001 lezzy 23:40 red-001 I meant did you download the source code from github? 23:40 red-001 sorry if that was confusing 23:40 lezzy yes i always do, the latest code 23:42 lezzy and RealBadAngel the best example is mobs redo, name the nat it showes a nametag that is only on unix builds visiable 23:43 RealBadAngel i will check that mod 23:51 est31 wanting to push these three commits to the website repo: https://github.com/est31/minetest.github.io/commits/master 23:52 est31 I'll create a PR.