Time Nick Message 03:01 OldCoder 03:01 Octupus 03:01 OldCoder thexyz, I can now build the new migration server. Migration of one world proceeds at 10,000 blocks per minute. Does this mean it will take several years to complete? Or are the units different? 03:02 Octupus I think the unit are different 03:02 OldCoder All right. I will run overnight and we will see. 03:02 Octupus Because the map gen 03:02 Octupus So a big patch of dirt is 1 03:03 Octupus The whole underground 1 03:03 OldCoder No rule of thumb about the total size though 03:03 Octupus The ores 1 03:03 OldCoder Hmm 03:03 Octupus Sand 1 03:03 Octupus Until u reach map limit 03:03 OldCoder All right; back to the main channel I think 03:03 OldCoder thexyz, I will keep you notified and thank you again for this interesting experiment 03:06 OldCoder celeron55, I continue to feel LevelDB shows promise 03:24 OldCoder thexyz, conversion complete and at least one building seems to be there 13:58 OldCoder thexyz, updated LevelDB results have been posted in the main channel 13:58 OldCoder In a sentence, so far so good 13:59 OldCoder I need more people to test the converted worlds. Presently, the main ones are 30000 and 30004. The rest will follow when things seem stable. 14:20 OldCoder Migration of world 30001 to LevelDB is in progress 15:44 celeron55 thexyz, PilzAdam (, darkrose (not here)): i added you to the repo 15:45 celeron55 so... ehm... keep it stable enough and don't mess it up? 15:47 celeron55 i suggest never doing anything major without the agreement of one other of you (or me) 15:47 thexyz ok 15:48 thexyz (i already have a fork to mess up with, break things, etc..) 15:48 celeron55 i will try to not bother you except after you break something 15:49 PilzAdam k 15:49 celeron55 engine stuff is relatively straightforward, but i don't know how to handle content additions 15:50 celeron55 maybe vote or something sometimes, but you need to take some kind of a consitent direction in that sense to make the full potential out of things 15:51 PilzAdam there are 2 ways to handle it: add everything (stable) to upstream and create a versatile game or keep it light and use community mods 15:51 darkrose celeron55: just got the notice from github, ta... promise not to break anything more than usual :) 15:52 celeron55 anyway, the way to use a shared repo is to develop in your own forks and push working results upstream... when they work 15:53 PilzAdam what is with minetest_game? 15:54 celeron55 also (i have a lot of suggestions 8)) i suggest using this channel for upstream merge discussions 15:54 celeron55 i'll add you to that too 15:56 PilzAdam 1st suggestion: merge this: https://github.com/celeron55/minetest_game/pull/14 16:00 darkrose 2nd suggestion, any patch with trivial spelling mistakes shouldn't need a consensus, just merge 16:01 PilzAdam +1 16:10 OldCoder thexyz, I assume that LevelDB will move upstream when stability is more clear 16:11 OldCoder thexyz, PilzAdam I will not be able to GitHub for a while but if it is acceptable I may provide you with diff -ruN patches for your possible consideration 16:13 OldCoder celeron55, I've encountered one problem after a LevelDB conversion but it may be unrelated. If you didn't note elsewhere: 70% disk savings, no 4GB limit, possibly lower chances of corruption, fewer crashes so far; it is my hope to work through any problems and make the format work 16:46 thexyz what is the correct way to determine if image (from any mod's directory textures/) exists by its filename? 16:48 celeron55 in a mod? 16:49 thexyz nope, in game.cpp 16:49 celeron55 so that is client-side C++ 16:49 thexyz yes 16:50 celeron55 it's a good question 8) 16:50 celeron55 i'd look into Client and TextureSource 16:52 celeron55 client has m_media_name_sha1_map which kind of contains the information 16:53 celeron55 TextureSource will generate dummy images on first access if an image doesn't exist, so it's probably not useful (unless a "dummy" flag is added) 16:55 celeron55 notably the first one doesn't take texture packs into account 16:56 celeron55 so, essentially there is no pre-built way of doing it 16:57 thexyz hm, there's also sourcecache->getOrLoad 16:59 celeron55 sounds like being essentially the same as m_media_name_sha1_map 17:00 celeron55 hmm 17:00 celeron55 no it isn't 17:00 celeron55 8) 17:01 celeron55 interesting; it doesn't seem to hold the dummies at all 17:43 OdnetninI hi 17:44 thexyz OdnetninI: that's not the right channel to say "hi" in it 17:44 OdnetninI ok 18:03 OdnetninI celeron55, where is dirt deep at mapgen.cpp? 19:01 OdnetninI i want to change two numbers of c++ code from lua or game.conf, it is posible? 19:02 OdnetninI ?? 19:06 hmmmm ?????! 19:07 thexyz it depends on what do you want to change 19:07 hmmmm you're probably looking for AVERAGE_MUD_AMOUNT 19:07 hmmmm I don't get your second question though 19:08 celeron55 the answer is probably "no, you can't" 19:10 OdnetninI ok, thanks 19:16 OdnetninI thexyz: I want to change a vriable 19:16 OdnetninI variable* 19:18 thexyz well, if you want to change var that's not possible 19:19 thexyz but if you want to change something else that depends on this var it might be possible 19:19 OdnetninI how? 19:20 thexyz again, it depends on what do you want to change 19:21 thexyz why don't you tell us what are you trying to achieve? 19:21 OdnetninI s16 trunk_h = myrand_range(4, 5); 19:21 OdnetninI change 4 and 5 19:23 OldCoder OdnetninI, using what mechanism to change? 19:23 OdnetninI game.conf 19:23 thexyz that's impossible 19:23 OldCoder Do you mean edit the source code? Make these a configuration file parameter? 19:24 OldCoder thexyz, BTW there are no LevelDB problems besides the slow shutdown. Conversion of all worlds will proceed. 19:24 OdnetninI yes 19:25 thexyz OldCoder: nice to hear it 19:26 OldCoder OdnetninI, it would require changes to the code. Is this important? 19:26 OldCoder What range do the 4 and 5 signify? 19:27 OdnetninI It changes the hight of trees, i want to make minetest more personalized 19:30 OdnetninI hight = height 19:33 OdnetninI ?? 19:35 hmmmm I'm trying to figure out a good way that you can define a tree model 19:35 OdnetninI ok 19:35 hmmmm it'll be present in my new mapgen but at a later date 19:36 thexyz isn't it better to call lua-defined handler for tree creation? 19:36 hmmmm slow :/ 19:37 hmmmm currently my best idea is this: have the user define the nodes that make up the bounding rect of a "tree" or whatever decoration it might be 19:37 thexyz did you try that? 19:37 hmmmm and on certain blocks you'd define a "probable" 19:37 hmmmm not yet 19:37 thexyz to say it's slow 19:37 hmmmm well come on 19:37 hmmmm just eyeball it 19:37 hmmmm we're talking about doing this in _lua_ 19:38 hmmmm for reference, lua code is on average 200 times slower than natively compiled C/++ 19:38 OdnetninI mmm 19:38 hmmmm so anyway i'm saying that in Lua you'd be able to define a "tree" as a 3d array 19:39 OdnetninI can we read game.conf from C code? no? 19:39 hmmmm and then those with the "randomized" flag or whatever may or may not appear based on the result of the random generator 19:40 hmmmm OdnetninT, if you had read the minetest code a little bit you would've seen 'g_settings->getS16("some_setting_here")' and such 19:40 hmmmm one can infer that's the mechanism used to read from the configuration files 19:41 OdnetninI mmm 19:41 OdnetninI i don't remember 19:41 thexyz well, luajit scores 580.4 in scimark, gcc does 906.1 19:41 OdnetninI but 19:41 thexyz still, i didn't test it personally 19:41 thexyz so i can only guess 19:42 hmmmm i wouldn't doubt it but that's with the jit 19:42 thexyz yes, of course 19:42 hmmmm you probably didn't see much of an improvement with jit in reality because you didn't do too many computations 19:42 OdnetninI where is g_settings->getS16? 19:42 hmmmm OdnetninI, you should probably learn to use grep 19:43 hmmmm or the search feature of your favorite IDE 19:43 OdnetninI i never use grep 19:43 OdnetninI ok 19:44 hmmmm thexyz, problem is those are almost purely computational benchmarks, the majority of the tight loops in Lua would boil down pointer chasing and lots of memory access 19:53 OdnetninI i'm seing, that the name of variables at game.config is passed to an array 19:53 OdnetninI no? 20:03 celeron55 hmmmm: it wouldn't actually be too slow to make it possible to define some "trigger points" to the map generator in mods (not sure how that would look and what else that could be than "trees"), and provide shader-like (as how it is used) lua code to be run in the threaded mapgen environment with optimized interface for just setting and reading nodes in there 20:04 celeron55 but that's somewhat complicated maybe 20:04 OdnetninI i'm trying to make a setting variable 20:04 OldCoder One step at a time. Yes, it's trite. But eventually quite a bit could be exposed. 20:04 celeron55 i have hoped to get to try that sometime but haven't had time or interest 20:04 OldCoder celeron55, others will proceed over time 20:05 OldCoder The framework will evolve gradually. Things will become more flexible. In time this project will set standards. 20:06 celeron55 hmmmm: the good thing about that would be that even very slow and clumsy Lua crap could be run, because it's threaded and won't kill gameplay that much 20:07 OdnetninI celeron55, i think c55.me is down 20:07 celeron55 OdnetninI: sure is 20:07 OdnetninI ok 20:19 hmmmm well okay 20:19 hmmmm ahh i see what you mean 20:21 hmmmm as for "what else that isn't trees that could be added" - you need to get creative there - you already had 'stones' in the 0.3 mapgen, for the Aether biome they could be clouds blobs, for the Hell biome they could be burning crosses or something *shrug* 20:21 hmmmm I originally intended to have them handled in a decorate() virtual method for a biome 20:22 hmmmm so I guess I could skip the 'decoration' stage and have a Lua callback defined to generate whatever decorations are needed 20:22 hmmmm so are we sure we want trees et al. moved out into Lua? 20:23 OdnetninI i think it is a bad idea 20:24 OdnetninI the mag gen will be very slow 20:24 celeron55 hmmmm: i wouldn't recommend doing them in the regular lua environment (as the API is quite bloated and it is stuck to the main thread) 20:24 OdnetninI map gen* 20:24 hmmmm is generate_ore in a special Lua thread? 20:24 hmmmm I'd rather have it lumped in with that 20:24 OdnetninI yes 20:24 celeron55 of course not 20:24 hmmmm oh 20:25 hmmmm so how about there's a mapgen lua thread for generate_ore and decoration, and then the regular lua thread runs mods 20:25 hmmmm ? 20:25 celeron55 it's just regular minetest mod code somewhere in there 20:25 celeron55 hmmmm: that is what i suggested 20:25 hmmmm okay great 20:26 celeron55 they can't share any global variables or anything, but rather they need to pass messages that are copied in between, or some kind of a mutexed registry (that is how you do threads in Lua) 20:27 celeron55 usually they shouldn't have any need to communicate though 20:28 celeron55 just add a mapgen/ directory to mods and have the mapgen environment scripts live there 20:28 hmmmm ok 20:28 celeron55 it'll surely cause a lot of confusion, needs lots of warnings for noobs everywhere 8) 20:33 OdnetninI mapgen environment scripts? 20:36 OdnetninI ? 20:37 OldCoder mapgen directory sounds satisfactory 20:37 OldCoder mapgen is within our ken 20:38 OdnetninI within our ken? 20:39 OdnetninI what can we do with mapgen environment scripts? 20:40 hmmmm U can do ANYTHING 20:40 OdnetninI are there docs for mapgen environment scripts? 20:40 hmmmm no, because they don't exist yet 20:41 hmmmm the closest you have is mapgen.lua 20:41 OdnetninI XD 20:41 hmmmm but that's a regular mod 20:41 hmmmm this is modding discussion though; not engine discussion, and as such, it belongs in #minetest-delta 20:42 OdnetninI ok 20:59 OdnetninI I got it 20:59 OdnetninI we can modificate tree size from game.conf 21:01 OdnetninI wohooooo 21:01 OdnetninI i tested 21:01 OdnetninI and it works perfectly 21:02 OdnetninI with only 20 lines of new code 21:05 OdnetninI anyone want how i got it? 21:06 hmmmm not really, sorry :( 21:06 OdnetninI ooo 21:06 celeron55 lol 21:07 OdnetninI celeron55 do you want know how i do 21:07 celeron55 you could have had already put it in a pastebin and thrown a link on the channel, and then shut up, and people could read it if they wished to 21:10 OdnetninI subgame.cpp http://pastebin.com/0XnXc9Y4 21:10 OdnetninI mapgen.cpp http://pastebin.com/fYsjZ5Py 21:10 OdnetninI And it works 21:11 OdnetninI i'll back in 5 minutes 21:11 hmmmm in minetest, you'd use cin in order to convert a numerical string to an integer value instead of atoi(), but actually you ought to use g_settings->getS16() 21:11 hmmmm instead of any of that 21:12 OdnetninI mmm 21:12 OdnetninI but it works 21:14 celeron55 also Settings already has getS16 and whatever for directly getting integers from it 21:22 OdnetninI but it's the same 21:23 hmmmm yes, but why would you use strlen()? you can just do const char *s = foo; while (*s++); len = foo - s;, it's the same 22:20 OldCoder 22:18:37: ACTION[main]: Migrated 73500 blocks 22:20 OldCoder Killed 22:20 OldCoder thexyz, for one conversion I'm getting "Killed" 22:20 OldCoder Not out of disk space 22:20 OldCoder VanessaE, Hi 22:21 VanessaE hi 22:53 OldCoder thexyz, you may not be able to comment but gdb says this: 22:53 OldCoder 22:53:12: ACTION[main]: Migrated 92500 blocks 22:53 OldCoder Program terminated with signal SIGKILL, Killed. 22:53 OldCoder No traceback 22:54 OldCoder SIGKILL happens at random places 22:54 OldCoder Experimenting further