Minetest logo

IRC log for #minetest-dev, 2016-05-24

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

All times shown according to UTC.

Time Nick Message
00:28 Puka joined #minetest-dev
00:49 rubenwardy joined #minetest-dev
00:54 Wayward_One joined #minetest-dev
01:01 Tmanyo joined #minetest-dev
01:15 kaeza joined #minetest-dev
01:38 crazyR joined #minetest-dev
01:42 est31 joined #minetest-dev
02:14 STHGOM joined #minetest-dev
02:19 Void7 joined #minetest-dev
03:08 Void7 joined #minetest-dev
03:17 paramat #4135 tested and seems good +1
03:17 ShadowBot https://github.com/minetest/minetest/issues/4135 -- Biomegen by kwolekr
03:21 paramat hmmmmm would like more reviewers for that though
03:21 est31 I've looked at the commits
03:21 est31 and they make sense
03:21 est31 but it was no detailed review at all
03:22 hmmmmm i think a line-by-line review may take too much time
03:22 hmmmmm much of it is moving large functions from file to file and aren't really that risky
03:24 hmmmmm the things that i'm most nervous about are causing memory leaks, double frees, shadowing class variables on accident, etc.  things like that
03:24 est31 I've seen you shadow read on accident
03:25 hmmmmm then make a comment on the PR!
03:26 est31 was no issue for me
03:26 hmmmmm ??
03:26 est31 if you want to call read() you will get a compiler error
03:26 hmmmmm ohh you mean the identifier 'read'
03:26 est31 thats what c/c++ has a static type system for
03:27 est31 unlike javascript
03:27 est31 or lua
03:27 hmmmmm erm, this isn't in the PR though if it did happen
03:28 hmmmmm in any case I still like to make sure every identifier is unique, regardless of how clear scoping rules may seem
03:29 est31 hrmm might have been another identifier
03:37 est31 agh irrlicht joystick support is FUBAR
03:37 est31 well i can live with it
03:37 est31 most of irrlicht is FUBAR anyway
03:46 rubenwardy joined #minetest-dev
03:51 paramat i'll fly through mgv7 again to check memory use
03:57 hmmmmm i'd be more concerned about memory usage from starting a game and then quitting to the main menu repeatedly, but there's nothing that is large enough to make a noticable difference
03:57 hmmmmm sorry
03:58 paramat i see
03:59 paramat good, one less thing to do
04:36 est31 setting the camera already works with the joystick
04:36 est31 now I have to add movement
04:37 est31 and think of a good design around this stuff
04:37 est31 but I already have ideas
05:08 Hunterz joined #minetest-dev
05:17 Etzos joined #minetest-dev
05:17 est31 hmmmmm, one of the things I am wondering about: when I write .0
05:17 est31 is that really a double?
05:18 est31 I only know how it is for haskell, it gets stored as some "floatLiteral" type
05:18 est31 and then gets automatically made a float or double depending on what type there is
05:18 sofar are you asking about c++ making it a float or double?
05:18 sofar or double vs. some integer?
05:18 est31 about c++ yes
05:18 est31 no float vs double
05:18 est31 if you say float f = .0;
05:19 est31 does it make a double .0 and then convert it to a float
05:19 est31 or does it make a float .0
05:19 sofar well constants aren't typed until they're used
05:19 sofar afaik
05:19 est31 thats what one of the commits by hmmmmm did
05:20 est31 https://github.com/minetest/minetest/pull/4135/c​ommits/e1435b2166d12165751e86962d7bd06ecaa25ca0
05:25 sofar 34bff278a03779b511a09f8b9676357f
05:25 sofar https://gist.github.com/sofar/3​4bff278a03779b511a09f8b9676357f
05:25 sofar shrug, sorry, still no clue :D
05:27 sofar actually, it seems that if it exceeds FLT_MAX, it's automatically a double then
05:36 est31 okay then
05:36 est31 just wondered about it
05:37 est31 in other news, I think I now also have implement movements with a gamepad
05:37 est31 I'm building atm
05:37 sofar cool
05:37 sofar I have a logitech controller, wonder if it would work
05:38 sofar http://gaming.logitech.com/en-u​s/product/f710-wireless-gamepad
05:38 est31 you wanna try
05:39 est31 I'll upload it
05:39 sofar nah, looking at slab stuff right now
05:39 sofar later though
05:39 sofar my sheep are also getting lonely
05:41 est31 sofar, https://github.com/est31/minetest/tree/gamepad
05:41 est31 it is damn ugly code still
05:44 sofar not too big of a patch, though
05:50 hmmmmm hmm
05:51 hmmmmm actually now that I'm reading about it, it seems that what 5.f is interpreted as depends on the value of FLT_EVAL_METHOD
05:54 hmmmmm but yeah, in general 0.0 is double, 0.f is float, 0.l is long double
05:54 hmmmmm take a look at 6.4.4.2(4)
05:55 hmmmmm the reason why i change them is because the compiler isn't allowed to optimize it to a float because of the difference in precision causing (negligible for our purposes) differences
06:24 everamzah joined #minetest-dev
06:26 dmurph joined #minetest-dev
06:32 Taoki joined #minetest-dev
06:34 nrzkt joined #minetest-dev
07:01 jin_xi joined #minetest-dev
07:02 nore the more I try to rebase #1118, the more I realize that most of it is just moving a lot of stuff from CNodeDefManager to something that belongs more to ContentFeatures or MapNode (actually, to NodeWithDef)
07:02 sofar game#1111
07:02 ShadowBot https://github.com/minetest/minetest/issues/1118 -- Meta set nodedef by Ekdohibs
07:02 ShadowBot https://github.com/minetest​/minetest_game/issues/1111 -- Big simplification of slabs combination by sofar
07:03 nore so I might try to get these changes in a separate PR
07:03 nore that doesn't add meta_set_nodedef, but that adds NodeWithDef
07:03 Darcidride joined #minetest-dev
07:03 nore which is but (for now, will change in meta_set_nodedef) a MapNode and a pointer to a ContentFeatures
07:04 nore does it look good?
07:04 nore sofar: reading your game pr
07:06 sofar I think it's even simpler now
07:07 sofar it works as I intended as well, but, I'm tired lol
07:08 nore sofar: see my comment
07:08 nore something seems strange
07:09 nore btw, sofar: your connected nodeboxes make rebasing meta_set_nodedef a pain :p
07:10 sofar sure, yes, it touched a lot of code
07:11 nore yup
07:11 nore anyway, going back to that
07:11 nore (what's your opinion on making a PR with NodeWithDef btw?)
07:12 sofar tbh, I have not looked into that yet, I've been so busy
07:13 nore there's only what I just said anyway
07:13 nore (btw, weren't you supposed to not have time for a week?)
07:14 sofar everyone is in bed, I'm indulging in a little brain candy
07:16 est31 My main problem about that PR (1118) is that it is so totally wasteful
07:16 nrzkt sofar: can look at last #4155 commit and tell me if the scheme is good for you
07:16 ShadowBot https://github.com/minetest/minetest/issues/4155 -- Implement player attribute backend by nerzhul
07:16 est31 meta shouldnt be used
07:16 est31 rather use param 1 or 2 for it
07:16 est31 and if there is really need for more data, meta can be used
07:16 est31 but param 1 and 2 should be the first choice
07:16 nore est31: it is
07:17 nore I suggested that a while back
07:17 nore but anyway, my objective right now is making it possible
07:17 sofar nrzkt: I'm assuming that "attributes" can be arbitrary things like json tables, etc.
07:17 nore (both of them)
07:17 nrzkt because it's text, there is no limitation
07:17 sofar nrzkt: but in principle I'm a fan of the DB conversion
07:18 nrzkt you can put all you book into it in a yaml, json etc :p
07:18 nrzkt or your Lua functions if you want
07:18 nore est31: actually about half this PR is a cleanup
07:18 sofar well, I just want to make sure it's safe :)
07:19 nore moving functions from CNodeDefManager to MapNode, etc
07:19 sofar nrzkt: so, just keep trucking ahead, looking forward to the sqlite3 code since that will allow me to test
07:19 nrzkt sofar: yes, i will do it for the second step, i just need some time to backport it from my fork
07:20 est31 yes I like it
07:20 nore est31: so what I want to do right now is to get that cleanup
07:21 est31 nrzkt, about your pr, i like the database layout
07:21 est31 nore, well if its only a cleanup then its good
07:21 nore and merge it, so that meta_set_nodedef will be easier in the future
07:21 nore est31: well, what I want to add too is a NodeWithDef struct
07:21 hmmmmm i have a question
07:21 nore which is but a MapNode and a pointer to ContentFeatures
07:21 est31 the question of course is whether it is a cleanup or something else called a cleanup
07:21 nrzkt est31: did you look at the last commit i did 1 hour ago ?
07:21 paramat joined #minetest-dev
07:21 hmmmmm why are player attributes needed in the core
07:22 hmmmmm this is something a mod can do
07:22 nore which avoid moving GameDef's around all the time
07:23 est31 hmmmmm, well in the future we can manage player inventories over it
07:23 nore hmmmmm: and player stats (hp for example)
07:24 est31 exposing it to mods is just added flexibility
07:24 nrzkt a common interface for all mods with a good interface for external tools
07:29 nore est31: the objective is to be able to do what is done in this file: https://github.com/minetest/minetest/pull/1118/​files#diff-18513665750ef5adf42b5ec29e14162eL304
07:30 sofar nrzkt: first user will be converting bed spawns :)
07:31 paramat game#1110
07:31 ShadowBot https://github.com/minetest​/minetest_game/issues/1110 -- Default: Bookshelf has 2 openings instead of 4 by paramat
07:31 sofar nrzkt: and /home positions
07:31 nrzkt sofar: trivial then :p
07:31 nrzkt but how did you provide a migration mode for this?
07:31 sofar only read old storage files at startup
07:32 nrzkt seems lgtm
07:32 sofar then uhm... mark them obsolete
07:32 sofar well, if player attribute bed_pos is set, don't read from old file
07:32 sofar should be doable without much trouble
07:32 est31 nore, well that change is okay
07:33 * sofar goes to bed
07:33 est31 if you separate it out it can be added
07:33 est31 (IMO)
07:33 est31 hmmmmm, theoretically mods could do it themselves
07:34 est31 think of /home positions as example
07:34 est31 now you can create a file home_pos.dat
07:34 est31 and manage it via a lua table which maps the player name to the home position
07:35 est31 you load it using minetest.deserialize and store it using minetest.serialize
07:35 est31 now, when to store it?
07:35 est31 of course, at shutdown
07:35 est31 but what if nothing has changed?
07:35 est31 and if you have, say thousands of players
07:35 est31 then it does all the saving without any reason
07:36 est31 next thing: you want to be resilient against sudden crashes
07:36 est31 usually you make the save code with a minetest.register_on_shutdown
07:36 nore est31: you want to store at the same time as the server saves the map...
07:36 est31 but ofc when a crash happens that isnt called
07:36 est31 then you have to add some timers to save the table regularly
07:36 nore (should we add a minetest.register_on_save callback btw?)
07:37 est31 so what you end up with is that you write the whole table each couple of seconds
07:37 nrzkt nore: saving players with map mean saving all players without verifying they have been modified, it could be huge
07:37 est31 and again, if you have lots of players, the table can be very long
07:38 nore nrzkt: of course, this should be done by the core with a db backend that doesn't save what hasn't been modifies
07:38 nore -s°d
07:38 nore -°++
07:38 est31 nore, you mean with register_on_save that you pass it a function that has no params, right?
07:38 * nore tries to type too fast
07:38 nore est31: yep
07:38 est31 nore, well I dont think there is any advantage in that
07:38 nore so that mods that have data in memory (let's say, for speed) can write it back
07:39 nore example: I have a mod that wants to store information in some items' metadata
07:39 nore but that information is too big for that and causes huge network lags and client slowdowns
07:39 nore (8KiB metadata)
07:40 nore so, it stores them in memory
07:40 nore and then, writes it in a file
07:41 hmmmmm mods already do this
07:41 hmmmmm the reason why i am against it is quite simply because:
07:41 est31 I still dont see where register_on_save would help here
07:41 nore est31: well, the mod would store its data
07:41 hmmmmm - each mod knows how to optimally store its data in its own optimal format
07:41 nore at the same time as the server
07:41 nore so that there is no inconsistent state
07:41 hmmmmm - this adds even more bloat to the API
07:42 nore hmmmmm | - this adds even more bloat to the API <-- having 25 different mods doing that is even worse
07:42 hmmmmm so then add a function or two to builtin
07:43 nore hmmmmm | - each mod knows how to optimally store its data in its own optimal format <-- I have yet to see a mod that does something else than minetest.serialize
07:43 est31 yes
07:43 est31 +1 to that
07:43 est31 I sometimes feel the same as you
07:43 hmmmmm right no need to overengineer this kind of thing
07:43 est31 wondering "this adds so much bloat, we shouldnt have it"
07:43 est31 but here I think it is useful
07:43 hmmmmm way too much code to do something really simple
07:44 hmmmmm and here nerzhul wants to add it to a user-opaque database
07:44 hmmmmm jeez
07:44 est31 hmmmmm, the map has the same level of user opaqueness
07:44 est31 even worse
07:44 hmmmmm the map is the map though
07:44 nrzkt hmmmmm: database is less opaque than having thousands of files on the filesystem
07:45 nrzkt else, tell chrome and firefox stop using leveldb and sqlite to store their datas, it's too opaque
07:46 hmmmmm chrome and firefox have their own set of design criteria
07:46 hmmmmm i personally want minetest to follow the unix way of doing things
07:46 nrzkt and players are a special thing, like map, external tools wants to interact with it with a ocmmon interface not a shitty thousands of files with many mods
07:46 celeron55 my opinion these days is that sqlite isn't really very opaque, but other databases are
07:47 hmmmmm it's not opaque if you know what utilities to use
07:47 celeron55 the sqlite command line utility is rather ubiquitous
07:47 est31 server owners will find out what utilities to use
07:47 nrzkt okay, tell a new user to use files he didn't know vs SQL
07:47 hmmmmm i'm willing to bet that 90% of minetest players do not know how to view or edit a sqlite3 db
07:47 hmmmmm and even then they have to know SQL in order to do anything
07:47 nrzkt and tell users to find where mod store its data, and which mod store data ?
07:48 est31 hmmmmm, no not really
07:48 nrzkt it's just a pain, there are files everywhere
07:48 est31 there is sqlitebrowser
07:48 est31 I think that its name
07:48 nore hmmmmm: I can bet 90% of them don't know the format which mods use for their data
07:48 est31 its point and click
07:48 nrzkt sqlite3 <file>
07:48 est31 bit like excel
07:48 hmmmmm if you open up a text file it's immediately obvious
07:48 celeron55 files are of course more accessible though; i'm not going to pretend sqlite is better in that aspect than files
07:48 est31 you can set up sqlitebrowser to immediately open as well
07:48 nrzkt hmmmmm: okay, and if i want to see all my player datas with my 150 mods ? i should open many files with "proprietary" formats
07:49 hmmmmm so nrzkt's problem with this approach is that there are too many files
07:49 est31 in fact I think it does that if you install it on debian
07:49 hmmmmm i completely agree with this
07:49 hmmmmm having too many files is slow, messy, etc.
07:49 hmmmmm but the thing is, the only time you'd have this issue is on massive servers with 1000s of users
07:49 hmmmmm people who run their own servers are able to configure them for more optimal settings
07:49 nrzkt hmmmmm: and the second point is to permit websites to interact with game, with a safe way, and the safer way is to use the database backend because MT will not reload files.
07:50 Calinou there's DBeaver to administer databases, including SQLite ones
07:50 hmmmmm so if you make it optional then nobody loses here
07:50 hmmmmm the casual players are able to edit their player files no problem
07:50 hmmmmm you have all the opaqueness
07:50 est31 hmmmmm, what is the use case for that
07:51 celeron55 nrzkt: a database isn't going to magically solve the fact that minetest does not reload things at runtime
07:51 hmmmmm if you NEED to scale up though, and you NEED to administrate this from a web interface... then okay, I can see a server owner wanting those advanced features
07:51 est31 when do you as player want to edit your player file
07:51 davisonio joined #minetest-dev
07:51 hmmmmm est31:  your itemstack for one?  position?
07:51 hmmmmm a zillion different things
07:51 Calinou as for web interfaces, there's Adminer that can handle PostgreSQL
07:51 est31 except if it got messed up because the server crashed
07:51 nrzkt celeron55: not all the problems, but the concurrency problem, and it's a huge thing :)
07:51 Calinou (and also MySQL, and perhaps SQLite)
07:51 est31 hmmmmm, /teleport?
07:51 hmmmmm so like I said before
07:52 celeron55 nrzkt: concurrency... in what?
07:52 hmmmmm -1 for me if this isn't purely optional
07:52 est31 and about itemstacks, the whole game is about moving around items
07:52 nrzkt celeron55: if MT is writing the file and the website is write too... boom
07:52 Calinou ye, Adminer does SQLite
07:52 Calinou it can even do MS SQL ;)
07:52 est31 and if you want to edit the player file of *another* player then you are an admin
07:53 est31 They will adjust, we shouldnt think they are dumb
07:53 hmmmmm and FYI
07:53 hmmmmm you cited firefox as an example
07:53 est31 android exposes an sqlite library to its apps as well
07:53 celeron55 i would say that if there is a general sqlite utility on windows that is usable to a person that doesn't know SQL, we could use sqlite
07:53 hmmmmm firefox uses craptons of plain text configuration files
07:54 celeron55 i haven't searched for one
07:54 est31 http://sqlitebrowser.org/
07:54 nrzkt celeron55: navicat is proprietary but works very well pg workbench, and sqlitebrowser
07:54 est31 Its "double click sqlite file -> select table -> edit the rows" kind of simple
07:54 celeron55 est31: that seems fine for this purpose
07:54 celeron55 this means at least i don't have anything against storing players in sqlite
07:55 nrzkt hmmmmm: plain text for configuration, SQLite for other datas (not configuration)
07:55 est31 and player data is not configuration
07:55 Calinou hey, that tool looks nice, est31
07:55 Calinou yes, indeed
07:55 nrzkt celeron55: we can help dusers by adding documentation on the wiki/website for that, it's not the problem
07:56 est31 what about using sqlite per default
07:56 celeron55 with tools like that, it might even make people edit things more than less than before
07:56 est31 and using pqsql if users want to configure it
07:56 Calinou isn't that already the case, est3?
07:56 Calinou and the case for most programs, like Quassel IRC
07:56 hmmmmm also without an option to read players from text configuration, you lose reverse compatibility unless you want to add extensive code to convert it to the new format
07:56 Calinou (default to SQLite, use PostgreSQL if desired)
07:56 nrzkt it's already the case est31, postgresql is for dedicated servers, not for client
07:56 hmmmmm just remember
07:57 est31 hmmmmm, reverse compat must be retained, I wont +1 any pr that does not provide it
07:57 hmmmmm if you want to take the choice of text player files out of the user's hands, you're pretty much lennart poettering
07:57 nrzkt hmmmmm: for the PR i'm working on there is no problem with this because i'm not changing the existing backend
07:57 est31 hmmmmm, its no log files
07:57 nrzkt but yes for other players datas we should read the player file before reading database to ensure the migration
07:57 est31 log files are *meant* to be read by the user
07:58 hmmmmm not just logfiles
07:58 nrzkt but it's not the purpose of the current PR, which is adding a common backend to raw player attributes
07:58 hmmmmm with init scripts or rc.d you can edit all these things with the most basic of tools already on everybody's system
07:59 hmmmmm not with these new fancy smancy locked-down binary format
07:59 est31 you can edit systemd config files as well
07:59 hmmmmm things
07:59 est31 its not even xml bs
07:59 hmmmmm yeah maybe you need a hex editor
07:59 hmmmmm pshh
07:59 hmmmmm so yeah
07:59 est31 do you even have used systemd once?
07:59 hmmmmm from my point of view, nerzhul wants to pull a systemd on us
07:59 nrzkt wtf
07:59 hmmmmm i don't want that to happen
08:00 hmmmmm est31, i'm pretty sure i used it when i installed debian in a VM recently
08:00 nrzkt debian does shit with systemd
08:00 nrzkt their integration was pure shit
08:00 nrzkt archlinux integration works better, having systemd + systemV like debian trigger OS level shit on services
08:00 celeron55 well, frankly, systemd works fine
08:01 nrzkt systemd is very very good, except when you have systemV with it
08:01 celeron55 (fedora here)
08:01 hmmmmm systemd is a probable u.s. government backdoor
08:01 nrzkt celeron55: fedora/redhat removed systemv ?
08:01 celeron55 hmmmmm: it's a backdoor for sure, but that isn't really a concern in MT
08:01 nrzkt hmmmmm: yes, like ipsec with openbsd, and the linux kernel, and openssl
08:01 hmmmmm there's no other reason why everybody would be so glad to have this bullshit shoehorned on nearly all distros at the same time
08:02 nrzkt hmmmmm: i think you should stop working for Dell, they are adding backdoors to hardware
08:02 Calinou systemd actually improved the GNU/Linux desktop IMO :-)
08:02 Calinou worked fine on Fedora, worked fine on Debian, works fine on Arch Linux
08:02 est31 +1
08:03 hmmmmm I can't hear you over in my RC.d directory
08:03 est31 I now have a cross distro tool to set up whether to start a service at boot
08:03 hmmmmm la la la la la
08:03 nrzkt and systemd is great for server owners, they add cgroup level integration on the unit, it's very good, private tmp dir, file system path secure
08:03 nrzkt hmmmmm: you are on a BSD
08:03 Calinou really, adding PostgreSQL or something isn't bloat
08:03 Calinou it just shouldn't be the default because of the involved setup
08:03 est31 no more update-rc.d.sh stuff
08:03 Calinou however, we might have a message on first server startup: "Warning: SQLite can be slow for large worlds. Consider using the PostgreSQL instead if possible."
08:03 nrzkt hmmmmm: and i agree the BSD rc.d is very very good, but the Linux SystemV init.d is just crazy and shit
08:03 Calinou est31: yeah, it standardized init systems, which is great, also the service files are quite easy to write
08:03 celeron55 Calinou: there's no need for that because migrations work fine
08:04 celeron55 nothing is lost if you start with sqlite and need to change later
08:04 Calinou yeah, but still
08:04 Calinou beginner server owners could be dellusioned with the performance
08:04 Calinou if they happen to have a large server
08:05 hmmmmm they gotta RTFM
08:05 est31 ^
08:05 hmmmmm but the manual should tell them what options to enable and so on
08:06 nrzkt hmmmmm: one time you said users are stupid, and now you said they should be power users.
08:06 hmmmmm not, "oh by the way, you know those text files you used to just be able to edit?"
08:06 hmmmmm "well fuck you, you're gonna need to download a new application now"
08:06 est31 hmmmmm, no
08:06 est31 hmmmmm, on windows your text editors are all shit
08:06 hmmmmm nrkzt:  I said power users should be power users
08:06 est31 there is no good text editor per default on windows
08:06 nrzkt est31: :(
08:06 est31 and sqlitebrowser is just as convenient to use
08:07 hmmmmm nrzkt:  people who are actually concerned about performance or running a server are what i consider power users
08:07 hmmmmm running a large server*
08:07 hmmmmm in any case
08:07 est31 and who needs to edit the player files but power users
08:07 nrzkt est31: +1
08:07 hmmmmm I am a bit upset that nobody mentioned the ACID guarantee as a pro for sqlite
08:07 nrzkt (or server owner's cheaters :p)
08:08 est31 hmmmmm, I did indirectly
08:09 est31 or at least I think so
08:09 est31 but yeah the only time I had to edit a player file is because the server crashed and the player files were all corrupt
08:09 est31 so I had to fix them
08:10 hmmmmm i've edited it plenty of times to set position, restore HP, edit my items, etc.
08:10 hmmmmm i'm sure there are probably commands to do all those things but it's immediately obvious what settings do what in the text file
08:10 hmmmmm it's discoverable
08:11 hmmmmm as far as i'm concerned, the text files are part of the user interface.  and an important part of a user interface is discoverability
08:11 nrzkt players.sqlite
08:11 nrzkt seems discoverable too :p
08:12 hmmmmm sure
08:12 hmmmmm i'm still -1ing your PR unless there's an option for text files, and the text files are the default
08:12 est31 well we could build an user interface if you insist
08:13 est31 the reason why there is none just yet is because its too easy to edit the files themselves
08:13 nrzkt hmmmmm: you can -1, but as it seems nore, est31, sofar and me are for it
08:14 Calinou come on, player files are a large performance bottleneck for any decently sized server :(
08:14 hmmmmm hey i'm not the one being stubborn here
08:15 hmmmmm there is a clear option to please everybody
08:15 est31 atm I think we are discussing about whether to use text files per default or the database
08:15 Calinou pleasing everyone is not always a good idea in software
08:15 Calinou sometimes, being opinionated makes you much more productive
08:16 est31 hmmmmm agrees to implementing a database backend that large server owners can enable, right?
08:16 Calinou it might be less viable in the long term though
08:16 hmmmmm absolutely, i think that's a great idea
08:16 hmmmmm just not necessarily the only way
08:16 Calinou to me, using text files by default feels like not enabling opcache in PHP :)
08:16 hmmmmm calinou, that attitude is what turned firefox into firefox
08:16 hmmmmm that's why gnome is shit
08:17 Calinou I'd say Chromium is more opinionated than Firefox, it's not as customizable
08:17 hmmmmm that's why all these big projects that were once fantastic went downhill so hard so fast
08:17 hmmmmm and chromium isn't as good... i don't like it
08:17 hmmmmm maybe it might be technically better in terms of JS execution performance
08:18 Calinou not all configuration options are "gratis" in terms of complexity to implement, also this doesn't save you from having sane defaults
08:18 Calinou (people judge software a lot based on the defaults)
08:18 Calinou (no wonder why Ubuntu is preferred on the desktop, rather than Debian)
08:18 est31 6 years ago you needed to install a plugin in order to play internet videos
08:18 est31 pls download windows media player plugin
08:18 est31 pls download silverlight
08:19 est31 pls download adobe flash
08:20 est31 now you just start the browser and it works without putting holes in the sandbox
08:20 est31 well, at least on most sites
08:21 nrzkt hmmmmm: gnome is very good if you are not a windows mouse user :p
08:22 * est31 wondes why this discussion hasn't yet met the godwin point yet
08:22 nrzkt atm at work there is an external resource which comes and he have an ubuntu shit where network doesn't work properly because of the stupid dnsmask idea
08:22 nrzkt i think hmmmmm wants to be the führer of the files
08:22 nrzkt est31: win :D
08:22 nrzkt files' Fürher, sorry :p
08:23 est31 hehe
08:23 * hmmmmm sits down on mein kamfy chair
08:36 proller joined #minetest-dev
08:37 yang2003 joined #minetest-dev
08:48 Fixer joined #minetest-dev
08:53 proller joined #minetest-dev
09:00 davisonio joined #minetest-dev
09:01 damiel joined #minetest-dev
09:13 paramat left #minetest-dev
09:13 Puka joined #minetest-dev
09:54 Megaf joined #minetest-dev
09:57 davisonio joined #minetest-dev
10:24 proller joined #minetest-dev
10:30 proller joined #minetest-dev
10:45 bpatlarge joined #minetest-dev
10:49 bpatlarge joined #minetest-dev
11:52 rubenwardy joined #minetest-dev
12:03 STHGOM joined #minetest-dev
12:39 proller joined #minetest-dev
12:55 stormchaser3000 joined #minetest-dev
13:25 stormchaser3000 joined #minetest-dev
13:37 proller joined #minetest-dev
13:55 jin_xi joined #minetest-dev
14:19 Sokomine the trouble with too many player files existing and slowing down a server may not even be limited to particulary large servers. even smaller ones did easily get into the thousands, sometimes even approaching ten thousand users. never looked like that from ingame though. a vast majority of them might have been guest<random number> or other one-time-visitors
14:20 Sokomine resolving that problem by moving those files to a database could help a lot and spare the server admins from regulary having to clean up supposedly inactive players
14:26 Darcidride joined #minetest-dev
14:36 nrzkt yes Sokomine, imagine DELETE FROM players WHERE last_connection >  NOW() - 5 days;
14:36 nrzkt :)
14:36 nrzkt errr <
14:38 Taoki joined #minetest-dev
14:45 KaadmY joined #minetest-dev
14:57 hmmmm joined #minetest-dev
14:59 Void7 joined #minetest-dev
15:10 hmmmm i just don't want the player db move to be a verschlimmbesserung
15:20 nrzkt hmmmm: that's not the purpose, having clear tables no blob is required
15:20 nrzkt a real strong scheme
15:22 hmmmm that's not possible when the whole purpose of this feature is to store arbitrary metadata though
15:25 est31 joined #minetest-dev
15:25 DI3HARD139 joined #minetest-dev
15:25 est31 nrzkt, NO thats a bad way to do it
15:25 est31 that's how I lost logins two times already
15:25 est31 server owners cleaned up player files based on last connection
15:26 est31 then somebody registered with my name
15:26 est31 and got access to all my protection blocks and griefed my houses
15:26 est31 AND THAT HAS HAPPENED TWICE already
15:27 est31 both times the server owner gave me back access
15:27 est31 we should have some further thing
15:27 est31 like num_connected
15:27 est31 increased every time the user connects
15:27 rubenwardy Or delete player profile, but not auth details
15:28 est31 then one can do DELETE FROM players WHERE (last_connection >  NOW() - 5 days) AND (num_connected < 50);
15:30 proller joined #minetest-dev
15:32 est31 rubenwardy, thats an idea too
15:37 STHGOM joined #minetest-dev
15:40 damiel joined #minetest-dev
15:40 est31 perhaps there should be a bool flag
15:41 est31 is_minetest_dev_you_should_not_piss_off
15:41 est31 if its set the player is never deleted xD
15:45 thatgraemeguy joined #minetest-dev
15:45 ptv joined #minetest-dev
15:53 Fixer admins periodically delete player data, thats very annoying
16:01 hmmmm that's a horrible justification for SQL
16:01 hmmmm you can get the same exact result using crontab and a shell script
16:02 est31 writing shell scripts to delete old players is more complicated than the SQL statement
16:04 * est31 is having fun flying around minetest with his gamepad
16:04 est31 flying around is more fun than coding
16:04 est31 thats not good, gamepad support should be finished
16:05 est31 maybe tomorrow
16:06 thatgraemeguy joined #minetest-dev
16:06 ptv joined #minetest-dev
16:09 est31 maybe then
16:10 Megaf joined #minetest-dev
16:14 proller joined #minetest-dev
16:17 Sokomine est31: yes, that's a serious problem on servers. time since last login just doesn't work. a better indicator might be if the player actually protected anything. sadly, figuring that out depends on the mod used for protection
16:40 sofar at a certain point we should add OAUTH
16:56 Hunterz joined #minetest-dev
17:04 nrzkt joined #minetest-dev
17:18 Grandolf2 joined #minetest-dev
17:19 the_doctor joined #minetest-dev
17:36 halt_ joined #minetest-dev
17:36 halt_ hi
17:37 halt_ question: is it possible to set up a system of servers that you can tp through w/o exiting one and joining the other by hand?
17:38 Krock joined #minetest-dev
17:38 halt_ hi krock
17:38 Krock hi halt_
17:38 halt_ hi krocko/
17:38 halt_ oops :P
17:38 halt_ o/
17:39 halt_ you ghot a clue on:
17:39 halt_ is it possible to set up a system of servers that you can tp through w/o exiting one and joining the other by hand?
17:39 Krock halt_, is it fine for you when I use you to save some power? Sending HLT command the the CPU when it's not used
17:39 halt_ i guess...?
17:39 Krock nope, this goes outside the possibilities of the current Lua api
17:40 halt_ oh :/ would it b possible to configure the lua api to do that?
17:40 hmmmm lol.
17:40 halt_ im working on a TARDIS mod i wanted 2 do dat with
17:41 hmmmm your lawnmower can also dry clothes, it just needs to be configured the right way
17:41 halt_ if u took out da blades :P
17:42 Krock no, you need the blades to make wind
17:42 Krock just make sure you don't touch them when it's running
17:42 halt_ lol
17:43 halt_ anyhow anyone goty a clue how to tweak the api to do that? (not dry cloths but tp u between servers :P)
17:46 Grandolf2 joined #minetest-dev
17:46 halt_ hi
17:48 halt_ hmm and would it b possible to make a "galaxy" in MT where all the planets have their own gravatational field?
17:51 halt_ rubenwardy Krock OldCoder_ VanessaE any of yall got an idea on either question?
17:51 rubenwardy #minetest is the better place for this
17:51 halt_ hmm kk
17:51 rubenwardy and don't ping people like that on IRC, it's bad etiquette
17:51 halt_ kk srry
17:52 * VanessaE hides
17:53 hmmmm "tweak"
17:53 hmmmm "configure"
17:53 VanessaE teleporting people between servers has been talked about before.  I'm sure that'll be possible in the future.  As for a "galaxy", that should be doable now, since gravity is one of the things you can override on-demand
17:53 hmmmm this guy doesn't get it
17:53 hmmmm the functionality does not exist
17:53 hmmmm if you want something, you need to code it
17:53 hmmmm nothing is free in life
17:54 hmmmm in any case this is something that could be added relatively easily with client side modding
17:55 ptv joined #minetest-dev
17:56 halt_ so what would i do to go about modding this?
17:58 hmmmm the first thing you could do is read the minetest source code
17:58 hmmmm learn its architecture
17:58 xunto joined #minetest-dev
17:58 Hunterz joined #minetest-dev
17:58 hmmmm then understand why it's not simple at all
17:59 halt_ ik a bit about it but as i think u can tell... im not an experianced coder :/
17:59 hmmmm sorry to say this but you don't really have a chance
18:00 halt_ ik :/ but im still trying
18:00 hmmmm but it would be a good experience to soak up as much as you can in an attempt to do it
18:01 hmmmm just read a lot, code a lot, gain experience and knowledge
18:03 halt_ hmm i dont understand how to do the coding part though :/ ive read alot of int.luas but nothing to do with this yet :/ cant find anything for it
18:05 hmmmm so you haven't modded at all yet?
18:07 rubenwardy halt_: http://rubenwardy.com/minetest_modding_book/
18:07 rubenwardy </selfpromotion?
18:07 halt_ thnx ruben :)
18:08 electrodude512 joined #minetest-dev
18:09 hmmmm in any case i suggest you start out with making tweaks to existing mods
18:09 hmmmm like maybe try challenging yourself to change the name of a dirt block
18:14 Obani joined #minetest-dev
18:14 Obani left #minetest-dev
18:28 halt_ i have done that b4
18:28 halt_ the item string needs to b changed/the discription
18:29 halt_ and ive changed rubenwardys nuke mod
18:30 VargaD joined #minetest-dev
18:35 stormchaser3000 joined #minetest-dev
19:25 Puka joined #minetest-dev
19:40 electrodude512 joined #minetest-dev
20:06 DI3HARD139 joined #minetest-dev
20:11 Amaz joined #minetest-dev
20:23 xunto1 joined #minetest-dev
20:35 celeron55 eh, what kind of discussion was that
20:36 celeron55 the answer is: no, it is not possible; to make it possible, it needs to be added to the protocol, implemented on the server and the client and added to the lua API
20:37 VanessaE celeron55: teleporting/transferring between servers has been requested multiple times, though.
20:37 VanessaE (not that you're wrong)
20:38 celeron55 though?
20:38 celeron55 how is that a though
20:38 VanessaE disregard the "though" :P
20:39 VanessaE I read your statement as a "I don't like this idea and it'll never happen".
20:41 celeron55 that's ridiculous; i have even suggested it myself as far as i remember
20:48 Fixer everyone feel free to code ^_>
21:04 OldCoder Fixer,  http://minetest.org/netfix-0.4.14.zip
21:04 OldCoder Others, it has been proposed that the RESEND RELIABLE patch be merged at this time
21:05 OldCoder The preceding link is the latest version of the patch, synced with git current
21:24 troller joined #minetest-dev
21:29 turtleman joined #minetest-dev
21:59 electrodude512 joined #minetest-dev
22:18 electrodude512 joined #minetest-dev
22:32 paramat joined #minetest-dev
22:32 endev15_ joined #minetest-dev
22:37 stormchaser3000 joined #minetest-dev
22:42 DFeniks joined #minetest-dev
22:47 Megaf item transfer from one server to another?
22:47 Megaf extremely easy
22:47 Megaf but it has to be done outside minetest, it needs a companion app
22:47 Megaf or, IRC
22:48 Megaf the stuff could be encoded in base64 but a mod and sent over IRC
22:48 Megaf then decoded
22:48 Megaf or even easier, just use IRC mode to send modname:itemname amount player
22:48 Megaf or something
22:49 Megaf and the mod would use the server's IRC nick and send stuff via private messages of course
22:49 Megaf and it would likely have to be whitelisted on the other side
22:49 Megaf if that makes any sense
22:50 Megaf OldCoder, VanessaE Fixer celeron55 ^
22:50 Megaf and halt_
22:50 Fixer not a developer >_>
22:50 Megaf and hmmmm
22:50 OldCoder R
22:50 OldCoder Sure
22:50 OldCoder Could be handled through the IRC mods
22:51 OldCoder For which, BTW, I'd like support... est31's patch needs to be merged
22:51 OldCoder Support that merge, Megaf, and you get that feature
22:51 OldCoder Fair enough?
22:51 Megaf OldCoder, can you link me to the merge please?
22:52 Megaf I mean, is there a PR?
22:52 OldCoder I believe so, let me check. He and I will start one if he has not done so.
22:52 OldCoder Wait a couple of minutes, please
22:52 Megaf Ok, take your time.
22:53 OldCoder https://github.com/minetest/minetest/pull/3859
22:53 OldCoder There you go
22:53 OldCoder Without this patch, if it is the right one, the life of a server admin is complicated
22:53 Megaf let me check that
22:53 OldCoder What right does upstream have to dictate the security polices that server owners wish to take?
22:54 OldCoder Megaf, context is that the IRC mods no longer work without this patch
22:56 Megaf nore, what's your github?
22:57 Megaf or what's is the nores github?
22:57 Megaf ekdohibs?
22:58 Megaf https://github.com/minetest/minetes​t/pull/3859#issuecomment-221426924
22:58 Megaf OldCoder, ^
22:58 OldCoder Hi
22:58 OldCoder R
22:59 Megaf by the way, I like the One approval lebel you implemented for voting, very clever. But I still like the :+1:
23:00 OldCoder Megaf, One Approval isn't mine, if you're talking to me... But thank you for the comment and I'll comment myself as well...
23:01 Megaf OldCoder, well, I do like the idea, so I commented on it
23:01 OldCoder If this goes through, I'll implement item transfer myself. May do so regardless, as my wording above suggests this.
23:01 Megaf I also think that IRC mod could be streamlined and maybe integrated into the core
23:01 OldCoder I'll add to the thread now myself...
23:01 OldCoder Yes, streamlined is essentially
23:01 Megaf it's a lightweight OpenSource protocol
23:01 OldCoder It's a headache to build it
23:01 Megaf so, why not?
23:02 OldCoder Well, there will be points raised, I'm sure. One step at a time.
23:02 electrodude512 joined #minetest-dev
23:02 Megaf just get rid of a couple of mapgens and legacy stuff like bitmap fonts and you can fit 10 or more IRC implementations into the core...
23:02 OldCoder Let's keep an eye on this. Remind me of my promise later.
23:02 * OldCoder is working on his own comment
23:02 Megaf sure (for one step at a time)
23:03 Megaf although I still defend my point that new features (as this one we are talking about, the authentication thingy) should not be implemented before streamlining/optimizing current code and removing bad/old/legacy/dead code from the core
23:06 OldCoder How do I +1 ?
23:06 OldCoder I'm about to comment; where is the approval button?
23:06 OldCoder Hm; and the preview tab doesn't work
23:07 Megaf OldCoder, type there :+1:
23:07 OldCoder In my post?
23:07 Megaf or just click the thumbs up in est first comment
23:07 Megaf yes, in your post
23:07 OldCoder What about preview tab? Should it work?
23:08 Megaf OldCoder, are you part of the dev team on github?
23:08 OldCoder No; so :+1: will not work? But what about preview tab?
23:08 Megaf OldCoder, so after your text just make a new line and type :+1: and comment
23:08 OldCoder What about preview tab? It does not do anything; should it?
23:09 Megaf I think it should, is your JavaScript active?
23:10 OldCoder Huh
23:10 OldCoder Comment button does nothing either...
23:10 OldCoder JS is on and popups are enabled...
23:11 OldCoder And now it shows 10 copies of my post O_O
23:11 Megaf I see 3
23:11 Megaf OldCoder, just click the "x" in the corner to delete your comment
23:11 OldCoder "Something went wrong with that request. Please try again."
23:11 OldCoder It says that when I delete
23:12 * OldCoder frowns
23:12 OldCoder Do you see just 1 copy now?
23:12 Megaf OldCoder, yep, things are fine now
23:12 OldCoder O.K. Thank you
23:12 Megaf You're welcome
23:12 OldCoder Remind me at a later point regarding the item transfer issue
23:13 Megaf ok
23:33 * Megaf waits for more people to wake up
23:33 Megaf and commend on #3859
23:33 ShadowBot https://github.com/minetest/minetest/issues/3859 -- Add minetest.check_password_entry callback by est31
23:33 sofar !tell est31 my joystick works, but I can't stop moving forward, and I can't dig/use
23:33 ShadowBot sofar: O.K.
23:34 Megaf sofar, I would't say that your joystick works then
23:34 sofar read the first 3 words of my sentence
23:38 Megaf "my joystick works" ?
23:38 OldCoder but
23:40 DI3HARD139 joined #minetest-dev
23:50 DI3HARD139 joined #minetest-dev

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