Minetest logo

IRC log for #minetest-dev, 2015-01-03

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

All times shown according to UTC.

Time Nick Message
00:02 Sokomine joined #minetest-dev
01:01 hmmmm welp I got terasology working and then  Exception in thread "main" java.lang.OutOfMemoryError
01:02 chchjesus joined #minetest-dev
01:14 paramat joined #minetest-dev
01:25 paramat hmmmm do you know about cube world? https://picroma.com/media it's the only other voxel game other than MC and MT that interests me
01:27 paramat most of the blocks aren't diggable though
01:27 hmmmm well there's why it loads so fast
01:28 hmmmm they pregenerate the meshes
01:28 hmmmm which means they're also in a better position to pregenerate lights
01:41 chchjesus joined #minetest-dev
01:52 Miner_48er joined #minetest-dev
02:02 mrtux joined #minetest-dev
02:04 twoelk|2 joined #minetest-dev
02:26 Zeno` joined #minetest-dev
02:54 mrtux joined #minetest-dev
04:03 MinerDad joined #minetest-dev
04:23 paramat non-eased 2d noise is essential for making widely spaced towers to the floatlands that do not look phallic
04:23 paramat left #minetest-dev
04:23 hmmmm dicklands v3.0
04:24 hmmmm why do you say non-eased?
04:43 hmmmm so I was thinking about things a little bit more, and method #2 for alternative lighting isn't actually limited by the amount of spread since the only thing that matters are light values at the mapblock edge
04:49 T4im joined #minetest-dev
05:08 MinerDad joined #minetest-dev
05:22 MinerDad joined #minetest-dev
05:40 paramat joined #minetest-dev
05:40 paramat https://cdn.mediacru.sh/8/8X1EueLVjzv3.png https://cdn.mediacru.sh/P/PuO-2rK_0s4q.png
05:41 paramat with 2d noise these would have a round cross section and a rounded knobby-end
05:41 paramat now they have a diamond cross section and are spiky and blade like
05:44 hmmmm ahh that's great stuff
05:45 paramat it's 2d noise that when it exceeds 1.1, the amount it exceeds is ^ 4 then multiplied by a factor
05:45 hmmmm i love how the 3d noise makes a bridge over the river
05:45 paramat yeah good bridge
05:45 hmmmm how do you make rivers again?
05:45 paramat https://github.com/paramat/levels
05:45 hmmmm intersection of two different noises or something
05:46 paramat um, terrain height = abs(2dnoise) creates the valleys
05:47 hmmmm oh
05:47 paramat then place that on top of a large scale 2d noise to vary the riverbed height
05:47 hmmmm I used to use low points of 2d noise to make rivers but they formed a lot of closed loops
05:47 hmmmm anyway looking at minecraft's generation method made me rethink things
05:48 paramat yes i get that too, so i use a very large scale and low persistence
05:48 hmmmm it might be a good idea to statically generate an overview of the world on world init
05:48 hmmmm so that way I can set map-wide details
05:48 paramat (see riverdev mod for my river method)
05:49 paramat terasology creates it's world that way
05:49 hmmmm minecraft does rivers by fractals
05:49 ShadowNinja So it seems like lua-aip-md is approved.  I'll merge soon, unless you object hmmmm?
05:49 hmmmm what's that?
05:49 hmmmm oh the documentation md format? yeah
05:50 hmmmm so it assigns pixels numbers from 0 to 3
05:50 hmmmm and then the borders between 2 and 3 blocks it assigns to be part of the river
05:50 hmmmm and then it does some kind of polynomial smoothing
05:50 paramat interesting
05:50 hmmmm i like the idea of having a larger overview of the map to work with but i don't like that algorithm
05:50 hmmmm it sucks
05:50 hmmmm well maybe it produces good enough rivers but i can do even better
05:51 paramat of course
05:51 hmmmm i can randomly generate points over the map and use them as inflection points for a bezier curve
05:51 paramat i've been aiming to have terrain detail on all scales up to almost world scale
05:51 hmmmm bezier curves typically make great rivers
05:52 * paramat will research bezier
05:52 hmmmm yeah that's the real big problem with perlin noise
05:52 hmmmm you simply can't get world-scale features
05:52 hmmmm they keep repeating too often, and if you set the spread factor too large, that causes other problems
05:52 hmmmm like lack of detail
05:52 hmmmm so then to compensate you need to add more octaves
05:53 hmmmm but then adding more octaves causes more smaller versions of the features you're aiming to have
05:53 hmmmm etc.
05:53 hmmmm i haven't experimented with lacunarity too much at this point, but i have a feeling that might be another way to overcome this issue
05:53 hmmmm i like what it did with 3d noise blobs
05:54 hmmmm i don't like what lacunarity does for 2d noise so far
05:54 hmmmm maybe i just haven't hit the right values
05:54 hmmmm i really haven't been doing much mapgen stuff, period, as of late
05:55 ShadowNinja BTW, the md Lua API could use some improvement, but that'll be 10000x easier after it's merged.
05:55 hmmmm just do it
05:56 leat joined #minetest-dev
05:56 paramat in watershed/riverdev, there are several terrain characteristics, each with it's own scale and low octaves. together they cover all scales of detail
05:57 paramat well up to 8000 nodes
05:57 hmmmm typically i've noticed that noise looks bad with less than 3 octaves
05:57 hmmmm the kind of noise we have anyway
05:57 paramat ^ yes
05:57 hmmmm simplex noise can offer higher quality noise
05:58 hmmmm i need to figure out how to optimize that first, though
05:58 paramat i considered 8000 nodes to be okay to repeat at because that's a good size for 'kingdoms'/continents/nations
05:58 hmmmm maybe for the meantime i can add in the point value functions
05:59 paramat i'm very keen on simplex, can't get excited for point value
05:59 hmmmm the problem I have with simplex noise so far is that it seems to make a lot of tiny circles
05:59 hmmmm probably just requires jiggering some parameters
06:02 paramat 8000 node nations means up to 64ish nations, so each player could have their own territory of 8knx8kn, assumiing a max player number of 64
06:03 paramat guess 16 players is more realistic, so 16knx16kn territories
06:04 paramat ^ those screenshots are simplest possible non-eased 3D noise mapgen (apart from the towers) yet it looks so good
06:12 paramat so anyway hmmmm .. can i go ahead and add v5 type caves to v7? your idea of using ore veins is clever, but in practice those would need to be registered in a mod or in builtin, it's all a bit messy. i would like the cave params *in* the mapgen as with v5
06:15 paramat i can't stand this https://cdn.mediacru.sh/M/Mwa6aGDuDZZz.png any longer =P
06:17 paramat interstingly the highest dark surface is at y = 46.5
06:17 hmmmm that's caused by problems with the lighting algorithm
06:17 hmmmm not the caves themselves
06:17 paramat yes happens with water too
06:17 paramat river water
06:17 hmmmm what i would like is a combination of v5 caves for routes and v6 large caves for caverns...
06:17 hmmmm no lava inside the v5 cave routes
06:18 paramat oh yes i forgot, large lava caverns would be as before
06:18 paramat that was my plan
06:18 paramat with those well below the surface chunk
06:19 paramat okay will work on it, thanks
06:23 paramat mmm .. but then perhaps the lava caves should be made with 3d noise too, the tricky bit is how to decide the lava level, i'll think on it
06:27 paramat .. i might confine each cavern to a mapchunk+shell as before, and could re-use mountain noise as the shape noise since it's not used down there
06:27 paramat oops no i cant, mountaind are optional
06:27 hmmmm too much 3d noise
06:28 hmmmm you should isolate the cave carving and put it into cavegen.cpp
06:28 paramat okay
06:29 paramat but the tunnels left in the mapgen, as in v5
06:30 hmmmm ??
06:30 hmmmm oh hold on
06:30 hmmmm hrmmmmm
06:31 hmmmm CaveGenV7() can consist of CaveGenV5() + CaveGenV6() with large_cave == true
06:32 hmmmm ermm
06:32 hmmmm leave CaveGenV7 as it is right now, you'd only need to modify MapgenV7::generateCaves()
06:32 hmmmm we'll just not use cavegen v7
06:35 paramat okay
07:09 selat joined #minetest-dev
07:15 paramat left #minetest-dev
07:58 hmmmm remind me TODO:  remove proller's freezemelt bullshit from read_content_features
08:20 Hunterz joined #minetest-dev
08:43 Megal joined #minetest-dev
08:56 Megal joined #minetest-dev
09:01 jluc joined #minetest-dev
09:01 Krock joined #minetest-dev
09:10 leat joined #minetest-dev
09:14 nore joined #minetest-dev
09:14 ImQ009 joined #minetest-dev
09:14 kilbith joined #minetest-dev
09:19 cib0 joined #minetest-dev
09:31 paramat joined #minetest-dev
09:35 paramat hmmmm also freezemelt is in lua api txt node definition line 2862
09:35 paramat left #minetest-dev
09:42 leat joined #minetest-dev
09:49 T4im hm.. do mods have to do something different now to support the new screwdriver, or is its multinodehandling currently bugged?
10:20 Calinou joined #minetest-dev
10:28 est31 joined #minetest-dev
10:36 selat joined #minetest-dev
11:01 sapier joined #minetest-dev
11:08 est31 If we use certs in a smart way, we neither need signing nor server_name-like constructs
11:08 sapier well a cert is always signed ;-) at least self signed ... btw that's what I mentioned yesterday ;-)
11:11 est31 in fact we dont even need certs, diffie hellman with session keys is enough
11:11 est31 only need to make sure we have some sort of channel binding
11:11 est31 (im now speaking about the "rogue server" attack)
11:11 sapier no it's not enough
11:11 est31 why not
11:12 sapier because it's only gonna protect this single connection and wont provide any improvement for future connects
11:13 est31 and what is the attack? we have channel binding
11:13 est31 so no relayed login possible
11:13 sapier user connects to server a
11:13 sapier some time passes
11:14 sapier user connects to server a ... which now is server b ... how could user ever find out server b is not a prior having a fully established connection?
11:14 Ritchie joined #minetest-dev
11:15 sapier using certs verifying a server you try to connect against a already known cert would solve this
11:15 est31 is not a prior?
11:15 sapier ONLY for future attempts of course
11:16 sapier with prior I mean prior username and more importand passwd/hash transmission
11:16 cib0 joined #minetest-dev
11:17 est31 so you mean server b acts as client for server a using another username?
11:17 sapier for example
11:18 sapier a simple proxy
11:18 est31 but the user can't login as same username, as the server b doesn't know the password
11:19 sapier there's one problem with security, ONE leak is enough to render every further atempt useless ;-)
11:19 est31 and there is channel binding
11:19 est31 yeah
11:19 sapier server b would still get username and password hash
11:19 sapier as client wouldn't even know he's connecting to wrong server
11:20 est31 we could use SRP, which seems to give only one attempt
11:20 sapier user would recognize once having joined and beeing in completely wrong world
11:20 est31 username is no secret
11:20 sapier we could but why should we build our own mechanism if there are exisiting ones?
11:21 est31 storing certs still give you problems
11:21 sapier username is not a secret but still nice to know for rouge servers
11:21 sapier you'd get at least a list of validated users worth to attack
11:21 Krock joined #minetest-dev
11:21 est31 when I connect to servers.minetest.net/list, I currently see almost all users connected to minetest servers
11:21 Calinou world downloading is possible, so several servers could have the same world :P
11:22 Calinou and same mod set
11:22 sapier well so user may not even recognize immediatly he's in wrong world
11:22 sapier serverlist shows usernames?
11:22 est31 not in the gui
11:23 est31 but in the json file
11:23 est31 and on the html page too
11:23 sapier grrr once you don't check every commit ppl add crap like this
11:23 Calinou you can find it on servers.minetest.net
11:23 est31 when you hover over the srv name
11:23 Calinou it is useful, to find people
11:23 sapier exactly ... even those ppl who don't want it
11:23 Calinou however servers.minetest.net/list shouldn't show it, as the information isn't shown (waste of bandwidth)
11:23 Calinou it's a widely accepted feature in games
11:23 sapier and there's not setting to disable it
11:23 Calinou use a fakename if you don't want to be found
11:24 est31 ok that's an argument for certs
11:24 sapier that's just a workaround a sane way to do it make a client tell server "I don't want you to spread my online state" like it's been common until facebook
11:24 est31 but still you need a good way to distinguish it in the gui
11:24 Calinou a client-side setting to hide you from user list would be good
11:25 Calinou but don't remove all usernames
11:25 Calinou finding people can come extremely helpful at times
11:25 sfan5 friendly reminder: this is just a game, not a banking application
11:25 est31 ^
11:26 est31 I esp. think its quite weird people freak out that other ppl can see their online status but when fb or whatsapp sees it and shares it with marketing corps nobody cares
11:26 sapier sfan5 if this was a banking app we'd have to talk about verified certs including secure infrastructure for generation too ;-)
11:26 sfan5 sapier: we were already talking about certs yesterday
11:26 sapier right now we're more about talking a mechanism similar to ssh where a servers fingerprint is verified once you did an initial connect
11:27 sapier and yes ssh uses certs too ;-)
11:27 sapier self signed one
11:27 sapier s
11:27 est31 signing (by CA or similar mech, not self-) is only neccessary when the cert maps to a name
11:28 sapier imho we don't need a ca as we don't have a way to establish a chain of trust anyway
11:28 sapier trust is established on user accepting a certain server
11:28 est31 I also think we dont need cas.
11:29 sfan5 I also think we don't need any of this certificate stuff.
11:29 sapier the only thing we could make sure is that once a server is known user will be warned if something is strane
11:29 sapier strange
11:29 sapier better suggestions on how to get done what I just said?
11:29 est31 you need to show in the gui whether a server is known or not
11:30 est31 I'm still for diffie-hellman + srp + channel binding
11:30 ImQ009 joined #minetest-dev
11:30 est31 no certs involved
11:30 sapier "Connecting to not yet known server <name/IP> are you sure?" + "Server <name/IP> chnaged identification do you really wanna connect?"
11:31 sapier that's not gonna provide any integrity between different connections
11:31 est31 and when the list features another server with the same name, just with a typo?
11:31 sapier it's almost as useless as now
11:31 sapier then you're warned about a new server!
11:31 sapier everytime the id changes you're told about it
11:32 sapier of course I know ppl tend to ignore those messages but there's not much more we can do without damaging freedom of minetest
11:33 est31 I dont think the gain is that large its a game after all
11:33 T4im why are you concerned about servers impostering other servers?
11:33 sapier well if there's no gain then leave it the way it is
11:33 sapier I'm against establishing a new login mechanism without doing it right this time
11:33 T4im in the modern open source games based on q3 you generate clientcerts as well... makes any binding onto a name unimportant until a client decides to /register the nick there… the whole concept of passwords in minetest is actually quite an odd one compared to that... (I thought when starting minetest, that it was a pw for private servers you only get in with invitation)
11:34 est31 no nowadays you can set up a server, get people logged in, and then use their hashes to log in at other servers and cause harm
11:34 T4im evolved from the originally proprietary cd-key to unique ID's and then to client certs
11:34 est31 I think there is no way of doing it 100% right
11:34 sapier t4im how are client certs supposed to work if you connect from different machines?
11:34 T4im you transfer your "qkey" in that case
11:35 sapier so it's basically a big long stored PASSWORD ;-)
11:35 T4im well a stored secret
11:35 sfan5 T4im: "that it was a pw for private servers you only get in with invitation" the password field can also work that way when it's the first time you sign into a server
11:35 T4im but one that is not send to servers
11:35 sapier not sure if I'd consider this to be an advancement ;-)
11:36 T4im it added however also an identifiable mark against banned troublemakers :)
11:36 T4im additional to ip and name
11:36 sapier est31 true there's no way to get everything done but imho we should do everything we already know about
11:37 sapier and if you're already implementing something as complicated as you suggest the self generated certs wont make a significant difference ;-)
11:38 est31 I'm happy with any progress, as long as it happens
11:39 sapier well unless you do it ;-) nothing s gonna happen. I have up implementing security to minetest long ago, there's to many ppl opposing to it
11:39 sapier minetest is almost like a trojan ;-)
11:40 sapier the only thing missing is client side lua ;-
11:40 sapier )
11:40 * T4im feels a cold chill
11:41 Zeno` joined #minetest-dev
11:41 sapier well that's the reason why client side lua was not done by now. If this is added it has to be right at first try. We're not gonna accept a "let's implement security later" commit for this
11:42 T4im thank you, whole heartedly for that decision ;)
11:42 est31 thx too
11:43 Zeno` Have we decided what "client side lua" actually is now? ;)
11:43 Zeno` There seemed to be some confusion the other day
11:44 Zeno` Some people thought it meant "the server will automatically send some Lua to the client to execute". I've always thought it meant being able to write mods for the client
11:44 sapier it's "server sends lua to client"
11:45 sapier mods on client don't make any sense
11:45 Zeno` sure they do
11:45 sfan5 it's both
11:45 sapier for what zeno?
11:45 Zeno` lots of things; modifying HUD, custom formspecs, custom bindings, etc etc etc etc
11:45 sfan5 ^
11:46 sapier no you can't do things like that
11:46 est31 or a "stored passwords" mod
11:46 sapier hud as well as formspec data as well as evaluation is always done on server side
11:46 sapier the only thing you could do is writing a bot
11:47 est31 write a bot using lua. you can already now write a bot
11:47 sapier and sfan5 no it's not both, as those tasks are completely different
11:47 Zeno` of course you can
11:47 Zeno` I run a modified client
11:48 Zeno` I'd rather use mods to do that instead of changing the client's source code :/
11:48 sapier Zeno good luck on different mods
11:48 Zeno` different mods?
11:48 sapier mods may expect clients not to mess around with their formspecs so if your client does good luck ;-)
11:48 Zeno` how is HUD done server-side?
11:49 sapier hud element data is stored on server
11:49 sapier as well as position and type
11:49 sapier server tells client what exactly to be shown
11:49 Zeno` this is what I meant the other day by separating the client from the server much more than it is right now
11:49 Zeno` sapier, but please read the logs (this was already discussed)
11:49 Zeno` I think 2 days ago?
11:50 Zeno` Add to the discussion if necessary, of course
11:50 sapier well if you guys did have a look at the pull requests you'd have recognized that separation of hud is already done
11:50 Zeno` yeah, I used that as an example only :p
11:50 sapier I did this about a year ago
11:51 sapier still it's gonna break everything so it's not gonna be added anytime soon ;-)
11:51 Zeno` Server sending arbitrary code to client to execute != client-side modding!
11:51 sapier sfan5 said it's same not me
11:51 sfan5 what
11:51 sfan5 i said client-side mods is both
11:52 sapier (12:45:10) sfan5: it's both
11:52 sfan5 yeah
11:52 Zeno` It's a terminology issue but they are two different things so there needs to be the distinction
11:52 sfan5 both != same
11:52 Zeno` do we have server side modding yet?
11:52 sapier we've been talking about "client side lua" that term was only for server sending code to client to be executed by now
11:52 Zeno` Does that mean the client can send the server arbitrary code to execute? Of course not
11:52 T4im NaCL could provide you with a good client side sandboxing… amanieu started porting unvanquished from qvm to it too a while back
11:53 T4im haven't checked on them latly, so not sure how it stands, but I guess its still better than something custom made
11:53 sapier t4im ... no
11:53 Zeno` So, let's just decide two different terms for the two different thing. Please :)
11:53 sapier we're not gonna add another programming language
11:53 T4im not talking about language
11:53 est31 NaCL is not a language
11:53 est31 its for binary code
11:54 T4im you could write it to execute lua
11:54 sapier for what reason?
11:54 T4im sandboxing
11:54 est31 basically it can be used for sandboxing
11:54 sapier guys this is a freetime project we're not gonna spend months of development for a small piece ;-)
11:54 Zeno` If we don't get the terminology for this correct and objective then there is going to be a big mess IMO
11:54 sapier or did you volonteer to do this?
11:55 sapier client side lua == server sending lua code
11:55 Zeno` what is server side lua?
11:55 sapier client side modding == well ... lua bots, graphical changes things like that
11:55 Zeno` this is what I mean. That definition makes no sense
11:55 sapier -server + client sorry ..
11:55 sapier wait
11:55 sapier what are you telling I didn't write server side lua
11:56 sapier CLIENT SIDE LUA!!!
11:56 T4im sapier: well, the suggestion was partly with the idea, that it is faster to use an existing sandboxing technology that is activly developed than write your own
11:56 Zeno` I'm saying that using your definition (of client-side Lua) that server side Lua would mean the client sending code to the server to execute
11:56 sapier only if there are ppl having experience with that technology and if it's fitting the overall application design t4im
11:57 sapier I don't know anything about nacl ... except it's beeing salt
11:57 sapier exactly and we don't have server side lua zeno
11:57 sapier we have server side mods
11:57 Zeno` ok, so we should have client side mods
11:58 Zeno` and *then* some other term for the server sending Lua for the client to execute
11:58 sapier if you're gonna implement it you're free to do but to me there's almost no use for them
11:58 Zeno` they're both related but very distinct
11:58 sapier no zeno
11:58 Zeno` yes sapier
11:58 sapier because client side lua would solve tons of issues we have due to lag
11:59 Zeno` but why should the /server/ send that Lua to the client?
11:59 sapier the only thing they might have in common is their language ... if that's enough minetest is same as samba
11:59 Zeno` that's not a "mod"; it's... I dunno... a "plugin" or something
11:59 sapier e.g. to make client predict what happens on digging a special node
12:00 Zeno` So have these things as part of the client already
12:00 Zeno` no need for Lua at all
12:00 sapier no we don't
12:00 Zeno` So make these thing part of*
12:00 sapier we can't
12:00 Zeno` why not?
12:00 sapier we'll never know what mods may want to do on digging a node
12:00 Zeno` How can sending code for the client to run get around that?
12:01 sapier so you just suggested client side lua ;P
12:01 Zeno` I asked a question :p
12:01 sapier e.g. you could tell client to execute some lua code on dig
12:02 sapier that code would check for which node has been digged and act like this
12:02 Zeno` yeah, and why does that need to be Lua?
12:02 sapier you can make it javascript too
12:02 sapier or c#
12:02 sapier or java
12:02 Zeno` no, no, no... why does the server have to send that code?
12:02 est31 or llvm bytecode
12:02 est31 because its customized
12:02 sapier but I guess it'd be helfull to use same language as the mods itself are written
12:03 sapier because mods are on server
12:03 Zeno` I do understand what you're saying, I'm just suggesting that there needs to be two different terms
12:03 Zeno` because they're different
12:03 sapier guys could you pleas get known to mintests architechture?
12:03 Zeno` sapier, I'm pretty sure I know it very well now
12:03 sapier argh
12:04 sapier ok I'm defining: HANS == lua mods on server
12:04 sapier OTTO = server sending lua code to client
12:04 Zeno` and the third?
12:04 sapier and ZEUS == lua mods run on client only
12:04 Zeno` Ok, nice
12:04 sapier enough terms now?
12:04 Zeno` can you add that to the dev wiki?
12:04 sapier so we already have HANS
12:04 sapier and I think OTTO would help
12:05 sapier but I see no valuable use for ZEUS
12:05 Zeno` you are underestimating ZEUS
12:05 sapier possible proove me wrong
12:05 Zeno` could the client cache OTTO code?
12:05 sapier no
12:05 sapier well
12:05 sapier not between connections
12:05 sapier OTTO code is transmitted on login
12:06 Zeno` that's a minor detail
12:06 Zeno` if the client and the server both know the OTTO code, why would the server have to retransmit it?
12:06 sapier no it's not because if you want to cache OTTO code over different connections you need server identity again
12:06 Zeno` Why not say "I'm not going to connect you because your OTTO is incorrect! Go here ... to update it!"?
12:07 est31 why not make it like the graphics? store them by their hashes?
12:07 sapier because you don't know if OTTO has to be updated or not
12:07 Zeno` The server does thoug
12:07 Zeno` so it sends that message
12:07 sapier hashes beeing most time as long as code itself?
12:07 est31 thats the issue
12:08 sapier if code size really becomes an issue we can still add caching in first step it's most likely not gonna be added
12:09 est31 ^
12:10 sapier it's meant for small code pieces ... well I know about ppl usually abusing things in ways they're not meant to be used ;-)
12:10 Zeno` Are there examples of other games doing this?
12:10 sapier still getting this feature correct with secure enough sandboxing is hard enough for first try
12:11 sapier zeno none I know about. Minetests focus on extensibility is unique
12:11 sapier causing a lot of trouble for us ;-) but imho it's worth it
12:12 Zeno` For the server sending "execute this" fragments then some kind of byte code is probably better than Lua. That way if the client does not know what an op does it can simply not run it
12:13 Zeno` It still seems strange to me, but I agree it's worth exploring
12:13 sapier if you use lua bytecode it's still executed and if you reinvent the wheel you're way to limited
12:13 Zeno` I didn't say lua bytecode ;)
12:13 Zeno` isn't being limited the idea?
12:13 sapier own bytecode is crap we don't wanna invent another language ... formspec was silly enough
12:14 sapier we're not gonna make this mistake again
12:14 sfan5 let's use XML
12:14 Zeno` javascript and activeX were big mistakes IMO
12:14 sapier <<looking for something to throw at sfan5
12:14 sfan5 :D
12:14 sfan5 XML sucks
12:15 sapier no just because of starting another endless discussion
12:15 Zeno` ok, who is implementing this "server sends stuff to client" stuff?
12:16 sapier mods are written in lua so why should we make modders write half of their stuff in one the other part in another language?
12:16 Zeno` IMO there needs to be a plan
12:16 Zeno` a documented plan
12:16 sapier noone zeno
12:16 Zeno` not something pretty much ad-hoc like IRC conversations
12:16 sapier that's not the way minetest works
12:16 sapier if someone sometimes has fun to do it it's gonna be done ;-)
12:17 Zeno` I know that, but something like this has so many (potential) issues and things that might be confusing
12:17 sapier that one will have it done and then everyone is against it and it's gonna be rewritten at least twice
12:17 sapier if that one didn't give up by that time it may eventually be merged
12:18 Zeno` like formspecs?
12:18 Zeno` :p
12:19 sapier well formspecs got to a point where replacing them is about 2 months of full time development
12:19 sapier client side lua is way less
12:20 Zeno` client side execution of server sent arbitrary code (CSESSAC) you mean?
12:20 sapier hmm actually I already have most pieces of a prototype here ;-) I'm just to lazy to do the final parts and do the fighting right now
12:20 sapier OTTO
12:20 Zeno` CSESAC!
12:21 sapier noone can say that
12:21 Zeno` I can
12:21 sapier and typing is even worth
12:21 sapier worse
12:21 sapier hmm let me guess you're czech? :-)
12:22 Zeno` Australian
12:22 sapier thoght there's been spoken english when I was there last time
12:22 Zeno` I pronounce it see-ess-eee-ess-ess-a-see
12:23 sapier crazy ... but it's already been defined to be OTTI
12:23 sapier OTTO
12:23 sapier ;-P your fault you wanted terms
12:23 sapier and everyone knows never make ME choose names ... now you know why
12:24 Zeno` well, it might be easier to remember "OTTO" if you have a logo to associate with it
12:24 sapier still first thing I'm gonna do now is switch android build to latest openssl
12:26 est31 why is openssl a dep??
12:27 est31 and only for android
12:27 sapier because android app has to provide all libs it's using
12:27 sapier openssl is required for curl
12:27 est31 ah ok
12:27 sapier which is required for fetching serverlist
12:28 est31 and media?
12:29 sapier media can be fetched by internal minetest protocol too and usually media servers don't use https so there we could use curl without ssl
12:29 est31 so curl also compiles without openssl when you dont need https
12:30 sapier if it's configured that way yes
12:31 est31 cool
12:31 est31 there is an srp impl under the MIT license where the only dep is openssl
12:32 est31 no libgmp
12:32 est31 https://github.com/cocagne/csrp
12:33 sapier 9th october 2013 doesn't seem to be alive?
12:47 sapier left #minetest-dev
12:52 MinetestForFun joined #minetest-dev
13:31 cib0 joined #minetest-dev
13:49 Taoki[mobile] joined #minetest-dev
13:56 Zeno` So many pull requests
13:57 Taoki[mobile] joined #minetest-dev
13:58 Taoki[mobile] joined #minetest-dev
14:15 roniz joined #minetest-dev
14:20 shadowzone joined #minetest-dev
14:55 Krock erm. since when is the status ber in the middle?
14:55 Krock *bar, not beer
14:58 Zeno` the what?
15:00 Krock the thing which appears when you enable/disable free_move, noclip etc
15:04 Zeno` dunno
15:05 Krock "Center status text for better visibility. " Zeno- committed 5 days ago
15:05 Krock ah okay
15:06 Zeno` is there something wrong with it?
15:07 Krock no, just wondered why it's centered now
15:10 Zeno` I might revert that actually
15:11 Krock it's good this way
15:11 gregorycu joined #minetest-dev
15:11 Zeno` It's hard to say. I like it a lot at first but now I'm not sure. It's not really a big deal though
15:11 gregorycu Yoyoyo
15:11 Zeno` hi gcu
15:11 gregorycu Hi there
15:12 gregorycu I'm in bali
15:12 gregorycu Lack of coding is making me crazy. How did the release go?
15:12 sfan5 good
15:13 Zeno` As smooth as a piece of sandpaper
15:13 sfan5 except we still don't have msvc builds
15:13 gregorycu That sounds wonderful
15:13 gregorycu That sounds less wonderful
15:13 Krock using indev builds is not disallowed
15:13 gregorycu Is that a problem?
15:14 Zeno` huh?
15:14 gregorycu I mean, do we need msvc release builds?
15:14 Zeno` MSVC version can still be built
15:14 Zeno` someone just has to do it
15:14 Krock nah, not needed
15:14 gregorycu No need for msvc over mingw
15:14 MichaelRpdx joined #minetest-dev
15:16 gregorycu Something to consider down the track is adding certain C++11 features
15:16 Zeno` can't
15:16 gregorycu For that, having msvc builds would be very handy
15:16 gregorycu Why not?
15:17 Zeno` not all compilers we support/target support C++11
15:17 gregorycu Doesn't have to be the full feature set
15:17 Zeno` e.g. the compilers in some Linux LTS distros do not have a C++11 compliant compiler
15:18 gregorycu Lts?
15:18 Zeno` no, but the compiler must support the basics ;)
15:18 Zeno` Long Term Support
15:18 gregorycu Indeed
15:19 gregorycu I try someone has done a CBA of supporting these distros?
15:19 gregorycu Trust
15:19 Zeno` CBA? :)
15:20 Zeno` I think most of them will be EOL soon... I guess I can compile a list
15:20 gregorycu Cost benefit analysis
15:21 gregorycu Aka: is it worth it
15:22 Zeno` Oh, nah. Nobody has done that but there are lots of VPSs that offer (for example) Centos6 :/
15:23 Zeno` I think 2017 is a bit too much even for a LTS though
15:24 Zeno` I'll do some research
15:25 sfan5 how about adding an option to disable C++11 features?
15:26 gregorycu What would that mean?
15:26 gregorycu I didn't express that well
15:27 gregorycu There are two facets to C++11
15:27 gregorycu Language and library
15:28 gregorycu Adding an option to disable C++ language features means double implementing things
15:28 celeron55 lol that's nonsense
15:28 gregorycu Yes
15:28 gregorycu It is
15:29 sfan5 i think freeminer does that
15:29 gregorycu Library may be easier but...
15:29 gregorycu It's not worth the effort
15:29 proller joined #minetest-dev
15:29 celeron55 my standing is that MT is free to start using C++11 this year; the features that are available in debian stable's GCC
15:30 celeron55 unless someone can come up with a good explanation why not
15:30 gregorycu Well
15:30 celeron55 supporting some ridiculous 1990-to-2017 LTS distro is not a good reason
15:30 celeron55 msvc2008 is not a good reason
15:31 celeron55 freebsd's ancient built-in compiler is not a good reason
15:31 gregorycu I agree with celeron
15:31 celeron55 something else could be
15:31 gregorycu With a cavet
15:32 gregorycu There are quite a few compilers out there missing C++11 features
15:32 Zeno` it's 2011-2017 (6 year LTS support)
15:32 gregorycu Msvc comes to mind
15:32 Kray why'd you use ancient msvc
15:32 gregorycu Not ancient
15:32 Zeno` What is a good reason *to* support c++11?
15:32 gregorycu Latest
15:32 cib0 joined #minetest-dev
15:33 Zeno` celeron55, does the public server list keep track of server OS?
15:33 gregorycu Latest msvc is missing c++11 features and I know mingw was lagging gcc in terms of feature set
15:33 Zeno` it'd be nice to make a decision based on data rather than opinion
15:33 gregorycu Not idea what the story is thesedays
15:33 Zeno` mingw is *way* behind
15:33 celeron55 Zeno`: it's a much better language then c++03; this cannot be explained to anyone unless they personally try it and get used to it
15:34 celeron55 Zeno`: so get on to that now if you want to know the answer
15:34 gregorycu I say this politely
15:34 Zeno` celeron55, but... who is refactoring the code to use C++11 stuff?
15:34 celeron55 Zeno`: mingw is behind? what? it's GCC, you can get mingw 4.9 easily and it has basically absolutely everything
15:34 gregorycu If you don't know the answer to that question, you've not used C++11
15:34 celeron55 Zeno`: nobody; it's a backwards-compatible language
15:34 Zeno` celeron55, mingw != gcc
15:35 celeron55 Zeno`: i have been using the useful parts of C++11 for two years now and mingw has never been an issue
15:35 Zeno` what is the gcc bundled with the latest mingw?
15:35 gregorycu I'll be back in a little while
15:36 Zeno` something from 2013 by the looks of it
15:36 MinetestForFun joined #minetest-dev
15:37 Zeno` make that 2010
15:37 Zeno` err, sorry, 2013
15:38 Zeno` so hardly any C++11 features :(
15:40 Zeno` none that I'd trust anyway. Needs more research
15:41 Zeno` I'm not sure if it's "experimental" or not
15:42 Zeno` "GCC provides experimental support for the 2011 ISO C++ standard."   "Since this standard has only recently been completed, the feature set provided by the experimental C++11 mode may vary greatly from one GCC version to another. No attempts will be made to preserve backward compatibility with C++11 features whose semantics have changed during the course of C++11 standardization."
15:42 Zeno` Not really sure I like the sound of that
15:42 Kray where are you reading this
15:42 Zeno` https://gcc.gnu.org/gcc-4.8/cxx0x_status.html
15:43 Kray that text is obsolete
15:43 Kray look at the table
15:43 Zeno` gcc 4.8.1 is the gcc bundled with mingw
15:44 Zeno` I am. It's in experimental
15:44 Kray there's also C++14 already https://gcc.gnu.org/projects/cxx1y.html
15:45 Zeno` not with mingw there isn't
15:46 Zeno` Relying on features that are experimental for mingw could quite possibly lead to some very hard to find bugs or undefined behaviour or who knows what...
15:47 Zeno` I guess we could drop support for mingw
15:49 celeron55 lol
15:49 celeron55 it's obvious from how and what you speak that you have never even tried using C++11 with mingw
15:50 celeron55 it works pretty much flawlessly as far as i am concerned
15:51 Zeno` I'm not sure why they have that disclaimer then
15:52 Zeno` #1959      <--- is that caused by mingw?
15:52 ShadowBot https://github.com/minetest/minetest/issues/1959 -- Checking public serverlist checkbox causes minetest to freeze.
15:53 Zeno` because with TDM and latest versions of gcc it's impossible to reproduce. It can only be reproduced using mingw
15:53 gregorycu Strangely enough, I think we need to test and see for ourself
15:54 Zeno` And that is what I'm talking about when I say "hard to find bugs"
15:54 gregorycu And the time to think about these things is at the start of a release cycle
15:54 Zeno` Is it the code's fault or the compilers fault?
15:54 gregorycu But that was C±±03
15:54 Zeno` Yes, but still an old version of gcc
15:55 gregorycu I can't do the analysis here, but surely mingw isn't that bad
15:56 Zeno` It's not. It just has an old version of gcc
15:56 gregorycu I mean for c++11 support
15:56 gregorycu I know it doesn't match gcc
15:56 Zeno` The problem, for me, is that the C++11 support in that version of gcc is "experimental"
15:57 Zeno` So whether it works or not is... well... I dunno
15:57 gregorycu But I'm struggling to believe it's so far behind
15:57 Kray the text is completely obsolete
15:57 Zeno` Kray, how?
15:57 Kray there is nothing "experimental" with gcc's c++11 support
15:57 gregorycu Not gcc
15:57 gregorycu Mingw
15:57 Zeno` Kray, I am talking about the version of gcc bundled with mingw
15:57 Kray gcc is mingw
15:57 gregorycu No. It's not.
15:58 gregorycu Mingw lags behind gcc's feature set
15:58 gregorycu Anyway
15:58 Zeno` the gcc version in mingw has not been updated since 2013
15:58 gregorycu I think there should be a discussion at least
15:59 celeron55 it basically uses the same codebase and just leaves out some platform-specific things
15:59 celeron55 all the language features work just the same
16:00 hmmmm joined #minetest-dev
16:00 gregorycu People are switching to clang... Just another variable.
16:00 Zeno` I wonder why there has been updates to gcc since 2013 then
16:00 Zeno` if it's all "the same" they should have just stopped updating
16:01 hmmmm the worst part about developing minetest is that you can't play it without thinking "damn, I need to fix that"
16:01 hmmmm I'm going to add a Settings button to the pause menu and it's going to have a single tab with a single checkbox that says "fullscreen"
16:02 hmmmm filling the rest of it in is up to everybody else
16:02 gregorycu On this topic, it may be worth considering making clang the supported compiler on Windows
16:02 gregorycu Instead of gcc
16:02 gregorycu Pool time
16:04 shadowzone joined #minetest-dev
16:12 MinetestForFun_ joined #minetest-dev
16:24 crazyR joined #minetest-dev
16:39 MinetestForFun joined #minetest-dev
16:39 cib__ joined #minetest-dev
16:46 Calinou joined #minetest-dev
17:04 hmmmm pool time, huh.
17:04 hmmmm over where i am it's snowing, the exact opposite of pool time
17:05 hmmmm btw is anybody around right now?
17:05 shadowzone I am here
17:05 hmmmm anybody who uses schematics from files
17:33 cib0 joined #minetest-dev
17:52 Megal_ joined #minetest-dev
17:58 MinerDad joined #minetest-dev
18:15 exio4 joined #minetest-dev
18:19 roniz joined #minetest-dev
18:22 hmmmm :/
18:23 hmmmm i'll just make a post on the forum about it
18:32 selat joined #minetest-dev
18:47 MinerDad joined #minetest-dev
18:53 MinetestForFun joined #minetest-dev
19:02 VanessaE joined #minetest-dev
19:09 MinetestForFun joined #minetest-dev
19:18 shadowzone joined #minetest-dev
19:27 MinerDad joined #minetest-dev
19:51 cib0 joined #minetest-dev
20:06 RealBadAngel joined #minetest-dev
20:26 ImQ009 joined #minetest-dev
20:39 MinetestForFun joined #minetest-dev
21:09 selat joined #minetest-dev
21:46 sapier joined #minetest-dev
21:46 sapier hello, does anyone own a android mips device?
21:48 ImQ009 joined #minetest-dev
21:54 MinerDad joined #minetest-dev
22:00 cib0 joined #minetest-dev
22:19 ShadowNinja Comments on #1952?
22:19 ShadowBot https://github.com/minetest/minetest/issues/1952 -- Use the console instead of a dedicated window when pressing chat/command keys by ShadowNinja
22:20 ShadowNinja Curent ones are mositive, but there are no dev comments.
22:20 sapier I haven't tried it yet but I like the idea
22:20 ShadowNinja positive*
22:20 sapier I'm gonna do a quick code check but I'd guess it's ok
22:22 sapier hmm schouldn't a { after a if be on next line or am I mixing this up with some other project again?
22:23 sapier well at least in guiChatConsole.cpp you should do it consistent for functions ;-)
22:23 sapier void GUIChatConsole::closeConsoleOnEnter(bool close) { ... I always wanted to correct you Shadow ;-)
22:24 sapier everything else seems to be fine
22:31 ShadowNinja sapier: Nope, { only go on their own line for functions.
22:32 sapier yes void GUIChatConsole::closeConsoleOnEnter(bool close) { is a function ;-)
22:32 ShadowNinja I didn't actually write this, just rebase it a lot, but I'll check the code style now.
22:33 sapier come on don't destoy my single success  ;-) *joking*
22:33 ShadowNinja sapier: Yep, that's technically wrong, everything else seems good though.
22:34 sapier true
22:34 sapier sadly noone seems to have a android mips devices ... so I'm not gonna know if my openssl mips build works. I switched to official openssl as the android variant we've been using wasn't updated
22:35 sapier but official openssl doesn't support mips
22:35 sapier not sure if my compiler flags are really correct ... at least build and link works fine
22:35 ShadowNinja sapier: Can you use GnuTLS?  Does that support mips?
22:37 sapier I don't know if there's support for android build on gnutls
22:38 sapier nor do I know how to link curl against gnutls if I remember correct it didn't work when I tried it ... so I used openssl which did work. could've been a minor error or some big issue, I just don't know
22:39 jluc joined #minetest-dev
22:40 sapier but otherwise I don't have any preference about openssl or gnutls
22:43 sapier ShadowNinja: do you have any reason why to prefere gnutls to openssl?
22:44 ShadowNinja sapier: From what I've heard OpenSSL's API and general code quality is horrible.  It also has licensing issues (although they may not apply to us).
22:45 sapier licensing issues on openssl? you're kidding even my company links it to our apps and our lawyers are more then picky
22:46 sapier and on the other hand openssl is used way more often and those guys are working hard to improve those issues already found
22:46 sapier I'd be carefull to assume gnutls to be really better right now
22:47 sapier but I'd not be surprised if it was too
22:55 paramat joined #minetest-dev
23:04 VanessaE ShadowNinja: there's one caveat about using the console for regular commands:
23:05 VanessaE opening the console doesn't disable mouse panning in linux
23:05 VanessaE i.e. it won't release the mouse when open, while opening the regular command line does.  this is useful sometimes.
23:05 VanessaE http://xkcd.com/1172/
23:05 sapier https://github.com/minetest/minetest/pull/2043 anyone against updating to a recent version instead of a known to be bad version?
23:25 VanessaE ShadowNinja: plus copy&paste in linux needs to be completely sorted out before the console is made the only method of command entry
23:32 Player_2 joined #minetest-dev
23:33 Wayward_One does this look like a possible memory leak to anyone? http://i.imgur.com/bYNF1nw.png
23:34 Wayward_One that was taken just after closing minetest, after using 0.4.11-44-gd91559b for around 30 minutes
23:34 sapier seems to be yes
23:34 sapier any mods installed?
23:35 Wayward_One no, i was on a server, BigPappa's Carbone
23:37 sapier valgrind and windows doesn't work that well :-)
23:40 Wayward_One testing again, already memory use is up from 20-ish to 75 and climbing since starting minetest and joining a server
23:41 Wayward_One ...percent, that is
23:41 VanessaE Wayward_One: are there particle spawners in the vicinity?
23:42 Wayward_One no, and i'm on a completely different server atm too
23:50 Wayward_One heh, just crashed Cinnamon now, almost ran out of memory
23:52 VanessaE now ya done it! ;)
23:53 sapier hmm emerge thread is not cleaning up the emerge queue, but that's not your memory leak
23:53 Wayward_One just after starting and joining a server: http://imgur.com/odIJPrt
23:54 Wayward_One ...and just after closing: http://imgur.com/hCsdZ6L
23:55 Wayward_One VanessaE: yeah lol, gonna have to restart in a sec
23:56 Wayward_One sapier, not sure what that means
23:56 sapier means I found a memory leak but it's not yours ;-)
23:56 Wayward_One ah, ok :P
23:58 Wayward_One should i open an issue on github?
23:58 sapier yes
23:59 Wayward_One will do

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