Minetest logo

IRC log for #minetest-dev, 2015-09-27

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

All times shown according to UTC.

Time Nick Message
00:00 proller joined #minetest-dev
00:32 rubenwardy joined #minetest-dev
01:00 paramat joined #minetest-dev
01:04 paramat will merge game#681 soon
01:04 ShadowBot https://github.com/minetest/minetest_game/issues/681 -- Fire: Add eternal flame node for creative and mod use by paramat
01:08 VanessaE wait
01:09 VanessaE there are at least two or three mods that provide never-ending flames
01:09 VanessaE (homedecor has the fake fire mod, maptools has a fake fire, and there are surely others)
01:11 paramat okay, what's the problem with adding this?
01:13 VanessaE nothing in particular, but you will want to consider what the other fake fire mods do with their flames, so that there won't be any problems overriding/extending your node
01:14 VanessaE for example, maptools' fire node does nothing special, so it would be easy to alias to your node, while the ones in homedecor's fake fire mod has smoke particles and a blue "ice flame" version.
01:14 VanessaE have*
01:17 paramat okay
01:20 VanessaE besides, you may want to...ahem... borrow some of those features ;)
01:22 paramat hm perhaps, i had a look at fake fire and smoke seems unsuitably complex
01:22 VanessaE it needs redone.
01:22 VanessaE I seem to recall the one in homedecor is abm-driven instead of using a particle spawner.
01:41 asl joined #minetest-dev
01:42 paramat i'll look at these mods and consider the features
01:42 paramat left #minetest-dev
01:43 VanessaE ok.
01:44 Siva joined #minetest-dev
02:02 cg_ joined #minetest-dev
02:21 waressearcher2 joined #minetest-dev
02:21 est31 wow the yandex translator is bad
02:22 waressearcher2 in file main.cpp there is a class:     "class SimpleTimeGetter: public TimeGetter { public: u32 getTime(TimePrecision prec) return porting::getTime(prec); } };"     and comments are saying: "// Not so precise one which works without irrlicht"          but what does that mean "without irrlicht" ? how do you use minetest without irrlicht ?
02:22 est31 waressearcher2, for example, you can compile the server without irrlicht
02:23 est31 while the yandex translator knows that "Árboles detallados" means "Detailed trees", it thinks that "Hojas elegantes" means "Elegant leaf"
02:23 est31 its not singular, its plural
02:26 VanessaE google translate gives "hojas de lujo" for "fancy leaves"
02:26 VanessaE (assuming spanish)
02:26 VanessaE heh, which translates back to english as "luxury sheets" :D
02:26 VanessaE at least it's plural :)
02:32 est31 google translate doesnt give free API access (anymore)
02:32 est31 not nice
02:33 VanessaE that sucks
02:33 est31 only remaining are m$ and yandex
02:46 est31 I only translate into the english direction not back.
02:47 est31 (when reviewing translation changes for minetest)
02:53 est31 yandex really seems to need language knowledge. it thinks "OEMクリア" is english lol
02:53 est31 not japanese
02:53 VanessaE heh
02:54 est31 if i say yandex "this is japanese" it recognizes it
03:04 asl97 joined #minetest-dev
03:51 asl joined #minetest-dev
03:58 VanessaE joined #minetest-dev
04:35 OldCoder joined #minetest-dev
05:05 est31 finally it works https://github.com/est31/podiff-review/commit/c16235b16a9d776448173e422937f675201cea42
05:20 Warr1024 joined #minetest-dev
05:39 VanessaE joined #minetest-dev
06:03 Warr1024 joined #minetest-dev
06:03 Warr1024 joined #minetest-dev
06:04 Calinou joined #minetest-dev
06:07 _tutima joined #minetest-dev
06:17 Warr1024 joined #minetest-dev
07:19 nrzkt joined #minetest-dev
07:21 Niebieski joined #minetest-dev
07:52 hmmmm humm
07:53 hmmmm it's the first time in a long time i've been drawing minetest's object structure on paper
07:53 hmmmm looks like things can be done a bit better
07:54 hmmmm Mapgen is probably going to become a local variable for each EmergeThread
07:54 hmmmm MapgenParams should probably go into Map
07:54 hmmmm i think there was a technical reason why it wasn't this way to begin with
08:03 Niebieski joined #minetest-dev
08:05 Etzos joined #minetest-dev
08:05 est31 lua mapgen still isnt threaded is it
08:05 Calinou it isn't
08:07 hmmmm how could it be?
08:07 hmmmm it is technically threaded, that is, the lua callback is executed inside of different threads.
08:07 hmmmm it's just that they all wait on the envlock
08:08 est31 why do they, and the cpp mapgen doesnt
08:09 hmmmm because lua has access to a lot of naughty things
08:09 Niebieski Why there is a lag while placing objects into a furnace ? playing locally.
08:09 est31 cpp hasnt?
08:10 hmmmm at one point I dared to suggest that smart modders should have the ability to unlock envlock
08:10 hmmmm exactly for this sort of situation
08:10 hmmmm it's simply too dangerous
08:10 hmmmm modders do not understand about race conditions
08:10 hmmmm hiebieski, beats me
08:11 Niebieski Excuse me ?
08:13 VanessaE hmmmm: they can learn.
08:13 VanessaE let the modders and the users decide whether a project handles MT threading properly.
08:14 hmmmm as if minetest isn't buggy enough thanks to mods
08:15 hmmmm the last thing minetest needs are heisenbugs caused by mods that appear as engine bugs
08:17 nrzkt hmmmm: agree. Mod area should be restrained to not trigger race conditions
08:17 est31 agreed the minetest environment is not thread safe
08:17 neti_netwalker currently testing minetest with ssdb as a redis replacement. SSDB (redis frontend / leveldb backend) currently working very well.
08:17 est31 mods need a safe sandbox to play in
08:17 est31 including range checking of lua voxel manips
08:18 hmmmm ?
08:19 est31 cant find the issue
08:19 est31 nvm
08:19 est31 what about the following: every mod which wants to do threaded mapgen provides next to their init.lua an init_mapgen.lua
08:19 est31 that second one gets loaded by every emerge thread
08:19 est31 and run in its very own environment
08:19 est31 it can communicate via string messages with the main mod
08:20 est31 it has an api limited to map editing and noise functions
08:20 est31 no player coord setting or mob spawning needed
08:20 hmmmm I have a better idea
08:24 hmmmm but I need to be able to add a wrapper func around lua apis
08:24 est31 whats your idea
08:24 hmmmm luajit already does do this with an extension, but not so for regular lua
08:24 hmmmm to workaround this, i thought about it, i could make all the lua apis be a single function
08:25 hmmmm and then I look up sort of a syscall code or whatever from a cclosure upvalue
08:25 hmmmm then dispatch the actual lua api from within this common entry point
08:25 hmmmm so now that i have a common entry point, i can do things like...
08:26 hmmmm - log statistics
08:26 hmmmm - check for proper locking
08:26 hmmmm - access control
08:26 hmmmm etc.
08:26 hmmmm the alternative is to add lock checking to every.  single.  goddamn api that requires environment access
08:26 hmmmm so gross
08:26 est31 first what is _a_ "lua api" for you
08:27 est31 the lua thing called by c or the c thing called by lua
08:27 hmmmm c thing called by lua
08:27 hmmmm Lua API is the api *for* the lua scripts
08:27 hmmmm Script API is the api for minetest on how to use the mods
08:28 hmmmm aka callbacks
08:28 est31 ok
08:28 hmmmm everybody always conflates them
08:28 hmmmm night
08:28 est31 the problem with this is in my opinion that there can be still all common problems
08:28 est31 what if two threads want to set a shared variable
08:28 est31 night
08:30 VanessaE then let them both set it, whichever finishes last wins?
08:30 VanessaE (classic race condition, sure)
08:32 Krock joined #minetest-dev
08:32 VanessaE it's really no different than the situation we had before when mods kept overwriting each others' global variables.
08:34 est31 well, that sounds ok as well, but it can create all these threading issues for mods. the true sandbox approach would be safer
08:35 VanessaE perhaps, but "perfect is the enemy of good"
08:35 VanessaE something like this is gonna have risks in its use no matter how locked-down you make it
08:35 VanessaE (and the more locked down, the less useful it may become)
08:35 est31 its not locked down
08:36 est31 the mapgen threads can do everything as they wanted before
08:36 VanessaE I misunderstood then
08:36 est31 they just have to send appropriate messages to the mod in the main thread
08:36 est31 and then the next server step, the list of queued messages are read, and an apropriate callback is called
08:36 est31 that callback can do anything the normal mod can do
08:36 est31 you can even send lua code as string, and then parse and execute it
08:37 est31 if you want to
08:37 VanessaE sounds fair
08:39 VanessaE in any case, all I'm trying to say is don't assume the modder is stupid.
08:39 Niebieski Parsing is slow right ?
08:39 est31 and first aquiring a lock then freeing again sounds like a hack
08:39 VanessaE users are stupid, but modders generally aren't.
08:39 est31 Niebieski, yes, therefore I've said "if you want to"
08:40 est31 VanessaE, its enough if you are unfamiliar with minetest internals no need to be stupid
08:40 VanessaE just using hmmmm's words.
09:19 VanessaE all that aside, I really think the focus needs to be on performance improvements and bugfixes, not new features.
09:20 est31 isnt threaded mapgen a performance improvement
09:20 est31 threaded lua mapgen
09:23 VanessaE not reallyt.
09:23 VanessaE I could that as a feature.
09:29 est31 perhaps you want to install a lua mapgen on one of your servers xD
09:30 VanessaE the only "lua mapgen" I use anywhere is biome_lib and it's already threaded (after a fashion)
09:41 zupoman joined #minetest-dev
09:53 julienrat joined #minetest-dev
10:03 Player_2 joined #minetest-dev
10:05 nrzkt where does those PlayerXX comes from ...
10:05 treetrunk joined #minetest-dev
10:12 Taoki[mobile] joined #minetest-dev
10:15 FR^2 joined #minetest-dev
10:21 blaze joined #minetest-dev
10:35 H-H-H joined #minetest-dev
10:39 VirusJones joined #minetest-dev
11:45 T4im joined #minetest-dev
11:48 ElectronLibre joined #minetest-dev
12:16 turtleman_ joined #minetest-dev
12:55 Soni joined #minetest-dev
13:02 Puma_rc joined #minetest-dev
13:20 eugd joined #minetest-dev
13:36 CraigyDavi joined #minetest-dev
13:36 waressearcher2 joined #minetest-dev
14:25 israuor joined #minetest-dev
15:06 kaeza joined #minetest-dev
15:10 Calinou MultiCraft, nrzkt
15:16 ElectronLibre joined #minetest-dev
15:17 nrzkt Calinou, thanks, i added Player regexp to ban them like guests.
15:22 waressearcher2 joined #minetest-dev
15:27 Ardonel joined #minetest-dev
15:32 eugd left #minetest-dev
15:53 nanepiwo I'm getting this error:
15:53 nanepiwo 2015-09-27 11:50:51: ERROR[Main]: Error loading mod "minetest-caverealms": mod_name does not follow naming conventions: Only chararacters [a-z0-9_] are allowed.
15:53 nanepiwo 2015-09-27 11:50:51: ERROR[Main]: ERROR: An unhandled exception occurred: ModError: Error loading mod "minetest-caverealms": mod_name does not follow naming conventions: Only chararacters [a-z0-9_] are allowed.
15:53 nanepiwo are dashes not allowed?
15:55 T4im no :)
15:55 nrzkt reread the regex and tell me
15:55 T4im you need to rename it to "caverealms"
15:56 nanepiwo thanks
15:56 nanepiwo but how come mods like minetest-3d_armor  work as a name?
15:56 T4im they are renamed to 3d_armor then
15:56 nanepiwo ah, ok
15:57 nanepiwo huh, modpacks can have dashes, that's why
15:58 T4im mod packs are not "loaded" they just group multiple mods
15:58 T4im like any subdirectory would
16:16 waressea1cher2 joined #minetest-dev
16:22 DFeniks joined #minetest-dev
16:26 Siva_Machina joined #minetest-dev
16:44 Miner_48er joined #minetest-dev
16:49 hmmmm joined #minetest-dev
17:21 Siva joined #minetest-dev
17:33 Puma_rc_ joined #minetest-dev
17:40 Puma_rc joined #minetest-dev
17:40 Puma_rc joined #minetest-dev
17:41 Puma_rc joined #minetest-dev
17:41 Puma_rc joined #minetest-dev
17:42 Puma_rc joined #minetest-dev
17:42 Puma_rc joined #minetest-dev
17:42 Puma_rc joined #minetest-dev
17:43 Puma_rc_ joined #minetest-dev
17:43 Puma_rc joined #minetest-dev
17:44 Puma_rc joined #minetest-dev
17:44 Puma_rc_ joined #minetest-dev
17:45 Puma_rc_ joined #minetest-dev
17:47 rubenwardy joined #minetest-dev
17:53 waressearcher2 joined #minetest-dev
18:15 julienrat joined #minetest-dev
18:44 Lunatrius` joined #minetest-dev
18:44 Warr1024 joined #minetest-dev
18:49 Warr1024 joined #minetest-dev
19:09 Ardonel joined #minetest-dev
19:38 Amaz joined #minetest-dev
19:54 ElectronLibre left #minetest-dev
20:01 MinetestForFun joined #minetest-dev
20:07 Siva joined #minetest-dev
20:28 julienrat joined #minetest-dev
20:30 proller joined #minetest-dev
20:44 Miner_48er joined #minetest-dev
20:51 Flory left #minetest-dev
20:54 Flory joined #minetest-dev
21:04 Siva joined #minetest-dev
21:07 cg_ joined #minetest-dev
21:08 Flory left #minetest-dev
21:24 rubenwardy joined #minetest-dev
21:44 proller joined #minetest-dev
22:06 proller joined #minetest-dev
22:18 sfan5 joined #minetest-dev

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