Time Nick Message 09:39 MTDiscord In 5.9.0-dev is set_bone_override rotation interpolation broken by choice or should I file a bug report? 11:19 MTDiscord it is broken? :thonkhammer: 11:28 MTDiscord Yes 11:28 MTDiscord It does not interpolate at all 11:46 MTDiscord file a bug then, i'll take a look 11:52 MTDiscord #14570 11:52 ShadowBot https://github.com/minetest/minetest/issues/14570 -- interpolation does nothing on set_bone_override 11:53 MTDiscord When this is maybe fixed one day then procedural animation even with frame misses due to server lag will be smooth 11:53 MTDiscord it would be good if you could attach a minimal code snippet 11:54 MTDiscord Can it be in typescript? 11:54 MTDiscord hrm i would prefer lua but i can live with typescript if it's clear what the corresponding lua would be 11:55 MTDiscord Time to whip up some trash 12:02 MTDiscord Done 12:06 MTDiscord I have changed the video link to showcase what the sample code included does on my machine with the latest git pull 13:35 sfan5 merging #14400, #14561 in 10m 13:35 ShadowBot https://github.com/minetest/minetest/issues/14400 -- Basic tablet/phone/watch autodetection by okias 13:35 ShadowBot https://github.com/minetest/minetest/issues/14561 -- Fix some Game members not being freed after some startup errors (regression) by grorp 13:36 sfan5 @luatic do you have time to check my two MTG PRs soon? 16:08 MTDiscord tfw minetest's latest update informs you that you've been running it on a watch 20:46 Juri For unrelated reasons I want to look at raw mapblock data, so I copied the data blob from the database 20:47 Juri I removed the first byte and tried to decompress with zstd, which failed with unsupported format error 20:48 Juri Realizing the first byte is 20, I switched to decompress with zlib, but that failed as well with an incorrect header check error 20:48 Juri Clearly I am doing something wrong here... Anyone got a clue what I am missing? 20:48 sfan5 it's not as simple as that: https://github.com/minetest/minetest/blob/master/doc/world_format.md#mapblock-serialization-format 20:49 Juri Quite from the doc: "the entire block is first serialized and then compressed" 20:50 sfan5 "Since version 29" 20:50 Juri I see 20:50 Juri I assumed it was like that before as well 20:51 sfan5 this should help https://gist.github.com/sfan5/52917a0e1338bcda2176edbc416dae60 20:52 Juri Oh wow, that looks like a dangerous tool in my hands xD 20:52 Juri But thanks a lot, it will help me for sure! 23:25 MTDiscord MSVC could actually be generating a stack temporary and returning it. It would appear to work as long as the location on the stack isn't being clobbered before it is used. 23:27 MTDiscord You could take the address of the returned value and compare it to &null_value and &it->second to check. But I say, if converting it to an if statement removes the warning, there's no reason not to do that instead 23:28 MTDiscord If MSVC is doing that, it's a compiler bug. 23:29 MTDiscord Oh, DS replied again. Seems it's more complicated than his first comment supposed. 23:30 MTDiscord not necessarily. There could be some subtle difference between the types of null_value and it->second, which causes it to generate a temporary. I don't know of a clean way to ensure they have exactly the same lvalue type 23:30 MTDiscord I tried static_cast on both operands but that didn't fix it. 23:31 MTDiscord But assigning null_value to a variable of type const V& and using that as the ternary operand cleared the warning. 23:31 MTDiscord maybe changing the definition of null_value to std::map<...>::const_reference 23:31 MTDiscord In any case using an if will get rid of any chance for a compiler to do something we don't like with the ternary. 23:31 MTDiscord I suspect there's a hidden type attribute somewhere, one of the kind that microsoft likes to use 23:31 MTDiscord not const 23:32 MTDiscord I don't know enough about MSVC to know right away how to extract the details