Time Nick Message 05:52 v-rob Man, EnrichedString is gross. 12:14 rubenwardy anyone know what's happening here? https://forum.minetest.net/viewtopic.php?f=6&t=27657 12:14 rubenwardy !title 12:14 ShadowBot minetest not connecting to content db - Minetest Forums 12:19 celeron55 i think their router has been hacked or something 12:19 celeron55 Linuxdirk's first answer is spot-on 12:20 MTDiscord Not necessarily hacked, sometimes "security" software will MITM your traffic to "scan" it. I have experienced this when using my school WiFi. Obviously, they must then send the wrong certificate. Websites with HSTS enabled won't accept that. 12:20 MTDiscord My workaround is to just use a VPN. 16:04 freshreplicant[m There's always this: https://www.grc.com/fingerprints.htm 16:06 rubenwardy but what if that page is compromised 16:07 Krock .. why does container[] reset the child element's origin, but not scroll_container[] ? 16:08 Krock ._. scroll_container, not scrollbar_container. nvm 16:54 rubenwardy trivial update: https://github.com/rubenwardy/minetest.github.io/commit/cc565858e6fddab024af0f2ab6d3a1a56d195e57 16:55 rubenwardy remember that the direction.md document has the links I removed 16:56 rubenwardy well, most of them 17:14 Krock > mostly iteratively 17:14 Krock what's this supposed to mean? 17:15 Krock is that equal to "spontaneous development"? 17:16 Krock and an "open issues" link would surely be nice to have (without the "high priority" filter) 17:20 rubenwardy iteratively is code for without much planning. You choose what to do next based on the current state 17:25 Krock ah that's how it's meant. yes, that makes sense. 17:43 perfomanceHigh is there a document or page that outlines design decisions? 17:43 perfomanceHigh Lua is not that highly regarded anymore, so i'm trying to read why Lua was chosen over alternatives. 17:49 sfan5 the choice to use Lua was made 7+ years ago so how it's regarded today is not particularily relevant 17:50 sfan5 also I can't think of an alternative off the top of my head 17:50 sfan5 the important part here is that a language has to be embeddable 17:51 Krock wHy dO We nOT UsE jAvAscRipT 17:51 sfan5 javascript is well embeddable these days actually 17:52 rubenwardy Javascript is tempting :D 17:52 Krock mostly using CEF, which is a giant beast. slim javascript interpreters might work well for minetest's use-case tho 17:52 perfomanceHigh yeah, a percentage of devs would unironically use javascript over lua. 17:52 perfomanceHigh i personally am not advocating for or against anything, but i wish to read about the decision process/trade-off made 17:53 rubenwardy The main reason is that Lua is small, lightweight, and fast 17:53 rubenwardy it's a common game language as well 17:53 rubenwardy Javascript has gotten faster in recent years 17:53 sfan5 well I was thinking like https://mujs.com/ 17:53 sfan5 but that's just an interpreter 17:54 sfan5 nobody wants to touch V8 for embedding 17:54 perfomanceHigh mmmh, i have heard arguments against it being fast. but ofcourse, that's just a matter of scale. therefore i need to know where Lua is used within the big picture and what the trade-offs are. 17:54 rubenwardy LuaJIT is fast 17:54 sfan5 Lua is mostly not used for performance critical parts 17:54 celeron55 duktape is another lua-like javascript interpreter 17:55 sfan5 e.g. no number crunching, buffer wrangling 17:55 celeron55 i've used it and it does work 17:55 celeron55 but whatever, this entire topic doesn't really make sens 17:55 celeron55 +e 17:55 celeron55 lua works fine and there's a lot of code written using it already that MT is compatible with 17:56 celeron55 and lua isn't a half bad language to learn if you're aiming for the game industry 17:57 perfomanceHigh so the argument is. "Lua is sufficient, already invested in and there was no reasonable alternative at the time the decision was made"? 17:58 MTDiscord honestly even some of the most bloated servers still manage to keep there legs under them with luajit 17:59 celeron55 back then the only reasonable alternatives would really have been python, which is a pain to embed as it's designed as a host language, and something like guile, which is lisp so nobody wants to program that 18:00 celeron55 lua is also secure in addition to being small, lightweight and fast 18:00 celeron55 and extremely easy to embed - which is obvious today as many scripting languages copy lua's interface 18:02 rubenwardy If I were to add another API, I'd go for something like C# or a general interface like C ABI 18:02 rubenwardy both of those are much more complicated 18:02 MTDiscord Yes. Lua is a great language. It can be sufficiently fast; highly performance-relevant code should ideally be part of the engine or Lua libraries written in C(++). Lua's popularity has been stable. It's frequently used in the games industry, as has already been pointed out. I think the burden of proof lies on you, performanceHigh: Why not Lua? Lua is maybe the only thing that MT didn't get horribly wrong. 18:03 ROllerozxa having javascript as an embedded language honestly sounds extremely unweildy even with a minimal library like duktape 18:03 sfan5 not like js has a larger stdlib than lua ;) 18:03 rubenwardy JS isn't that dissimilar from Lua 18:03 rubenwardy just bigger 18:03 rubenwardy JS is designed for embedding as well: web browsers 18:04 celeron55 also i think lua is a better language design than javascript 18:04 celeron55 javascript is kind of an "oops well let's leave it like that" design 18:04 rubenwardy there's less of it 18:04 MTDiscord ^ 18:04 celeron55 lua was designed by software reserachers 18:04 celeron55 who knew what they were doing 18:04 MTDiscord JS is dirty as heck, Lua started out clean 18:04 MTDiscord JS is slowly getting cleaner, but still is a mess; and a bloaty one, at that 18:04 rubenwardy JS is more useful 18:05 rubenwardy and has typescript 18:05 perfomanceHigh JS is truly the pop culture of languages. everyone loves to hate it, yet it keeps failing upwards. 18:05 MTDiscord Teal (typed Lua) exists too 18:06 celeron55 JS - the client-side PHP 18:06 rubenwardy JS is so much better than PHP 18:06 MTDiscord Not ES5 18:06 MTDiscord I think a "niche" language is exactly the right choice for a "niche" voxel engine. 18:06 celeron55 (i actually like PHP, it suits the job 8)) 18:06 MTDiscord @preformanceHigh, that sounds more like C++ to me LOL 18:08 perfomanceHigh old C++ devs hate new C++, but it is spoken well off by everyone else (from my experience) 18:08 rubenwardy and the rest of C++ devs hate old C++ 18:08 rubenwardy meanwhile I hate all C++ 18:09 MTDiscord I just gave that one a star ! ? 18:11 MTDiscord (1) we can see that (2) the IRC people can't see that and now wonder what a "star" is 18:11 MTDiscord meanwhile people in irc not caring because there stuck in the 1800s feature wise. or till ircv3? or whatever the latest standard was 18:11 MTDiscord Libera doesn't even support a chat history 18:11 MTDiscord At least ruben can see it! 18:12 celeron55 at that this rate someone will soon kickban the discord bridge 18:12 rubenwardy 1800s would be telegraph 18:12 perfomanceHigh i use discord, but i find IRC is more productive. 18:12 rubenwardy pretty sure this isn't telegraph-based 18:12 celeron55 -that 18:12 perfomanceHigh chat history being wiped is nice as well 18:12 MTDiscord except its not 18:12 MTDiscord its all logged to irc.minetest.net 18:12 MTDiscord which is sadly a seperate website 18:13 MTDiscord What does this have to do with Minetest? 18:13 MTDiscord nothing 18:13 MTDiscord more #minetest content 18:13 MTDiscord #meta-discussion 18:14 perfomanceHigh yeah, but like, information theory wise, i know my messages are logged. it's just a difference of the conditions under which they are collected. 18:14 ROllerozxa an IRC client can be run on a crunched together ball of orange peels, try to do the same with discord without getting banned 18:14 perfomanceHigh irc just has this clean, decentralised feel i wish i used more 18:15 rubenwardy please -> #minetest 18:15 perfomanceHigh discord, but you host it yourself rather than sell the data of yourself and all your users. 18:15 celeron55 the beauty if IRC is it's the bare minimum, and as a result, IRC hosting can be done for free 18:16 celeron55 of IRC* 18:16 celeron55 without corporate interests 18:16 MTDiscord true 18:16 celeron55 ideologically it suits projects like MT very well 18:18 MTDiscord agreed, but discord is not explicitly against opensource, they just understandably dont want people making copies of their own software. 18:19 MTDiscord wrong channel, please cease 18:19 MTDiscord Anyways, as a note once the docs project matures a little bit more (give us a couple weeks to get our templates and formatting under wraps) if any core devs want to review our information for accuracy that'd be great :D 18:20 MTDiscord We do the best we can of course, but the actual devs are obviously the most familiar with the source code, especially when there is influence on an API from 3+ locations in the tree. 18:21 MTDiscord I have already seen that Desour is lurking, sometimes dropping comments. 18:22 MTDiscord Indeed 18:27 rubenwardy Should Minetest only load from share/mods if the game is also in share? Or am I reading this wrong 18:27 rubenwardy because that seems wrong 18:28 celeron55 maybe 18:29 celeron55 but i won't pretend i know how users are actually using share/mods :D 18:30 rubenwardy subgames.cpp:110 18:32 rubenwardy I suspect this isn't tested much at all 18:32 rubenwardy the mainmenu doesn't seem to support share mods 18:34 celeron55 wait so there's already logic to avoid loading share/mods if the game is loaded from the user directory 18:34 celeron55 and user/mods is loaded only if the game is loaded from the user directory 18:35 celeron55 no 18:35 rubenwardy user/mods is always loaded - see user!=share bit 18:35 rubenwardy share/mods is only loaded if the game is in share/games 18:35 celeron55 user/mods is loaded for any game, yes 18:35 celeron55 i think these make sense 18:36 rubenwardy I don't think so, I think it should always support both. But that's something for another PR 18:36 rubenwardy I'd like to refactor and combine all this code. There's currently duplicates in C++ and Lua 18:36 rubenwardy context: #11784 18:36 ShadowBot https://github.com/minetest/minetest/issues/11784 -- Use virtual paths to specify exact mod to enable by rubenwardy 18:36 celeron55 well this logic does completely predate the main menu and probably any configurability in choosing mods in any way 18:37 celeron55 initially all mods were always loaded 18:37 rubenwardy yeah 20:07 sfan5 merging #11872, #11935 in 7m 20:07 ShadowBot https://github.com/minetest/minetest/issues/11872 -- Fix damage wraparound if very high damage by Wuzzy2 20:07 ShadowBot https://github.com/minetest/minetest/issues/11935 -- Fix incorrect bit positions in paramtype documentation by aerkiaga 20:09 MTDiscord sfan5: the damage wraparound might require more attention, thinking of exploitation attempts 20:10 MTDiscord "This PR makes sure that the wraparound no longer occurs by switching to s32. While in theory that boundary can be exceeded as well, this scenario is too theoretical." Is it? What about cheating? 20:11 sfan5 the TOSERVER_DAMAGE takes an u8, so this was never an issue even with the old code 20:14 MTDiscord NVM, there is a rangelim included. Merge it. 20:14 sfan5 the value can overflow before that 20:14 sfan5 but for that you need a tool with level=999999 or whatever stupid 20:15 MTDiscord Are levels not s16? 20:15 sfan5 ? 20:18 lhofhansl Just saw the share/games discussion in the logs. Wanted to mention my previous somewhat related efforts: #10426 20:18 ShadowBot https://github.com/minetest/minetest/issues/10426 -- Handle world mods and world game mods in the config dialog. by lhofhansl 20:19 rubenwardy ah, interesting 20:20 rubenwardy this stuff should really use a tree rather than a bunch of random fields 20:20 lhofhansl Yes. In general per game mods are very powerful, IMHO 20:20 sfan5 https://github.com/minetest/minetest/pulls?q=is%3Apr+is%3Aopen+milestone%3A5.5.0 <<<< reviews please 20:21 sfan5 and/or testing 20:33 sfan5 for #11831 btw I plan to check if the implementation can't be made simpler but idk when I will have time do to that 20:33 ShadowBot https://github.com/minetest/minetest/issues/11831 -- Don't go out of the map during raycast by savilli 20:33 sfan5 also #11866, not essential but you'll have to live with erlehmann's complaints otherwise 20:33 ShadowBot https://github.com/minetest/minetest/issues/11866 -- Raise max mapgen limit constant to align with MapBlock by sfan5 20:48 v-rob Do we need this code anymore? https://github.com/minetest/minetest/blob/master/src/util/string.h#L382-L416 20:49 rubenwardy no, as that's in C++11 20:51 sfan5 definitely not but maybe hold off with a cleanup as it looks we're going c++14 soon-ish 20:51 rubenwardy :O 20:51 rubenwardy also, disregard my second comment on the create game PR 21:43 v-rob Left three comments on #11863, but otherwise looks good and works properly. 21:43 ShadowBot https://github.com/minetest/minetest/issues/11863 -- Fully remove bitmap font support by sfan5 22:06 sfan5 thanks, will check back tomorrow