Time Nick Message 07:07 fruitsnack Hello, where entity origin should be since 5.0? Before mob implementations and player had entity origin at their legs, should it be in the middle now with collision boxes extending in both directions (for example if mob is two nodes tall collision box min and max height will be -1 and 1) 14:21 deltasquared so just updated to 5.1.0 as shipped by my distro and... segfault on joining world :/ 14:22 deltasquared gonna check distro bug trackers first. (arch linux) 14:22 deltasquared ... huh, nothing yet 14:23 deltasquared > Invalid size of image for opengl texture 14:26 deltasquared also a thread that was in something to do with font code at the time... (one sec prepping log) 14:27 Krock dump to pastebin 14:30 deltasquared Krock: doing so now 14:31 deltasquared https://a.uguu.se/2v7BGupuysbg_log.trunc.txt (warning, embedded colour codes, having some difficulty getting journalctl to not emit them) 14:32 deltasquared the two active threads I spot are getGlyphIndexByChar() and fdatasync() (apparently being driven by sqlite there) 14:33 Krock no, that's just showing what the other threads do 14:33 Krock the issue is probably that you didn't specify a valid font 14:33 Krock or it's missing 14:34 deltasquared no font changes were performed as a result of this upgrade to v5.1.0 14:34 deltasquared furthermore this only occurs on world load 14:35 deltasquared not at menu (I use the same font for everything) 14:35 Krock indicates that there's an issue with the monospace font 14:36 deltasquared shipped version of irrlicht by distro not changed. font not changed. it's still there, and is the same as I was using it on v5.0.1 14:36 deltasquared I had minetest open before the upgrade, then re-opened it after the upgrade, and this started occurring 14:36 deltasquared _nothing else has changed_ 14:36 deltasquared so what gives 14:37 Krock does it also happen in master (5.2.0-dev)? 14:38 deltasquared y'know you could at least try to phrase that bearing in mind it's slightly non-trivial to do so on a moment's notice, y'know :P but fine 14:39 Krock also, what freetype version was used before/after? is Minetest built with freetype? 14:39 Krock sorry? 14:41 Krock error happens somewhere here. https://github.com/minetest/minetest/blob/master/src/irrlicht_changes/CGUITTFont.cpp#L405 14:43 deltasquared checking now, sorry I was just kicking off a dev build. 14:43 deltasquared I'm also checking my package logs again, one moment 14:43 deltasquared freetype2 before and after is 2.10.1 14:44 deltasquared I'm not sure how to check if freetype is enabled in the build seeing as I can't get at the in-game pause menu, but I'm 90% certain it is enabled 14:45 deltasquared the pkgbuild says it is using freetype. https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/minetest 14:45 Krock if you have some spare time, please run Minetest in gdb. It usually provides nicer looking dumps 14:47 deltasquared so whatever it is still occurs on the v5.2.0 hot off the presses 14:50 deltasquared ... ok, how. so resetting my config fixed it. yet it was a valid config before the upgrade. I'm going to need to narrow down which line caused issues... 14:51 Krock check the font paths first. the issue lies somewhere there 14:52 Krock I also have custom fonts, even testing without TTF stuff which was horribly broken a while ago. Yet no such problem 14:54 deltasquared Krock: the files it reference still exist 14:54 deltasquared and I know in any case the monospace font wouldn't have been disturbed, it's one I generated myself from a pcf using a script, so it's not like it would be suddenly borked 14:55 deltasquared gah. if only arch didn't make it such a pita to backpedal a version in a hurry 14:55 deltasquared ... ah, it's hiding there in my cache. let's see what that does 14:55 deltasquared (v5.0.1 that is. good thing I didn't purge it entirely) 14:56 deltasquared ok, v5.0.1 definitely works 14:56 deltasquared (with the crash-y config) 14:57 deltasquared so what I'm going to do now is I'll start with a blank config file (thus letting MT populate with defaults) and add a line back one at a time from the "failing" one, to see which one breaks things 15:15 deltasquared Krock: was there any code changed that affected how the effective font size is calculated? 15:15 deltasquared I've noticed before gui_scaling also scaled the font_size variables 15:16 deltasquared I've had problems before because this particular monospace font (it was that line after "bisecting" it) that was generated from a pcf has strictly one size to it 15:16 deltasquared and that MT loading the wrong size would cause it to crash 15:17 deltasquared (null pointer somewhere I guess?) 15:19 deltasquared so basically if that effective value ever gets changed (either because of ui scaling change or something else)... KABOOM 15:20 deltasquared less than graceful error handling but it seems there's not very much MT could do if that is the case again 15:21 deltasquared except that now with taking all scaling settings out of minetest.conf I can no longer find a valid mono_font_size value :( 15:22 deltasquared so yeah, anything that changed that affected font size lookup of any kind? (multiple sizes perhaps... in which case my use of a bitmap font is most definitely doomed anyway) 15:43 Krock *reads* 15:45 Krock gui_scaling -> size calculation https://github.com/minetest/minetest/blob/master/src/client/fontengine.cpp#L271-L272 15:46 Krock the calculation there did not change. checking the prop.size orgins 15:47 Krock deltasquared: what values did you use previously? gui_scaling and mono_font_size? 15:48 Krock *what kind of values did 16:02 Krock OH 16:03 Krock deltasquared: I did some F6 profiler changes which now also use monospace fonts 16:04 Krock thing is, it's not the full size but like * 0.85 to be not too disturbing 16:05 Krock #8750 16:05 ShadowBot https://github.com/minetest/minetest/issues/8750 -- Better F6 profiler by SmallJoker 16:05 Krock https://github.com/minetest/minetest/blob/master/src/client/gameui.cpp#L83-L84 16:07 Krock deltasquared: hence your font would also need support for "math.floor(font_size * 0.9)" 16:09 Krock or if you're using the fallback font (due to missing characters for your language) "math.floor(fallback_font_size * 0.9)" 16:30 deltasquared Krock: ok interesting. the different sizes in that case is slightly annoying 16:31 deltasquared as for what values I used previously, one sec 16:32 deltasquared ... ah, in this circumstance gui scale was 1.0 and mono_font_size = 12 16:32 deltasquared so in other words due to the profiler I'd need a scalable font basically 16:32 deltasquared shame I can't use one specifically for the chat and/or just force the font sizes individually. 16:33 MinetestBot 02[git] 04MuhdNurHidayat -> 03minetest/minetest_game: Add Malay translation 137106056 https://git.io/Je1HI (152019-11-30T16:31:40Z) 16:33 MinetestBot 02[git] 04Aresiel -> 03minetest/minetest_game: Add Swedish translation 1310dce79 https://git.io/Je1HL (152019-11-30T16:31:29Z) 16:33 deltasquared (I confess the chat *when open*, i.e. mono font, is the main reason I use this problematic font) 16:34 deltasquared /and/ this particular font even if it were pre-scaled inside the font kinda looks horrendous, as it's designed to be pixel sharp. 16:34 deltasquared it's terminus in case you're wondering; I converted just the size I wanted to use (12px) to an otb font and plonked that in my /usr/share/fonts. 16:35 deltasquared so in all fairness, it is a limitation in the font, in the same way that it can be seen as a web page's fault when it's not responsive to screen or font size scaling. 16:36 Krock well, it's possible to create fonts with sharp edges that are scalable 16:36 Krock although I must admit that I never designed fonts 16:36 deltasquared Krock: idk how though from an existing pcf font. I don't even recall how I made /this/ one, it was a one-liner given to me in #archlinux IIRC 16:37 deltasquared pixel fonts aren't really intended nor do they look good at non-integer scaling of their base size in any case 16:37 deltasquared honestly my preference in this case would have been to keep the profiler using the same font size as I can live with that given I wanted to use this precise font size 16:38 deltasquared (I'm not a fan of terminus's larger sizes even) 16:38 Krock hmm. If you really want to us the very same font, please edit the scale multiplier from 0.9f to 1. This is somewhat a rarity and thus, an edge-case 16:38 Krock sadly the profiler takes up a notable amount of space if run in singleplayer 16:38 deltasquared this is true. guess I never was bothered that much by it 16:39 deltasquared bearing in mind the other reason for that tiny font size is my current ongoing project with small hdmi screens, so I was /already/ dealing with various screen elements taking up a fair chunk of space. 16:39 Krock maybe my screen is just a bit small, thus I also tried to keep the profiler readable but not too disturbing from the actual game. Just so you got a little insight in my thoughts 16:40 deltasquared you'll be glad to know MT handles 800x480 just fine with a hud scaler applied (assuming my font selection was working) :) 16:40 Krock heh :D 16:40 deltasquared the idea was a switch-like handheld 16:40 deltasquared the screen itself is a 7" newhaven module 16:40 deltasquared (it even has controllable backlight! albeit via a PWM signal) 16:40 Krock the latency of such screen can be quite horrible, though. 16:40 deltasquared Krock: it has no latency at all 16:40 deltasquared it has no scaler 16:41 * Krock looks up 16:41 deltasquared it's direct to scan-out from hdmi 16:41 deltasquared newhaven display is what you're after 16:41 deltasquared basically, it takes the hdmi signal from a fixed resolution only and throws that directly at the panel 16:42 deltasquared it /only/ supports 800x480 and will display garbage if you try to do anything else (assuming your OS isn't smart enough to realise that from the EDID info) 16:42 Krock miniature screen :D 16:42 deltasquared and for some ineffable reason, it runs at ~66hz 16:42 Krock 66.6 Hz? 16:42 deltasquared more like 65.89hz 16:42 deltasquared hold on 16:42 deltasquared oh, 65.40 my apologies 16:43 deltasquared anyway, that produces a /lot/ of fun in apps that assume a nice 50, 59 or 60hz 16:43 Krock the user guide shows 65.68 Hz but that's tolerances 16:43 deltasquared what model you looking at? 16:43 deltasquared just so I know it's the same 16:43 Krock http://www.newhavendisplay.com/userguides/NHD-7.0-HDMI-N_User_Guide.pdf 16:43 deltasquared ah, that's the one 16:43 deltasquared non-touch model here so I can get those pixels in all their matte glory 16:44 deltasquared I have an even smaller one as well, that one was some random rpi screen off amazon. 16:44 Krock apps should expect any frame rate since 120 Hz and 144 Hz displays became a thing 16:44 deltasquared Krock: tell that to crash n.sane trilogy 16:44 deltasquared I have the smaller mounted on a frame that allows me to attach it to a harness around a steam controller. 16:45 deltasquared essentially, I could play minetest on a handheld :D 16:45 deltasquared albeit tethered atm 16:45 deltasquared I have a compute stick I intend to fix that 16:46 deltasquared so yeah, I was pleasantly surprised minetest held up on such an esoteric setup at least 16:46 deltasquared given that other games had... issues 16:46 deltasquared mostly tearing 16:46 deltasquared apparently even modern games don't get what vsync actually means 16:46 deltasquared *some modern games 16:46 nephele oh hi deltasquared 16:47 Krock PS: If you want to gain some frames per second but are willing to sacrifice colored text and text shadows: check out bitmap fonts 16:47 Krock those are also pixel-sharp but ignore the font scaling setting 16:47 deltasquared Krock: well MT stopped supporting pcf fonts before which lead me to using the otb translation 16:47 deltasquared it just wouldn't launch after an update one day 16:47 deltasquared oh wait, I think that was a freetype thing? I remember reading about it /somewhere/... 16:48 Krock this was probably before I started developing. I never saw pcf fonts in use before 16:48 deltasquared nephele: apologies, can you remind me where we have met before again 16:48 deltasquared Krock: so what bitmap formats does MT do currently? 16:48 deltasquared I can look into performing a separate conversion 16:48 Krock no no, bitmap fonts are separate from freetype. they're basically used when you compile Minetest without freetype 16:48 deltasquared right 16:48 deltasquared so again what formats 16:49 Krock https://github.com/kahrl/irrtum 16:49 deltasquared does this solve that issue I've noticed where large amounts of chat takes an FPS hit by any chance? 16:49 nephele deltasquared: the vanessae server chatroom thingy 16:49 Krock well, it's a single image which contains the supported characters that are then rendered 1:1 to the screen 16:49 Krock yeah 16:50 nephele i used 'nepugia' there though 16:50 deltasquared oooooooooh hi 16:50 deltasquared Krock: so basically an old school UV glyph atlas? I approve :D 16:51 Krock sorry, I don't know the format. Only thing I know is that there's a conversion tool, lack of colored text but faster drawing 16:51 Krock looking for the comparison.... 16:51 deltasquared /home/user/dot/Downloads/irrtum/graybitmap.cpp:72:11: warning: control reaches end of non-void function 16:51 deltasquared tut tut :P 16:52 Krock https://github.com/minetest/minetest/pull/8641#issuecomment-507056996 16:52 nephele so sad that valve doesnt make steam controllers anymore 16:53 Krock so yeah.. on weak hardware you can really gain some frames by using bitmap fonts 16:53 deltasquared nephele: get em while they're on fire sale I guess 16:53 nephele They aren't 16:53 deltasquared gone already? I heard they were being cleared out for $5 each 16:53 nephele only found out that they were on sale after they were sold out 16:53 deltasquared dang 16:53 nephele and that was two days ago :) 16:53 deltasquared /to be fair/, you're not missing too much 16:54 deltasquared the touchpad is definitely useful, but it's not fantastic, just good 16:54 nephele are you kidding? best controller i own 16:54 nephele i hate analog sticks, the digital trackpads are soooo much better 16:54 deltasquared I actually want to make my own SC-like controller at some point 16:54 deltasquared I found where to buy that tiny trackpad 16:54 deltasquared I'd just need to learn how to talk to it 16:54 Krock Minetest compatibility? 16:54 deltasquared Krock: of the steam controller? 16:54 nephele deltasquared: sounds nice, want to do something similar 16:55 deltasquared I wrote my own mapper 16:55 nephele the board the SC uses is known too 16:55 nephele i kind of want to remove the analog stick though 16:55 deltasquared Krock: I wrote my own bindings in a program I wrote using lua and lua-evdev. 16:55 Krock deltasquared: yeah, so you need a conversion script in order to use it like keyboard? 16:55 nephele Krock: either you need a driver, or you need the steam software 16:55 Krock ah 16:55 deltasquared I picked the former 16:56 deltasquared screw being tied to proprietaREEEEEEEEEEe software 16:56 nephele The format is kind of known by now 16:56 deltasquared nephele: it's supported by evdev 16:56 nephele want to write a driver for haiku at some point :3 16:56 nephele deltasquared: uhh? what? 16:56 nephele it's "just" usb_hid 16:56 nephele so any support would be interesting in userspace 16:56 deltasquared modern linux kernels expose the SC like any other game controller, so no need to muck around with hid raw stuff 16:57 nephele linux has a steam controller driver, yes 16:57 deltasquared hid_steam 16:57 nephele on haiku i can make a steam-like per-window binding, and without steam owo 16:57 deltasquared anyway, I wrote a "driver" using lua-evdev. https://github.com/thetaepsilon/sc_lunar_mapper 16:58 deltasquared per-window binding, man I would kill for that 16:58 deltasquared without needing hacks like xorg snooping 16:58 deltasquared I have to change bindings manually atm 16:58 nephele It's a lot easier on haiku 16:58 nephele applications have an application signature 16:58 nephele so i can map to that 16:58 deltasquared I wish it was possible to propogate up the stack such a signature on linux 16:58 deltasquared there's no built-in concept of "what's the user looking at right now" 16:58 nephele It's possible 16:59 nephele Just write a display server that has that as a requirement to talk to it ;) 16:59 deltasquared yeah no thanks, I have limited free time as it is :P 16:59 nephele haha 16:59 deltasquared Krock: my SC bindings for minetest look like the following 16:59 nephele linux isn't a desktop OS anyhow 16:59 deltasquared right pad -> mouse (duh) 16:59 deltasquared LT and RT are attack and place 16:59 deltasquared when they bottom out that is 17:00 nephele deltasquared: does your thing do motion sensor -> mouse too? 17:00 deltasquared nephele: not atm 17:00 nephele That is my favorite layout usually for the controller 17:00 deltasquared it's a separate evdev device see 17:00 deltasquared also I think it may be turned off by default until you tickle it with some HID commands, not sure, was reading about that somewhere 17:00 deltasquared anyway, item switch was two of the gamepad buttons 17:00 deltasquared motion was the thumbstick 17:00 deltasquared screenshot was the steam button. 17:01 deltasquared ESC was the left "select" arrow 17:01 deltasquared can't remember what I used the right "start" arrow for 17:01 deltasquared one of the shoulder buttons was enable full render, other was fast move 17:01 deltasquared left paddle sneak, right paddle jump 17:01 deltasquared zoom was pressing the touchpad in (it clicks) 17:02 deltasquared IIRC I found the left "dpad" touchpad annoying so I didn't bind it. 17:02 nephele binding the digital pad to movement speed and direction would be fun 17:02 nephele but that requires a way for minetest to accept such movements 17:02 nephele instead of the generic wasd 100% in direction movement 17:02 deltasquared ah, the "start" arrow was open inventory. 17:02 nephele deltasquared: to use or to bind? 17:03 deltasquared nephele: to use 17:03 deltasquared especially when I was resting my thumb. didn't figure out a way to prevent false trigger. 17:03 deltasquared and I didn't like the way it clicked 17:03 nephele clicked? 17:03 nephele why are you clicking it? 17:03 deltasquared when you pressed the dpad it can click in four places 17:04 nephele there is no dpad on the steam controller 17:04 deltasquared nephele: I say "dpad" in quotes 17:04 deltasquared I mean the left touchpad that has arrows on it 17:04 nephele it has some markings, but they are irrelevant 17:04 nephele it is a perfectly working touchpad 17:04 nephele and i love to use it for movement controlls, used that for many many games :) 17:04 nephele but with the steam software 17:05 deltasquared it also has four "click" zones. I've seen the raw event stream, I know what it can do 17:05 nephele uhh, it doesn't seem to have that in hw? 17:05 deltasquared as in, you can press it in at up, down, left, right, and they are dedicated button events 17:05 deltasquared mine does... I swear it does. hold on 17:05 deltasquared gotta get it out :) 17:05 nephele i can click anywhere i want 17:06 nephele on steam it is just a "clicked" event usually 17:06 nephele and i don't see a reason to use it different to that, seeing as i just use touch-> movement normally 17:08 deltasquared nephele: it has dedicated hardware events for pressing in the four dpad directions. https://a.uguu.se/jVqLzNMrBZBn_dpad.png 17:08 deltasquared I filtered out the touch events there so you just see buttons 17:08 deltasquared notice the btn_thumb event at the start and end as I initially press then release 17:08 nephele deltasquared: how do you know? 17:09 deltasquared nephele: that's a live dump from the device 17:09 deltasquared with no software intercepting it 17:09 nephele no, that's evdev 17:09 deltasquared yeah and? 17:09 nephele as in linuxes kernel driver, no? 17:09 nephele not the hid events 17:09 deltasquared huh, never thought the kernel would be sugar coating it xD 17:09 deltasquared idk then 17:09 Andrey01 hello, why does get_properties() method output entity def without custom properties? 17:09 deltasquared nephele: could always just ignore the dpad emulation if that is the kernel I guess 17:10 nephele deltasquared: what would the steam controller driver do other than that? 17:10 nephele isn't it it's sole purpose to make it a bit easier to use? 17:10 deltasquared nephele: couldn't say 17:10 Andrey01 I`ve added my own props and they`re not in that table 17:11 deltasquared nephele: it seems strange though that the kernel would not expose a generic "touchpad pushed in" event in that case though :/ 17:11 nephele since there is no specs i can't tell you specifically 17:11 nephele but that it would be a dpad seems strange 17:11 nephele since i can push it on all positions 17:11 nephele what would it be if i push the top right? 17:12 nephele if it's just generic events it would just be the hid stuff no? 17:13 nephele Krock: does any movement api exists that minetest would accept for input? 17:13 nephele to specify how much speed the player should move in 17:13 deltasquared that would be great, I could have true analog then 17:13 deltasquared I have to coerce to keypresses from the analog stick currently 17:13 Krock physics overriders 17:13 deltasquared Krock: I think nephele meant in the client 17:14 deltasquared to send input events to the client 17:14 Krock key settings 17:14 deltasquared more directly than key presses 17:14 deltasquared Imma guess the answer is no 17:14 nephele Krock: an api to input stuff, instead of sending "wasd" 17:14 nephele To more directly control the player 17:14 nephele like dinput or directx input do with the thumbsticks on windows 17:14 deltasquared if MT doesn't support analog input though there's not a real distinction from sending buttons is there 17:15 Krock not that I'd know of 17:15 nephele deltasquared: should just specify an api and try to push that :P 17:15 deltasquared nephele: that's annoying. you can't actually press the virtual dpad up and right at the same time. that sucks :/ 17:15 deltasquared just tried it 17:15 nephele deltasquared: by the way, i want in on your like-steam controller controlled 17:15 deltasquared nephele: ??? 17:15 nephele deltasquared: huh? but that works fine with steam 17:16 nephele deltasquared: you said you wanted build a similar controller 17:16 nephele :) 17:16 deltasquared oh, do you want the part link for the touchpad at least? 17:16 deltasquared I haven't really invested any time into it yet 17:16 nephele That's why i said i want in :P 17:16 deltasquared I was figuring out how to interface it last time I thought about it 17:16 nephele We could use the same board the steam controller uses 17:17 deltasquared Krock: btw, I got this from that tool... https://a.uguu.se/5EOwXQbavnQd_Terminus-Medium.otb.png 17:17 nephele Add to that a 3d mould we specify to print and it should be produceable by consumers :) 17:17 deltasquared Krock: is that correct? they don't look much like characters 17:17 Andrey01 and also minetest.registered_entities doesn`t save user properties, I dont understand why? 17:18 hecks what the hell: ERROR[Server]: Server::ActiveObjectMgr::addActiveObjectRaw(): no free id available 17:18 nephele deltasquared: do you have another comms channel other than minetest? to plot a controller :) 17:18 nephele other than irc i ment... 17:18 Krock deltasquared: that totally went wrong. Maybe it only works for scalable TTF 17:19 deltasquared Krock: guess I'd have to try and convert it some other way (from the origin pcf instead of the otb I made) 17:19 Krock hecks: congrats for filling up the pool with 2^32 objects 17:19 hecks wow, I have like 3 objects actually 17:19 deltasquared how the hell is that server not on fire 17:19 hecks but I guess something is trying to recreate thme in a loop 17:19 Krock deltasquared: it will look like this: https://krock-works.uk.to/u/DejaVuSansMono_15pt.png 17:19 deltasquared nephele: one that I pay attention to on a reliable basis? none currently 17:19 deltasquared suggestions are welcome... (PM?) 17:20 nephele not like email or something? 17:20 deltasquared erm 17:20 deltasquared my email... betrays my real name xD 17:20 nephele my git has my real name in plain view :P 17:20 deltasquared yet it's the only one I can access from anywhere 17:20 deltasquared on account of the diceware password being burned into memory by now 17:20 deltasquared for reference, the touchpads that apparently the SC uses - https://eu.mouser.com/new/cirque/glidepoint-circle-trackpads/ 17:21 deltasquared I should make a video sometime of me playing minetest on my "gameboy" 17:21 deltasquared (the screen on it's harness around the controller) 17:22 Krock hecks: actually it's that 1) there are only 2^16-1 active objects possible (at this moment) and 2) overflows in the ID assignment are handled wrong 17:22 hecks I'm doing my own persistence using entities without static_save, so, it's probably trying to "load" an entity infinite times 17:22 Krock ignore 2 17:23 hecks while I'm fiddling with active block management 17:23 Krock in 1 of 2^16 entities you'll get this error once due to integer overflow 17:23 Krock minetest bug 17:24 hecks can't be the case with fresh worlds 17:24 Krock actually no. the code also handles ID = 0 correctly as reserved 17:24 Krock for now it appears to be a mod issue 17:25 hecks it's my problem, it was just... puzzling 17:25 hecks you'd think creating 1<<32 entities would take a measurable amount of time, guess not 17:29 Andrey01 does anybody know where custom properties of entity def table are being saved? They are really neither in minetest.registered_entities nor in self 17:29 hecks getmetatable(self).__index ? 17:30 hecks docs said something about metatables 17:30 rubenwardy Andrey01: code please 17:32 hecks oh now I see the part where it creates 0xFFFFFFFF entities, it does actually take a few seconds, you can see it by mapblocks not loading anymore :) 17:39 Andrey01 rubenwardy: https://pastebin.com/xSbSQ1da 17:45 Krock * 2^16 objects. I don't know why I thought of 32 bits 17:51 Andrey01 rubenwardy, have you not reviewed my code yet? 17:51 rubenwardy I'm busy with other things 17:58 hecks minetest.forceload_block wants a "position" but what kind of position is this? in nodes? in blocks? 17:59 rubenwardy in nodes 17:59 hecks thank you 17:59 rubenwardy the API tries not to expose mapblocks to the Lua API 18:00 sfan5 https://github.com/minetest/minetest/blob/master/src/script/lua_api/l_env.cpp#L1278 18:00 rubenwardy really forceload_Block should be forceload_area, and take minp/maxp 18:00 sfan5 are you sure? 18:00 hecks uh oh 18:00 rubenwardy bad documentation then 18:02 rubenwardy sfan5: the position is converted to blocks in Lua: https://github.com/minetest/minetest/pull/1094/ 18:02 rubenwardy hecks: it's in nodes 18:02 sfan5 ah 18:02 sfan5 that's unexpected 18:02 hecks alright 18:02 rubenwardy I think that's bad practice 18:02 hecks it's acceptable if there's no official "convert to block coords" function 18:03 hecks also if this used minp/maxp, how would you deallocate forced blocks? 18:03 rubenwardy it's bad practice for the Lua API to hijack the C++ code like this 18:03 hecks you mean forceloading in general? 18:03 rubenwardy no, that PR I linked 18:03 hecks oh 18:03 rubenwardy there should be a comment in the C++ at least 18:04 hecks anyway I do need forceloading badly to ensure MT doesn't eat entities when I don't want it to, and the way it works now with individual blocks is ideal 18:10 Andrey01 so again question: does minetest.registered_entities save inside custom properties or not? And then where can they be saved? 18:11 hecks Andrey01: I don't know the answer to this, but, if nothing else works you can wrap the registration in something that stashes the extra data somewhere 18:16 rubenwardy Andrey01: custom properties will be saved in registered_entities and then accessable through self due to metatables 18:16 rubenwardy oh 18:16 rubenwardy you can't define custom object properties 18:16 rubenwardy that's an engine API 18:16 rubenwardy you can only store things in seld 18:16 rubenwardy *self 18:16 rubenwardy do: self.head 18:17 rubenwardy an object property in an engine API to set various different things like view appearance, it's not to store arbitrary data 18:18 Andrey01 ah, thanks 18:18 Krock fun fact: linked lists are possible in Lua, even though it might be quite pointless 18:19 hecks heresy 18:19 rubenwardy Andrey01: be aware that head won't be copied for each new entity, as it's a metatable 18:19 Krock and pointer-less (insert knee slapping here) 18:19 rubenwardy you'll need to do something like rawset(self, "head", table.copy(self.head)) if it's a mutable table iirc 18:20 rubenwardy *table.deepcopy() 18:20 rubenwardy it's a string though, so is fine 18:20 rubenwardy strings are immutable 18:20 Krock Minetest's function is called table.copy() which does a deep copy 18:20 rubenwardy ah 18:20 Krock FYI 18:20 rubenwardy I had doubts 18:21 Krock I had grep "table." lua_api.txt 18:21 Krock actually "table\." 18:21 hecks deep copies considered harmful 18:21 rubenwardy then again, I always end up typing "minetest.file_exists()" and then having to search the lua_api to find that it's just "file_exists" 18:22 Krock file_exists does not exist in lua_api 18:23 Krock minetest.get_dir_list is documented, though 18:23 rubenwardy oh yeah, it's undocumented: https://github.com/minetest/minetest/blob/master/builtin/common/misc_helpers.lua#L208 18:24 Krock lovely 18:24 rubenwardy probably shouldn't be using that, then 18:25 Krock this really should be a minetest namespace/table function 18:25 Krock and get_last_folder cleanup_path should not even exist in the global env 18:38 hecks yee https://a.uguu.se/rvqY81HYe8bS_blkloader.mp4 18:41 hecks now for the diamond question, how do I make UI work on different DPIs 18:42 hecks hud and item icons in particular 18:44 hecks at default dpi, item graphics must be 16x16 or they'll scale horribly... at 96 dpi, they must be 24x24 18:45 hecks I might have to screech at people to use 96 to play this which is a less than ideal thing to do 23:05 Copenhagen_Bram hello 23:19 hisforever Hi is there a way to hide the tool bar while taking a screen shot? 23:24 nephele one of the f(n) keys hide the hud, i forgot which one though 23:24 Calinou hisforever, nephele: press F1 to toggle the HUD 23:24 Calinou (and F2 to toggle the chat, if any) 23:26 hisforever thanks my friends I like sharing screenshots you are great in here