Time Nick Message 00:00 IhrFussel Is there a way to dump an entire inventory so that I can simply use string.find() to look for certain stacks? 00:11 rubenwardy to_table 00:12 rubenwardy bad idea to do that though 00:12 rubenwardy unless for debugging 00:26 Sokomine IhrFussel: maybe contains_item can be of use for you? 00:56 IhrFussel If I call contains-item() 5-10 times wouldn't it be much slower than calling string.find() 5-10 times? 00:56 IhrFussel contains_item() 01:03 BillyS IhrFussel, I assume so, but dumping the table to a string might not be that fast either. 01:25 rubenwardy it would probably be slower 09:19 IcyDiamond rubenwardy: woo! 09:39 rubenwardy Fuck me https://forum.minetest.net/viewtopic.php?f=9&t=20621 09:41 xerox123_ Too right, I know what my next installed mod is 09:46 IcyDiamond rubenwardy: https://i.lunasqu.ee/Screenshot_18-08-06-12:46:30.png thanks a lot <3 09:47 IcyDiamond https://i.lunasqu.ee/Screenshot_18-08-06-12:46:58.png also fluids 10:18 rubenwardy Nice 10:18 rubenwardy IcyDiamond: Consider using minetest.colorize on them, could make them look sexy 10:18 rubenwardy *even sexier 11:13 IcyDiamond rubenwardy: yeah ill see about that :P 11:23 Krock !tell IhrFussel contains_item is faster than dumping & string find 11:23 MinetestBot Krock: I'll pass that on when IhrFussel is around 11:26 rubenwardy Definitely lol 11:27 Krock just to make sure 14:24 ANAND Is it possible to link more than two lists using listring[] to allow shift-clicking? 14:35 Krock ANAND: yes but it's only one "list ring" 14:36 Krock so you can allow to move multiple lists into a main one, but only move from the main one to another list 14:36 ANAND Ah 14:37 Krock IIRC, it will take the next ring item (inventory list info) after the one which was triggered by the shift-click call 14:38 ANAND So multiple listrings for the main list won't result in unexpected behaviour? 14:39 Krock code to confirm my "IIRC" https://github.com/minetest/minetest/blob/master/src/gui/guiFormSpecMenu.cpp#L3640-L3652 14:40 Krock to move something out of the main list, it will take the first occurrence of the main list and take the next item to move the items there 14:40 Krock That behaviour is surely handled properly 14:41 ANAND Alright, I'll give it a shot 14:41 Krock but just calling listring[] probably won't do what you want, so specify parameters 14:42 ANAND Thought so... :) 14:44 ANAND Does the order of the listrings matter? 14:45 Krock ? Yes. Yes, it does. 14:45 rubenwardy Yes 14:45 ANAND The first is the origin, second the destination? 14:46 Krock yes and no 14:47 Krock imagine this: A B C. Shift click in C, and it'll be moved to A 14:47 Krock shift click in A and it'll go to B 14:47 Krock ofc is A defined first 14:47 ANAND ohh! 14:47 ANAND right 14:47 ANAND that makes it very clear 14:48 Krock !next 14:48 MinetestBot Another satisfied customer. Next! 14:48 ANAND Waaaaiiit! Not yet... 14:49 ANAND Do I have to use one pair of listrings for AB, BC, and CA? 14:49 ANAND i.e. 6 listrings in total? 14:50 ANAND or just A->B->C (i.e. 3)? 14:50 MinetestBot IhrFussel: Aug-06 11:23 UTC contains_item is faster than dumping & string find 14:50 ANAND I'm guessing 6 14:50 Krock ANAND: no. specify one by one 14:50 ANAND right, thanks 14:50 Krock don't use listring[] without arguments when you have more than two lists 14:50 Krock unless you know what you do 14:50 IhrFussel Krock, are you sure that it#s still faster when I call it quite a few times? Isn't contains_item() a lookup every time? 14:51 ANAND Understood 14:51 Krock IhrFussel: ofc it is. but the lookup happens in C++ 14:51 Krock so it's a simple function call, a hundred microseconds (roughly guessed) in C++ and then back to Lua 14:54 IhrFussel Okay then^^ Also is this guy implying that banning users shouldn't be a thing? There are lots of cases where banning is necessary and there is no other solution than to ignore troublemakers and let them destroy your server https://github.com/minetest/minetest/issues/7625#issuecomment-410674013 14:55 Krock No, they're suggesting that players must gain their interact&shout privs 14:55 IhrFussel The question is if banning makes even sense in MT if all we have is the IP 14:55 Krock so that the loss is higher 14:55 Krock probably worth closing that issue. Privacy issue. 14:56 IhrFussel You cannot make players gain their basic privs on every server... that depends fully on the gameplay you want to achieve 14:57 rubenwardy You can usually protect against grieifing and such pretty easy 14:57 Krock surely you can. It's as simple as an "I agree" button on join 14:57 rubenwardy The problem is with chat offenses and other subjective interactions 14:57 rubenwardy I agree doesn't mean they'll do it 14:58 Krock that's for interact. you could let them unlock shout by buying it or registering an email 14:58 rubenwardy Every user on CTF has to click agree too 14:58 IhrFussel I also don't see it as a privacy problem if we can only detect the device they play on...their device doesn't belong to them in that sense, it's just one of billions 14:58 rubenwardy It's also hashed 14:58 Krock the issue is that a device is pretty much unique identifyable 14:58 rubenwardy The issue is that it's a tracking token 14:58 rubenwardy And yes that 14:59 rubenwardy It would be better to combine this with a central login system anyway 14:59 rubenwardy Well, or not do this 14:59 IhrFussel Just because you can detect a certain device doesn't mean you have access to any data...privacy is only about data 14:59 Krock IhrFussel: no but you can track it 15:00 IhrFussel Tracking only makes sense if you can associate the device with a profile which we can't 15:00 Krock "makes sense" doesn't matter in the privacy rules 15:01 Krock you can associate the device with nicknames, maybe on multiple servers if you centralize it 15:01 Krock nevertheless can all this data be faked 15:02 IhrFussel Lots of games give each device an ID and they don't face any lawsuits 15:03 IhrFussel And just because we are OSS we have to accept troublemakers ruining our servers 15:04 IhrFussel Some are THAT dedicated to trolling MT servers...you can ban their IP multiple times and they won't leave ... these people are wasting staff time and can (partly) destroy the gameplay 15:05 Krock how about if you make the join procedure take more time? More effort? Require an email verification? 15:05 Krock Let the staff ban them instead of wasting time 15:06 Krock Using autocomplete it takes a few seconds to ban someone 15:07 nerzhul warn about email verification, it's a personal data, GPDR is strict 15:07 Krock oh right 15:07 ANAND How would central login be implemented? Using email verification? 15:08 Krock Eye and teeth scan 15:08 Krock Or by SQL injection 15:09 ANAND ..... 15:09 ANAND Forum accounts? 15:14 nerzhul google or FB authenticatio n? :D 15:17 ANAND lol 15:17 rubenwardy My design would use its own accounts 15:17 rubenwardy Probably move from cdb to a central system idk 15:17 rubenwardy It would be based on certificates and stapling 15:18 rubenwardy You could have xban on the central system as well 15:18 rubenwardy Ie: a server code say, don't let this account or any associated IPs join my server 15:18 rubenwardy Not entirely sure on the details of that yet 15:19 rubenwardy It would have to be more similar to a password manager anyway 15:19 rubenwardy :( 15:19 IhrFussel I'd argue that my server already punishes troublemakers...at least if they played actively before cause they lose their level, their unlocked features (based on level), their protections, their stuff, their friends (ingame friend list) and more ... the real problem is just with those who join once and never again 15:19 rubenwardy Like, usernames on a server are owned by a central user of not necessarily the same name 15:21 nerzhul rubenwardy when the postgresql backend will come it can be easy to modify the pg code to implement a such thing and have a central db 15:21 rubenwardy That sounds like a bad idea 15:21 rubenwardy Let's not do that 15:21 rubenwardy This is central as in minetest-wide and official 15:21 rubenwardy Not as in shared by a few users 15:21 nerzhul central auth for users ? 15:22 nerzhul in MT coredev servers ? 15:22 nerzhul on* 15:22 rubenwardy No, all serverd 15:22 nerzhul like minecraft then ? 15:22 rubenwardy No 15:22 rubenwardy Because this would work without the central database online 15:22 Krock I'd prefer to have multiple central databases, run by people who actually run the servers 15:22 nerzhul then if it's centralized per server network a central pg db is sufficient to have common auth. Now we have the new auth backend we can have common auth 15:23 nerzhul Krock i'd prefer too, i justwanted to be clear :) 15:23 rubenwardy Fragmentation 15:23 Krock ^ 15:23 rubenwardy Also doesn't solve the issue 15:23 rubenwardy This is pointless if every server has their own 15:24 rubenwardy With my design, you could just have multiple CAs 15:24 rubenwardy Then it would be federatised 15:24 rubenwardy Or whatever the term is 15:25 Calinou I've seen other open source/freeware games add centralized auth systems, it didn't always turn out well 15:25 rubenwardy The important thing is the central server gives some sort of token, ideally a certificate, which is then used to login with untrusted servers 15:25 Calinou most games ended up not requiring authenticated accounts anyway 15:25 Calinou (i.e. they became optional) 15:25 rubenwardy This would be opt out 15:25 rubenwardy You can just fall back to SRP 15:30 rubenwardy I have bigger priorities though 15:30 rubenwardy Like actually having some QA 15:30 rubenwardy And sane input bindings 15:44 nerzhul rubenwardy: a certificate is too high security for a game like MT 15:45 rubenwardy You could use tokens instead 15:45 rubenwardy But it's less reliable if the central server goes down 15:46 rubenwardy Plus the difficulty of issuing new tokens 15:46 rubenwardy Alternatively you could just not worry about it going doqn 15:46 rubenwardy Make it redundant 15:48 rubenwardy There's no such thing as too high security 15:48 rubenwardy There's only over engineering 15:50 Krock well, certificates are surely never wrong but mostly too much effrot 15:50 Krock *effort 15:52 rubenwardy Yeah 15:52 rubenwardy This is low priority anyway 15:52 rubenwardy Therefore probably not worth the effort 15:56 Calinou Xonotic uses a public/private key system for authentication 15:56 Calinou a lot of players end up losing their private key when moving over machines (they don't copy their private key files) :( 15:58 sfan5 Calinou: xonotic doesn't really tell you that it has just generated an important file that you should totally™ not lose 15:58 sfan5 neither does mumble IIRC 15:59 Calinou Mumble does, but it's not prominent enough to my taste 16:00 rubenwardy Doesn't matter if they lose there key 16:01 rubenwardy The central server will issue them a new one 16:01 Calinou yeah, but they will appear as separate players 16:01 rubenwardy No 16:02 Calinou http://stats.xonotic.org/search?fs=&nick=calinou&server_name=&map_name=&submit= once returned 5 entries, mind you :P 16:02 Calinou I got all of them merged eventually 16:02 Calinou and now I make sure to copy my key when installing a new PC 16:02 rubenwardy The certificate just says that the central server vouches that they're actually foobar 16:02 rubenwardy I'm talking about minetest 16:02 rubenwardy Or my proposal 16:02 rubenwardy The purpose of the certificate is to allow logging in when the central server isn't available 16:02 rubenwardy Which is one of the big criticism 16:03 rubenwardy Actually 16:03 rubenwardy A much simpler way would be to generate a load of one time passwords to login with. Less secure, but no certs 21:27 Fixer HEY, LITTLE DRUM!