Time Nick Message 00:07 MTDiscord is it possible for a mod to get a stack traceback? Say I have an error that I know occurs, and it is caused by misuse of an api function, and I want to prevent a hard crash, but still give whoever is misusing the api function a log to help them fix the issue. Is there some function that will return the current stack traceback as a text string? 00:10 MTDiscord debug.traceback? 00:10 rubenwardy pcall 00:10 MTDiscord https://www.lua.org/manual/5.1/manual.html#pdf-debug.traceback 00:10 rubenwardy oh right, misread 00:10 rubenwardy yeah, debug.traceback 00:10 MTDiscord great! 00:10 MTDiscord thx 02:47 MTDiscord does find_node_near work with fractional distances? Say i want to find air within 0.7 nodes from a position to check if a player should fall for blockbomber 03:01 Yad Is a node timer considered part of the metadata system? 03:47 Yad What I can say is that the metadata system sure works beautifully in Minetest. :D 03:48 Yad I can display information via the chat system, but I'm still learning how to put it to visual use though. 03:48 Yad I was thinking of using animations but those are part of the node definition not the metadata. 03:53 MTDiscord nodes dont have animations, except animated textures. You can build a 3d animation out of a special model and partially transparent animated textures, like the default torch does 03:54 MTDiscord the default torch doesnt use that trick at all 03:54 MTDiscord but yes its in the node definiton. If you want to use metadata for visual effects, you will have to pair the node with an entity 03:54 MTDiscord Its flame wavers 03:54 MTDiscord in 3d 03:54 MTDiscord thats just a regular animated texture 03:54 MTDiscord put on 4 planes 03:54 MTDiscord ok, well its a builtin special model 03:55 MTDiscord its not that special? 03:55 MTDiscord ok ? 03:55 MTDiscord it doesnt even combine the models into one, theres 3 torch models 03:55 MTDiscord but not for the animation, thats for the wallmounted and ceiling and floor variations 03:56 MTDiscord I know, im just reiterating that its not fancy 03:56 MTDiscord its a regular model with regular texture animations 03:56 MTDiscord the 3d node animation trick consists of having every animation state in the model and swapping to each frame using animated textures 03:56 MTDiscord I hereby officially concede your point @GreenXenith 03:56 MTDiscord ? 03:57 MTDiscord ironically the 3d animation trick is pretty much what obj does for animations (which is awful) 03:57 MTDiscord .obj? it supports animations? 03:58 MTDiscord not technically 03:58 MTDiscord its not part of the specification 03:58 MTDiscord but last I checked, Blender supported exporting animations with obj 03:59 MTDiscord interesting 04:36 MTDiscord Technically it wouldn't be awful if we had proper compression on the plaintext that is obj. That would reduce those file sizes significantly 04:36 MTDiscord Especially animations with multiple repeat vertexes 05:22 Yad Thank you for going into detail on that. So besides replacing (and/or overlaying) a node with an entity, to visually represent metadata would I have to replace the node with another node? 05:22 Yad For example, if I want a wall block to take damage and track that damage, before being removed at 100 damage points... 05:23 Yad ...perhaps I should register ten nodes, one for each 10-point increment, with a different texture for each... 05:24 Yad ...then track damage using an integer in metadata, and when for example it goes from 9 to 10, I replace the first node type with the second node type, and so on, passing the metadata along each time? 07:25 MTDiscord That may be best, yes. Though I'd only track 10hp per block type. 09:03 Yad Is making a node "digable" currently the only way to interact with it on a continuous mouse-press basis? 09:05 Yad I've thought about using a particle emitter attached to the player. 09:14 Yad Looks like it's going to be something akin to get_player_control() 09:20 Yad And then calling it in the on_step event 10:00 MTDiscord I dont think a node needs to be diggable for on_punch to trigger repeatedly 10:08 Yad Well that's technically true I agree, because I can call punch_node as often as I like. :D 10:09 Yad The trick was to use register_on_joinplayer and then spawn an entity which listens to get_player_control().LMB in its on_step event 10:17 Yad Now I just need to combine that with get_pointed_thing_position 15:01 gargamel !up 69.247.56.186:30003 15:01 MinetestBot 69.247.56.186:30003 is up (127ms) 15:01 gargamel Creative Sunday flat map. 15:07 gargamel Should I just use the 'give' priledge instead of creative? 15:29 gargamel w00t 17:48 MinetestBot 02[git] 04sfan5 -> 03minetest/minetest: Restore pass-through of direction keys (#11924) 135eb45e1 https://git.io/J9G5Z (152022-01-09T17:46:36Z) 17:48 MinetestBot 02[git] 04SmallJoker -> 03minetest/minetest: Formspec: Fix bgcolor and set_focus checks 138fab406 https://git.io/J9G5n (152022-01-09T17:47:12Z) 17:58 Yad gargamel: That depends on what you want to do. In many games' setups, as well as giving you a menu to give yourself unlimited items, `creative` results in being able to dig everything by hand. 18:05 Yad This article tries to help me understand with pictures https://dev.minetest.net/pointed_thing 18:06 Yad But how can I get `pointed_thing.above` and `pointed_thing.under` when `pointed_thing` is still nil? xD 18:08 MTDiscord You can't, how are you getting pointed_thing? 18:09 Yad Benrob0329: That's the question I'm asking lol :) 18:09 MTDiscord Alright, what do you need PT for? 18:09 Yad I need to know what the player is pointing at. 18:10 MTDiscord Some callbacks return it, but otherwise you'll have to Raycast() 18:10 Yad And then get its NodeRef so I can have an entity's on_step event interact with that node. 18:10 Yad Oooo 18:10 Yad That's a good clue! Thanks. 18:11 Yad So basically fire a probe out of the player's hand, as it were, to see what it hits? 18:11 MTDiscord Probably the camera, but yeah thats the idea 18:11 Yad That's a more technically accurate way of putting it, thank you. 18:12 Yad Because the player is essentially just a point in space; the location of the camera. 18:12 gargamel Yad: 'give' is what I want not creative, thanks. 18:12 Yad Then things like arms are attached to the player. 18:12 MTDiscord Yad: If you Raycast, remember that it's an iterator, so you can use a for loop to find the first valid collision 18:12 Yad gargamel: Ah nice, as long as it's not to clunky for you to use the chat command-line in Minetest for that. 18:13 gargamel Yad: Players get the priv by defualt and it shows in unified inventory. 18:13 jordan4ibanez Which admin to talk to about resetting password on forum? 18:14 gargamel On Creative Flat map Sunday 18:14 Yad Benrob0329: Thank you, but my main question reading up on it now in `lua_api.txt` is...how do I get pos2 for launching the ray? I suppose I could pick an arbitrary number of meters for length, and apply trigonometry to the camera angle? 18:14 Yad `minetest.raycast(pos1, pos2, objects, liquids)` 18:14 MTDiscord Yad: Here's an example: https://gitlab.com/benrob0329/ikea/-/blob/master/mods/ikea_tools/init.lua#L35 18:15 Yad Oooh, you're the maker of The Infinite IKEA heheheh 18:15 Yad Benrob0329: At last that game actually helped me! <3 18:16 MTDiscord Yes, take the camera vector and set it to the length of the wielded item range 18:16 MTDiscord Hah, at least it's good for something :P 18:16 Yad heheheh yep 18:17 Yad If you play Dokimi's Exile (now managed by Mantar), you'll notice how aspects of the endgame, as it were, remind me of your Infinite IKEA scenario. ^_~ 18:17 Yad Benrob0329: I see what you're saying, I don't have to do the trigonometry manually, when I can simply multiply look_dir by the desired ray distance, and that to the player position. So simple it's brilliant! 18:18 Yad I'm not used to a computer just automatically parsing 3-D vectors for me with arithmetic operands. :D 18:18 Yad *with = as 18:20 MTDiscord I've just realized that there might be a way to break the flashlight in IKEA, if you shut down the server with it on it should leave the light node in place, which won't get removed automatically 18:21 MTDiscord But you should just be able to wave the flashlight through it and get rid of it 18:22 MTDiscord I could always add an LBM to clean those up I suppose 18:22 MTDiscord or just make the light nodes have a node timer 18:23 MTDiscord Well yes, but then you're starting 10 timers a second 18:24 MTDiscord And those do continue to count if the node is swapped afaik 18:24 MTDiscord hmm, yeah 18:25 MTDiscord at the end of the day using nodes for light sources is just a hack given that entities cant propagate light (which is hard to implemenet) 18:26 MTDiscord This isn't a serious issue, just a small graphical one. The light nodes are buildable_to and everyone has a flashlight 18:27 MTDiscord So cleaning it up on the rare occurrence that the server gets shut down with players on it is easy 18:33 Yad Benrob0329: Hmm, I'm getting exactly the sort of error I would have expect, but to which your code would have to be immune to work. 18:33 Yad Namely, "attempt to perform arethmetic on local `look_dir` (a table value)" 18:33 Yad As though I have to break it down into scalars and multiply those. 18:35 MTDiscord You need to convert it to a vector type 18:36 Yad Ohhh, okay yeah. 18:36 MTDiscord vector.new should work 18:41 Yad GreenXenith: Hmm, I local I'm getting the same error with this: 18:41 Yad local look_table = this_player:get_look_dir() 18:41 Yad local look_dir = vector.new(look_table.x, look_table.y, look_table.z) 18:45 Yad sfan5: If you're available, I seem to be missing something very simple with vector arithmetic. ? 18:46 jordan4ibanez Why not create it in Lua and then create a PR with your new arithmetic included in the vector library? 18:47 MTDiscord Yad: if you use vector.copy() you don't have to break out the individual components 18:47 MTDiscord Yad: what's the error? 18:47 Yad Benrob0329: According to the error it's not a vector to begin with though. 18:48 Yad luatic: "attempt to perform arethmetic on local `look_dir` (a table value)" 18:48 MTDiscord But also, I'm pretty sure thats supposed to return a vector 18:48 MTDiscord Your MT version probably isn't new enough 18:48 MTDiscord Yad: what version if MT? 18:48 MTDiscord *of 18:48 Yad luatic: 5.4.1 ? 18:48 MTDiscord https://github.com/minetest/minetest/blob/5.4.1/doc/lua_api.txt#L6808-L6811 18:49 MTDiscord I forget how long 5.5 has been in development 18:49 sfan5 too long 18:49 MTDiscord almost a year 18:49 MTDiscord https://github.com/minetest/minetest/blob/5.4.1/doc/lua_api.txt#L3129* 18:49 sfan5 Yad: this is hard to debug without seeing the entire code 18:50 MTDiscord Yad: you'll have to use the vector.* functions unless you have 5.5 18:50 MTDiscord 5.4 Feb 23, 2021 18:50 MTDiscord so 9m 18:50 Yad sfan5: Indeed I agree...time to join GitHub! :D 18:50 definitelya lol 18:51 Yad :D 18:57 MTDiscord sfan5: #11948 18:57 ShadowBot https://github.com/minetest/minetest/issues/11948 -- Copy smoothing note to gui_scaling_filter description by appgurueu 19:05 MTDiscord @Luatic what that filter does is essentially a nearest-up-linear-down filter, which prevents weird stairstep effects on non-integer scaling, but yes, it does create interpolated pixels at that point. 19:05 MTDiscord It may also be noteworthy that there's a bug in 9-patch buttons in formspecs when that's turned on. Seems 9-patch must never have been tested with GUI scaling enabled... 19:06 sfan5 I estimate just about everything is not tested with gui scaling on 19:06 MTDiscord That's probably one of the biggest reasons it's not enabled by default. 19:06 MTDiscord Er, I meant gui scaling filter, but yeah, it's probably also not tested with gui_scaling :-D 19:06 sfan5 gui scaling filter* yes 20:14 MinetestBot 02[git] 04appgurueu -> 03minetest/minetest: Copy smoothing note to gui_scaling_filter description 13b164e16 https://git.io/J9GNR (152022-01-09T20:13:54Z) 20:16 MinetestBot 02[git] 04sfan5 -> 03minetest/minetest: Mainmenu game-related changes (#11887) 134c8c649 https://git.io/J9GNM (152022-01-09T20:15:35Z) 20:40 erlehmann https://nitter.snopyta.org/andrestaltz/status/1480257023283499010 20:40 erlehmann > Holy shit I just learned about this and it's very bad. TL;DR the maintainer of faker.js made a new version of the library that breaks the code just to send out an ideological message about Aaron Swartz (RIP), and the result is that GitHub shut him down entirely. 20:49 MTDiscord I (like many others on that thread) am very much in the dark about the whole situation and have no real context around it. 20:49 MTDiscord I can tell that I'm supposed to be outraged but I can't figure out at whom. 20:50 MTDiscord >ssl error 20:51 MTDiscord GitHub, supposedly. But if I'm being honest posting political messages on your repos is a surefire way to get kicked off. 20:52 definitelya I read "conspiracy theory" in a couple posts in that tweet. 20:55 sfan5 kicked off what? github? 20:55 sfan5 if their ToS does not prohibit this then they can't claim it was that 20:57 MTDiscord seems this individual has a interesting past 21:00 MTDiscord https://twitter.com/andrestaltz/status/1480257023283499010 proper link for anyone who cares 21:12 jordan4ibanez When did Libera replace freenode? 21:13 MTDiscord A while ago already 21:13 MTDiscord > Welcome to Libera Chat - 19th May 2021 by staff 21:14 jordan4ibanez I am old now, turning to dust 21:23 gry jordan4ibanez: congratulations coming to the other side. Note some channels will have moved to other smaller networks. Of those that I know, around 90% moved to libera alright. 22:00 MinetestBot 02[git] 04sfan5 -> 03minetest/minetest_game: Fix torch models so they render correctly in `model[]` 1378de12d https://git.io/J9Gp5 (152022-01-09T21:57:57Z)