Time Nick Message 00:00 Taoki ok. What's different in /survival and /build? 00:00 ShadowNinja very little atm 00:00 kaeza survival Is well, survival. the bones mod, hostile mobs, etc 00:00 Taoki nice. There are hostime lobs already in survival? 00:00 kaeza build is for creative servers 00:01 kaeza not yet 00:01 kaeza but it's planned IIRC 00:03 Taoki Ah. So the Creative system setting will go away and be replaced by that? 00:05 ShadowNinja no, creative is in common 00:05 ShadowNinja I think there should be a creative privilege 00:05 ShadowNinja Easier than giveme and only for select players 00:08 Taoki ok. Weird that a separate gametype is being used then 00:13 Taoki So... will players have collisions with each other now? 00:13 Taoki Just saw a commit about object to object collisions 00:14 kaeza hmm... will this also affect item entities? 00:14 kaeza I gotta test this 00:14 PilzAdam Taoki, actually no 00:14 Taoki Would be nice 00:14 PilzAdam only palyer <-> Lua entity 00:15 Taoki ok. Hope to see the player - player soon too, great update :) 00:15 PilzAdam ehm, I think Lua entity dont collide with the player 00:20 Taoki perhaps with each other 03:10 hmmmm it seems that malformed block data can get serverthread stuck in an infinite loop 03:11 Exio malformed block? what? 03:12 Exio in the map? 03:12 Exio (file) 03:12 hmmmm yes 03:12 hmmmm well, both really. 03:13 hmmmm looks like in NodeMetadata::deSerialize, Inventory::deSerialize 03:13 hmmmm feeding in the line to istringstream 03:14 Exio i think i got it 03:14 hmmmm so we know there needs to be some sort of additional check 03:14 hmmmm most importantly, we need to see why it hangs up like that 03:15 hmmmm something to do with locale 03:15 hmmmm that's pretty unnerving, though. to think that istringstream can hang a program by passing along some special bytes 03:16 hmmmm well, i'll put that aside right now and focus on getting my program to work 03:21 hmmmm oh. 03:21 hmmmm it's not that the ctor of istringstream hanging, it's the loop condition itself 03:22 hmmmm it only breaks if name == "EndInventory" or "end" 03:28 hmmmm https://github.com/minetest/minetest/commit/d01b74d00a39e38a898265adc0dbd3f15493cdc7 04:31 * VanessaE notes that latest commit and wonders what effect it'll have on her setup 04:31 VanessaE (probably none, with my luck ;) ) 05:16 hmmmm :D 05:16 hmmmm http://ompldr.org/vaHdxZQ 05:17 hmmmm that's not just any old block of cobble.. that's MY block of cobble, created external to minetest 05:17 VanessaE working on a map editor? 05:17 hmmmm sorta 05:18 hmmmm it's easy to underestimate how much crap goes into saving a single block 05:18 hmmmm i thought it would've been something that i can do in an hour or so 05:18 hmmmm and it's in C too, so i had to rewrite a lot of it 05:20 VanessaE who knows, maybe what you've just done outside the game could have implications for use inside the engine 05:20 hmmmm nah. 05:25 VanessaE well good luck with it anyway 07:00 hmmmm jesus christ.. http://www.minecraftwiki.net/wiki/Data_values#Data 07:00 hmmmm minecraft really puts those 8 bytes to good use 07:01 hmmmm i think we should start using param1 for more things 07:02 VanessaE I forget, what can it hold now besides light values? 07:02 hmmmm no, that's param2 07:02 VanessaE oh 07:02 VanessaE right 07:02 hmmmm param1 is for facedir and liquid levels and that's it 07:02 VanessaE no 07:02 VanessaE param2 is facedir. 07:02 hmmmm hrmm 07:02 VanessaE dunno about liquid levels. 07:02 celeron55 what 07:03 celeron55 light and facedir is in different parameter 07:03 hmmmm oh yeah you're right 07:03 hmmmm hmm 07:03 hmmmm but that's beside the point 07:04 hmmmm the point is that most of what minecraft stores is like 4 bits 07:04 celeron55 https://github.com/minetest/minetest/blob/master/doc/lua_api.txt#L294 07:04 hmmmm i think we can solve a lot of problems by using param2 better 07:05 celeron55 i've always had some kind of more clever allocation of the bits in mind but hadn't come up with anything (and hadn't had too much real use for such) 07:05 hmmmm they store the dye color for wool in a nibble 07:06 hmmmm now don't you think we ought to do something similar? 07:06 hmmmm "colortransformlike" 07:06 celeron55 many people want to use facedir for almost everything they make, so that leaves only the upper 3 bits 07:07 celeron55 and nodeboxes require param1 to be light so that leaves no much room 07:07 hmmmm if you look at vanessa's server, the majority of the crap is the same exact block with a different color 07:08 VanessaE now that I could agree with 07:08 hmmmm the modders who make these things have too much time on their hands 07:08 VanessaE but the color transform has to be flexible of course 07:09 hmmmm but anyway i don't think it's hard 07:09 celeron55 i don't think there are other options here than defining some special metadata fields for color transforms and whatever 07:09 VanessaE a mod should be able to at least specify hue, saturation, and lightness. 07:09 hmmmm what if you register a set of 8 colors that will be used if the node also has facedir 07:09 celeron55 a few bits isn't flexible enough 07:09 hmmmm and then a set of 64 colors if there is no facedir defined 07:09 VanessaE hmmmm: not good enough unfortunately. 07:10 hmmmm why isn't that good enough 07:10 VanessaE well for starters, there are 89 colors in the standard set 07:10 celeron55 and for starters, because VanessaE wants to use facedir for everything 8) 07:10 VanessaE but more to the point, you'd be preventing such things as stairs from being colored. 07:10 hmmmm that's completely arbitrary and ridiculous 07:10 hmmmm why 89 07:10 VanessaE (beyond your suggested 8-color palette) 07:11 VanessaE hmmmm: because that's where I thought to draw the line when I wrote Unified Dyes, and that's what most mods that have dozens of colors use. 07:11 hmmmm well i hope that would encourage people to not make everything possible facedir 07:11 VanessaE the exceptions are Stained Glass and Unified Bricks, which define even more than the standard set. 07:11 hmmmm well 89 colors is not an even number, you should've made it 64 07:11 hmmmm wait, why did i say 64 07:11 VanessaE 12 colors in several shades, plus 5 greys. 07:12 VanessaE that's why it's an odd number 07:13 hmmmm just trying to think of how this would work 07:13 hmmmm well, right off the bat, you'd be able to reduce the 89 nodes to 12 07:13 VanessaE yep 07:13 VanessaE seems to me you'll need 3 bytes per node to properly set the hue/saturation/lightness offset 07:14 hmmmm no, no 07:14 hmmmm read up, i said you'll be able to register a color table 07:14 VanessaE oh I missed that part 07:14 VanessaE in that case, you'd need less than one byte 07:14 VanessaE I could see that 07:14 celeron55 hey, that is actually an interesting idea 07:14 VanessaE but I presume it would be a global color lookup table 07:14 celeron55 it could just be in the node definition as a simple list 07:15 hmmmm yes, so you'll be able to fit all 89 colors in one node for a non-facedir thing 07:15 VanessaE celeron55: part of the node's regular metadata 07:15 hmmmm for facedir things you need to define 12 of them 07:15 hmmmm eh 07:15 hmmmm we don't need to use metadata all the time guys 07:16 hmmmm that's heavier than what i'm proposing, by a lot 07:16 celeron55 VanessaE: ehm... well, as a special case, with meta_set_nodedef that would be possible; but VERY wasteful 07:16 VanessaE well of course not, but doing so means no new map format or network protocol 07:16 hmmmm this doesn't require a new map format.. 07:16 hmmmm this is a bump in ContentFeatures 07:16 VanessaE ah 07:16 hmmmm it'd be an additional field 07:16 VanessaE gotchya 07:16 hmmmm and then if the colors are present, that'll be added along 07:16 VanessaE I tend to forget you guys made that mode flexible than it used to be 07:17 VanessaE more* 07:17 VanessaE ok, so I generally agree with your idea 07:17 celeron55 ...ehm, how it was made "more flexible"? 07:17 celeron55 i don't think i remember anything like that 07:17 VanessaE celeron55: nevermind. maybe I'm getting mixed up again. 07:18 hmmmm by having a version for each serialized class 07:18 celeron55 hmmmm: that has always been the case for ContentFeatures 07:18 hmmmm yeah 07:18 VanessaE but 64 colors? I dunno about that - surely one would want to cover the largest current standard (insert xkcd comic here) 07:18 hmmmm good thing we're the ones who make the standard 07:19 celeron55 8) 07:19 VanessaE heh 07:20 hmmmm but anyway the color idea was just one thing 07:20 celeron55 (by the way, ContentFeatures should really be renamed NodeDef) 07:20 celeron55 for some reason it's been left around with that ancient name 07:21 VanessaE stained glass defines 108 colors, so we need at least 128 to cover that if the idea is to reduce such things down to one node. 07:21 hmmmm look at what else the in-node-data is used for, redstone/rail power, damage level, height 07:21 hmmmm erm wait a minute, why did i say 128 either 07:22 hmmmm i meant 256 07:22 hmmmm i am confused because i'm tired 07:22 VanessaE 256 makes sense. 07:22 VanessaE and certainly covers every probable use of the idea. 07:22 celeron55 we need two modes of setting color; one is coloring grayscale things with RGB (possibly leaving already colored things as-is; easy to do in the engine); the other is the hue/saturation/lightness skew that VanessaE's unified dyes does 07:23 celeron55 but that is easy to do 07:23 VanessaE sounds fair. 07:23 hmmmm wait why do we need that 07:23 VanessaE and really, if you were to choose one, RGB is Good Enough ™ 07:24 hmmmm i still don't understand what's wrong with defining a table of colors 07:24 celeron55 well, at least we need the first one 07:24 celeron55 i don't actually know if the second one is required 8) 07:24 VanessaE I don't think it is, really 07:24 VanessaE I only chose HSL because it is vaguely human readable 07:25 hmmmm you can make a lua function in builtin to convert between the two 07:25 VanessaE exactly. 07:25 hmmmm ugh 07:25 VanessaE converting between the two systems is, afaik, pretty well worked out. 07:25 hmmmm why did i shovel this onto myself 07:25 celeron55 i tend to shovel stuff like that onto myself too; the key here is just not do it :-D 07:26 VanessaE and indeed I already settled on RGB values for the 89-color set long ago 07:26 celeron55 focus on something and the rest is just talk; it's how the world works 07:26 hmmmm alright, todo: optimize find_nodes_in_area, fix clearobjects, color param, block sending do-over, mapgen v7 07:26 hmmmm o 07:26 celeron55 the other alternative is getting to work 8h/day on this and asking money for it (it's also called work) 07:26 hmmmm i'll do them in that order* 07:26 VanessaE here's the official set, if you care: https://github.com/VanessaE/unifieddyes/blob/master/colors.txt 07:27 hmmmm the thing is i talk about it like it's all such far off stuff 07:27 hmmmm but in reality if i just sit down and work at it, each item can be done in like a week 07:27 hmmmm err, way less 07:28 hmmmm again; i wish i was multithreaded 07:28 VanessaE hmmmm: don't we all. 12:57 sfan5 thexyz, celeron55: is it acceptable if my guidelines checking script( http://forum.minetest.net/profile.php?id=4833 ) autmatically makes posts in mod releases topics? 13:15 celeron55 sounds somewhat floody 13:16 celeron55 i guess it's reasonable if that makes it unnecessary for a moderator to say anything, and it's good at avoiding false alarms 13:18 sfan5 my script sees "wtfpl" (and other common licenses) as license even if the word "license" is not stated one 13:20 sfan5 the mod releases forum has an awful topic without mistake quote 13:56 sfan5 celeron55: -> avg. Mistakes per Topic: 1.23778501629 14:12 sfan5 celeron55: so.. yes or no? 15:32 PilzAdam has anyone anything against this? https://github.com/PilzAdam/common/commits/ores 15:32 PilzAdam Jeija and I have tested it and its pretty good now 15:53 Exio hi hmmmm, anything more for the todo list? 15:53 hmmmm ?? 15:55 Exio everytime i just read the backlog i see more things in your TODO list :P 15:56 hmmmm i 15:56 hmmmm i'll update the todo list on the dev wiki* 15:56 hmmmm gotta hate how ' and enter are so close together 15:56 Exio hehe 15:59 PilzAdam hmmmm, https://github.com/PilzAdam/common/commits/ores are you ok with this? 16:00 hmmmm sure 16:01 hmmmm so let's see, that's diamond and gold, now we need copper, silver, and what was the other thing we agreed on 16:03 PilzAdam what should be the use of it? 16:04 hmmmm copper has use for mesecons already, and it could be smelted with iron to make bronze 16:04 hmmmm as for silver, that's just like gold i guess 16:04 hmmmm i don't remember the fifth one 16:05 hmmmm also, this shouldn't be a direct MoreOres copy like I figured... 16:05 hmmmm we are taking less than they had originally 16:06 PilzAdam maybe bronze + steel tools makes them last longer? 16:06 hmmmm we can alias the ores that are in moreores to "moreores:blah", but moreores would need to remove what we added into default 16:06 hmmmm basically we need cooperation with the author of moreores 16:06 hmmmm yeah, sure, sounds good 16:06 PilzAdam yea, I will talk to Calinou 16:08 hmmmm also LuaJIT still isn't in upstream.... we need to add that in before 0.4.6 16:08 hmmmm it's just such a huge benefit, it'd be wrong not to 16:08 PilzAdam why not directly after 0.4.6 16:08 hmmmm because then people have to wait 16:08 hmmmm i figure, why not slap all these speed improvements on at once 16:08 PilzAdam but we have time to fix bugs 16:08 hmmmm will there be any bugs? 16:09 hmmmm i thought it was well tested 16:09 PilzAdam only by RBA and VanessaE AFAIK 16:09 PilzAdam and they tend to... not see bugs if they want it to be added 16:09 hmmmm mmmmm... 16:10 hmmmm alright, we'll save luajit for 0.4.7 16:10 PilzAdam I guess levelDB has to wait too 16:10 Exio i just tested it 16:10 Exio and i didn't see anything wrong or so 16:10 hmmmm yeah levelDB and luajit will be put in together, it's decided 16:11 PilzAdam oh, I see a problem in copper + steel tools: the wear of the tools will be lost, so its a 100% repair 16:11 PilzAdam I dont think thats good 16:12 PilzAdam so we need to make the bronze first 16:13 hmmmm i'd say eventually we should put anvils in anyway 16:13 Exio how they would work in MT? 16:13 celeron55 sfan5: i don't care about anything else than how many false errors it's likely to post; get that down to like under 5% of topics and it's good 16:14 Jordach i will highlight that oldcoder uses levelDB for all his worlds 16:14 Jordach and no-one has complained that they have broken 16:14 Jordach (in the slightest) 16:15 sfan5 celeron55: how would I notify all the mod authors if my script only posts in 5% of the topics 16:15 celeron55 sfan5: you didn't understand 16:15 celeron55 do you understand what a false error is? 16:15 sfan5 yes 16:15 sfan5 ... 16:16 celeron55 do you understand what limiting the rate of false errors means? 16:16 sfan5 i thought you meant the general posts 16:16 * sfan5 understood now 16:17 celeron55 as long as it doesn't accuse people of things they haven't done wrong, everyone will be happy 16:18 sfan5 it also adds "\nIf you believe I have made a Mistake contact [url=http://forum.minetest.net/profile.php?id=239]sfan5[/url]" 16:18 sfan5 to the message 16:19 sfan5 and any mod that follows the guidelines should have "license: " and not just "" 16:21 RealBadAngel luajit was tested not only by me and vanessa. also sapier and some other folks that posted in forums 16:22 RealBadAngel also all players that play on vanessae server. because it runs luajit for weeks now 16:22 sfan5 and now one of the regexes suddenly fail... :/ 16:23 RealBadAngel only thing i found are escapechars. luajit is more restrictive than regular lua 16:24 RealBadAngel thx to latest changes to ores and luajit combined game runs pretty nice there, almost 60fps all the time 16:26 RealBadAngel set of mods is mesecons, technic, calinou's stuff, moretrees, technic ambience and lately joined slimes 16:26 RealBadAngel and 128x texture pack ofc 16:29 celeron55 by the way, does there exist a mapper tool for leveldb maps? 16:29 celeron55 i think it shouldn't be the default before such does exist 16:30 celeron55 leveldb is problematic because it's way less supported compared to sqlite3 16:30 celeron55 you can open sqlite databases in, like, anything 16:30 celeron55 leveldb... more like nowhere 16:42 PilzAdam copper_lump (cooking) -> copper_ingot (+steel_ingot) -> bronze_ingot 16:43 PilzAdam bronze_ingot can make tools, wich have same speed but more uses than steel tools 16:43 PilzAdam and bronze blocks 16:43 PilzAdam how rare should copper be? 16:45 Jordach google it 16:46 PilzAdam 12^3 from -16 to -64 and 9^3 under it? 16:52 PilzAdam https://github.com/PilzAdam/common/commit/c82c74898ef3f352c0aea8d8d0e71e6f2136a8a7 16:54 Zeg9 PilzAdam, this looks great, more ores in default game 16:56 sfan5 celeron55: sfan5-bot did its work 17:00 celeron55 lol, the first page is full of random mods now 17:01 celeron55 you botched up the message though 17:01 celeron55 umm... actually no, it actually makes sense 17:02 PilzAdam celeron55, thought the same about the message 17:03 celeron55 the bot seems quite random 17:03 celeron55 for example, why does it think this has dependencies mentioned? http://forum.minetest.net/viewtopic.php?id=2262 17:08 Zeg9 sfan5, does it ask for dependencies in the repo (depends.txt) or in the forum post? 17:08 sfan5 in the post 17:09 sfan5 it checks the forum post, because it should conform the _forum_ guidelines 17:10 celeron55 http://forum.minetest.net/viewtopic.php?pid=14697 17:11 PilzAdam lol, the download link! 17:12 sfan5 celeron55: if "gpl" in post_html ... 17:12 Zeg9 How often does the bot check for updates ? ;p 17:13 sfan5 i run the script once a week or so 17:13 Zeg9 okay 17:13 sfan5 but the bot only posts when i want it to post 17:15 celeron55 PilzAdam: rickrolled! 17:15 * celeron55 wins 17:15 sfan5 damn! i posted the PHPSESSID and forum_cookie_31d6ec on github again 17:15 Jordach TROLOLOLOLOL 17:15 * Jordach wins 17:16 Jordach oops (thought this was #minetest) 17:16 sfan5 but its no longer valid 17:16 sfan5 shame on you, Jordach 17:19 sfan5 celeron55: i'll have to let you know that I also clicked on the download link in the mod releases guidelines 17:19 PilzAdam celeron55, you owe me tens of useless random blocks 17:20 PilzAdam (the ones that are currently in MT do not count) 17:23 PilzAdam Ill push the copper now 18:05 * VanessaE peeks in 18:05 VanessaE ores: copper, tin, silver, gold, mithril. 18:05 VanessaE bronze is made from copper + tin, not steel 18:05 Jordach just add moreores and we can forget about this 18:06 PilzAdam VanessaE, accoring to wikipedia bronze mainly consists of copper 18:06 VanessaE luajit: I have indeed tested it quite thoroughly as have a number of others. I am one commit behind luajit's 2.0 git repo, and it is stable enough to add whenever you see fit to merge as seen fit. 18:07 VanessaE PilzAdam: yes. copper + tin 18:07 VanessaE "Bronze is an alloy consisting primarily of copper, usually with tin as the main additive." 18:07 PilzAdam "usually", not always 18:07 PilzAdam see my comment on GitHub 18:07 VanessaE *grumble* 18:07 VanessaE don't change it just to change it,. 18:07 Zeg9 Why not make a poll ? 18:07 VanessaE moreores already does copper+tin=bronze 18:08 VanessaE also, what comment? 18:08 PilzAdam a comment on a comment on the commit 18:08 VanessaE link? 18:08 PilzAdam https://github.com/minetest/common/commit/c82c74898ef3f352c0aea8d8d0e71e6f2136a8a7#commitcomment-2900709 18:09 PilzAdam i dont want so many useless ores in the game 18:09 VanessaE well 18:09 VanessaE whether you want it or not, that is one of the standard 5 ores, and that is how bronze is supposed to be made 18:10 PilzAdam what standard? 18:10 VanessaE moreores of course. 18:11 VanessaE plus, there's nothing in the wiki article saying that bronze can be made with steel. you're changing it just to be "different". 18:11 PilzAdam no, I have done it like this because I dont want too many ores 18:11 Exio add zinc 18:11 Exio because tin is too mainstream 18:11 VanessaE we need tin also damn it. 18:11 PilzAdam for what? 18:12 VanessaE well I use it in homedecor for starters, and any other material simply doesn't make any sense 18:12 VanessaE just put the stuff in and let the modders figure out how to use it 18:12 PilzAdam morores has it 18:12 PilzAdam no, thats exactly what I dont want 18:13 VanessaE why? 18:13 VanessaE why must every damn object being added have to have a use right away? 18:13 PilzAdam it should be a game and not a lot of resources for modders that doesnt make any sense 18:14 VanessaE it doesn't make any sense to you because *you don't use it* 18:14 hmmmm tin and mithril, eh 18:14 VanessaE hmmmm: mithril is our lapis lazuli. :) 18:14 hmmmm those two are kind of iffy to begin with 18:14 hmmmm yeah but we don't need a lapis lazuli 18:14 VanessaE we don't need half the blocks we already have either 18:14 PilzAdam I think we have enogh ores now 18:14 hmmmm yeah same here 18:14 hmmmm we have just as many as minecraft 18:14 hmmmm any more is too ridiculous 18:15 hmmmm tin.... like why tin? 18:15 hmmmm that's sort of arbitrary 18:15 VanessaE hmmmm: originally because you use it to make bronze. 18:15 hmmmm why not platinum or nickel or whatever 18:15 VanessaE and bronze was used to for tools. 18:15 hmmmm but you can make bronze with copper and steel 18:15 VanessaE but that's a nonsensical alloy 18:15 hmmmm well 18:15 hmmmm minetest is nonsense to begin with 18:15 VanessaE why would you waste steel to make a *weaker* material? 18:16 hmmmm maybe it can have some use 18:16 hmmmm doesn't need to have a use right away 18:16 PilzAdam the alloy just makes it last longer 18:16 Exio the tools have more uses and same time, iirc 18:16 VanessaE didn't I say that 5 mins ago? 18:16 VanessaE why does it have to be put to use immediately? 18:16 hmmmm well 18:16 hmmmm the greatest thing about minetest is that you can decide what ores you'd like in your game 18:16 VanessaE true 18:17 hmmmm these are some ores that _EVERYBODY_ agrees on 18:17 hmmmm if you really wanted tin and mithril, you have other mods to add one 18:17 hmmmm s/one/on/ 18:17 VanessaE mmh 18:17 hmmmm so what's not to like here? 18:18 Calinou feel free to not add them 18:18 * Calinou would rather see sapphires/rubies/emeralds 18:18 Calinou not to make tools, but for other random things 18:18 Calinou maybe armor :p 18:18 hmmmm that was sort of the whole idea behind adding all ores to the base game.. 18:18 hmmmm behind not adding all* 18:18 PilzAdam Calinou, delete gold, copper and bronze from moreores, the aliases are already in minetest_game 18:18 Calinou suddenly: 0.4.5 users 18:19 Exio make a release of the actual moreores in a .zip 18:19 Exio and then upgrade moreores-git 18:19 Calinou some 0.4.5 users like to use my git repo 18:20 Calinou and two repos is a gas factory 18:20 Exio two repos? 18:20 Exio who said that?" 18:20 PilzAdam just create a dev branch and link that in the topic 18:20 VanessaE PilzAdam: see? either all or nothing damn it. 18:20 PilzAdam what should I see? 18:20 Calinou :| 18:20 VanessaE none of this half-ass crap 18:21 hmmmm you view adding half of them as half-assed, but i view it as doing things the right way 18:21 hmmmm half-assed would be adding all of them in without full judgement 18:21 hmmmm this is the subset that everybody agrees on 18:21 Exio i don't want a rainbow when i start mining really 18:22 PilzAdam VanessaE, I dont want to add whole mods just because some parts of them are good for the game 18:22 VanessaE PilzAdam: so don't add the whole mod - I'm talking about the ores here, not the tools et.al that go with it 18:23 hmmmm we're talking about all the ores too 18:23 PilzAdam I already have all ores in that I want 18:23 VanessaE that YOU want 18:23 Exio god, VanessaE, if you want tin 18:23 VanessaE note that key word here. 18:23 Exio you use moreores 18:23 Exio if not, you don't 18:23 Exio you already use it, don't you? 18:23 VanessaE Exio: I already do that's my point. 18:24 * VanessaE inserts the missing comma. 18:24 VanessaE the point of porting external mods to the core game is to give players more options and eliminate the need for the external mod. 18:25 celeron55 the mod developers are those who have to be flexible 18:25 celeron55 if the core developers need to be flexible, it takes time from actual development 18:25 celeron55 it isn't desired in the long run 18:27 celeron55 i can imagine this getting really bad if limits are not set somewhere, up to the point of nobody wanting to be a core dev 18:29 celeron55 on the other hand, it's bad too if mod developers cannot predict at all what core will do 18:30 celeron55 but i think this here is quite predictable 18:30 celeron55 like, with common sense 8) 18:33 hmmmm ...except common isn't part of the core 18:33 celeron55 it's part of the core in practice 18:34 celeron55 should've probably used the word "upstream" though i guess 18:36 * VanessaE grumbles about the apparent lack of consensus on what 'common sense' means. 18:37 hmmmm the subset formed by taking the intersection of all relevant peoples' sense 18:37 VanessaE now how do you define "relevant" in this context? 18:37 hmmmm directly involved with minetest development 18:37 VanessaE seems to me that boils down to exactly three people - you, c55, and pilz. 18:38 PilzAdam *Adam 18:38 hmmmm you too... 18:38 hmmmm any Core Developer or Active Contributor 18:38 hmmmm btw, did celeron ever get a minetest.net email address? 18:41 PilzAdam RBA should be added to "Core Developers" in the credits tab 18:41 hmmmm yeah, i didn't get around to that. 18:41 hmmmm proller too. core developer == someone with commit access 18:42 PilzAdam oh, yea right 18:42 hmmmm lol 18:43 hmmmm if minetest becomes really big and popular, i think we should take the developer list that's in the core and use it to draw a cape on characters with our usernames 18:43 hmmmm a la Minecraft 18:43 hmmmm ...and WoW for that matter 18:54 celeron55 hmmmm: i don't really care at all for getting one 18:54 celeron55 actually i don't even want one :P 18:54 hmmmm oh dear.. the @gmail.com sticks out on the credits tab 18:55 celeron55 why should i care? 18:55 hmmmm the minetest email is a good way to look professional and have some place to route all the github emails 18:56 celeron55 github emails? what are those 18:56 hmmmm github is a constant flood of email if you haven't configured it.... and it still is after you configured it 18:56 celeron55 i get absolutely none 18:56 celeron55 ah oh well, there's something it seem 18:56 celeron55 +s 18:57 celeron55 but why would i want a @minetest.net for that 18:57 hmmmm by default it sends you an email anytime someone comments on an issue or pull request or anything like that 18:57 hmmmm keeps everything neat and orderly 18:57 celeron55 github isn't a minetest-only thing for me; github accounts are personal 18:57 celeron55 github actually disallows making separate accounts for separate projects 18:57 celeron55 in case you haven't read the rules 18:57 hmmmm i haven't 18:58 hmmmm i wouldn't do that anyway 18:58 celeron55 but yeah, i have long time ago already disabled most e-mail from github and stopped reading the notifications 18:58 celeron55 there are simply too many to read while trying to keep sane at the same time 18:59 hmmmm i'm really curious to know how many people there are who actually want email notifications and all that nonsense 18:59 celeron55 let me guess... none? 18:59 celeron55 8) 18:59 hmmmm if they had them disabled by default, how many people would enable them 18:59 hmmmm yeah, basically. 19:00 celeron55 hmm, 490 unread notifications 19:00 celeron55 would've guessed there are more; maybe they don't list old ones 19:00 Exio what emails? 19:00 Exio :P 19:03 celeron55 but anyway basically, if i had a minetest e-mail it would be something i would never read 19:04 celeron55 however nice that and professionalism would be, i don't really want that 19:09 Jordach HOLD ON. 19:09 Jordach I have the notifications for all github.com/minetest repos 19:09 Jordach as email 19:24 celeron55 oh god these launchpad deb things 19:24 celeron55 i think i am able to update these now but this isn't going to look pretty by any debian maintainer 19:24 celeron55 8D 19:24 celeron55 why do they have all this crap in here 19:24 celeron55 they should update these themselves and not leave that to me 19:25 rubenwardy Jordach: you must be watching it 19:41 celeron55 first try: botched 19:42 celeron55 it's lovely to try to make correct debian packages when you're not running debian 19:45 Jordach thats true 19:46 VanessaE checkinstall. 19:46 celeron55 eh what? that's a debian-only thing 19:46 celeron55 and not useful at all 19:47 VanessaE um 19:47 VanessaE it makes other package formats 19:47 VanessaE and I'm pretty sure it runs on other distros too 19:47 celeron55 well, it makes rpms too; but it is not useful for distributed packages 19:47 VanessaE it also makes slackware packages 19:48 celeron55 and i am dealing with launchpad here, you should probably read up on it before saying anything to not sound so much like a number of very negative things 19:49 celeron55 oh lovely, we now have stable ubuntu packages 19:52 celeron55 and they now have freetype and curl 19:52 celeron55 (hopefully) 20:06 PilzAdam celeron55, are the new damage_groups int only? 20:19 sapier hello anyone online interested in the scriptapi cleanup branch? I'm still looking for comments prior issuing a pull request ;-) 20:20 sapier https://github.com/sapier/minetest/commits/scriptapi_separation 20:20 sapier I wan't to avoid having files renamed on merge leaving reinclude protections wron as happened last time ;-) 20:41 hmmmm this is a really humungous change 20:41 PilzAdam https://github.com/PilzAdam/minetest/commits/damage_system I have the new damage system done 20:42 PilzAdam but I need help for reading the damage_groups from Lua 20:42 sapier no problem what exactly do you need? 20:42 PilzAdam http://dev.minetest.net/Damage_system 20:43 PilzAdam read the damage_group table into the tool caps 20:43 hmmmm first of all, there's a whole bunch of modapi files 20:43 hmmmm in addition to scriptapi files 20:43 hmmmm what's with all of that 20:43 hmmmm there's so much more added, and for what actual benefit? 20:44 sapier it's not really much code it's more files to split parts that are needed within core from those only relevant to lua 20:44 sapier benefit is that lua is completely separated no more interfering with core development 20:44 hmmmm which are the parts relevant to lua? 20:45 hmmmm scriptapi or modapi? 20:45 sapier modapi* is loa 20:45 sapier scriptapi is internal interface 20:45 hmmmm but i see lots of lua_* in scriptapi 20:45 sapier the names may not be perfect 20:45 hmmmm this is a lot of change for i'm not even sure of how much benefit 20:46 hmmmm the scriptapi stuff really wasn't broken in the first place 20:46 sapier its mainly a design cleanup that never adds additional functions 20:46 sapier it was broken by design not by function 20:46 sapier env reference for example 20:46 hmmmm but this is a fundamental design change being done so late 20:47 VanessaE PilzAdam: btw you forgot legacy nodenames for diamonds. 20:47 sapier luaapi design was changed while developing without having a clear pattern thats why it got that creepy 20:47 hmmmm what was the change in luaapi design? 20:48 sapier there where two classes of global functions for example 20:48 sapier minetest.X and minetest.env.X 20:48 PilzAdam VanessaE, for wich mod? 20:48 hmmmm well things that call env obviously have to do with the environment 20:48 VanessaE http://forum.minetest.net/viewtopic.php?id=2724 20:48 VanessaE that one 20:49 sapier of course but env is part of server 20:49 PilzAdam VanessaE, what are the item names of that mod? 20:49 sapier and server is saved within lua stack to 20:49 VanessaE lemme check 20:49 sapier so no need to have it saved redundantly 20:49 hmmmm so this all comes back to you wanting to detach it from server 20:49 hmmmm now what is the advantage of detaching it from server, again? 20:50 sapier having lua separated from server will make locking and multithreading much more easy than if you don't see where it's used 20:50 hmmmm if you don't see where the locking is used, you mean? 20:50 VanessaE ore is diamonds:diamond_in_ground, the others are diamonds:block (obvious), diamonds:diamond (the crystal), diamonds:ingot, diamonds:sword, diamonds:axe, diamonds:shovel, diamonds:pick 20:50 sapier no if you don't see what ways lua is called 20:51 celeron55 PilzAdam: yes, i was thinking the groups should be ints 20:51 VanessaE (the ingot...I dunno, maybe alias that back to default:diamond or something) 20:51 hmmmm so now where is lua attached to? 20:51 hmmmm if not the server 20:51 PilzAdam celeron55, ok, will change my code 20:52 sapier scriptapi class is part of server 20:52 hmmmm and scriptapi calls modapi? 20:52 hmmmm or something? 20:52 sapier and any scriptapi class contains (at least one) lua stack 20:52 sapier not exactly 20:52 hmmmm or is it that modapi is a detached version of scriptapi? 20:53 hmmmm and essentially it's redundant code 20:53 sapier if you want to do something from c++ you'll enter scriptapi module by functions defined in scriptapi* headers 20:53 sapier if you're calling a c++ function from within lua you enter by modapi defined functions 20:53 sapier no there aren't any duplicates 20:53 hmmmm i'm sorry if i'm making you repeat yourself, it's just that it's hard to grasp exactly what's going on here and why 20:54 sapier no problem I'm trying to explain as good as possible 20:54 hmmmm so then how do people adding functions know where to put their new api? 20:54 sapier adding new functions to be called from lua is within modapi stuff 20:55 hmmmm so basically modapi is l_blah_blah(), and scriptapi is scriptapi_blah_blah() 20:55 hmmmm all the things that were prefixed with l_ is now a part of modapi and so on with scriptapi 20:55 hmmmm correct? 20:55 sapier a little bit simplified but close yes 20:56 hmmmm and also doesn't this change the way mods reference env functions? 20:56 hmmmm instead of minetest.env:blah() they'd do minetest.env.blah() ? 20:56 celeron55 PilzAdam: what needs to be added still to make it work, in addition to lua stuff, is network serialization of the additional things in the tool definition 20:56 sapier thats intended to happen in future, currently minetest.env:function is supported by compatibility code 20:57 hmmmm okay, so it's compatible at least 20:57 hmmmm i really have to think about this and so does everybody else working on minetest 20:57 hmmmm this is a major, fundamental change that should not be done this late in the project 20:57 sapier1 I had a discussion with celeron some days ago where he asked why even use minetest.env prefix for those functions ... I don't see a reason for this 20:58 sapier1 so I added all minetest.env functions directly to minetest 20:58 celeron55 ^ yes this is approved 20:58 celeron55 (as long as compatibility is preserved) 20:59 hmmmm and no bugs 20:59 hmmmm the last time we did a major change there were 3 hard to track bugs 20:59 sapier1 I've added compatibility code, mobf runs fine 20:59 hmmmm (*cough* irrlicht -> stl) 20:59 hmmmm but this change is even bigger 20:59 celeron55 i will leave it for hmmmm to handle when this would be merged (if possible) 20:59 hmmmm hrmm 20:59 sapier1 this change isn't even close to be so invasive I didn't change the underlying functions 21:00 hmmmm okay 21:00 hmmmm help me out here 21:00 sapier1 but of course it needs testing 21:00 hmmmm there are enough modapi and scriptapi functions to be put into a separate folder... not "it would be nice to", but "it really needs to be put into separate folders" 21:00 hmmmm but the problem is 21:01 hmmmm the subdirectories are basically being used for third-party included libraries 21:01 hmmmm how do we make the distinction 21:01 hmmmm also i noticed you have scriptapi_backup 21:01 celeron55 well, maybe put them all under src/3rdparty/ 21:02 hmmmm how about something like ext_libs 21:02 sapier1 thats a problem ... theres another reason why a folder would be good, there are some headers that shouldn't be used from within core code but only within scriptapi ... currently those are at most marked by comments 21:02 celeron55 i think 3rdparty is a better name 21:02 hmmmm visibility shouldn't be a concern, i feel like we're all competent coders here 21:03 celeron55 it's obvious they're libraries anyway, and "ext" is quite ambiguous 21:03 hmmmm ext, external to the project 21:03 celeron55 they're not external because they're included in there, but they're still 3rd party 8) 21:03 hmmmm mmmm.... 21:04 hmmmm also another big thing, your class names aren't PascalCase like we settled on 21:04 sapier1 they'd be somehow ext if they were parallel to src ... :-) 21:04 hmmmm lower_case_unix_style is reserved for functions that aren't a part of any namespace or class 21:04 hmmmm the exception being treegen.cpp, which needs a much larger cleanup 21:05 sapier1 ok I'll rename them if you tell me how they should be 21:05 celeron55 hmmmm: where's that defined anyway? 21:05 celeron55 i don't see it under the core category in the wiki 21:05 hmmmm code style guidelines 21:05 hmmmm ? 21:05 hmmmm http://dev.minetest.net/Code_style_guidelines 21:05 hmmmm the guidelines i came up with that are the most sane but you don't agree with for some reason 21:06 hmmmm and by the way, your previous style is definitely NOT linux kernel style 21:06 sapier1 I can't do method names in camelCase 21:06 hmmmm too much to change? 21:06 sapier1 this would result in moding api being camelCase 21:06 hmmmm yeah... 21:06 hmmmm that we'd need to make an exception for 21:07 celeron55 made it appear here: http://dev.minetest.net/Category:Core 21:07 hmmmm i don't know how to do that. 21:07 hmmmm and it is there already 21:07 sapier1 I'll rename those methods not being directly mapped to api to camelCase 21:08 hmmmm alright, sounds good 21:08 sapier1 there's still one open point g_settings ... it's a global variable ... I don't like globals ;-) 21:09 hmmmm don't even think about it 21:09 sapier1 any reason I don't know about? 21:09 hmmmm and i don't like hungarian notation either.... but you don't see me running around changing it 21:09 hmmmm g_settings should remain global for everybody's sanity 21:10 hmmmm changing that is overcomplication with ___LITERALLY______ NO BENEFIT 21:10 sapier1 I don't like it for good reason, globals are common cases of unpredictable side effects when doing multithreading 21:10 hmmmm i am already sort of against this huge change because it doesn't bring much actual benefit 21:10 hmmmm and it's locked 21:10 hmmmm if you read 21:10 celeron55 g_settings can be global 21:10 celeron55 everybody expects it to be global 21:11 celeron55 just like logging 21:11 hmmmm celeron, you never answered me that time about the profilers 21:11 sapier1 ok no problem I just wanted to mention it because it's a inconsistency to the direction my changes are aimed to 21:11 celeron55 hmmmm: i have a vague memory of something but maybe you need to ask it again? 8) 21:12 hmmmm mmm yes... 21:12 hmmmm HOW THE HELL do they work even 21:12 celeron55 lol 21:12 hmmmm something's supposed to be a count, like number of object in environment, and it's a floating point number? 21:12 hmmmm and it doesn't seem in the least bit accurate 21:13 hmmmm maybe it worked for you in the past, but i wanted to add some things to the profiler, and i just can't figure it out 21:14 hmmmm like what on earth is SPT_ADD and what is SPT_AVG, what's the difference between the two 21:14 celeron55 the basic function of is to accumulate stuff and give it out for printing, and then it's supposed to be cleared 21:14 celeron55 it can accumulate stuff in two ways 21:15 celeron55 either simply add stuff and produce a sum at the end, or average stuff and produce the average of the inputted values at the end 21:15 celeron55 then there's the graph drawing thing that's kind of simple 21:16 hmmmm so how does the number of object in the environment become 1.5? 21:16 celeron55 then there is the ScopeProfiler which allows profiling timing of block scopes like TimeTaker works; it will either produce an average (SPT_AVG) or the accumulated time (SPT_ADD) to the profiler output 21:16 celeron55 it's the average for all sample points taken 21:17 hmmmm i've got to wonder if it's even accurate though 21:17 hmmmm what's with the uptime thing, it seems stuck at 5 21:18 celeron55 "Elapsed time" is just the accumulated time in a profiler period 21:18 hmmmm i see 21:18 celeron55 you can compare the other summed times to it 21:18 celeron55 i find it odd that you haven't figured it out; it isn't that complicated 8) 21:19 hmmmm it looks incomprehensible 21:19 celeron55 all the times in the final output are seconds, and the rest are some kind of units 21:19 hmmmm like there's the magic constant -2 floating around 21:21 celeron55 i agree that the implementation might be a bit of wonky; the internal data of it isn't predefined and it needs to deal with whatever is put into it at runtime :P 21:22 celeron55 the magic constants are there just as markers of whether a value has requested the averaging function or not 21:23 hmmmm don't you think that should've been a constant like PROFILER_REQUESTED_AVG? 21:24 celeron55 well, maybe 8) 21:24 hmmmm comments aren't needed if code is self-documenting by being explanitory with variable names and what not... here, it lacks both comments and variable/function names are terse, leaving someone who looks at it that didn't create it confused 21:25 hmmmm i just find it interesting, because for some pieces of code you have a lot of comments, even unnecessary comments, and here there's basically nothing 21:26 celeron55 "mark add used as -2" is ridiculously incomprehensible 21:26 celeron55 8D 21:27 celeron55 i don't even understand what that means 21:27 celeron55 ah, now i do 21:27 hmmmm but you have -1 and then -2 21:27 celeron55 it means marking the action of act having been used as the constant -2 21:27 sapier1 "comments aren't needed if code is self-documenting" ..... 21:27 hmmmm now -1 has something to do with it? 21:28 hmmmm for something as trivial as a profiler, i would expect it to just work accurately and be easy to understand 21:28 PilzAdam celeron55, serialization done: https://github.com/PilzAdam/minetest/commit/9cd0312bf5a93017aa298bc2218f2df9f4e48716 21:28 hmmmm i don't have the energy to actually go through the profiler just because i wanted to use it 21:29 celeron55 i don't think i understand the -1 there 21:30 hmmmm [05:27 PM] "comments aren't needed if code is self-documenting" ..... <-- whoops, i meant to say self-explanitory 21:31 hmmmm well, self-documenting code is valid too 21:31 hmmmm i know it sounded like an oxymoron 21:31 sapier1 only code below some level of complexity can be self documenting imho 21:31 hmmmm a profiler, come on 21:31 hmmmm this isn't rocket science 21:31 sapier1 you did a general statement ;-) 21:31 Exio i think like 95% of the code can be "self explanatory" (or whatever it is spelled) 21:32 celeron55 the -1 there just obfuscates the fact that it is in fact using only a single magic constant defining it doesn't use averaging 21:32 celeron55 -1 isn't used for anything 21:32 sapier1 you don't need to comment i++ ... but most time it's helpfull to comment what a loop is intended to do ;-) 21:34 sapier1 I've got a good example for code that needs a comment in the scriptapi changes have a look at modapi_internal.h define REGISTER_LUA_REF 21:34 sapier1 it's very simple but you need additional information to understand 21:35 PilzAdam celeron55, here is a actually working version: https://github.com/PilzAdam/minetest/commit/105ed8c0141ba67c404067be6001da70ebb32140 21:36 PilzAdam now only the Lua part is missing 21:36 sapier1 I'm adding it to my changes 21:37 sapier1 I've alread touched everything so it's a minor additional change 21:38 VanessaE what's the story on adding silver? 21:38 VanessaE is that gonna be a go or no-go? 21:38 PilzAdam not yet 21:39 PilzAdam s/yet/now 21:39 VanessaE gonna be (vt.) 1. "will it be done in the future" 21:39 hmmmm just a side note, minecraft doesn't have silver 21:40 hmmmm so it's not like we're playing ketchup there 21:40 VanessaE oops, that shoulda been (vi.) 21:40 Exio mc doesn't have copper either :P 21:41 hmmmm anyway now that i actually read the profiler code, i understand it, but i don't understand how it's possible for an SPT_ADD value to print out 1.5 21:42 hmmmm so here's what i would do: 21:42 sapier grr ... eclipse refactoring support is buggy 21:42 hmmmm make a block comment at the top explaining what SPT_ADD and SPT_AVG and so on do, remove the whole -1 nonsense, make -2 into a define 21:42 hmmmm ahh, caught ya 21:43 hmmmm you use eclipse, that explains why you're so anal about organization 21:43 sapier yes ... eclips with 100 files in one folder is a pain 21:43 hmmmm didn't realize you were that masochistic 21:44 sapier It's bad but I don't know of any better solution 21:44 hmmmm i had to use eclipse for GWT development for a school project, it made me want to kill myself 21:44 celeron55 import net.minetest.core.server.scriptapi.environment.lua; 21:45 hmmmm if sapier had his way, that's what it would be like ^ 21:45 VanessaE PilzAdam: I asked if it will be done in future because I'm about to add tin and mithril to gloopblocks, and if necessary silver also. 21:45 hmmmm he wanted to separate client, server, and common into separate folders 21:45 sapier not exactly I hate java ;-) 21:45 celeron55 github repos hosting java code always give good laughs 21:45 sapier most likely because of eclipse being so slow 21:46 hmmmm ManualMapVoxelManipulatorEnterpriseAbstractFactory 21:46 celeron55 they literally have directories starting from the TLD of that hierarchy 21:47 sapier I think the principles below javas organisation are good ... but java is best example you can do every good concept to an extent where it turns to be worse 21:56 VanessaE ManualMapVoxelManipulatorEnterpriseAbstractFactory <- that name isn't long enough. 21:56 VanessaE need to add another 40-50 chars. 21:56 sapier what does "Enterprise" mean? 21:56 hmmmm http://www.classnamer.com/ 21:57 hmmmm just some java bullshit 21:57 hmmmm http://projects.haykranen.nl/java/ 22:05 sapier are there any objections against macros in c++ code? 22:06 hmmmm as long as they're not crazy 22:06 sapier plz define crazy :) 22:06 hmmmm Xorg 22:07 sapier don't know xorg code ... maybe similar to strongswan code? within strongswan full object orientation (private/public/constructors/destructors ...) was rebuilt with macros ... but it's pure c 22:07 hmmmm that is ridiculous 22:08 sapier no I'm using macros atm to avoid writing same 2-5 lines over and over again 22:08 hmmmm i would never go as far as using macros to make C object oriented 22:08 hmmmm i mean.... that.... is literally C++ 22:08 sapier me too but obviously the strongswan guys did it 22:09 hmmmm the OpenBSD implementation is better 22:09 sapier an I know of at least a second project where some ppl rebuilt at least try/catch with macros 22:09 hmmmm oh, VPN 22:10 sapier you mean isakmpd? those guys didn't manage to merge a simple patch making it compatible to rfc for almost 3 years by now ;-) 22:10 Kray jfklösadf 22:10 hmmmm i was referring to their IPSec code 22:10 Kray oops 22:11 hmmmm openbsd's ipsec code is the reference implementation, i think 22:11 hmmmm so it must be good 22:11 sapier maybe it was once reference but they didn't keep up to later ipsec definitions 22:12 troller $#ck! now first running register_ore from lua, and then loadMapMeta and i cant easily make setting for springs in map meta 8( 22:13 hmmmm ooh.. 22:13 hmmmm about that, troller 22:13 hmmmm you need to add it in init.lua or in mapgen.lua 22:14 hmmmm register it if minetest.setting_getbool() 22:14 sapier by the way someone once told hiding functions within local functions is a working security feature ... as soon as debug lib is loaded this isn't worth anything 22:14 hmmmm the map meta thing, that's very difficult to accomplish because of the order in which the environment is created 22:14 troller hmmmm, its works, but i trying use setting saved in meta 22:15 hmmmm yeah that's basically impossible the way it's done now 22:15 hmmmm we'd have to change the order in which things are done 22:25 PilzAdam I think I got the Lua side now: https://github.com/PilzAdam/minetest/commit/d2f9a5a25a1360583803bf9bd7402ba8743488aa 22:27 sapier lol I was just wondering what is missing when looking at last commit :-) 22:28 sapier how often is this function called? 22:29 PilzAdam what function? 22:29 sapier read_tool_capabilities 22:30 PilzAdam ehm, dunno 22:30 sapier I was wondering if it'd be worth moving all tool data to core on registration 22:31 sapier but it's only called on punch so most likely this wouldn't have any noticable impact on performance 22:34 troller https://github.com/proller/minetest/commit/a05fffe311a3e3aede8f4e0f2e80e0a5962a6ba7 - underground springs, try to access from lua to map meta 22:35 hmmmm erm 22:35 hmmmm i assume the param2 is there for testing purposes? 22:35 troller no, for infinity springs 22:35 hmmmm ahh 22:35 hmmmm forgot about that 22:38 troller commit it? 22:38 hmmmm hmm 22:38 hmmmm no 22:38 hmmmm we need to figure out a better way to handle param2 like that 22:39 hmmmm also what's the used_settings about? 22:40 hmmmm not to mention that map_setting_get won't even work before env is created 22:40 hmmmm but emergemanager is created along with env 22:40 troller before creating it will point to g_settings 22:41 hmmmm yeah, but we don't know if g_settings will be used 22:42 troller now its not usable for init purposes 22:42 hmmmm this is a problem that hasn't yet been solved 22:42 sapier maybe we should make g_settings a smart pointer? 22:42 hmmmm sapier, maybe not 22:43 sapier don't let me die stupid tell me what's that bad about that suggestion? 22:43 hmmmm well you need to make the case for using a smart pointer 22:44 sapier everyone needs settings but it seems to me noone can be sure it's already present 22:44 hmmmm troller, i need to work out a couple (a lot) of details with your commit before it gets merged 22:44 hmmmm sapier, we know it's already present because it's created in main() 22:45 sapier ok ok 22:45 sapier btw then it's not present in prototype constructors :-) 22:46 hmmmm prototype constructors? 22:46 hmmmm oh, you mean globals? 22:46 hmmmm yeah, that hasn't caused any problems though. there aren't many of those around 22:47 troller hmmmm, ok, later. i tried to make simpler and faster 22:47 sapier e.g. I use this to separate scriptapi from actual implementation of mods, scriptapi has a static list of api elements that need to be added on creation of actual scriptapi interface 22:48 sapier so you don't need to add all headers to interface just to get lua stack initialized correctly 23:01 hmmmm sapier, that's nice and all, but what's wrong with calling some explicit initialize function in main() for scriptapi? 23:02 hmmmm after g_settings is set up 23:02 hmmmm let's try to avoid things like smart pointers 23:02 hmmmm the more like C it is, the better 23:02 sapier what should this Initialize function be good? 23:03 sapier the object is already created we do have all information for initialization at this point (except environment) 23:03 sapier wich is initialized as soon as server tells scriptapi 23:04 sapier server only needs to know there is a scriptapi and what functions need to be called to do something there not how it's done in there 23:05 PilzAdam the damage system is done: https://github.com/PilzAdam/minetest/commits/damage_system 23:05 PilzAdam ^ celeron55 23:05 sapier hiding implementation details to upper layers is good practice 23:07 Jordach i just found this: https://github.com/PilzAdam/minetest/commit/c521bb7c3df8a3fb576d2a1367d42064a45fc452#L9R53 why is it here 23:08 RealBadAngel PilzAdam: you should merge all moreores or not merge them at all. now you have created situation when mods will require both moreores and common. or will have to create own missing ores 23:08 PilzAdam RealBadAngel, we had this discussion before, read logs 23:08 RealBadAngel any solution lead to massive mess, lotsa aliases or double ores generation 23:09 RealBadAngel i saw it "useseless ores" 23:09 RealBadAngel thx 23:09 sapier or moreores just removing common ores once they are really common 23:09 RealBadAngel i need to rewrite whole technic thx to use of useless ores 23:09 sapier why? 23:09 RealBadAngel silver, tin, mithril 23:10 sapier no why do you need to rewrite it? 23:10 RealBadAngel because if i will require moreores now i will cause double ores generation 23:11 RealBadAngel and duplicate ores 23:11 sapier but only as long as moreores hasn't removed the now "common" ores? 23:11 Jordach mining games need ores, not a lack of them 23:12 Jordach they dont have to be terribly real, just something that can add a ton of fun into the game 23:12 sapier i still don't understand the problem 23:12 RealBadAngel you wanna strip moreores, leavin just a few ores in it 23:12 sapier yes thats what I suggested 23:12 RealBadAngel and force calinou to still call it moreores? 23:12 sapier it's still more ores than common ;-) 23:12 RealBadAngel moreores is standard 23:13 RealBadAngel long time one 23:13 RealBadAngel as i said, take it all or DO NOT TOUCH IT. 23:13 RealBadAngel because now, PIlzaAdam, you have screwed it badly 23:14 sapier imho moreores did generate too much ores but thats a personal preference 23:14 RealBadAngel its about mining 23:15 sapier i think there's no right or wrong in this case 23:15 PilzAdam just adding billions of ores in without any uses for them is boring 23:15 RealBadAngel WITHOUT???? 23:15 RealBadAngel all technic is built on those ores 23:16 sapier but technic isn't part of common .. is it? 23:16 RealBadAngel every single ore has multiple purposes 23:16 PilzAdam yes, but we are talking about the default game 23:16 rarkenin It could be. 23:17 RealBadAngel so screw me, force me to rewrite oregens, and add zilions of aliases 23:17 RealBadAngel because you dont like silver and tin 23:18 hmmmm sapier, like you said, the settings 23:18 hmmmm because from what i understand, that's the reason why you want to use a smart pointer for g_settings 23:19 hmmmm but i don't want to start using smart pointers and crap like that 23:19 RealBadAngel PilzAdam, you have taken the mod that used to be standard in minetest modding 23:19 hmmmm the constructs minetest uses should be common and simple 23:19 PilzAdam RealBadAngel, you and VanessaE are always talking about "standard" mods 23:20 RealBadAngel you have taken just some parts of it that you liked. those you didnt you threw away 23:20 sapier no i don't need a smart pointer for settings it's been just a suggestion to solve prollers problem 23:20 hmmmm like i keep seeing people want to "use a smart pointer here" or 'use a singleton there" and all these other things 23:20 sapier I'm fine with it 23:20 RealBadAngel but you havent asked MODDERS what they do think about it 23:20 hmmmm oh.. proller's problem? 23:20 hmmmm no, you misunderstand 23:20 hmmmm that's completely different 23:20 sapier possibly I'm sometimes a little bit too fast :) 23:20 RealBadAngel and havent thought that your likeing will cause fuckup of many mods. 23:21 hmmmm he wants to read settings for the map from g_settings, when you don't know if those are the settings being used 23:21 hmmmm the solution to reading map metadata involves getting those settings straight from emerge->params 23:21 RealBadAngel PilzAdam, because some are standards 23:21 hmmmm he wants to make assumptions about things 23:22 RealBadAngel and many other depends on them 23:22 sapier I see 23:22 hmmmm RealBadAngel, what's wrong with what pilzadam did? 23:22 hmmmm people still need moreores for some things 23:22 RealBadAngel with your changes you are breaking them all 23:22 hmmmm how will it break a mod? 23:23 RealBadAngel missing ores, duplicates and double ore generation 23:23 RealBadAngel enough? 23:23 PilzAdam what missing ores? 23:23 Exio [20:10:54] because if i will require moreores now i will cause double ores generation 23:23 hmmmm yeah, how would ores be missing? 23:23 RealBadAngel silver, tin, mithril 23:23 hmmmm that problem would be caused by using an outdated version of moreores 23:23 hmmmm and those ores would be added by using moreores 23:23 Exio calinou will remove them from upstream/dev/github/whatever when the "release" gets stable 23:23 PilzAdam Exio, when its stable, Calinou will remove the ores that are in common 23:24 Exio exactly 23:24 hmmmm oh, Pilz, so this is why you wanted me to add the ore disable 23:24 PilzAdam silver, tin, mithril <- how are they missing? they are in moreores 23:24 VanessaE calinou won't remove them at all 23:24 sapier just another suggestion, maybe it's been there before why not add a "register_ore()" function making core ore generator available/parametrizable frpm lua and remove every ore from core? 23:24 VanessaE he said explicitly that doing so breaks 0.4.5-stable use of his mod. 23:24 PilzAdam VanessaE, yes, he will do it if 0.4.6 is out 23:24 hmmmm sapier, huh? 23:25 RealBadAngel PilzAdam, if i do include moreores i do have duplicates 23:25 hmmmm vanessae, he can still have two versions of his mod, one for legacy versions (0.4.5) and one for the current version (0.4.6+) 23:25 PilzAdam RealBadAngel, if you use the dev version of minetest with the stable version of moreores, yes 23:25 hmmmm or maybe he can just check which version is being used and not add them 23:25 VanessaE he can, but would you want to have to do that if it were your mod? 23:25 hmmmm well then he can check the version 23:25 PilzAdam VanessaE, yes 23:26 hmmmm oh hold on a minute 23:26 hmmmm i have an even better idea 23:26 PilzAdam I do that for my mods, if something in the engine is new 23:26 hmmmm what if he just checks if gold and whatever exists? 23:26 hmmmm if default:gold is registered, then don't bother adding it 23:26 RealBadAngel hmmm, that would be better solution 23:26 RealBadAngel dont allow register duplicates 23:26 hmmmm come on guys, instead of setting artificial restrictions on things, why don't we come up with better solutions to problems? 23:27 hmmmm realbadangel, the thing is, he's deciding this on the presense of the _node_, not the ore 23:27 hmmmm there is no unique identifier for registered ores 23:27 hmmmm and there's no real reason to have one either 23:27 hmmmm so how about that? 23:27 hmmmm calinou only registers the ores if default:stone_with_gold isn't present, and we all win 23:28 RealBadAngel not really 23:28 RealBadAngel users... 23:28 RealBadAngel default:gold_ingot or moreores:gold_ingot... 23:28 RealBadAngel that will overcomplicate mods 23:29 Exio ? 23:29 Exio moreores:gold_ingot will get deprecated 23:29 PilzAdam minetest_game aliases moreores:* to default:* 23:29 Exio and will work 23:29 PilzAdam so there is no problem 23:32 PilzAdam btw: I have the tool damage of the default tools ready for the new damage system: https://github.com/PilzAdam/common/commits/damage_system 23:32 RealBadAngel you know, minecraft had the very same problem at some point 23:33 RealBadAngel they solved it within Forge project and called it Ores Library 23:33 Exio minecraft? 23:33 sapier can someone give me a hint were ore distribution code is? 23:33 Exio minecraft is still *developing* the api 23:34 RealBadAngel im not talkin mojang 23:34 RealBadAngel i talkin about modders 23:34 RealBadAngel they had the very same problem like duplicating ores etc 23:34 PilzAdam the problem is that they have no register_ore() to generate the ores 23:35 Exio or a real API 23:35 RealBadAngel thx to this function you can generate hundreds of gold ores 23:36 RealBadAngel with different names just 23:36 PilzAdam AFAIK Calinou doesnt use register_ore() now, so he has to update when 0.4.6 comes out 23:37 PilzAdam and putting a simple if not minetest.registered_nodes["default:stone_with_gold"] then arround it isnt very complicated 23:37 RealBadAngel do you want mods to be 99% consist of if this and if that? 23:38 sapier if we stop improving api minetest will be dead soon 23:38 sapier imho we can't keep compatibility forever ... some versions ok ... but after some time ... a year for example ... mods have to be adapte 23:39 PilzAdam the easiest way for Calinou is to provide a 0.4.5 and a 0.4.6+ version 23:39 RealBadAngel this is not any easy way 23:39 PilzAdam it is, I do it with my mods too 23:40 RealBadAngel what are your mods like? two recipes in cross? 23:40 RealBadAngel im not talkin code 23:40 RealBadAngel but just recipes 23:40 PilzAdam I have done it with the beds mod for example, when on_rightclick() was added 23:41 RealBadAngel technic have hundreds 23:41 sapier rba minetest api isn't frozen if we can't change anything that may conflict with any mod we can't do any development soon 23:41 RealBadAngel ofc it isnt 23:42 RealBadAngel but makin a change in worst possible way (just halfway) is a pain in the ass 23:43 sapier I've removed lots of code from mob already because core got a more ore less better new feature replacing it ... it's normal for wip software 23:43 RealBadAngel we could just consider moreores merged, switch, done 23:43 RealBadAngel now everybody around have to rewrite mods 23:43 PilzAdam but adding all ores from moreores isnt good for the game 23:43 VanessaE why? 23:44 PilzAdam because we will have too many ores without uses 23:44 RealBadAngel where have you learned what is good for the game and whats not? 23:44 VanessaE and this harms the game....how? 23:44 PilzAdam RealBadAngel, I play games, and I listen to others what they think about games 23:44 PilzAdam especially about MC 23:45 VanessaE who cares about MC? 23:45 VanessaE this is not MC. 23:45 RealBadAngel we players made mods, made those ores, we use them 23:45 RealBadAngel and now you dare saying there are useless? and not good for the game? 23:45 PilzAdam yes 23:45 VanessaE you are wrong, PilzAdam . 23:46 sapier they ARE useless as long as you don't have technic too ... which I don't have normaly for example ... so you see different persons different preferences 23:46 VanessaE sapier: technic isn't the only mod that uses them. 23:46 RealBadAngel uh oh, is technic only mod that uses mithril silver and tin?? 23:46 sapier I don't have any mod installed using moreores normaly 23:47 sapier ok I admit I don't play very much 23:47 PilzAdam what mods do use them? 23:47 RealBadAngel point me mod that is using gold then 23:47 VanessaE homedecor uses tin. 23:47 RealBadAngel and bronze 23:47 RealBadAngel what mod uses diamonds?? 23:47 PilzAdam ok, 2 mods use it 23:48 RealBadAngel im waiting PilzAdam.... 23:48 PilzAdam default 23:48 RealBadAngel name those mods... 23:48 VanessaE a quick search shows several servers that use or used it 23:48 RealBadAngel lol, not now. before you merged those ores 23:49 VanessaE 3d armor uses it 23:49 PilzAdam why would I care? 23:49 RealBadAngel what mods were using ores you have merged 23:49 VanessaE (I think) 23:49 sapier I'm starting to think this is a question of what default game should be 23:49 RealBadAngel OH we got the point 23:49 RealBadAngel YOU dont care 23:49 RealBadAngel it only counts what you think and like 23:49 sapier a full playable game or a engine without content 23:50 PilzAdam RealBadAngel, what is the difference when I know the mods that use diamonds? 23:50 RealBadAngel i would know your criteria to call something useless or not 23:50 VanessaE every decent texture pack supports moreores also 23:51 VanessaE dwarves game uses it 23:51 VanessaE (or parts of it anyway) 23:51 PilzAdam thats a game, we are talking about mods 23:51 VanessaE what is a game but a collection of mods? 23:51 VanessaE (customized of course) 23:51 PilzAdam mods run on the default game; games doesnt 23:52 VanessaE *facepalm* 23:52 RealBadAngel hey, commons are also bunch of mods... 23:52 sapier I suggest defining clear rules what is added to common and what not .... currently its a point of view thing 23:53 PilzAdam sapier, c55 defined default as the basic content to make a MC like game 23:53 VanessaE encrustable gems mod uses functions from moreores (but not the materials) 23:53 RealBadAngel fuck MC. 23:53 VanessaE simple cash exchanger mod 23:53 PilzAdam VanessaE, why is that relevant? 23:53 sapier "basic content" ... "mc like" .... both very vague terms 23:53 VanessaE PilzAdam: you asked for a list of mods that use moreores. I'm listing them. 23:53 RealBadAngel we are not mojang workers 23:54 RealBadAngel and this is not mc this is minetest 23:54 PilzAdam minetest is a MC like game 23:54 VanessaE glomie's protector mod uses, I guess so does zeg9's, by extension 23:54 RealBadAngel and youre like MC fan 23:54 VanessaE so that's what, about 8 or so mods now? 23:54 RealBadAngel are you ok with this? 23:55 PilzAdam what? 23:55 RealBadAngel lets have gold because mc has it 23:55 PilzAdam VanessaE, and? whats the relevance for the current discussion? 23:55 RealBadAngel but silver is no go because mc doesnt have it 23:55 VanessaE ithildin mod uses it also. 23:55 VanessaE YOU ASKED FOR A LIST. 23:55 RealBadAngel for christ sake... 23:55 VanessaE I AM LISTING. 23:55 PilzAdam RealBadAngel, I think you missunderstand "MC like" 23:55 sapier I don't understand why mods using some other mod make a mod so important that CORE development is forced to do what this mod requires? 23:56 RealBadAngel PilzAdam, i clearly can see what are you doing 23:56 RealBadAngel youre adding content literally to what mc has 23:56 VanessaE automated trader uses it 23:56 PilzAdam RealBadAngel, never saw bronze in MC 23:57 RealBadAngel hallelujah 23:57 RealBadAngel can we have hope for another thing in next few years? 23:57 VanessaE bees and candles mod uses it 23:58 PilzAdam VanessaE, I think you can stop... 23:59 VanessaE PilzAdam: THIS is what sets the standard 23:59 VanessaE not what you claim it to be.