Minetest logo

IRC log for #minetest-hub, 2018-07-03

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

All times shown according to UTC.

Time Nick Message
00:18 BillyS Yeah, it was a firewall issue
00:57 tumeninodes heh heh... so you think
00:58 ANAND joined #minetest-hub
00:59 tumeninodes remember, those students have been going off into the real world for a long time..., basically, the real world is for some High School for the rest of your life, and for others, College for the rest of your life with one added bonus..., you get to work every day
00:59 ANAND Hello everyone! :)
01:00 tumeninodes HELLO! WHY ARE YOU YELLING?!
01:00 tumeninodes :D
01:00 ANAND :P
01:01 tumeninodes My bad, you were just excited. I saw the ! and it tricked my brain into seeing all caps
02:34 paramat joined #minetest-hub
03:09 tumeninodes left #minetest-hub
05:20 lumberJuice joined #minetest-hub
05:37 longerstaff13 joined #minetest-hub
05:38 longerstaff13-m joined #minetest-hub
08:30 entuland joined #minetest-hub
08:30 jluc joined #minetest-hub
09:12 Fixer joined #minetest-hub
10:31 twoelk joined #minetest-hub
10:32 CWz joined #minetest-hub
11:09 * longerstaff13 appears
11:10 rubenwardy o/
11:18 Krock joined #minetest-hub
11:25 IhrFussel joined #minetest-hub
11:26 IhrFussel Krock, what did you mean on my server?
11:26 Krock IhrFussel, now it's about half an hour since hexchat first tried to connect to freenode
11:27 Krock I wonder what went wrong with my connection
11:27 IhrFussel Worked 1st try for me (HexChat 2.14.1)
11:30 Krock hmm..
11:47 Fixer joined #minetest-hub
11:58 tenplus1 joined #minetest-hub
11:58 MinetestBot tenplus1: Jul-02 21:12 UTC <Krock> Protector needs a simple patch. https://notabug.org/TenPlus1/protector/src/master/init.lua#L260 ("return true") change to "return onlyowner". Otherwise any node can be abused to store text
11:58 MinetestBot tenplus1: Jul-02 21:18 UTC <Krock> actually just check whether the node at "pos" is a protector node, somewhere here https://notabug.org/TenPlus1/protector/src/master/init.lua#L531
11:58 tenplus1 hi folks :P
11:58 tenplus1 hey Krock
11:58 Krock hi tenplus1
11:58 tenplus1 ooh, bugfixes :) thanks dude... checking now
12:06 tenplus1 krock, can you explain the changes please
12:07 tenplus1 protector.can_dig is a true or false function
12:08 Krock I know. first suggestion wasn't that great, instead, check whether it's a protector node in register_on_player_receive_fields
12:09 Krock or better: move the position data away from the formspec, into a local table
12:09 tenplus1 why would that help ?
12:09 tenplus1 if someone uses csm to edit metadata it wouldnt matter wether it was a protector or block of dirt
12:09 Krock because currently you can add members to "air"
12:09 Krock in combination, there's no member count limit
12:10 Krock you can paste the entire lorem ipsum into air this way
12:11 Krock and another existent node might need the "members" metadata field for its own purposes
12:12 tenplus1 this is only if someone opens formspec using csm, right ?
12:12 tenplus1 protector redo should only allow metadata to be written to actual protection nodes if used properly, and it has a limiter set
12:12 tenplus1 so I gotta make it csm proof *shakes fist*
12:12 Krock yes, that's exactly what I meant
12:14 twoelk hi tenplus1 o/
12:14 tenplus1 hi twoelk :P
12:24 tenplus1 Krock: updated, has node check included
12:25 rubenwardy tenplus1: use a context
12:25 rubenwardy !book formspec
12:25 MinetestBot rubenwardy: Formspecs - https://rubenwardy.com/minetest_modding_book/en/chapters/formspecs.html
12:25 rubenwardy see contexts there
12:25 rubenwardy also, is it worth adding something to track vulnerabilities for server owners?
12:26 rubenwardy not sure what existing software there is for that
12:26 tenplus1 wait, what ?
12:26 rubenwardy don't send the position with the formspec
12:26 rubenwardy store it in a local table
12:27 IhrFussel randomuser111 joins server, builds something, earns privs ... suddenly joins as randomuser222 doesn't know how to change the name back, complains about invalid password, joins with 20 other accounts and each time complains about not having the privs
12:27 tenplus1 lol fussel
12:27 IhrFussel Is apparently 6 years old (hard to believe)
12:30 tenplus1 so use a table outwith meta to pass information to formspec ? even if it's just the position of the protector
12:30 rubenwardy yes
12:30 rubenwardy well
12:30 rubenwardy if you also check the node type and the player can access it
12:31 rubenwardy and you're fine with them being able to select arbitary nodes of that type
12:31 rubenwardy no matter the difference
12:31 rubenwardy then that's probably fine
12:31 rubenwardy the engine needs support for contexts :)
12:31 tenplus1 the on formspec checks the node to be sure of what it is, pos could easily be gotten anyway so not uber important
12:32 rubenwardy so it's fine if they can select any protector node, even if far away?
12:32 rubenwardy well "even if far away" can be fixed with dist check
12:32 tenplus1 you mean the android bug ? infinite reach ?
12:32 rubenwardy no
12:33 rubenwardy users can submit formspecs with any value they choose
12:33 rubenwardy which means they could submit one with a node 1000s of blocks away
12:33 tenplus1 can metadata be written to a map area that isnt loaded /
12:33 rubenwardy no
12:33 rubenwardy not sure what would happen
12:34 rubenwardy I think get_meta would turn nil
12:34 rubenwardy so crash
12:35 tenplus1 added a meta nil check to receive fields
12:38 Krock also protector:node_* crashes if it's an invalid position
12:38 Krock due to string_to_pos
12:39 Krock if not fields.close_me then  ->  if not fields.close_me and not fields.quit then
12:39 Krock so we can finally use ESC on these formspecs
12:40 Krock maybe I should make a PR for all these issues
12:43 Krock tenplus1, are you working on it right now? asking for the case you're doing some rewrites which would then conflict
12:47 tenplus1 fixed ESC closing, added pos table for formspec
12:47 tenplus1 testing
12:47 tenplus1 what conflicts ?
12:49 Krock with changes that I'd do if there are still ways to crash it
12:50 tenplus1 explain plz
12:50 Krock nvm..
12:50 tenplus1 if I can add ways to protect this from csm or crashing now it'd be kewl
12:51 tenplus1 thanks rubenwardy, external pos table works fine
12:54 tenplus1 wait, if it checks a local table for player position which is only updated through right clicking the blocks themselves then I can remove the get_node check for protector in received fields
12:55 Krock you thought so. no.
12:55 tenplus1 ?
12:55 Krock a protector node can still be dug, the table variable is kept.
12:56 tenplus1 nope, once the formspec is closed the player position is set to nil
12:56 Krock when is the formspec closed? when "quit" is sent?
12:56 tenplus1 it only exists so long as player is editing the formspec from protector right click
12:57 Krock what if the client doesn't send quit?
12:57 tenplus1 if not fields.close_me and not fields.quit then
12:57 tenplus1 minetest.show_formspec(name, formname, protector_formspec(meta))
12:57 tenplus1 else player_pos[name] = nil ; end
12:58 Krock spamming ESC closes the formspec too.. after long trying
12:58 Krock (or holding ESC)
12:58 tenplus1 it does ? isnt that a bug in the engine then ?
12:58 Krock neither close_me nor quit are then sent
12:59 Krock I'm glad it's that way because I freak out every time I try to close that formspec with ESC
13:00 Krock oh well, the client must not show the formspec. it can simply be blocked from being shown, whereas the server still thinks it's open
13:01 tenplus1 if the client/csm tries to show a protector formspec then it wont let you edit anything inside unless the local player_pos has been set... and csm cannot set that
13:04 Krock 1) client right-clicks a protector formspec, doesn't let the formspec show. 2) protector is replaced by and other node 3) show the formspec. possible to write to whatever node there is now
13:04 Krock *by any other
13:05 Krock ^ assuming the get_node check is removed
13:06 tenplus1 so if csm arranges a replacement node it swaps in, fiddles with meta, then swaps back to protector
13:07 tenplus1 any csm mod could totally overwrite protector meta without having to check anything
13:08 Krock no, the client does not have direct access to the node meta. it's about abusing the code conditions which would allow this in an unintended way
13:08 tenplus1 so csm is limited and cannot use set_meta or on_player_received_fields
13:09 shivajiva Krock: fwiw the meta was nil
13:09 * tenplus1 is really starting to detest CSM
13:11 Krock shivajiva, strange. get_meta should actually error because pos is nil
13:12 Krock tenplus1, yes, then no. It can trigger "on_player_received_fields" and submit any data to it (better restrictions in 5.0.0)
13:13 Krock I doubt that fix was ready when 0.4.17* released
13:15 tenplus1 nab updated, check code now krock
13:17 shivajiva ServerError: AsyncErr: ServerThread::run Lua: Runtime error from mod 'protector' in callback on_playerReceiveFields(): Invalid position (expected table got nil).
13:18 tenplus1 ?
13:18 shivajiva [C]: in function 'get_meta'
13:19 tenplus1 is that through normal use shiva or crash testing ?
13:19 shivajiva Krock testing
13:19 tenplus1 with latest code I just updated ?#
13:20 shivajiva nah
13:20 tenplus1 *phew* test new one plz :D
13:21 * longerstaff13 appears
13:21 tenplus1 hi longer
13:21 longerstaff13 afternoon 11
13:22 shivajiva can only patch as I use a fork but will attend to it :)
13:22 shivajiva Hi longer :)
13:23 longerstaff13 afternoon shiva :P
13:24 * longerstaff13 is hosting a minetest server with barely any mods from his laptop :D
13:25 tenplus1 0.4.17 or 0.5 ?
13:25 longerstaff13 0.4.17.1
13:25 tenplus1 oh yeah, when creating new 0.4.17 worlds I get this error on 1st run: 2018-07-03 14:18:19: WARNING[Main]: /!\ You are using old player file backend. This backend is deprecated and will be removed in next release /!\
13:25 longerstaff13 o.o
13:26 Krock https://wiki.minetest.net/Database_backends#Player_backend
13:27 tenplus1 shouldnt it default to sqlite3 ?
13:27 rubenwardy removed in the next release
13:27 rubenwardy lol
13:27 rubenwardy what a lie
13:28 tenplus1 it only appears on first run of a new world, weird error...
13:28 Krock "will be removed in a future release"
13:28 sfan5 technically the next release is 5.0.0 not 0.4.17
13:28 sfan5 removing this in .17 would've been stupid anyway
13:29 longerstaff13 does make sense to remove it in a whole new release
13:29 Krock removing it in 5.0.0 would not be helpful either. users already worry about these compat breaks because the mods may break .. humbug
13:30 tenplus1 I dont mind breakage in 0.5 so long as it loads the map... mods can be altered
13:30 rubenwardy was going to convert your title parsing code to python so I can use it in CDB
13:30 rubenwardy but    https://github.com/SmallJoker/ModIndexer/blob/master/Program.cs#L479-L580
13:30 rubenwardy why is it so long
13:30 tenplus1 am just eager to hurry it along and get there so i can tailor mods to 0.5
13:30 Krock tenplus1, that's exactly the point. if the files backend is removed, it won't load
13:31 Krock because it would be yet another breakage. but the first for maps.
13:31 rubenwardy Krock, you should definitely make it so it checks the entire forum list every time to look for deleted topics
13:31 Krock rubenwardy, because what are regexes
13:31 rubenwardy and then only download if the ID isn't added yet
13:31 rubenwardy or if it's been a while
13:32 rubenwardy !title https://gist.github.com/rubenwardy/90b046a0e61d388c103bf0692de3bb90
13:32 MinetestBot rubenwardy: forumlistparser.py · GitHub
13:32 rubenwardy just need to add authors and fancy title parsing
13:33 rubenwardy oh, and parse dates
13:33 Krock uh.. python. new lands to me
13:34 tenplus1 thx for assist rubenwardy and krock, notabug updated for Protector Redo
13:34 rubenwardy :)
13:34 Krock np
13:34 rubenwardy Krock: it's great
13:34 rubenwardy BS4 is very nice for parsing HTML
13:34 rubenwardy well
13:34 rubenwardy I wish it had a nicer CSS style selector
13:34 rubenwardy or jQuery style
13:34 rubenwardy after this, I'll only need your mod search for the repo links
13:35 Krock well, topic titles may change. other topics are dead after years
13:35 rubenwardy you can get topic titles from the list
13:35 Krock also the topic contents change, such as repository links
13:35 rubenwardy yes, hence the need to occasionally reparse
13:36 rubenwardy personally, I'd make it download the first list of topics every day, and the whole list once a week. In both, download pages for any new topics. For whole list, remove any that are no longer there
13:37 rubenwardy not sure about reparsing
13:37 rubenwardy the forum topic content for repo links
13:40 sfan5 rubenwardy: tip: if you use re.search you change instead write r"t=([0-9]+)"
13:40 sfan5 s/change/can/
13:40 rubenwardy ahhh
13:40 Krock @topic title. everything outside of brackets could be removed. if there's a mod name: attach afterwards. however, topics are also bumped, so it's not quite easy to find out whether it was deleted or moved
13:40 rubenwardy is that the only difference?
13:41 sfan5 pretty much https://docs.python.org/3/library/re.html#search-vs-match
13:41 rubenwardy ah, must have misread that
13:42 rubenwardy it actually doesn't need to be similar to K's mod srch actually
13:42 rubenwardy as I'll overwrite that anyway
13:42 Krock yes, otherwise it couldn't be superior :D
13:42 rubenwardy lol
13:43 rubenwardy problem with just moving tags is forms like this:
13:43 rubenwardy [Mod] Title [v1][asas] - Added some things!
13:43 rubenwardy you'd want Title,   not Added some things!
13:43 rubenwardy err
13:43 rubenwardy you'd want Title,   not    Title - Added some things!
13:43 AndroBuilder joined #minetest-hub
13:43 rubenwardy so maybe pretag state, title state, posttag state, post text state
13:43 rubenwardy funn
13:44 rubenwardy not sure how many topics are different to that
13:44 rubenwardy [Pretag][Pretag] title [posttag][posttag] post text
13:45 Krock yes but human input finds many ways so that even  [Mod] Cool new stuff aded!! [1.1][mod_name] Mod Name Things   does not output the correct "Mod Name Things"
13:45 rubenwardy well
13:45 rubenwardy as long as I get a ~95% accuracy rate it's fine
13:45 Krock because there's no rule on how to write the forum titles apart from that it must be tagged
13:45 rubenwardy I can edit the 10 topics left
13:45 rubenwardy there is
13:45 rubenwardy for Releases
13:45 rubenwardy not for WIP - that would be the bigger issue
13:46 IhrFussel Can your regex handle this case? Then it#s probably fine xP [MOD][API][TINY][SERVER][GIT]Player knockback[punchback]
13:46 Krock yes, right. Was talking about common WIP Mod outcome
13:47 rubenwardy yes, IhrFussel
13:47 rubenwardy however it won't handle tags not having []
13:47 rubenwardy or tags after a post text
13:47 rubenwardy I'll get a list of topic names, and bulk run regexes on them
13:48 rubenwardy sed would be the correct tool for that, right?
13:48 IhrFussel Then this would fail [mod] A22
13:48 Krock sed works. python might also have a lib for that
13:49 rubenwardy python does
13:49 rubenwardy oh, sed probably uses GNU regex
13:49 rubenwardy probs better to use python as that's the varient I will be using
13:49 rubenwardy IhrFussel: no, as posttags and posttext are optional
13:49 rubenwardy so is pretags
13:49 rubenwardy only title is required
13:50 IhrFussel I prefer regex's where I can write {1,} or {1,5} not the stupid lua ones
13:51 rubenwardy Lua doesn't have regex
13:51 rubenwardy Lua has patterns
13:51 IhrFussel I know but many call it that
13:51 rubenwardy they're wrong :P
13:51 IhrFussel There are also languages that claim to have regex but don't support {}
13:52 rubenwardy are patterns regular?
13:52 rubenwardy a regular expression is something that can parse a regular language
13:52 rubenwardy so it's not about how it's written
13:52 rubenwardy but about what it can do
13:53 rubenwardy not sure what makes something regex though
13:57 shivajiva regular expression is defined as a sequence of characters that define a search pattern, hence the confusion over lua patterns probably
14:09 IhrFussel Is lua the only language with their own type of "search pattern"?
14:09 IhrFussel its own*
14:13 rubenwardy ^(?:\[([^\]]+)\]\s*)*[^\[]+\s*(?:\[([^\]]+)\]\s*)*[^\[]*$
14:13 rubenwardy kek
14:13 rubenwardy IhrFussel: nope
14:14 rubenwardy basically every single language and tool has their own
14:14 rubenwardy Python, PHP, GNU, perl
14:14 rubenwardy however most of them use similar rules
14:14 rubenwardy Krock, sfan5: look at my regex and cower in awe
14:15 rubenwardy although finding out where each thing is will be painful
14:15 rubenwardy not sure how to do that
14:15 rubenwardy named I guess?
14:15 rubenwardy this is an awesome website: https://regex101.com/
14:16 sfan5 that looks like a regex you'll write once and never understand again
14:17 rubenwardy yes
14:17 rubenwardy I'm going to split it into multiple strings then add them before compiling
14:17 rubenwardy like a regular grama
14:17 rubenwardy *grammar
14:23 Krock <sfan5> that looks like a regex you'll write once and never understand again
14:23 Krock HAHAH how true :D
14:27 Krock Notabug just threw error 500 by creating a new PR. oh well. it's not perfect
14:27 tenplus1 lol
14:30 Krock tenplus1, *ding* new present for you. Say "open" to open it
14:31 tenplus1 open
14:31 Krock It's a PR for protector
14:31 rubenwardy anyone know the best way to group groups in regex?
14:31 Krock (group1|group2)?
14:32 rubenwardy as in, I want to know which of the groups are pretags, which is the title, and which are post tags
14:32 rubenwardy not sure how named groups work
14:33 Krock only match tags and the content. then filter the content by a white or blacklist
14:33 Krock *content of the tags
14:33 rubenwardy heh
14:34 Krock uh well, it's complicated
14:47 lumberJ joined #minetest-hub
14:47 tenplus1 Krock: your changes dont allow me to enter members to the node
14:48 Krock checking
14:48 Krock oh. enter is the keyword here
14:49 Krock that's because quit is sent when the field should close the form
14:50 paramat joined #minetest-hub
15:00 Krock tenplus1, fixed
15:00 Krock err..
15:00 tenplus1 updated :90 working
15:06 Krock tenplus1, https://notabug.org/Krock/protector/commit/a359dad3c52
15:06 tenplus1 old clients ? shouldnt it be 0.4.16 and above ? arent we wanting ppl to update
15:07 tenplus1 since get_look_horizontal etc is 0.4.16 ? no ?
15:07 Krock yes. clients. the server requires 0.4.16
15:07 Krock not sure how far behind mobile users are
15:07 tenplus1 always thought formspec ran server side and not client ?
15:09 Krock when the client is a bit older, they interact slightly different with the formspecs. like pressing enter, which always closes the formspec for them
15:09 IhrFussel According to my own server stats most mobile users use 0.4.14 or 0.4.15 still
15:10 tenplus1 lagging behind
15:10 tenplus1 or using clones
15:10 IhrFussel 3rd-party-apps don't need to update their engine code since 0.4.X is still pretty much compatible with any other 0.4.X
15:11 IhrFussel At least 0.4.11+
15:12 IhrFussel 0.4.11 didn't display colored name tags yet AFAIK so some players didn't get the "red = admin, orange = MOD"
15:13 red-001 IhrFussel, does the coloured string get sent to them?
15:13 red-001 Krock, clearly it's not a bug
15:13 IhrFussel I think I check their prot version and strip it in case they use <= 0.4.14
15:13 red-001 ah
15:14 IhrFussel But that only applies to chat...the set_nametag_atrributes() still gets the new color, not sure what 0.4.11 does with it
15:15 red-001 chat should be fixed in core
15:15 Krock getting 0.4.11 clients to update is quite easy: https://github.com/minetest/minetest/blob/stable-0.4/minetest.conf.example#L312
15:16 IhrFussel Well since 5.0.0 is only compatible with 5.0.0 there is no need for that I guess
15:16 Krock nvm, not that one. it would be the strict protocol version check
15:16 Krock since the pre_v25 setting only applies for clients, but servers still accept them
15:17 red-001 oh lol
15:17 red-001 looks like the fix is only included in 5.0.0
15:17 IhrFussel Maybe I could just add a new sentence to the join formspec in case the client prot version is < (26?)
15:18 red-001 nvm
15:18 tenplus1 updated, thanks krock
15:18 red-001 github is weird
15:18 Krock tenplus1, np.
15:19 tenplus1 :P
15:19 red-001 IhrFussel, chat should be fixed by core
15:19 red-001 but I don't think nametags are
15:19 IhrFussel You mean the engine should already handle the stripping of colors?
15:20 red-001 from chat
15:20 red-001 https://github.com/minetest/minetest/commit/c399f5a5419efdafec766268af008ed24418fcd4
15:20 IhrFussel In 0.4.17-dev from dec?
15:20 Fixer_ joined #minetest-hub
15:20 red-001 what git hash?
15:22 tenplus1 Krock: is notabug behaving itself for you now ?
15:22 Krock tenplus1, sorry?
15:22 red-001 paramat, there is a 0.4.18?
15:22 Krock ^ not discussed yet in #-dev
15:23 red-001 ok
15:23 Krock to clarify, there's no definitive decision. it has been discussed
15:23 red-001 link?
15:23 tenplus1 "Krock: Notabug just threw error 500 by creating a new PR. oh well. it's not perfect"
15:23 IhrFussel Should be included in my server version then... I compiled after merging this https://github.com/minetest/minetest/pull/6751
15:23 Krock red-001, internal organisation discussion. contributors don't have access to that, I thnk
15:24 Krock tenplus1, it only happened once. maybe it'll do again if I submit more PRs :D
15:24 red-001 oh did github add something for that?
15:24 tenplus1 :P
15:24 Krock red-001, yes, there are now rather private pages where posts (like in twitter) can be written
15:25 red-001 ah https://blog.github.com/2017-11-20-introducing-team-discussions/
15:34 IhrFussel Still need to code that players with prot version >= 29 receive their own message back though
15:34 IhrFussel That was not fixed in-engine I think
15:35 IhrFussel Or maybe it only affects custom chat message callbacks
15:38 red-001 it always only effected custom chat
15:38 red-001 IhrFussel, yeah no point changing working code
15:42 rubenwardy looks like it isn't possible for a group to capture more than one time in python
15:42 rubenwardy so   ^((?:\[[^\]]+\] *)*)([^\[]+) *((?:\[[^\]]+\] *)*)[^\[]*$
15:42 rubenwardy :'(
15:45 sfan5 you mean capture multiple times into a signel group
15:45 sfan5 single*
15:45 rubenwardy yeah
15:49 ANAND joined #minetest-hub
15:49 Gael-de-Sailly joined #minetest-hub
15:49 tenplus1 o/
16:13 garywhite joined #minetest-hub
16:13 tenplus1 hi gary
16:14 garywhite hi
16:49 TommyTreasure hi tenplus1, feature request for protector -- make logo node walkable = false in config option
16:49 tenplus1 if I do that then any falling node can drop onto it and make it drop as item, breaking protection
16:49 TommyTreasure hmmm, didn't realize that
16:50 tenplus1 falling nodes have issue with signlike nodes
16:50 TommyTreasure good to know
16:51 tenplus1 :P
16:51 TommyTreasure i had a few, that with even spacing, got in the way of my 'advance train' track system
16:52 tenplus1 bury below tracks :D
16:53 TommyTreasure using the tool to place them.  was kind of nice to not leave small node holes open in the layout
16:54 TommyTreasure but, a little extra work to keep the tracks safe from griefing, is worth the effort
16:54 tenplus1 yeh, cover the gaps :P
16:57 TommyTreasure one more question.  if i 'invent' a new group for a node, would that keep it from being mined by any in-game tool?
16:58 TommyTreasure basically, only able to be removed by WE
16:58 tenplus1 should be indestructable to all tools apart from the one you want to mine it, yes
16:58 tenplus1 like cloud blocks :P
17:01 TommyTreasure last night was the first time i'd even seen ( and noticed ) the cloud block in a mod
17:01 tenplus1 it's handy for admin only builds
17:02 TommyTreasure my issue was with the bedrock nodes.  able to be dug with technic drills
17:03 tenplus1 drills should have a check for {unbreakable=1} and not break 'em :D
17:04 TommyTreasure that's what the nodes were set to.  seemed that they worked before i installed the reworked release of technic
17:04 TommyTreasure can't remember though
17:05 TommyTreasure present group for bedrock nods, that is
17:06 TommyTreasure i must still be asleep.  can't get my fingers to type correctly
17:06 tenplus1 ehehe
17:07 tenplus1 anyone ever tested this yet : https://forum.minetest.net/viewtopic.php?f=9&amp;t=20393
17:10 Krock OP did
17:11 tenplus1 seems, complicated...
17:25 red-001 if someone doesn't find a way to make it turning complete I will be disappointed
17:25 tenplus1 ?? huh
17:30 red-001 oh he just removed last-login
17:30 tenplus1 who, what ?
17:30 red-001 I guess not having last login by definition fixes issues with it
17:30 red-001 https://bitbucket.org/sorcerykid/auth_rx/src/df42508ef64e73cf70975b96215dfe68da340c2b/init.lua?at=master&amp;fileviewer=file-view-default#init.lua-549
17:30 nerzhul "on high-traffic Minetest servers" lol i hope 40 connections per second are handled without any significant for any mod
17:31 nerzhul and SRP is one of the most secure protocols
17:31 nerzhul also when the auth to sqlite is merged, this thing will become useless
17:32 tenplus1 so 0.5 will have this anyhoo ? or parts of it
17:32 red-001 no
17:32 nerzhul parts of this PR ? no
17:33 nerzhul i will make the auth PR a blocker as it's mandatory to have a consistent thing between player db & auth db
17:33 Krock everything or nothing
17:33 red-001 we already have a real database linked
17:33 nerzhul and when it's merged, postgresql support
17:33 nerzhul bye bye any pr, postgresql permits to share auth between same "galaxy" servers
17:33 Krock also leveldb, redis and whatever there still is
17:33 red-001 how is the PR for that doing?
17:34 nerzhul never push auth to redis
17:34 nerzhul https://github.com/minetest/minetest/pull/7279
17:34 nerzhul i don't rember what is missing on it but it's nearly complete
17:34 nerzhul and generic
17:35 nerzhul and it has unittests <3
17:35 red-001 tenplus1, I hope the author did a lot of testing on this
17:36 nerzhul at least bendeutsch pr has nice unittests haha
17:36 sfan5 looks like someone NIH'd sqlite
17:36 Krock my comment about the legacy account is still not addressed
17:36 sfan5 also a scripting language
17:36 red-001 NIH?
17:36 sfan5 way to go overboard
17:36 red-001 not invented here?
17:36 nerzhul and the lua minetest post is quite ugly, he implemented transactional in lua, lol
17:36 sfan5 red-001: yes https://en.wikipedia.org/wiki/Not_invented_here
17:36 nerzhul all transactional backends like sqlite or pg has it directly
17:37 * red-001 wonders why the "opcodes" aren't strings
17:37 nerzhul https://travis-ci.org/minetest/minetest/jobs/398654074#L1471
17:37 nerzhul nice
17:38 red-001 surely that has a smaller chances to go horribly wrong
17:38 nerzhul the feature coverage is sufficient to me
17:38 nerzhul Krock can you remember which change ? so many comments on the pr
17:38 tenplus1 faster than current auth setup ?
17:38 nerzhul without doubt, it's a sqlite db
17:39 nerzhul if you migrate to it
17:39 nerzhul and no corruption problem
17:39 tenplus1 +100  we need 'dis
17:39 nerzhul if you have a big server and already a postgresql db, i suggest to migrate to pg when i code it
17:39 tenplus1 what about sql?
17:39 red-001 the filter thing would be kinda nice as a Lua thing
17:39 nerzhul sqlite is good for tiny servers
17:39 Krock nerzhul, it's still shown in /files. https://github.com/minetest/minetest/pull/7279/files#r186809850
17:40 red-001 empty sandbox with just table and string utils
17:40 tenplus1 I mean if I ran it on Xanadu would it work ok ?
17:40 tenplus1 migrate current auth.txt over etc ?
17:41 nerzhul ty Jricj
17:41 nerzhul migrate a pseudo csv file to a db is very easy
17:43 sfan5 the db_commit method is not atomic, it might fail to find the file if it aborts between .remove() and .rename()
17:44 red-001 sfan5, but it's a bit faster so it must be right
17:46 IhrFussel sqlite is fine with 20+ players too it depends on the hardware...my server would have a max_lag of 0.2 secs if only mapgen ran
17:46 nerzhul slqite is file with thousands of entries
17:46 nerzhul red-001, storage rule, never trust storage
17:47 nerzhul file/fine
17:47 IhrFussel My server only uses sqlite and everyone say "it's smoother than almost every other server"
17:47 red-001 I was joking
17:48 IhrFussel That is quite an achievement to get such comments with 185 mods and 10-20 players regularly
17:49 tenplus1 :)
17:49 sofar there is no strong direct correlation between players and sqlite performance. If all players are close together, it's just like there is one very active player
17:49 tenplus1 !server xanadu
17:49 MinetestBot tenplus1: Xanadu | 98.166.127.241 | Clients: 13/40, 6/16 | Version: 0.4.16 / minetest | Ping: 108ms
17:49 red-001 auth is a lot more like what DBs are meant to handle than map blocks
17:50 red-001 I doubt any real DB couldn't handle minetest auth
17:51 jluc joined #minetest-hub
17:51 IhrFussel I use sauth but that one is actually one of the heavier mods regarding execution time... the prejoin callback takes 50-100ms mostly
17:51 IhrFussel Not sure why
17:52 IhrFussel My server got a little over 100,000 accounts so that could be the culprit
17:53 IhrFussel But deleting old auth means that these names can be re-used and players then suddenly have access to all their locked objects and projects
17:54 IhrFussel It's legal griefing
17:54 tenplus1 heh
17:55 red-001 legal griefing sounds like a mine(craft/test) punk rock band
17:56 IhrFussel Haha^^ No but really... don't wanna start from scratch as new player? Just find abandoned projects, writre down the owner name and try to join as them...and voila! You may be rich
17:56 Darcidride joined #minetest-hub
17:56 Krock deleting old auth means you should also delete the player from the player database, so only the map has leftovers from them
17:56 nerzhul IhrFussel, sauth + 50ms + 100k records ? logical for any non indexes dataset
17:56 Krock finding these can be quite difficult
17:57 red-001 50 ms doesn't seem too bad
17:57 tenplus1 what exactly does auth contain for each player taht cannot be included in separate player files
17:57 red-001 tenplus1, password information
17:57 red-001 and privs
17:58 tenplus1 isnt it hashed anyhow ?
17:58 red-001 privs should really be in player files
17:58 lumberJ joined #minetest-hub
17:58 IhrFussel Yep I'm talking about stuff on the map...locked chests, fridges, furnaces etc ... those are then owned by the "fake" account
17:59 red-001 yeah I suppose it could be
17:59 IhrFussel If auth would be part of the players/ file it would be better to manage if using DB
17:59 red-001 just makes it easier to plug minetest into some external auth
17:59 red-001 * in theory
18:00 Krock red-001, I think you meant: "auth and player file should be the same"
18:01 tenplus1 it would be far easier to include auth info inside player files and backup seperately for restore when needed
18:01 tenplus1 player file is already in use a lot for other stuffs so it's just as important
18:01 Krock I believe the only reason to have them separate was so that the auth can alter players which are no longer loaded by the server
18:01 red-001 realistically it doesn't matter
18:03 red-001 mostly stuck with the way it is now
18:03 CWz Great now we have fucking homophobes on bananaland harassing a girl and telling some fucked up shit
18:03 tenplus1 time to ban/block/revoke shout
18:04 red-001 CWz, homophobes?
18:04 paramat 100,000 accounts, man ..
18:05 red-001 can you read a sqlite database minetest is using without minetest deciding to crash?
18:05 paramat all those random mobile players using unofficial apps
18:05 sfan5 red-001: if it handles SQLITE_BUSY of course
18:05 tenplus1 gotta make player craft wood before their player file is saved...
18:09 nerzhul if a random app non official crash and break the player auth it's not out problem
18:09 twoelk I thought sqlite was rather restrictive with multiple read-write actions and might crash if a read attempt was made from outside minetest while minetest itself was writing to the database
18:10 nerzhul if you want concurrency you don't use sqlite
18:10 nerzhul you will use postgresql
18:10 nerzhul note: multiple emerge threads with sqlite3 map backend = poor sqlite
18:11 tenplus1 that's why I was wondering about inserting auth.txt info into player files using player:set_attribute() :get_attribute()
18:12 tenplus1 then you dont have to scroll through all those names, just load the player that's prejoining and check
18:12 tenplus1 or is that silly ?
18:15 twoelk if you have thousands of playerfiles in a single folder the system might get slow when handling the folder
18:15 sofar no, shouldn't
18:16 sofar minetest doesn't iterate over folders
18:16 tenplus1 but we already have 1000's of pl;ayer files in a folder
18:16 sofar so there's no penalty for opening a file in a folder, really
18:17 twoelk a large cache for example seems to trouble weak hardware - at least from my experience
18:19 tenplus1 am thinking on_prejoin it loads auth info from playerfile using player:get_attribute() and does whatever checks it has to... if join sets last login and sets new attribute
18:19 twoelk but I was allready told years ago that the hardware I sometimes try to run minetest on is to old :-D
18:19 tenplus1 what spec twoelk?
18:19 twoelk um, at office now, nice hardware here
18:19 tenplus1 heh
18:20 tenplus1 Xanadu ran on an old Pentium D for the longest time and it ran well... no lag and 30 players
18:20 tenplus1 and that was with mechanical hdd
18:29 tumeninodes joined #minetest-hub
18:29 tenplus1 wb tumeni
18:29 twoelk http://irc.minetest.net/minetest-dev/2013-10-12#i_3368852 hm ok I think I don't attempt to run minetest on xp anymore
18:30 tumeninodes how do youuuu do tenplus1?, twoelk, everyone else
18:30 tenplus1 good ta, you ?
18:30 tumeninodes well, the cookies I bought suck, other than that... alls good
18:30 tenplus1 aww, what kind ?
18:30 twoelk I do run it on old vista or win2000 machines with 2gb of ram quite often though, .... and o/
18:31 paramat MT code hasn't caught up with its popularity. still coded for a bunch of friends using a cult program
18:31 red-001 well players are in a database now
18:31 ssieb joined #minetest-hub
18:31 twoelk uh? what cult?
18:31 red-001 to avoid killing the filesystem
18:31 tenplus1 o.O
18:31 nerzhul twoelk mt 5.0 doesn't support xp anymore
18:31 nerzhul not sure for vista
18:32 twoelk nyan cats are gone, my underground temples are empty
18:32 red-001 twoelk, the one that punches trees
18:32 tumeninodes some sort of sugar dough w m&ms, weird after taste and seem stale. (I usually stick with homemade but... too hot to bake)
18:32 tenplus1 you didnt buy them from Tesco did ya ?
18:32 tumeninodes nerzhul... nothing, should support vista
18:33 tumeninodes no..., market basket, the NE coast of US equivalent
18:34 paramat 100,000 accounts is just scary,  but then i find the idea of a public server scary too :)
18:34 twoelk hm, maybe I should make a CSM that sneaks  nyancats back  in - now that would be something for a secret cult temple
18:35 tenplus1 lol,   https://notabug.org/tenplus1/pbj_pup   <--  both nyan's and pups
18:35 Krock moognu is the solution for all problems
18:35 IhrFussel 100,000 player files...let me check the actual auth DB
18:35 tenplus1 hah, already did that one krock :P
18:36 twoelk found a glowing pup on hometown not long ago - then the server crashed and the map got corrupted - go figure ----- revenge of the cat
18:36 IhrFussel Fastest way to check amount of records in sqlite table?
18:38 Krock SELECT count(*) FROM tablename .. perhaps?
18:38 Krock dunno if that's SQLite compatible
18:39 IhrFussel 104,744 ... not that far apart
18:39 * tenplus1 tries to decypher auth.lua to use player attributes instead :P
18:39 twoelk hm, tenplus1 you could collect the others and add the statue of bastet and the glowingMinetest letters to your mod :D
18:40 tenplus1 statue of bastet ?
18:40 Krock tenplus1, except that you can't change the privileges for players which aren't online with attributes
18:40 twoelk https://forum.minetest.net/viewtopic.php?t=18718
18:40 tenplus1 yeah, was thinking that
18:42 tenplus1 no way to override that though ?
18:42 tenplus1 would be handy if you could read/write player attributes even when they are offline
18:42 IhrFussel Shouldn't it be easy to implement in MT? If entered player name for a certain action is not in memory, look for the data and load the contents, send them to lua, receive the new values, overwrite and store again
18:43 tenplus1 yup yup
18:43 tenplus1 wait a sec, you deprecated get_attribute already and replaced with get_meta... damn
18:44 IhrFussel AFAIK get_meta() is supposed to work for offline data...or at least it was planned
18:44 tenplus1 that may be the answer then
18:44 tumeninodes could have replaced it with get_f#&$ed
18:44 tenplus1 ahaha
18:45 IhrFussel But then again I wonder...are the meta contents saved the same as attributes?
18:46 tenplus1 from what I see auth.txt loads auth.txt into a huge ass table for functions to work from and check player is player, privs, pass, last login etc.
18:46 tenplus1 there's no reason we cant have those same functions check the player attributes/meta instead as it's called
18:46 tenplus1 would save a ton of memory as well
18:47 tenplus1 just need a way to access them when player isnt around
18:48 Krock attributes and player meta is the identical dataset. just the API changed
18:48 tenplus1 for things like player_exist etc.
18:49 tenplus1 so instead of player:get_attribute("breath") it'll be local meta = player:get_meta() ; meta:get_string("breath")
18:49 twoelk hm, deleting all players that don't have property like locked chests might be usefull
18:49 IhrFussel Krock, does get_meta() work for offline players yet? Or is it just a renamed get_attribute() for now?
18:49 Krock no. yes.
18:50 tenplus1 is get_meta faster than get_attribute ?
18:50 Krock IhrFussel, you'd need the player ObjectRef from somewhere too
18:50 Krock tenplus1, same speed.
18:51 tenplus1 I dont get why it was changed ? new get_meta seems to add another command to do the same thing
18:52 twoelk organisational feature shift that was never completed?
18:52 tenplus1 do I still need to set_meta to write it all out again
18:52 Krock to unify the infrastructure. metadata is metadata. it should offer the same API everywhere
18:53 Krock since when do we need set_meta() for anything? it's applied and saved automatically
18:53 tenplus1 just checking :P
18:53 tenplus1 lol
18:54 tenplus1 was a joke about adding another step to something that's had another step added to :D
18:54 nerzhul ;
19:00 paramat MTG boats have cruise mode now
19:02 tenplus1 ooh
19:03 paramat boat autoforward
19:06 IcyDiamond 2018-07-03 22:05:42: WARNING[Server]: Call to deprecated function 'getvelocity', please use 'get_velocity' at /home/diamond/minetest/bin/../builtin/game/item_entity.lua:155
19:06 IcyDiamond fail?
19:07 tenplus1 try this:https://notabug.org/TenPlus1/builtin_item
19:07 IcyDiamond xD
19:10 IcyDiamond 2018-07-03 22:09:25: ACTION[Server]: ServerEnvironment::clearObjects(): Now clearing objects in 1800 blocks
19:10 tenplus1 has some additional features :d
19:10 IcyDiamond what blocks
19:10 IcyDiamond its nodes in minetest, no?
19:10 IcyDiamond xD
19:12 Krock IcyDiamond, ironically MTG is updated already. yet the core isn't
19:12 Krock because I didn't make a PR for it yet. lol
19:13 IcyDiamond XD
19:13 Krock blocks are 16x16x16 nodes
19:13 Krock http://dev.minetest.net/terminology
19:13 IcyDiamond okay
19:17 AndroBuilder joined #minetest-hub
19:18 tenplus1 nice cruise control paramat, adding to Xanadu :D
19:22 tenplus1 https://notabug.org/TenPlus1/boats (added cruise control, 10 second drop if no player attached, boat damage hitting land to hard and dropping as wood)
19:23 paramat cool
19:25 twoelk bye
19:25 tenplus1 is latest bed commit working ok ?
19:25 tenplus1 cya twoelk
19:26 twoelk left #minetest-hub
19:26 IcyDiamond \o
19:26 Krock tenplus1, tested using the edited client + CSM, so yes.
19:26 tenplus1 kewl, adding that to server as well :D
19:27 Krock your entire server is going to be a patchwork which needs an entire rewrite when 5.0.0 is out lol
19:27 tenplus1 Xanadu is already a collection of custom mods and patched abm's
19:28 IcyDiamond im staying away from abms whenever i can
19:28 IcyDiamond XD
19:28 tenplus1 that's why I override default abm's with my own diamond :P
19:28 IcyDiamond i use timers for nearly all the timing
19:29 IcyDiamond :D
19:29 IcyDiamond the power distrib is still an abm
19:29 IcyDiamond ¯\_(ツ)_/¯
19:29 IcyDiamond fluid transfer is timer based
19:29 tenplus1 it works :) that's the thing
19:29 IcyDiamond true
19:32 paramat IhrFussel see https://github.com/minetest/minetest/issues/4792#issuecomment-402256110
19:34 IhrFussel Regarding globalstep performance: I thought maybe it could improve performance a bit when not all players are processed at once in globalstep but rather "randomly" ... for example a player joins and gets a table value local rand[name] = math.random(1,10) and inside globalstep I do rand[name] = rand[name] - 1 if rand[name] > 0 then return end rand[name] = math.random(1,10) -- actual function
19:34 paramat yes i do that
19:35 IhrFussel So does it make sense and should decrease server load? By distributing it more similar to ABM intervals?
19:36 paramat yes it spreads the load out in to lots of little lags
19:36 paramat *into
19:36 paramat better than fewer big lags
19:42 Fixer joined #minetest-hub
19:43 tenplus1 o/ fixer
19:45 IhrFussel Android is so damn SLOW when loading media
19:46 tenplus1 wifi or 4g ?
19:46 IhrFussel On PC it takes maybe a minute ... on phone after 10 minutes 80% ... wifi
19:46 tenplus1 erk
19:46 tenplus1 lemmie see how quick I can connect to Xanadu using phone
19:46 IhrFussel Could it be the network chip of the device?
19:47 IhrFussel Or maybe the weak phone CPU cannot handle the bandwith
19:47 IhrFussel bandwidth*
19:48 tenplus1 47 seconds on 1ghz quad core wifi
19:48 IhrFussel Initializing also takes a long time it seems...
19:49 IhrFussel Maybe  the media of xanadu is not as large as mine? =P
19:50 IhrFussel /worldmods is 53 MB
19:50 tenplus1 very true :P
19:50 tenplus1 1.7mb here
19:51 IhrFussel The font size on my phone is *horrible*
19:52 tenplus1 love the fence rails tumeninodes :)))
19:53 tumeninodes thank you, enjoy :D
19:53 IhrFussel The join messages occupies 80% of the screen...why is the default font size on Android so large?
19:54 IhrFussel Or maybe it#s cause I have no HD screen... many Android users have no HD screen
19:54 tumeninodes and thank you, paramat, Krock for all the help and hand holding
19:54 tenplus1 <----  840x480
19:54 Krock !next
19:54 MinetestBot Another satisfied customer. Next!
19:55 Krock IhrFussel, maybe it's because your server has such long join messages
19:56 tenplus1 lol
19:57 IhrFussel Krock, it's MT's fault IMO if even short protection names of the areas mod write over 3 or 4 item slots in the hot bar
19:58 Krock apt-get install libholoscreenextension
19:58 Krock apt-get install libmindprojector mindprojector-gui
19:58 Krock on small screens there's never enough space for anything
19:59 Krock decrease the font size if that helps..
20:00 IhrFussel But I mean we need a solution for mobile screens ... font size should depend on resolution probably
20:00 IhrFussel Default font size*
20:01 Krock the font size is not the only problem there
20:01 IhrFussel I know I just opened the inventory and couldn't see the 1st row of items
20:05 IhrFussel Adavanced settings are still broken on Android? You cannot change GUI scaling or pretty much any other setting there because the save button is off-screen
20:05 IhrFussel Advanced*
20:07 tenplus1 mobile screen needs to be at least 1280x760 now I suppose
20:09 IhrFussel Cool and all people with lower resolution (pretty much every budget phone nowaydays has ~ 800x480) now can install a text editor app to be able to edit minetest.conf manually
20:09 tenplus1 lol, prolly easier
20:10 tenplus1 main menu is nice but has a lot of padding
20:13 IhrFussel gui_scaling = 0.9 is better but the formspecs when setting anew value are still too big (save button cropped off)
20:15 tenplus1 which mod has a simple wooden wheel inside ?
20:15 tenplus1 if any?
20:15 tumeninodes 0_o a wooden wheel?
20:16 tenplus1 yeah, like a cart wheel... looking for decor
20:17 tumeninodes I know there's one with a wooden barrel (I think one of Nathan's) not sure if it might have a wooden wheel
20:17 tumeninodes does it need to be squarangular?
20:18 Sokomine tenplus1: i have a cart wheel in my cottages mod
20:18 tenplus1 nah, just want something to save from from having to draw it really :D  am being lazy
20:18 tenplus1 ooh, may I use on xanadu ?
20:18 Sokomine sure. the mod is gplv3.0 - ought to be no problem :-)
20:18 tumeninodes Sokomine, yours must be the one I was thinking of
20:19 tumeninodes sorry for the shody advertisement :P
20:19 Sokomine the wagon wheel is from vanessae. i stated it as cc-by-sa, but she often provides textures as wtfl as well
20:19 tenplus1 perfect :)
20:19 Sokomine no problem, tumeninodes. can happen if you have so many nodes :)
20:19 tumeninodes har harrrrr
20:20 Sokomine tenplus1: you might as well install my entire cottages mod. it looks well in ethereal worlds as well
20:24 tenplus1 will go through it tomorrow hopefully and see what else it has :D
20:25 tenplus1 for now, the wheel :D
20:28 tenplus1 nite all o//
20:28 tenplus1 left #minetest-hub
20:29 tumeninodes good night o/
20:31 IhrFussel MT Android feels good on my screen with font size 16 -> 14 and gui scaling 1.1 -> 0.9 ... but I could imagine that it may be too small on HD screens
20:37 Gael-de-Sailly joined #minetest-hub
20:50 longerstaff13-ZN joined #minetest-hub
20:51 IhrFussel Someone said �������������������������������������������������������������������������������������������������������������������������������������
20:51 IhrFussel ����������������������������������� on my server but it doesn't seem to mean anything
20:54 Fixer is not this amazing? https://forum.minetest.net/viewtopic.php?f=9&amp;t=20115
20:58 Krock I feel this already existed as some kind of micro nodes
21:04 rubenwardy nerzhul: why does the players sqlite backend not work very well on a production server
21:04 rubenwardy causes lag spikes every save interval
21:04 rubenwardy files works better
21:04 rubenwardy dummy works best
21:05 nerzhul rubenwardy i think it's due to the sync interval of sqlite, and as sqlite is embedded in mt binary it affect the lag
21:05 nerzhul if it's critical switch to postgresql
21:05 nerzhul you can tell postgresql to use 64MB shared buffer if you only have player backends on it
21:06 rubenwardy <sofar> so there's no penalty for opening a file in a folder, really
21:06 rubenwardy linux kernel limits
21:06 rubenwardy forget how much
21:06 nerzhul 1 file opening = 1 I/O
21:06 nerzhul depending on the medium it can be crazy
21:06 nerzhul don't forget a HDD has only ~100 IOPS maximum
21:07 nerzhul the 120Mbps is not interesting, it's the ~100 IOPS the pb
21:07 nerzhul it's why SSD are better than HDD, the IOPS, the bandwidth is less useful, only for big files, and on an os you load only tiny files but many
21:07 nerzhul minimum IOPS on a SSD is 50k
21:07 nerzhul 50k open files per second
21:07 nerzhul on a hdd you can only open 100 files per second
21:08 nerzhul if you add a read operation on a 512 sector, you can only read 50 files + 50 disk chuck per second, if you write, reduce the iops :p
21:08 rubenwardy also see map chapter, IcyDiamond
21:08 rubenwardy !book map operation
21:08 MinetestBot rubenwardy: Basic Map Operations - https://rubenwardy.com/minetest_modding_book/en/chapters/environment.html
21:08 paramat is the 'dtime' provided by a lua entity 'on step' function the time since the last run of that function? the values of dtime are mostly 1/clientFPS which surprised me. maybe the server tries to run entity 'on step' at a frequency that matches the clients FPS?
21:09 entuland joined #minetest-hub
21:09 paramat i was expecting the step interval to be 0.09s: server step
21:10 rubenwardy nerzhul: for less than 5000, sqlite should work fine though?
21:11 Krock paramat, for singleplayer it's "as fast as possible", whereas the server keeps it at 0.09s or above
21:12 nerzhul 5000 what ? players ?
21:12 rubenwardy yeah
21:12 rubenwardy although no certain it was that
21:12 nerzhul it depend on the number of privs or meta in fact
21:13 nerzhul because the biggest part is the privs and meta entries per player
21:13 nerzhul the player entry itself is tiny
21:13 rubenwardy with indices, that shouldn't matter as much
21:13 nerzhul the problem is not the read
21:13 rubenwardy it should also be keeping a journal
21:13 nerzhul it's the data chunk
21:13 rubenwardy and not writing all players every save
21:13 IhrFussel The password hash is also long
21:13 nerzhul if you have many privs or meta, you will commit big data chunk
21:14 nerzhul no, but writting all current players on each save, and if i remember it's very ofter
21:14 nerzhul often
21:14 nerzhul if you think it's MT IOPS the problem, just use iotop
21:14 nerzhul and see the percentage IOPS for MT
21:14 nerzhul you can use dstat too, and look at the IO/Wait percentage
21:14 nerzhul if it's too high, you massively write
21:16 paramat ok thanks
21:17 nerzhul remember player object has a dirty flag, on each meta update you will set it to dirty
21:17 nerzhul and on each core update, or privs
21:25 BillyS_ joined #minetest-hub
21:25 BillyS_ joined #minetest-hub
21:28 paramat if i use os.clock to time the interval between entity 'on step' executions the value actually varies a lot and is not consistent with 'dtime', although it may averag out to 'dtime'
21:28 paramat *average
21:31 Krock paramat, os.clock() is only the time that Lua spends. Use minetest.get_time_us (or similar)
21:32 IhrFussel get_us_time() *
21:32 paramat aha
21:32 Krock ^ that
21:33 rubenwardy I guess I probably shouldn't call a table   KrockForumTopic   if I don't use krock's mod search for the majority of it
21:33 rubenwardy welp
21:37 Krock use Krock as prefix for all your functions and variables. that would be a very lovely fanservice :D
21:38 paramat good, us_time is consistent with dtime
21:46 rubenwardy get_time_us returns minutes and seconds the wrong way around
21:46 rubenwardy apparently that makes more sense
21:47 paramat heh
21:56 sfan5 Krock: unless lua has some separate time keeping facility, os.clock() returns the cpu time consumed by the current thread
21:59 Krock will waiting for mutex be considered as cpu time of the thread aswell? either way os.clock() might not return the value we need
22:01 sfan5 waiting for a mutex is a syscall, so no
22:02 Sokomine nerzhul: starting mt takes significant amount of time for me. perhaps that's due to the crazy amount of media data in the cache folder. it works much quicker with an ssd (that's about the only time where there's a significant difference)
22:02 * rubenwardy runs pacman -Syyu and crosses finders
22:02 * rubenwardy likes to live dangerously
22:02 nerzhul it's logical, one you have many files to load due to your mods, and also calculation on media cache yes
22:47 paramat joined #minetest-hub
23:10 lumberJ joined #minetest-hub
23:30 rubenwardy RIP Krock's mod search https://github.com/minetest/contentdb/commit/44fd506dcfac8421df1da74b0cda34f8358739b0
23:36 Fixer RIP
23:36 Fixer press https://www.youtube.com/watch?v=ZjJzO2bgoZQ to pay respects
23:38 rubenwardy and deployed
23:45 zorman2000 joined #minetest-hub
23:47 zorman2000 Hi all, quick question (mostly to confirm my suspicions): is any node callback called when placed via a schematic? Any at all?
23:54 rubenwardy no
23:54 rubenwardy if it's placed by a decoration, then a mapgen callback will be called
23:54 rubenwardy forget what it is
23:54 rubenwardy some notify thing
23:55 rubenwardy paramat would know
23:55 zorman2000 Gen notify
23:55 zorman2000 I think
23:55 zorman2000 Thanks for confirming that
23:56 zorman2000 I was guessing as much
23:56 zorman2000 Btw, I wonder, is there any good reason why ABM's can be disabled?
23:56 zorman2000 Say that I don't want to run an ABM anymore once I have met certain conditions
23:57 zorman2000 can't
23:57 paramat erm
23:57 paramat yes gen notify
23:58 zorman2000 Thanks paramat
23:59 paramat although unless you're using 5.0.0dev gen notify can't be used by 2 separate mods, we fixed it recently
23:59 zorman2000 Yes, I know, because of the dungeon loot mod
23:59 paramat yeah
23:59 zorman2000 But no, I'm not using decorations or gennotify
23:59 zorman2000 Thanks anyways

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