Time Nick Message 01:44 QwertyCool aaaaaand crashed on entering game 01:46 QwertyCool maybe because it was a special server? 01:46 QwertyCool hmmm 02:01 paramat Shara i finished review of fireflies 02:01 Shara paramat: Thank you 02:04 Shara Heh, I'll admit I didn't use dig_immediate because I simply dislike it. I like things to be more sturdy, but can easily change it if you prefer. :) 02:20 Shara paramat: updated 02:23 paramat yes i prefer dig immediate, partly for consistency 02:25 Shara Already done :) 02:25 paramat +1 02:25 Shara Awesome :) 02:27 paramat i might as well merge it later with the other PRs, i can see rubenwardy has thumbed-up 02:28 Shara I know he was looking at it, but he didn't comment there 02:28 Shara Given this is adding a whole mod, it would really be nice if any of the others looked at it 02:29 Shara But it's also sat there for five days, and the issue even longer with no real objections from anyone :) 02:30 paramat it has 2 approvals, can always tweak later. anyway back in an hour to merge stuff 02:30 Shara Sure :) 02:50 QwertyCool krock if youre around could you help walk me through getting into a debugger on windows 02:50 QwertyCool or anyone really 02:51 QwertyCool please* 03:01 rubenwardy QwertyCool: fixing the scaling would be nice 03:01 rubenwardy although painful with the current formspec design - no responsive nex 03:01 rubenwardy the best you can do is make the dialog fit the window well, and everything scale proportionally 03:02 rubenwardy currently text doesn't scale with it (it should), and icons in table views don't either 03:02 rubenwardy also, and icon needs to be quite large to work on high densities to not be pixellated 03:03 rubenwardy a mipmap would be nice for that (basically the same image at multiple sizes, it should automagically resize the image to be the right size for an element) 03:04 rubenwardy but given that these have been problems since formspecs were introduced, the fix is messy 03:04 rubenwardy I also have never used a debugger on windows, sorry 03:07 QwertyCool thanks for the input rubenwardy!! 03:07 QwertyCool i'll keep that in mind 03:08 QwertyCool first i gotta get debugging to work so i can move forward 03:11 QwertyCool might just have to run this all from my ubuntu boot 03:41 paramat will merge game#2030 game#2034 game#2039 in a few mins 03:41 ShadowBot https://github.com/minetest/minetest_game/issues/2030 -- Intersects_protection(): Remove from Minetest Game by paramat 03:41 ShadowBot https://github.com/minetest/minetest_game/issues/2034 -- Add fireflies by Ezhh 03:41 ShadowBot https://github.com/minetest/minetest_game/issues/2039 -- Doors: Avoid crash on nil player in 'can dig door' by paramat 03:47 QwertyCool dope! got debugging working 03:56 paramat merging 04:04 paramat there are the mobs! 04:04 paramat ^ celeron55 04:04 paramat merged 04:05 Shara I think players will want more than just fireflies :D 04:09 paramat i'm quite keen to work on adding oerkki, never coded a mobs mod before 04:12 Shara Yes, would be good to get something in. 04:12 Shara Need to think about what I'll work on next now. 04:14 Shara But will try and look at the flower spread PR tomorrow. I want to test that out to see how it feels in game 04:34 QwertyCool stack tracing got me like @.@ 08:37 celeron55 lol 09:19 fireglow Hi. Got some got on my server that is able to glitch through walls. 09:19 fireglow should I try to capture its traffic? 09:23 Krock IP ban. done. 09:23 fireglow sure :> 09:23 fireglow but I'm wondering who's doing that 11:42 juhdanad I had another idea: the node definition manager is implemented in three classes: INodeDefManager (read-only), IWritableNodeDefManager and CNodeDefManager (implementation in the cpp file) 11:42 juhdanad So it is possible to convert them to one class: 11:42 juhdanad *INodeDefManager -> const *NodeDefManager 11:42 juhdanad *IWritableNodeDefManager -> *NodeDefManager 11:42 juhdanad This way all virtual method calls can be eliminated. 11:44 juhdanad So I implemented that, but there is no significant increase in performance for some reason. 11:49 nerzhul hello 11:50 nerzhul juhdanad you want to remove the interface to have just the object because we never use polymorphism ? 11:51 juhdanad Yes, the node definition manager is accessed many times, and there is only one implementation. 11:53 nerzhul no problem for me to simplify this, but some old core dev can cry :p 11:53 nerzhul all of theses are basically singletons and the interface has no interest 11:53 juhdanad The implementation is done, I can make a PR, if you want. 11:53 juhdanad But I expected performance increase too. 11:54 juhdanad And it turns out that performance is unchanged. 11:54 juhdanad (on my compiler) 11:54 nerzhul it's logical 11:54 nerzhul a cast is free 11:54 nerzhul polymorphism doesn't have cost if correctly used 11:55 juhdanad I mean, the get() method was pure virtual in INodeDefManager. 11:55 nerzhul yes, because if must be implemeted 11:56 nerzhul it* 11:56 juhdanad I just read that virtual functions are slower to call than plain member functions. 11:57 nerzhul in which book ? C++03 spec alpha on PIII ? :p 11:58 juhdanad Just a web search on "c++ virtual function performance". Maybe I overreacted this. 11:59 nerzhul compilers are pretty intelligent, and maybe because one have only 1 child class they just merge both and there is no performance penalty 12:13 juhdanad Now I found difference! The liquid scan of map blocks became faster: 71 ms/mapblock -> 49 ms/mapblock. 12:13 nerzhul interesting if it's really that 12:14 juhdanad But mesh generation and light update didn't change. Let me test again... 12:15 nerzhul maybe we should switch to go to not have any polymorphism haha 12:15 nerzhul or pure C :p 12:16 sfan5 rewrite it in rust 12:16 nerzhul heh 14:35 exio4 nerzhul: eh, this ain't polymorphism, this is inheritance if anything :p 17:18 QwertyCool https://github.com/minetest/minetest/pull/7007 woop 17:25 Megaf #7007 17:25 ShadowBot https://github.com/minetest/minetest/issues/7007 -- improving error message in src/map.cpp - closes #6977 by QwertyCoolMT 17:25 Megaf you have my curiosity 17:26 Megaf QwertyCool: any chance you can add screenshot of before and after? 17:26 Megaf or just copy and paste will do 17:26 juhdanad Screenshot of terminal output? 17:26 Megaf yep 17:27 Megaf it says, improving, so, show how 17:27 juhdanad Now it prints param0, param1 and param2 of the node that is unknown. 17:28 QwertyCool one moment. 17:31 paramat #6999 is a simple bugfix that stops item entities moving in 'ignore', as the code intended to do but didn't, can anyone approve? sfan5 17:31 ShadowBot https://github.com/minetest/minetest/issues/6999 -- Item entity: Prevent motion in ignore nodes by paramat 17:36 QwertyCool https://imgur.com/a/9L0kk 17:36 QwertyCool @megaf 17:37 Krock paramat, "local node = core.get_node_or_nil" 17:37 Krock why do you even check for the name being "ignore" then? 17:37 Krock node and node.name ~= "ignore" shortens to node 17:38 Megaf QwertyCool: LGTM 17:38 paramat 'unloaded world' is different to 'loaded but ignore', that was the mistake the previous code made 17:38 paramat get node or nil is not nil for loaded ignore 17:38 paramat hmm actually 17:39 paramat it doesn't matter 17:39 paramat because is_moving = (def and ..) OR vel ~= 0 17:39 paramat if it's moving then checking def has no effect 17:41 paramat even if def is nil in ignore that doesn't stop motion (tests confirm) 17:42 Krock I see, however it's a pity that get_node_or_nil may also return ignore 17:43 paramat i'll check that 17:44 Krock you're right about that ignore check. the logic looks good 17:47 paramat i'll check the behaviour of 'node or nil' again to be sure 17:49 QwertyCool worth fixing node_or_nil in this case? 17:49 paramat no because much will rely on that behaviour 17:50 paramat a new function would be needed, if needed 17:50 sfan5 people rely on get_node_or_nil being able to return ignore? 17:50 sfan5 i doubt that 17:52 paramat well code will be written based on that behaviour, so changing it will break stuff 17:53 rubenwardy the whole point of _or_nil is that it returns nil if the block isn't loaded 17:53 sfan5 ^ 17:53 Lord_Buckethead ^ 17:53 paramat docs are "Same as `get_node` but returns `nil` for unloaded areas." 17:53 rubenwardy returning ignore is fine if it's somehow placed in a loaded area 17:53 Lord_Buckethead so return nil for ignore 17:53 rubenwardy can you even place ignore? 17:53 Lord_Buckethead no 17:53 paramat a loaded area can have ignore, at the edge of the world, seems useful as it is 17:53 sfan5 oh well 17:53 Lord_Buckethead I don't think you can even with vm 17:55 rubenwardy maybe in the case you mention, it should return ignore as the map isn't loaded even if the block is 17:55 rubenwardy heh 17:55 paramat also when reducing mapgen limit all around the generated world outside the limit there is ignore 17:56 paramat i think it does return 'ignore' for loaded 'ignore', will check again 17:58 QwertyCool what is the proper way to update a pull request code? 18:00 juhdanad I think push a new commit to your branch. 18:01 QwertyCool sfan5: nix the params alltogether? or keep param1? or? example of not all 0's https://imgur.com/a/9L0kk 18:05 QwertyCool sfan: wouldn't it be param0 = whatever id the mod tried to place? or is it somewhere converted to a ignore node id? 18:05 paramat yes push a commit to the PR branch 18:06 QwertyCool ok thank you paramat & juhdanad 18:06 paramat you can merge the new commit with the previous commit in the branch with 'git commit --amend' 18:06 juhdanad Thank you for contributing to the project. 18:07 juhdanad --amend is not recommended, because reviewers have to check the whole changeset again! 18:11 QwertyCool perfect, will do. 18:13 rubenwardy don't worry about squashing 18:13 rubenwardy paramat: there's no need to ask someone to squash, it can be done on merge 18:15 nerzhul rubenwardy yes, it's just good when then changesets have more than 5-6 commits for a single medium change :p 18:18 QwertyCool anyone know wherew scaling is handled in mt-game? 18:18 rubenwardy it's not 18:18 rubenwardy it's in the engine 18:19 QwertyCool doooope 18:19 rubenwardy GUIFormspec.cpp 18:19 QwertyCool bless your soul. 18:19 QwertyCool didnt wanna have to deal with lua just yuet 18:27 paramat re: --amend, i agree 18:40 paramat Krock sfan5 confirmed 'get node or nil' returns 'ignore' in 'ignore' nodes, so my PR code seems ok. once i remove the testing code can i merge it? 18:43 nerzhul we really need unittests on the lua API to test all cases easily without problems... 18:43 nerzhul nobody seems to care about it except me lol :( 18:45 sfan5 paramat: fine by me 18:48 paramat thanks 18:49 juhdanad nerzhul: could you please remove your change request from #6304? I think there is no bug to fix. 18:49 ShadowBot https://github.com/minetest/minetest/issues/6304 -- Raycast: export exact pointing location by juhdanad 19:09 paramat i'll also merge #6978 later +1 19:09 ShadowBot https://github.com/minetest/minetest/issues/6978 -- Remove unused light updating code by juhdanad 19:11 QwertyCool paramat: just cut out the params then and push update to branch? 19:18 paramat yes 19:20 QwertyCool done 21:19 Krock lisac, could you please also add the "size" HUD field? 21:20 Krock that's btw also what the linked issue describes 22:11 paramat Shara game#2038 is ready 22:11 ShadowBot https://github.com/minetest/minetest_game/issues/2038 -- Coniferous litter: Improve textures, greyer and lighter by paramat 22:12 QwertyCool is someone already working on HUD scaling? 22:13 Shara paramat: nice timing. I am the minute or so it takes a kettle to boil away from starting to review things :) 22:13 lisac Krock: updated 22:14 QwertyCool lisac link? 22:14 lisac #7006 22:14 ShadowBot https://github.com/minetest/minetest/issues/7006 -- Make hud_get return aligment, offset and size. by lisacvuk 22:14 lisac as for HUD scaling, I don't know 23:50 paramat updated marram grass texture game#2027 new screenshot 23:50 ShadowBot https://github.com/minetest/minetest_game/issues/2027 -- Add marram grass for coastal sand dunes by paramat 23:51 QwertyCool hey paramat are you aware of whether scaling works on linux ? 23:51 QwertyCool or is it just not a thing 23:51 QwertyCool across the board 23:52 sfan5 scaling? what scaling? 23:54 QwertyCool scaling of GUI/HUD 23:54 QwertyCool on large screens 23:58 paramat erm, works in what way?