Time Nick Message 00:19 VanessaE hmmmm: what's the story with mgv7 default biomes? 00:20 VanessaE zat is modifying moretrees to be able to work on mgv7, without depending on plants_lib, but without some kind of reliable default biomes to grow on, well... we're kinda stuck. 01:31 * zat hears crickets 02:14 hmmmm i'd recommend people to not use mapgen v7 for the time being 02:14 hmmmm my life has been really crazy the past couple of months and i've just not really felt like working on minetest related things 02:14 hmmmm sorry 02:15 hmmmm see I'd go and push my better biome stuff right now, but I don't have a decent enough set of default biomes 02:16 * VanessaE pokes zat 02:18 VanessaE it's just a question at this point of having something to grow on at all really, even if the form the land takes will eventually change 02:18 VanessaE you know, default:dirt_with_grass and so forth 02:19 VanessaE but I understand quite well 02:21 zat I am working on a set of biomes right now 02:21 zat hmmmm: is there a way to get higher mountains in v7? 02:21 VanessaE I suggested to zat that the biomes and the form the land takes should somewhat resemble mapgen v5 02:21 VanessaE (since people generally liked that one better than v6) 02:22 zat by the way I have no idea about v5 D: 02:22 VanessaE zat: look at 0.3.x. 02:22 VanessaE that's v5 02:23 VanessaE but maybe it's better to use something like what paramat does with his paragen mod 02:23 VanessaE but less complex maybe 02:25 hmmmm zat: i would hope that mgv7_np_mount_height would be pretty obvious 02:25 hmmmm "hey, mount, mountain, height, that might be the noise params for mountain height" 02:26 zat no idea... where do I see that lol 02:34 zat nevermind I found it all :) 10:35 RealBadAngel #1308 is updated with some style fixes, .env removed and TTL for items added 10:36 ShadowBot https://github.com/minetest/minetest/issues/1308 -- Item entity stacks merge on the ground, add TTL. by RealBadAngel 16:24 Megaf_ In thread 41761440: 16:24 Megaf_ /home/minetest/minetest/src/util/pointer.h:279: void SharedBuffer::drop() [with T = unsigned char]: Assertion '(*refcount) > 0' failed. 16:26 Megaf_ (Leftover data: #3 void RemoteClient::GetNextBlocks(ServerEnvironment*, EmergeManager*, float, std::vector&)) 16:26 Megaf_ maybe already fixed? 16:30 sapier most likely not 16:31 sapier megaf how often did you get that message about the missing player? as often as the old one? 16:33 Megaf_ sapier: not often at all, but when it happens is devastating 16:33 Megaf_ millions of lines every second 16:33 Megaf_ most likely to be fixed already 16:34 Megaf_ sapier: I get that on my Raspberry Pi server, 16:34 sapier I don't think so, I made this an error because it's not supposed to happen, if you tell it's causing a lot of issues I may have missed a situation where this can happen 16:35 Megaf_ let me check, 16:35 sapier could be a race condition about player beeing removed while something else is done ... chances a race condition does bad things are quite better on very very slow machines 16:36 Megaf_ sapier: I think you fixed that already, was just a matter of pulling a new snapshot 16:36 Megaf_ I will let you know if I see that again 16:36 proller sapier, again things from your fantasy world ? 16:37 sapier I didn't fix it on purpose 16:40 sapier https://github.com/minetest/minetest/commit/960d731587f58036bd4957f4a77db41e145c2d04 I know you're blind proller but I didn't know you're that blind 16:40 proller miss! 16:41 proller its not my code 16:41 sapier check blame 16:41 proller check brain 16:41 sapier you've been the one adding it 16:41 proller but not me writing it 16:42 sapier you expect me to fix all bugs for any code I touch why don't you do it yourself too? 16:43 sapier https://github.com/minetest/minetest/commit/e47f6fdfe985b8907e0aa7372bb325ceb5ed5f4c btw you DID add it 16:45 proller it was function from stackowerfow or google 16:46 proller no 16:46 proller https://github.com/minetest/minetest/commit/f764297be2d55c9b8350077e44e3d62a9e058bcf 16:47 proller https://github.com/minetest/minetest/commit/f960c3be313c761fe02f9167dc1fe3fca5dc4ada 16:47 sapier So you copy code from somewhere and don't even check it? That's not even close to an excuse ;-) ... well at least I don't have to check that code for copyright now ;-) 16:48 proller fuck you 16:48 proller it was squashed commit of https://github.com/matttpt/minetest/compare/ipv6-revised 16:48 sapier well last one shows you're still guilty 16:49 sapier previous ... all of those variables have been unsigned int prior your changes 16:49 proller you still drugged 16:49 proller and blind 16:50 sapier OLD unsigned int a, b, c, d; ---> YOURS u8 a, b, c, d, addr; 16:51 proller and stupid 8( 16:51 proller again: 16:51 proller it was squashed commit of https://github.com/matttpt/minetest/compare/ipv6-revised 16:51 proller author = /matttpt/ 16:51 proller got it? 16:52 sapier ther it's correct! 16:53 sapier this is the one breaking it https://github.com/minetest/minetest/commit/f960c3be313c761fe02f9167dc1fe3fca5dc4ada 16:54 sapier wait ok ok line 184 16:54 sapier still you changed it 3 times ... and never did see it ;-) 16:55 sapier but things like that happen that's not a problem at al 16:55 sapier l 16:57 proller yes, main problem - your overall shitcode 16:58 sapier I wonder why I keep on trying to find even the slightest sign of self reflection from you ;-P 16:59 Megaf_ proller: make freeminer work without leveldb 16:59 proller Megaf_, why? 17:00 Megaf_ or at least make it find that leveldb is already installed 17:00 sapier megaf -->#freeminer ... this is about minetest ;-) 17:00 proller its more possible 17:01 * Megaf_ looks forward for some MySQL support 17:01 proller why? 17:01 proller dont forget oracle and mssql 17:04 Megaf_ why not? 17:05 dsimon hm 17:06 dsimon in the far future, it might be nice to use something like mysql (or some other network-accessible db resource, like mongo or perma-backed redis) 17:06 dsimon because that could allow minetest server sharding 17:06 proller but why? 17:06 dsimon however... that would be really really hard 17:06 proller you cant run two servers with one database 17:06 dsimon so the database thing would only get you like 1% of the way there :-) 17:06 proller also leveldb is fastest 17:08 proller and it not helps running server on very slow hardware, there is lot of slow places exept database 17:08 dsimon yeah, indeed 17:09 dsimon even if the disk were the bottleneck, you could fix that with a networked filesystem 17:09 dsimon rather than having to mess with the actual app 17:09 dsimon (or, you know, just getting a better disk...) 17:12 Megaf_ proller: why? To use different computers, one to run the server task and the other to run the database 17:12 proller buy one corei7 17:12 Megaf_ this would take a huge load from the hardware where the server is running 17:12 proller no 17:12 Megaf_ since everything run on ONE FUCKNG SINGLE CORE 17:12 Megaf_ for fucksake 17:12 proller database load-save less than 1% 17:12 dsimon Megaf_, databases are generally not CPU bound 17:13 proller i have 8 cores on my mobile 17:13 proller fuckin china 250$ phone 17:13 proller you can also try run server on 486 cpu, but its stupid 17:14 proller also this phone 40-50x faster than slowberry pi 17:15 Megaf_ proller: yep, my phone too 17:15 Megaf_ and my phone is x86 17:15 sfan5 dsimon: you can already use redis and you can already run 2 server with one redis server with that 17:19 proller and network transfer will slower than local read 17:20 proller in freeminer you can fal with 100-150 nodes per second speed without stuck 17:20 sfan5 and network transfer will slower than local read 17:20 sfan5 [citation needed] 17:20 proller with loading blocks (generating slower) 17:20 Megaf_ why? 17:21 Megaf_ network can be as fast as local disk 17:21 sfan5 or even faster 17:21 Megaf_ all depends on impelemtation and protocol 17:21 proller remote server = ask server -> server read -> server pack data -> server sends to you -> you recieve -> you unpack data 17:21 Megaf_ That may be a bad protocol 17:21 proller leveldb = you read from disk. 17:22 Megaf_ anyway, how do you think SATA works? 17:22 sfan5 local disk = ask kernel -> kernel calls driver -> driver reads data -> driver gives the data back to the userspace -> you receive -> you unpack data 17:22 proller you cant read and two way transfer faster than stupid not locked read 17:23 proller sfan5, remote server do same 17:23 proller but + transfer 17:24 sfan5 any good protocol will not add much metadata 17:24 sfan5 also redis keeps everything in memory 17:24 sfan5 and then getting the data is literally just accessing RAM 17:24 proller you cant make protocol without network transfer 17:24 sfan5 did i say that? 17:25 proller keeping 4g data in memory when you use 50m - bad idea 17:25 Hunterz with redis will be for example put/get to chest faster? or still will see some delay ? 17:25 proller and you can warm local storage 17:26 sfan5 local storage is still much much much slower than RAM 17:26 sfan5 RAM only exists because local storage is too slow 17:26 Megaf_ finally someone who knows something 17:26 proller slow for what ? 17:27 Hunterz are there some minetest benchmarks ? 17:27 sfan5 slow for reading/writing data 17:27 Megaf_ and HUGE latency 17:27 sfan5 (compared to RAM, yes) 17:27 Megaf_ I can't believe we are still using mechanical disks 17:27 proller but it not a bottlneck 17:27 sapier Hunterz: none I know about 17:28 Hunterz any public server running wit redis? I would like to compare as player 17:28 Megaf_ minetestserver is jusr slow by design 17:28 * sfan5 uses redis for floatlands survival server 17:28 sfan5 but my upload speed is not that gret 17:28 sfan5 great* 17:28 proller Hunterz, try any setun.net server ;) 17:28 * Megaf_ tested redis, leveldb and sqlite3, on a local network, everything is slow 17:28 Hunterz ok, thank 17:28 proller and compare with any redis 17:29 Hunterz without redis i see lag during chest access 17:29 sfan5 it would be better to test it on a device that is actually has good upload speeds 17:29 proller Hunterz, chest access - other problem 17:29 Hunterz i have i7 with ssd and much ram 17:29 sfan5 proller: we are comparing database backends only, not all improvement freeminer might or might not have over MT 17:29 proller sfan5, very important. 17:30 Hunterz what problem have chest and propably others containers? 17:30 sfan5 can you reword your sentence? 17:30 RealBadAngel anybody checked #1308 ? 17:30 ShadowBot https://github.com/minetest/minetest/issues/1308 -- Item entity stacks merge on the ground, add TTL. by RealBadAngel 17:30 sfan5 Hunterz: formspec needs to be sent to client 17:33 sfan5 I can't believe we are still using mechanical disks 17:33 sfan5 that is just because mechanical disk space is so cheap 17:33 sfan5 and flash memory has it's disadvantages too 17:33 sfan5 we've talked about that already 17:37 Megaf_ I'm not a fan of SSDs either 17:37 Megaf_ ferromagnetic memory is a cood thing 17:38 Megaf_ reliable as hdds and fast as dram 17:38 Megaf_ but it's density is nothing close to the ssds 17:39 sfan5 throw some money at the part of freescale that researches this thing, maybe they'll do it faster 17:45 dsimon sfan5, two minetest on one redis? 17:45 dsimon i take it you don't mean they're running the same world 17:51 Megaf_ http://en.wikipedia.org/wiki/IBM_3592 17:51 Megaf_ 250 MB/s on a tape 17:51 Megaf_ not bad 17:51 Megaf_ and 4 TB 17:52 dsimon wow 17:52 dsimon what's the seek speed on that, though? 17:53 Megaf_ a couple of seconds 17:53 Megaf_ this one is pretty impressive too, 8.5 TB http://en.wikipedia.org/wiki/StorageTek_tape_formats#T10000 17:55 sapier I guess a desaster ;-) high continous reading bandwidth is completely to unrelated to read positioning ... in worst case this is as slow as reading from beginning to the location you wanna read ;-) 17:55 sapier -to 17:55 dsimon so, fantastic for dumps, not so great for random access 17:55 Megaf_ they are not made for random access 17:56 sapier tapes are archive only so random access isn't at all a optimization target 17:56 dsimon Megaf_, yah, i guess i'm just curious why you bring it up in a context when we were talking about a random-access database 17:56 dsimon i guess just cause it's cool? :-) 17:56 Megaf_ Yep 17:56 Megaf_ isnt it? 17:56 dsimon yah 17:57 sapier in generally yes but not at minetest-dev ;-) 17:57 RealBadAngel sony has annouced 250TB tape based data storage... 17:57 Megaf_ RealBadAngel: Oh, I read about there somewhere 17:58 Megaf_ Quite easy to extend the capacity of tapes, just roll on more tape :P 17:58 sapier for what I remember sony did it a different way 17:58 dsimon i kinda like disc burner jukeboxes for that too 17:59 RealBadAngel not just that, it has density 148 GB per square inch 17:59 dsimon though the write speed there is abysmal 18:00 RealBadAngel i think thats rather for archives, not regular usage 18:01 * dsimon nods 18:03 RealBadAngel also they announced 1TB optical discs 18:03 RealBadAngel http://interestingengineering.com/sony-and-panasonic-announce-1tb-optical-discs/ 18:04 RealBadAngel i dont even have blue ray yet, and it looks like it will become outdated before i get one ;) 18:09 Megaf_ RealBadAngel: but for now we have to use HDDs... 18:14 RealBadAngel ok, ive added config example to #1308, it is now complete 18:14 ShadowBot https://github.com/minetest/minetest/issues/1308 -- Item entity stacks merge on the ground, add TTL. by RealBadAngel 18:17 sapier RealBadAngel: did you remove the newline at the end of file? 18:18 RealBadAngel lemme check 18:19 sapier imho 900 seconds are a little bit small I'd suggest something around half an hour 18:20 sapier and using on_activate to decrement age counter too 18:21 RealBadAngel 900s is 15 minutes 18:21 RealBadAngel and yup, newline is gone, shall i re-add it? 18:22 RealBadAngel on_activate is called only when item got loaded 18:22 RealBadAngel it has nothing to do with item's age (only just that it loads the variables) 18:22 sapier hmm ok I somehow had 7.5 min in mind but you're right ... hmm 15 minutes is short too but not as short as what I thought 18:23 sapier yes but you store item age so why don't you update it on_activate too? 18:23 RealBadAngel it depends on game time 18:23 RealBadAngel so no need to update it 18:24 sapier hmm that's not good 18:24 sapier if time changes or overflows that's gonna fail 18:24 RealBadAngel if it wont fail imho 18:24 RealBadAngel time = current time - time of creation 18:24 sapier simple and for sure error free would be setting ttl to 900 and just do a count down 18:25 sapier self.age = self.age -dtime 18:25 sapier if self.age < 0 -->remove 18:25 sfan5 dsimon: no I don't 18:26 RealBadAngel but then unloaded items will live for way longer than they should 18:26 sapier no 18:26 RealBadAngel ofc 18:27 sapier on_activate provides time passed since deactivation 18:28 RealBadAngel hmm, how much is dtime? 18:28 RealBadAngel in seconds 18:28 sapier unit is seconds 18:28 sapier it's a float value 18:28 RealBadAngel 1 step != 1 second 18:29 sapier yes that'S why you do a self.age -dtime 18:29 sapier dtime is time since last step 18:29 RealBadAngel ah, ok 18:30 RealBadAngel but i dont want it to be decremented anyway 18:30 sapier why not? 18:30 RealBadAngel because it serves also another purpose 18:30 sapier which one? 18:30 RealBadAngel its "immune" time for item's auto pickup 18:31 RealBadAngel so one can throw away an item 18:31 sapier and what'S the problem on decrementing? 18:31 RealBadAngel i assume you cant auto pickup item with time <3s 18:31 sapier "core.get_gametime() - self.age" will cause an error on unit overflow 18:32 sapier well that check would be (start_ttl - ttl) > 3 18:33 RealBadAngel ok, i will change that 18:41 BlockMen RealBadAngel, why do you add this stacking stuff with TTL? that makes no sense at all 18:42 RealBadAngel ofc that makes sense, both solutions are to make server's life easier 18:43 RealBadAngel also having one bigger cobble rotating on the ground is way better than 99 ones 18:43 RealBadAngel even for just 15 minutes 18:43 BlockMen that is your opinion 18:44 RealBadAngel not only mine, so far youre the only ONE that is against that 18:45 sapier I share RealBadAngel's opinion, but I see reason to get a more wide acceptance of that feature prior adding/not adding it too 18:45 BlockMen have you any proove that it lowers the server workload noticeable? 18:46 proller TTL is wery bad idea 18:47 sapier sorry RealBadAngel I guess I'm responsible for the second "no" proller always says no to what I suggest ;-) 18:57 RealBadAngel nore, and whats your opinion on #1308 ? 18:57 ShadowBot https://github.com/minetest/minetest/issues/1308 -- Item entity stacks merge on the ground, add TTL. by RealBadAngel 18:57 RealBadAngel proller, you can always disable TTL 18:58 proller its ok, but anyway loosing entities - not good 18:58 sapier proller you can disable it 18:59 RealBadAngel its not good either players dropping their stuff everywhere and not takin care of them 19:00 proller you can disable lot og users WTF about loose items 19:00 proller RealBadAngel, why? 19:00 sapier proller you're gonna loose them right now too 19:01 sapier just drop it while there are already 49 entities (or whatever you configured) 19:01 RealBadAngel try dropping your diamond pick on the street, we will see how long it will last before some1 make it disappear ;) 19:01 proller sapier, first problem with entities - your mobf 19:02 sapier If I'd get a single cent for everytime I'm accussed for no reason I'd be rich ;-P 19:03 proller no reason? lol 19:03 RealBadAngel what mobs have to do with items ttl for christ sake? 19:03 proller mobf alvays overflow item limit everywhere 19:03 sapier who told you you have to use mobf? if you don't like it don't use it 19:04 RealBadAngel proller, so just code better mobs, easy as that 19:04 sapier or write valid error reports and suggestions ... just plain telling "it's bad" wont improve anything 19:04 proller sapier, while you not use your soft all suggestions useless 19:04 RealBadAngel and we are not talkin bout mobs right now 19:05 sapier sorry proller I can't play minetest 12h a day I have to do some work too ;-P 19:05 RealBadAngel but having less entities thx to mergeing and ttl will surely help mobs 19:05 proller nothing helps mobs 19:05 proller merging when digging - very good 19:06 proller but dropping faster than ~week - bad 19:06 proller i'm about defaults 19:06 RealBadAngel week? lol 19:06 proller also sometimes lot of items located underground - they can be cleaned 19:06 BlockMen i would be fine when they are merged with player action (lets say when droped by player) 19:06 BlockMen but not e.g. for sapling 19:06 BlockMen or other non player items 19:07 proller RealBadAngel, on Sky server map near year old, and you can find year old entites in some places 19:07 RealBadAngel what about 4k of leaves falling down from oak? 19:07 RealBadAngel have you ever thought about that? 19:07 BlockMen RealBadAngel, then redo the leave decay code, not the item code 19:07 RealBadAngel no 19:08 BlockMen yes 19:08 RealBadAngel this is the common way how it should be done 19:08 BlockMen better than this merge stugg 19:08 BlockMen *ff 19:08 BlockMen no, dont merge "natural" items 19:08 BlockMen it is just odd 19:09 RealBadAngel if some1 wanna have nonsense behaviour, thousands of items spinnin in one pos, let him mod that 19:09 RealBadAngel current items behaviour is just pain in the ass 19:09 BlockMen just because you say its "nonsense" it has not to be 19:09 BlockMen and explain why it is currently a pain 19:10 RealBadAngel just stand in place and drop several stacks of cobble one by one piece 19:10 BlockMen ^ lol, what? 19:10 RealBadAngel and see how it works and looks like 19:10 BlockMen who would do that? 19:10 BlockMen that is just stupid 19:10 RealBadAngel this is how it works 19:10 BlockMen but no one does (except you maybe) 19:11 RealBadAngel me? game does 19:11 BlockMen single items of stacks dont drop without player action 19:13 RealBadAngel btw, have you actually tried to play with that code? 19:13 RealBadAngel because i have the feeling you have not 19:15 RealBadAngel https://github.com/minetest-technic/item_tweaks 19:16 RealBadAngel and add that to config: 19:16 RealBadAngel enable_item_drops = true 19:16 RealBadAngel enable_item_pickup = true 19:17 RealBadAngel also about TTL, that can be used instead of bones 19:17 RealBadAngel drop the player's inv on the ground, add waypoint to death pos 19:18 RealBadAngel that will bring back to game some risk 19:19 RealBadAngel by now game feels like kindergarten, no risk at all, no reason to care about anythin 19:19 RealBadAngel and that makes game boring 19:22 BlockMen game is frozen, so bones will stay 19:22 BlockMen and no, but you know what 19:22 BlockMen idc ...merge it or not 19:23 BlockMen i will override it in my games anyway, so do what you want 19:23 RealBadAngel whats frozen can be melted ;) 19:23 RealBadAngel just jokin, but thats an idea to discuss 19:23 BlockMen no, re-read the log of yesterday 19:24 BlockMen lets game dead for now 19:24 BlockMen *-s 19:24 RealBadAngel fighting boredom in gameplay is much more important than whacky idea of freezing the code 19:24 BlockMen more important now is to figure out a way how to chose the games that will be bundled with 0.4.10 19:25 RealBadAngel that will bring much more fights to the channel than mt game changes imho ;) 19:25 BlockMen read this 19:25 BlockMen https://forum.minetest.net/viewtopic.php?p=138276#p138276 19:25 RealBadAngel i wont even start proposing technic_game for that 19:26 RealBadAngel mainly because technic_game is around 250mb right now 19:27 RealBadAngel but wont be released until 0.4.10 comes 19:28 BlockMen well, we found a reason for not including games now: SIZE ;) 19:29 Calinou not all games are 250MB 19:29 RealBadAngel ofc not 19:29 Exio4 even 20MB is heavy Calinou 19:29 BlockMen i wouldnt include games > 5 MB 19:30 Calinou Carbone is not much heavier, without .git 19:30 Calinou I did everything to compress it :P 19:30 RealBadAngel but mine will come with high res tp, normals and parallax support 19:30 RealBadAngel and all the eyecandies possible 19:30 RealBadAngel including music 19:30 Exio4 do we have a moddb for games? 19:30 BlockMen RealBadAngel, then its IMO not wise to bundle it with the engine 19:30 BlockMen its just toooooo big 19:30 RealBadAngel i know 19:31 RealBadAngel technic game is not for basic download 19:31 RealBadAngel its a total option 19:31 RealBadAngel weaker machines wont even handle it 19:33 RealBadAngel BlockMen, so, what about trying item_tweaks? 19:33 RealBadAngel can you give it a shot? 19:34 RealBadAngel it has some more features not mentioned in this conversation... 19:35 BlockMen RealBadAngel : http://irc.minetest.ru/minetest-dev/2014-05-21#i_3714187 19:38 RealBadAngel so just watch, if you dont want to try: https://www.youtube.com/watch?v=mnwk5XZ6DQE 19:40 BlockMen ik the videos 20:05 RealBadAngel ok 20:06 RealBadAngel i guess you gonna just stay as one of the very few that dont like the feature ;) 20:07 RealBadAngel one thing wonders me, why proller in private said he like it but in public said he does not ;) 20:07 RealBadAngel maybe just for sake being opposite to sapier as usual ;) 20:17 iqualfragile RealBadAngel: is ther efinally real light in minetest? 20:18 RealBadAngel not yet, its a long road for just one coder... 20:19 RealBadAngel i am at the doorstep of rendering buffers and image postprocessing 20:20 RealBadAngel for that i had to rebuild whole shaders handling 20:20 RealBadAngel which is done and waiting for feedback 20:22 BlockMen RealBadAngel, is it possible to disable waving for lava now? 20:22 RealBadAngel with the code that waits in line it will be 20:22 RealBadAngel shaders are assigned there by tile 20:22 RealBadAngel or by specific node 20:23 BlockMen very good 20:23 RealBadAngel in the future i plan to introduce own lava shader 20:24 BlockMen how would i disable it for lava then? 20:24 BlockMen waving = 0? 20:24 RealBadAngel by now its assigned by liquid 20:24 RealBadAngel so all liquids do wave 20:25 RealBadAngel https://www.youtube.com/watch?v=zxUXNNFpPpc 20:25 RealBadAngel ^^ example lava shader 20:25 BlockMen with your current pull, can i set lava to not wave at the same time having water waves? 20:27 RealBadAngel https://github.com/RealBadAngel/minetest/blob/shaders_unite/src/nodedef.cpp#L699 20:27 RealBadAngel we can add there another shader for just lava 20:28 RealBadAngel here water_shader is assigned just for one tile (because of water reflections, that will be shown just on surface) 20:29 BlockMen and/or apply the shader only if waving = 1 (like for plants&leaves)? 20:29 RealBadAngel this is done in shaders code 20:29 sapier maybe we should think about a way to specify shaders in nodedef? 20:29 RealBadAngel shaders are instanced 20:29 RealBadAngel for each drawtype and material type 20:30 RealBadAngel but from single source one 20:30 RealBadAngel https://github.com/RealBadAngel/minetest/blob/shaders_unite/client/shaders/nodes_shader/opengl_vertex.glsl#L57 20:31 RealBadAngel so all the transformations are depending on passed types to shader 20:32 BlockMen https://github.com/RealBadAngel/minetest/blob/shaders_unite/src/nodedef.cpp#L687,L688 i mean like that, so having a liquid and a liquid_waving material 20:32 BlockMen then depending on nodedef you can choose liquid or liquid_waving as material 20:36 RealBadAngel BlockMen, yeah, we can do that this way, no problemo 20:38 BlockMen good :) 20:39 RealBadAngel this way we will separate all the liquids 20:39 RealBadAngel btw, there was an idea out there 20:40 RealBadAngel regarding water at all 20:40 RealBadAngel to introduce ocean water (waving) and still water - lakes, rivers, artificial channels - not waving 20:41 RealBadAngel but that should be made at mapgen level 20:41 RealBadAngel and then just handled 20:42 RealBadAngel sapier, looks like im done with using dtime for ageing 20:42 RealBadAngel im suprised because code become even simplier with that 20:44 sapier I thought so that's why I suggested it 20:44 sapier did you already update the pull request? 20:46 RealBadAngel not yet, adding now proper age for unloaded entities 20:55 * VanessaE peeks in 20:55 VanessaE is it safe now? 20:57 BlockMen VanessaE, its never safe on #-dev :P 20:57 RealBadAngel lol 20:57 RealBadAngel hi VanessaE 21:00 VanessaE hi 21:25 RealBadAngel sapier, something is wrong with dtime_s in on_activate 21:27 RealBadAngel http://pastebin.com/TwctaMkp 21:27 RealBadAngel it prints always 4 21:27 sapier I'm gonna check 21:29 RealBadAngel it works when i let them unload without leaving to menu 21:29 RealBadAngel but when i exit to menu and go back 21:29 RealBadAngel it is always 4 21:29 sapier sounds like something not beeing persisted correctly 21:31 sapier that's strange 21:31 sapier dtime_s isn't a float but a unsigned int value 21:33 RealBadAngel looks like, its always rounded 21:34 RealBadAngel 4 21:34 RealBadAngel 4 21:34 RealBadAngel 4 21:34 RealBadAngel 40 21:34 RealBadAngel 34 21:34 RealBadAngel 34 21:34 sapier can you upload your current code for me to test? 21:34 RealBadAngel sure 21:34 sapier dtime_s is only seconds 21:34 RealBadAngel ok, but why always 4 on start? 21:35 sapier that's a good question 21:35 RealBadAngel propably time since server starts 21:36 sapier maybe 21:36 sapier that'd mean ttl will run in "gametime" instead of realtime 21:37 RealBadAngel https://github.com/minetest-technic/item_tweaks 21:37 RealBadAngel uploaded 21:37 sapier that's not what I had in mind but it'd be not that bad 21:37 RealBadAngel not really 21:37 sapier actually that's quite strange 21:38 RealBadAngel if player dies, he could just exit the game and go back 21:38 RealBadAngel to let his items live longer 21:38 RealBadAngel and thats kinda cheat 21:38 sapier well that'd happen for gametime usage too 21:38 RealBadAngel actually no 21:38 sapier that's a basic flaw in block timestamps 21:38 sapier why not? 21:39 RealBadAngel game time flows 21:39 sapier no 21:39 RealBadAngel reseting it to 4s each load is different 21:39 sapier sorry don't get it yet 21:39 RealBadAngel it flows when game is loaded 21:39 sapier gametime starts on each game 21:40 sapier so if a block containing is unloaded he'd not recognize the change too 21:40 sapier I suggest fixing the timestamps to be real timestamps not gametime timestamps 21:41 RealBadAngel lemme check something 21:41 sapier dtime_s = m_game_time - block->getTimestamp(); 21:41 sapier is the code calculating the dtime_s 21:42 RealBadAngel youre wrong 21:42 RealBadAngel game time is time since world creation 21:42 RealBadAngel not since it is loaded 21:42 sapier then there has to be another bug 21:43 RealBadAngel not really 21:43 sapier true, it's correct 21:43 sapier if you exit and enter that may be at least 4s 21:43 sapier well on a very fast machine you could get shorter values 21:44 sapier you could try by droping something, teleport away, exit, wait, telpor back 21:44 sapier dtime_s should be the time you've been away (almost) 21:45 RealBadAngel it is when youre still ingame 21:45 sapier it should be the time the game was running 21:45 sapier if you stop your server say for a day, that time won't be honored 21:45 RealBadAngel ofc 21:46 sapier I'd be fine with that behavioud, ok loosing subsecond precision wasn't anticipated but imho there could be worse 21:46 RealBadAngel but when servers shuts down it shall write current dtime_s 21:47 sapier why? the dtime_s depends on gametime 21:47 RealBadAngel exactly 21:47 RealBadAngel but some of it got lost when server exits 21:47 sapier and gametime is time of world existance? or did I missunderstand 21:48 RealBadAngel look, i flew away from items 21:48 RealBadAngel block got unloaded 21:48 sapier ok 21:48 RealBadAngel i get back and had dtime_s around 40s 21:48 RealBadAngel now im exiting the game 21:48 RealBadAngel and loading it back 21:48 sapier while beeing there or while beeing away? 21:48 RealBadAngel i do have dtime_s = 4s 21:49 sapier if you exited right next to your items the 4s are most likely fine 21:49 sapier dtime_s is time since last deactivation 21:50 RealBadAngel so i have to use game time for ttl no matter what 21:50 sapier no 21:50 sapier if you leave the game right next to the items 21:50 sapier then gametime is stopped on exiting game 21:51 sapier if you enter again it continues ... then once the items are activated you get told how much (game) time passed since they've been unloaded 21:52 sapier or do I missunderstand what you wanna tell me? 21:53 RealBadAngel damn, now it looks like it started to work 21:53 RealBadAngel time seems to be correctly preserved 21:54 RealBadAngel hell, no 21:54 RealBadAngel something weird happens here 21:54 RealBadAngel lemme pastebin some timings 21:54 sapier ok :-) 21:54 sapier I wonder if there'S still something broken about entity de/activation 21:58 RealBadAngel http://pastebin.com/GuTumnvB 21:58 RealBadAngel ive dropped a few items 21:58 RealBadAngel exited the game 21:58 RealBadAngel and had proper timings 21:58 RealBadAngel now did that again 21:58 RealBadAngel and all is reseted 21:59 RealBadAngel and each time i get different values 22:00 sapier let me have a look at your code I don't understand 22:01 RealBadAngel https://github.com/minetest-technic/item_tweaks/blob/master/item_entity.lua#L75 22:02 RealBadAngel it looks like sometimes it deserialzes data.age, sometimes dont 22:03 RealBadAngel definitely something is wrong with that part 22:04 sapier that'S strange, what's the itemstring supposed to be? legacy? 22:08 sapier hmm I have a suggestion to check, maybe entity staticdata isn't updated because of position not having changed ... that'd be a ugly bug ... but could be true 22:11 sapier self:set_item(self.itemstring) 22:11 sapier you reset the age on each activation 22:12 sapier last line of set_item function 22:17 RealBadAngel huh? 22:18 sapier you set self.age at end of set_item to 0 and you always call set_item in on_activate 22:18 sapier that's resulting in self.age always beeing 0 after on_activate 22:19 sapier that's why you see correct times on first join too as they're restored correctly ... but overwritten right after printing them 22:19 RealBadAngel stupid bug :) 22:19 sapier all bugs are stupid once you've found them ;-)