Minetest logo

IRC log for #minetest-dev, 2021-08-20

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

All times shown according to UTC.

Time Nick Message
00:39 v-rob joined #minetest-dev
00:45 v-rob joined #minetest-dev
00:55 v-rob joined #minetest-dev
01:48 Alias joined #minetest-dev
02:28 MTDiscord <Jordach> weird question but is the m_bgcolor affected by brightness
03:24 MTDiscord <Jordach> sfan5, https://youtu.be/pT0zbd2Y-Jc
03:25 MTDiscord <Jordach> yes i've actually removed more than i added back in
04:00 MTDiscord joined #minetest-dev
04:19 Guest87 joined #minetest-dev
04:38 YuGiOhJCJ joined #minetest-dev
05:01 YuGiOhJCJ joined #minetest-dev
05:32 v-rob joined #minetest-dev
07:20 YuGiOhJCJ joined #minetest-dev
08:44 calcul0n joined #minetest-dev
08:56 Noisytoot joined #minetest-dev
10:27 queria joined #minetest-dev
10:37 specing_ joined #minetest-dev
10:39 Taoki_1 joined #minetest-dev
10:53 Taoki joined #minetest-dev
13:08 Guest5738 joined #minetest-dev
13:08 Guest5738 Error occur whin I open minetesr game 5.4.1win64  Microsoft Visual C++ Runtime Library  ------   This application has requested the Runtime to terminate it in an unusual way .   ---------Please contact the application's support team for more information.
13:10 Guest74 joined #minetest-dev
13:30 Fixer joined #minetest-dev
14:20 ceddral joined #minetest-dev
14:28 ceddral good morning, is there currently an intended way for mods to access the allow_metadata_inventory_* callbacks? as far as i'm aware going through core.registered_items[... is not what i'm meant to do.
14:32 sfan5 access all of them at once?
14:33 MTDiscord <Warr1024> I believe there are minetest-global-level hooks for inventory movement ... but I don't know how they interact with the per-def ones.  Might be worth looking into those and maybe experimenting.
14:34 sfan5 there's minetest.register_allow_player_inventory_action and minetest.register_on_player_inventory_action for the players own inventory
14:35 sfan5 but no global hooks that'd allow you to control any interactions of a given player with node inventories
14:35 MTDiscord <Warr1024> tbf there are a lot of things inside registered_items that don't have adequate minetest.on_something hooks and I'm tempted to rip them all out.  I already had to do that with on_timer and it's already a mess, but not as bad as if I had tried to modify registered_items to monkey-patch it in...
14:35 sfan5 (just per-node in the definition as you've mentioned)
14:37 MTDiscord <Warr1024> I think the fundamental disconnect here is that MT was designed with the idea that mods would add materials to the game, and define all of their behaviors.  What I want to do is add materials and SOME behaviors in one layer, and then in higher layers, add more unifying behaviors between materials across different mods.  I already ran into a case where I needed a minetest.register_nodetimer() in essence to do this, so I ended up making
14:37 MTDiscord a game-specific API.
14:38 ceddral by access i meant call not modify
14:39 ceddral currently mods that interact with inventories just seem to carry their own white/blacklists of which inventories they're allowed to take from
14:39 MTDiscord <Warr1024> You mean basically like to determine whether a player COULD access something in order to decide whether your mod will do that thing?
14:39 ceddral yes
14:39 MTDiscord <Warr1024> In that case, digging inside registered_items and plucking out the relevant hooks to call is probably the canonical way to do it.
14:39 sfan5 yes, it's fine if you're emulating what the engine would do
14:40 MTDiscord <Warr1024> I do this sort of thing often enough myself that I don't really think too hard about it anymore when I do :-)
14:50 ceddral oh i think i just went down the wrong rabbit hole too, to end up at 'core.'. `ItemStack("foo"):get_definition().allow_metadata_inventory_take(...)` looks more like what i should be using
14:50 ceddral thank you two
14:51 sfan5 ItemStack("foo"):get_definition() is equivalent to minetest.registered_items[ItemStack("foo"):get_name()]
14:51 sfan5 and `core` is the internal name for `minetest`
14:51 sfan5 just fyi
14:52 ceddral perfect, thanks
14:52 MTDiscord <Warr1024> Also it may not necessarily be safe to just call allow_metadata_inventory_take or any other hook on a definition, without checking to see whether it's actually set or not.  Some attributes have a fallback default, like on_place, and I think should be always safe to call, while others may not...
14:54 ceddral time to go patch some mods :)
15:30 appguru joined #minetest-dev
15:34 behalebabo_ joined #minetest-dev
15:40 spidermonkdust joined #minetest-dev
16:09 behalebabo_ joined #minetest-dev
16:17 behalebabo_ joined #minetest-dev
17:13 rubenwardy register_on_leaveplayer is no longer called in singleplayer
17:14 MTDiscord <luatic> it ever was?
17:14 rubenwardy yes
17:18 Krock I don't think it ever was?
17:19 rubenwardy I remember there being code to kick players from the server before shutting down
17:21 specing joined #minetest-dev
17:23 rubenwardy lol, 5.0.0 no longer compiles for me
17:25 Krock yes. Irrlicht Mt2 is probably not compatible with 5.0.0
17:25 proller joined #minetest-dev
17:25 rubenwardy I deleted the cache, it should be picking up system irrlicht
17:25 rubenwardy the error is in finding `m_conn` in clientiface.cpp
17:25 rubenwardy I give up
17:29 Extex joined #minetest-dev
17:42 proller joined #minetest-dev
18:14 sfan5 when I need to test something on old versions I usually just grab the windows build and run it in wine
18:14 rubenwardy haha that makes sense
18:15 MTDiscord <Jordach> outstanding move
18:15 celeron55_ wine is the universal linux ABI
18:15 celeron55_ 100% compatible, always
18:15 MTDiscord <Jordach> sfan5, i've done the necessary work for a properly smoothed out skybox
18:16 rubenwardy wine is a gem
18:16 MTDiscord <GreenXenith> I prefer my wine infused with subatomic particles by vaporized water
18:18 rubenwardy I prefer rum
18:19 rubenwardy A while back, some friends and I bought a variety of rum together to try it all. The best was the raspberry rum
18:54 queria joined #minetest-dev
18:58 longerstaff13 joined #minetest-dev
20:24 Desour joined #minetest-dev
20:25 Desour rubenwardy: probably #11246 . you have to include the stuff that is used there. (I've noticed this too recently)
20:25 ShadowBot https://github.com/minetest/minetest/issues/11246 -- Fix build for newer versions of GCC by lhofhansl
20:48 Extex joined #minetest-dev
21:13 Desour joined #minetest-dev
21:14 Desour FYI, there's actually a tool to check for missing and unneeded includes (https://include-what-you-use.org/). I've just tried running it on minetest, it has complaints for almost every file it seems
21:17 MTDiscord <josiah_wi> Does the tool warn about includes that are found transitively? Some people would say that transitive includes are a bad practice and are prone to causing errors.
21:18 MTDiscord <josiah_wi> BTW I've run into errors caused by transitive includes relying on certain system libs on SOL, so this is a very valid concern.
21:20 Desour it doesn't explicitly say that some specific symbol is just there because of transitive includes, so I wouldn't call it "warn". but its suggestions don't use transitive includes
21:20 proller joined #minetest-dev
21:21 Desour and there's also an option to just scream about include statements that should be added to avoid transitive include issues
21:22 Desour and I you can also allow some transitive includes via a "mapping file"
21:31 sfan5 almost all transitive includes inside the codebase should be fine
21:31 sfan5 what isn't is for system libs, since those (can) change anytime
21:43 MTDiscord <josiah_wi> And it does suck when you just want to compile something and a third party dependency blows up because GCC 10 changed an internal include they took for granted. Big pain.
21:52 specing joined #minetest-dev
22:38 ceddral left #minetest-dev
23:21 AliasAlreadyTake joined #minetest-dev

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