Minetest logo

IRC log for #minetest-dev, 2014-09-07

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

All times shown according to UTC.

Time Nick Message
00:02 davexunit left #minetest-dev
00:14 OldCoder joined #minetest-dev
01:21 Miner_48er joined #minetest-dev
01:38 sapier joined #minetest-dev
01:57 sapier left #minetest-dev
02:12 HLuaBot joined #minetest-dev
02:49 NakedFury joined #minetest-dev
03:02 RealBadAngel https://www.youtube.com/watch?v=CWOW_kihBIM&feature=youtu.be
03:36 VanessaE hmmmm: *poke*
03:36 VanessaE (not related to the above)
03:37 hmmmm Don't ask to ask, just ask
03:37 VanessaE I "asked" hours ago.
03:37 hmmmm oh
03:37 VanessaE your vmanip changes caused major breakage.
03:37 VanessaE https://github.com/minetest/minetest/issues/1607
03:38 RealBadAngel hmmmm, do you like the highlighting?
03:38 hmmmm yup, great highlighting
03:38 VanessaE hmmmm: I presumed you were afk, so I figured I would just prod you later about this.
03:38 hmmmm that guy...
03:39 VanessaE is Krock.
03:39 hmmmm i was trying to work with him the other day to track down exactly what commit caused it
03:39 RealBadAngel some1 even screamed to take off your 3 pulls
03:39 VanessaE yeah I know.
03:39 hmmmm and he tried a certain one and i think he said "yep it works now"
03:39 VanessaE I noticed that he just...disappeated.
03:39 RealBadAngel <Zeno`> who peer-reviewed and approved f3eefeb7948b8b8d1a98f2f89baa39abc807f72d, 9e4e7072da8f565eef37da7558053a436b9cbba3 and 3fa4f782d90dac0d800251a9ab0f0afb9d32560c <--- Can these commits be taken out of master?
03:39 hmmmm so I presumed that it was broken and I fixed it with another one
03:39 VanessaE however, zeno went on to confirm it; he and I chatted in private to some length
03:39 hmmmm ...
03:40 hmmmm peer reviewed... ALL of them were reviewed by multiple people and it works fine for us
03:40 hmmmm it doesn't work fine for select other people
03:41 RealBadAngel it seems like it breaks some custom mapgens for some reason
03:41 VanessaE I can't speak for the "peer reviewed" part, I had assumed the same
03:41 hmmmm in fact, I think it was Krock's custom mapgen mod, I downloaded and tried it myself
03:41 hmmmm worked fine
03:42 hmmmm I assumed the problem was that he just wasn't running the current upstream
03:42 VanessaE how does that account for zeno's comment though?
03:42 hmmmm on the issue?
03:42 VanessaE yes
03:42 hmmmm i really have no idea.
03:43 RealBadAngel http://pastebin.com/b703YKrC
03:43 hmmmm now, in the issue tracker, krock says that the issue "happened between 3fa4f78 and f3eefeb"
03:43 hmmmm am i interpreting this right?
03:43 hmmmm things work fine on 3fa4f78
03:43 hmmmm and then on 9e4e707, things break?
03:44 hmmmm as in, "Update Mapgen VoxelManipulator on buffer invalidation" changes code that breaks things?
03:44 VanessaE I'm not sure, given that there was only one commit between the two
03:44 hmmmm which specific commit is it that broke things for these people
03:44 VanessaE his comment is somewhat unclear.
03:44 hmmmm can they quit being vague
03:45 hmmmm vanessae:  are you aware of current HEAD of upstream breaking lua mapgens right now?
03:45 hmmmm or just that some people have had this issue
03:45 VanessaE what I take from it is that it's just plain broken as described by his "after" images
03:46 VanessaE hmmmm: I only run one server that uses a lua mapgen (nore's/sfan5's MG).  let' me go see how that behaves now.  the server is new enough.
03:46 hmmmm what does "new enough" mean
03:46 hmmmm what commit is it at
03:46 VanessaE I'm at 9e4e7072da8f565eef37da7558053a436b9cbba3
03:46 hmmmm i'm sorry guys, i just fail to see how any of my recent commits could have such an effect
03:46 hmmmm unless you have some rogue mod that screws shit up
03:47 VanessaE gimme a moment.
03:47 RealBadAngel <hmmmm> vanessae:  are you aware of current HEAD of upstream breaking lua mapgens right now?
03:47 RealBadAngel does it breaks them?
03:48 hmmmm works on my machine (tm)
03:48 VanessaE ok, if MG mod is vmanip based, it works fine with 9e4e707
03:48 hmmmm see, this is really hard because it works for me
03:48 hmmmm krock and zeno are apparently the only ones this doesn't work for
03:49 hmmmm right
03:49 hmmmm vanessae:  try f3eefeb now
03:49 VanessaE (I teleported to a location in the world that, according to my overview map, has not yet been generated)
03:49 hmmmm err
03:49 hmmmm you don't need to
03:49 hmmmm that's not your responsibility
03:50 VanessaE yep, seems fine, and mg is definitely vm based
03:51 VanessaE grep -r  vm  /home/minetest/mods/mg|wc
03:51 VanessaE 38     184    2987
03:51 hmmmm i have a feeling those guys aren't using HEAD
03:51 VanessaE Zeno I'm pretty sure was, but HIS issue might be attributed to code faults on his end.
03:52 VanessaE Krock, on the other hand, almost certainly fucked up in his testing.
03:52 VanessaE HOWEVER,
03:52 VanessaE there IS some kind of obscure crashing happening for some folks, also:
03:52 hmmmm issue?
03:53 VanessaE I don't think there's an issue for it yet, lemme get the crash dump
03:53 VanessaE sec
03:53 VanessaE http://pastebin.com/pWZXXkcT
03:54 VanessaE code:  http://pastebin.com/4d0vm8zS
03:54 hmmmm is this consistent?
03:55 VanessaE it's a production server, I'm not sure if it's happened again since
03:55 VanessaE as you can see from the bit of code he pasted to me, there's just not that much that can go wrong there
03:55 hmmmm unhandled exception
03:55 VanessaE wait, he DID reproduce it
03:55 hmmmm oh goodie
03:55 VanessaE Sep 05 2014 21:38:38 <Zeno`>    yeah
03:55 VanessaE Sep 05 2014 21:38:45 <Zeno`>    these crashes started after the updates
03:55 VanessaE Sep 05 2014 21:41:56 <Zeno`>    other great news
03:56 hmmmm did he get a real stack backtrace?
03:56 hmmmm not just the lua side
03:56 VanessaE I'll ask when I catch him next
03:56 hmmmm man
03:56 hmmmm I just cannot see how this code can screw up
03:56 hmmmm it's tried and trusted
03:56 VanessaE you've said that before ;)
03:56 VanessaE as have I :)
03:57 hmmmm in particular I don't see anything that could throw an exception in get_data()
03:57 VanessaE nothing in the Lua code he pasted could do it, could it?
03:57 hmmmm no
03:58 hmmmm the only possibility i see for get_data() throwing an exception is if it was an std::bad_alloc (out-of-memory conditions)
03:59 VanessaE I've seen this before.
03:59 hmmmm except not even that because it calls Lua, and Lua uses C (malloc/free) and therefore wouldn't cause a C++ style memory allocation exception
03:59 VanessaE just the other day the OOM killer nailed one of my servers.
03:59 VanessaE memory corruption is the theory right now.  that same mem corruption that seems to migrate around the MT codebase.
04:00 hmmmm i'm not even going to bother speculating
04:00 hmmmm i have no clues
04:00 VanessaE the other day it was ticking along normally, couple guys were digging stone, nothing out of the ordinary, then BAM, it tried to allocate tens of gigs all at once and the OOM killer said "um, no."
04:00 hmmmm hrmmmmmm
04:01 hmmmm I wonder if on your machine you'd get OOM killer to end the process before an std::bad_alloc
04:01 VanessaE I posted what little I had of that crash, here, when it happened.  no response.
04:01 hmmmm yaeh I saw that
04:01 hmmmm couldn't get any information from the log
04:02 VanessaE yeah, I didn't expect it would be too useful
04:02 VanessaE no opportunity to get a proper bt
04:02 hmmmm see
04:02 hmmmm OOM killer is triggered when the kernel's VM allocator can't find any free page frames
04:02 hmmmm std::bad_alloc is thrown when sbrk() fails
04:03 hmmmm i honestly don't know which would be triggered first
04:03 hmmmm vanessae, can you try it though?
04:04 hmmmm i mean make a test program that just exhausts system memory quickly
04:06 VanessaE not sure how I'd do that.
04:06 hmmmm ......
04:06 VanessaE already found one.
04:06 hmmmm void main() { while (1) char *foo = new char[4096]; }
04:08 VanessaE standby.
04:10 * VanessaE waits for swap to clear out (forgot to swapoff before testing)
04:10 RealBadAngel i found why highlight makes traces, which dissapear after some time
04:11 hmmmm well you can leave swap on, it'd just take a lot longer to do
04:11 RealBadAngel it was extremaly bad idea to copy settings and variables and make them mesh instance internal
04:11 RealBadAngel thats why they work on outdated copies
04:12 VanessaE hmmmm: heh, no backtrace to print in gdb for that little test program :D
04:12 hmmmm OOM killer killed it?
04:12 VanessaE yup
04:12 sol_invictus joined #minetest-dev
04:12 hmmmm ahh
04:13 hmmmm for some reason when people get the std::bad_alloc thing, they have OOM killer turned off or something
04:13 RealBadAngel any variable that chaghes dynamically cannot be copied all over and let threads working on copies
04:13 hmmmm or did you specifically set it in the first place
04:13 hmmmm RealBadAngel, ???
04:14 RealBadAngel im talkin now specifically about pointed thing position
04:14 hmmmm ah
04:14 RealBadAngel or crack
04:15 VanessaE hmmmm: want the dmesg output from the OOM killer hitting that test program?
04:15 hmmmm sure
04:15 RealBadAngel such things have to be global
04:15 hmmmm can't hurt
04:16 RealBadAngel passing them all the time is a) waste of time b) just askin for workin on outdated copies
04:16 VanessaE hmmmm: http://pastebin.com/tepaNaCZ
04:16 hmmmm no vanessa
04:16 hmmmm use new[]
04:17 hmmmm char *foo = new char[4096];
04:17 VanessaE ok, let's give that a shot then
04:17 hmmmm err, rather, make it 1mb
04:18 VanessaE bleh, this is why I don't program in C++
04:18 VanessaE test.c:1:26: error: expected expression before ‘char’
04:18 VanessaE void main() { while (1) char *foo = new char[1048576]; }
04:19 RealBadAngel anyway, from now on im starting to move ALL of the settings and global variables to own class, accesible everywhere
04:19 VanessaE RealBadAngel: good idea.
04:19 RealBadAngel by variable names ofc, no more strings based solutions
04:21 hintss joined #minetest-dev
04:23 VanessaE also helps if I use g++ rather than gcc but that just gives me a new error (test.c:1:11: error: ‘::main’ must return ‘int’)
04:23 hmmmm vanessae:  yea I was just about to say that
04:23 hmmmm lol
04:24 VanessaE I read "void main()" and I think C.  :)
04:24 VanessaE THERE.
04:24 VanessaE now the fucking thing compiles now that it's int main().
04:26 VanessaE http://pastebin.com/KK652LUB
04:26 VanessaE there you go :)
04:30 hmmmm aha
04:30 hmmmm so it OOM kills before the std::bad_alloc is thrown
04:38 hmmmm most of the time, out of memory errors are caused by infinite loops where memory is allocated
04:54 VanessaE zeno's account is online, trying to get him to wake up and come over here to address the vm issue, if it is still valid.
05:07 Zeno` joined #minetest-dev
05:08 Zeno` Regarding the voxelmanip bug, it only seems to occur in multiplayer
05:09 Zeno` Testing the same mods on my local test server with only one player it's fine and the generated blocks don't disappear
05:10 Zeno` So, something in hmmmm's latest changes doesn't work as expected
05:12 Zeno` Perhaps it's when two people (or more) are exploring the same area?
05:16 Zeno` I am encountering this bug when using caverealms
05:16 Zeno` You can see the caves generate and then a moment later they just go away
05:18 hmmmm Zeno`, hello
05:18 hmmmm how can it happen only on multiplayer
05:18 hmmmm you realize that singleplayer is the same as multiplayer if you only had one player on a server?
05:19 hmmmm zeno`, could it be that your server is out of date?
05:19 nore joined #minetest-dev
05:19 Zeno` Out of date in what manner?
05:20 Zeno` The bug showed up in HEAD so I've reverted to f3eefeb7948b8b8d1a98f2f89baa39abc807f72d and everything works as expected again?
05:21 hmmmm okay, I thought that the server hosting this mod might be a different version
05:21 Zeno` hmmmm, I meant multiple players
05:21 hmmmm wait a minute
05:21 hmmmm hold up hold up
05:21 hmmmm you REVERTED your server to f33feb and it works?
05:22 Zeno` correct
05:22 hmmmm no problems with the codebase at that commit?
05:22 Zeno` Well, no regions appearing then disappearing, no
05:22 hmmmm "well, no"?
05:22 Zeno` oh wait
05:22 Zeno` reverted to e5b4748bb44a12fd09a92f7d36986b4bda86e6bf
05:22 hmmmm please get your story straight, I can't independently verify this behavior so I'm totally relying on you
05:23 VanessaE ...that makes more sense.
05:23 hmmmm okay so Zeno`, one of the three mapgen-related changes caused the problem
05:23 hmmmm does the commit 3fa4f78 cause this problem?
05:23 Zeno` yes
05:24 VanessaE yes to which part?
05:24 Zeno` Ok, I don't know. I'll have to test... somehow
05:24 Zeno` The problem with testing is that it kind of destroys the world on the server
05:25 hmmmm Zeno`:  you can make test worlds
05:25 Zeno` I'll think of a way
05:25 Zeno` hmmmm, yes I'll have to organise a group of players to join my test world
05:25 Zeno` It doesn't happen with just one player
05:25 hmmmm okay
05:27 VanessaE wasn't there a mode that could simulate random input from multiple clients?
05:27 VanessaE probably won't work here i guess
05:28 hmmmm there was vanessa
05:28 hmmmm i am not quite sure what happened to that
05:28 VanessaE Zeno`: or do what I've done before:  open multiple clients and point them at the test world
05:29 hmmmm i would imagine the latter is a better way to do this though
05:29 Zeno` Yes, I'll try this
05:29 VanessaE think I was stress-testing someone's server once.  had 20 or so instances open
05:34 Zeno` I can't do this today, though.
05:35 VanessaE hmmmm: isn't there some way you can perform the same test?  caverealms mod, clean world, multiple clients connecting
05:35 hmmmm =/
05:35 Zeno` Krock has a similar (or the same) issue also.. need to work out of his happens for him when multiple clients are connected or when only one client is connected
05:35 Zeno` I don't know what mod he's using but his blocks are mostly air, mine are mostly stone (with air added)
05:35 Zeno` this is caverealms by the way
05:35 VanessaE I think his is a custom mapgen he's writing.
05:36 Zeno` Specifically this version of caverealms: https://github.com/Zeno-/minetest-caverealms
05:36 VanessaE Yappy
05:36 VanessaE https://forum.minetest.net/viewtopic.php?t=9834
05:36 VanessaE that's the one
05:37 hmmmm wow
05:38 hmmmm player movement is incredibly choppy
05:38 VanessaE yep, we all know this.  needs interpolating or something on the client end
05:43 hmmmm I can't replicate it
05:44 hmmmm i am running two separate clients with a server using Yappy
05:44 hmmmm i teleported both players to the same area within 1 second of each other
05:46 hmmmm FWIW, yappy is a nice looking mapgen, but there's not much variation in terrain.  no oceans and no mountains with ridges
05:46 hmmmm it looks like a 2d perlin noise base that only has a very small amount of ground fall below water_level so that it forms the river shapes as curves between high points of perlin noise
05:47 hmmmm and then there is negative 3d noise splattered around that serve as both the mapgen's caves and "cool" features
05:57 CWz joined #minetest-dev
06:02 Eater4 joined #minetest-dev
06:06 Zeno` I might copy the server world to my local computer next week and test that way
06:07 Zeno` the db is 7.9G so I won't be able to download it until a time when fewer players are online
06:13 hmmmm can you try doing this on a fresh world
06:13 hmmmm just to eliminate any possibilities
06:13 hmmmm of problems
06:13 hmmmm not related to the actual issue
06:14 sol_invictus sorry for interrupting, but I want to ask, can leveldb backend be bugged?
06:14 Zeno` hmmmm, that's what I have been doing (a fresh world)
06:15 VanessaE sol_invictus: depends on where you want the audio sent to.  some good bugs can transmit for miles and take up very little space.
06:15 Zeno` But if I can't reproduce using the fresh world then I guess I'll attempt on the "old world"
06:15 Zeno` I dunno
06:15 Zeno` Too tired
06:15 hmmmm zeno`, i can't replicate it.
06:15 Zeno` With caverealms?
06:15 hmmmm with yappy
06:15 sol_invictus VanessaE: I'm not sure I get you
06:16 VanessaE sol_invictus: I was joking.
06:16 VanessaE sol_invictus: yes it's possible for the leveldb backend to have a bug, but not of the type that would cause this kind of issue
06:16 Zeno` I haven't tried yappy. But I'll try and replicate with caverealms on my test world
06:16 hmmmm sol_invictus:  vanessae was referring to 'bugged' in the sense of 'wiretapped' rather than 'have a software issue'
06:16 sol_invictus VanessaE: I don't get jokes sometimes, not native english :D
06:17 sol_invictus ahah, now I get it
06:17 hmmmm s/wiretap/covert sound recorder/
06:18 VanessaE the joke was specific to his choice of grammar :)
06:19 sol_invictus currently I was referring another kind of issue: world runs for some time poerfectly, lag is <1s but at some point I start getting 'too many objects' and soon after that it starts lagging as crazy
06:20 sol_invictus is there any way to list objects in a block? because I teleport to the point reported by the server and there is nothing there
06:20 VanessaE anyway my first thought was that https://github.com/minetest/minetest/issues/1479 could somehow be related
06:20 VanessaE but I don't see how, as it predates this by a wide margin
06:21 VanessaE sol_invictus: is pipeworks installed on that server?
06:21 sol_invictus no, never was installed
06:21 VanessaE FINALLY
06:21 VanessaE SOMEONE has that same bug WITHOUT pipeworks!
06:22 VanessaE I have had this same problem on two of my servers in the past
06:22 VanessaE I was never able to resolve it
06:22 VanessaE it just sorta "fizzled out" as player traffic dwindled.
06:23 sol_invictus last time I did /clearobjects and migrate sqlite>leveldb>sqlite and the problem resolved
06:23 sol_invictus currently I'm not sure which action helped
06:23 sol_invictus oops
06:24 VanessaE it wasn't /clearobjects
06:24 VanessaE because that does NOT remove the errant objects
06:24 sol_invictus leveldb>sqlite>leveldb*
06:24 VanessaE I've tried.
06:24 sol_invictus what backend were you using?
06:24 VanessaE https://github.com/minetest/minetest/issues/1426
06:24 VanessaE https://github.com/minetest/minetest/issues/1425
06:24 VanessaE I use leveldb.
06:25 VanessaE do these ^^^^ look like what you were seeing?
06:26 sol_invictus I see messages about objects, but don't get segfaults
06:27 sol_invictus it's qust lagging te server down
06:33 Hunterz joined #minetest-dev
06:34 sol_invictus confirmed, clearobjects did nothing
06:34 VanessaE better file an issue
06:34 sol_invictus definitely it was migration
06:35 sol_invictus I'm not sure how to formulate this problem
06:37 Zeno` hmmmm, should these commits be branched off until the issue is discovered (since it may take a long time for that to happen)
06:38 Zeno` The matter, as I see it, is that it's a pretty serious issue even if it has only been *noticed* by two people so far
06:39 VanessaE I have to agree.
06:39 VanessaE until we can delete blocks from the database FROM WITHIN THE GAME, it's too dangerous to run that code on a production server.
06:39 VanessaE and if it remains in master, it WILL end up in production servers sooner or later.
06:41 hmmmm zeno`:  what?
06:42 Zeno` I mean that I don't think they should be there until they've been tested thoroughly
06:42 hmmmm you're asking me to revert three commits because you can't find the exact one and it causes a relatively obscure bug that only you and one other person seem to have?
06:42 sol_invictus VanessaE: feel free to correct me https://github.com/minetest/minetest/issues/1611
06:42 Zeno` hmmmm, yes
06:42 hmmmm you're acting like these patches were defective and clearly not ready for public consumption
06:42 hmmmm you're an outlier though.  they work fine for everybody else.
06:42 VanessaE sol_invictus: seems good enough.
06:42 Zeno` Well, clearly they are defective
06:42 hmmmm they are not defective.
06:43 Zeno` The fact that only 2 people have noticed the issue so far is irrelevant
06:43 hmmmm you have some specific configuration that has some kind of side effect activated by one of these patches
06:43 hmmmm Zeno`:  that is not how software works
06:43 hmmmm Zeno`:  when a user experiences a bug, they don't tell the software people to revert their changes until they can solve it for them
06:44 Zeno` hmmmm, you've obviously never programmed firmware, because things should not be TESTED and TRUSTED
06:44 hmmmm it gets added to the issue tracker and resolved as it comes along
06:44 Zeno` should be*
06:44 hmmmm this isn't firmware.  it's a freaking game.
06:44 Zeno` That has 3 commits that cause a defect
06:44 hmmmm three commits don't cause a defect
06:44 hmmmm one of them do, and you're just too lazy to find the right one
06:44 Zeno` They're not my commits
06:44 hmmmm and it doesn't cause a defect for the vast majority of people
06:45 hmmmm and I can't reproduce any of the problems you've been mentioning so far
06:45 Zeno` How do you know it doesn't cause a defect for the vast majority of people?
06:45 hmmmm because you and one other person complained and i haven't seen anybody else even able to replicate it
06:45 Zeno` Have you asked the vast majority of people to look for this thing?
06:46 Zeno` Have you asked all the people who run servers to look for it? (The only people likely to come across it)
06:46 VanessaE hmmmm: be fair, how often do you even GET people in this channel to test stuff like this?
06:46 hmmmm one of those patches, in fact, fixes another problem that's been around a lot longer but it affects EVERYBODY
06:46 hmmmm VanessaE, if it were really such a huge, fatal issue, everybody would be
06:46 hmmmm running in here and screaming about it
06:46 VanessaE hmmmm: they can't.
06:46 hmmmm zeno is acting as if this is some fatal defective flaw
06:46 Zeno` hmmmm, because it is
06:46 hmmmm "nobody even tested this shit"
06:46 VanessaE hmmmm: webchat is blocked from this channel, and "everybody" uses that :P
06:47 hmmmm webchat?
06:47 VanessaE mmhmm
06:47 Zeno` hmmmm, show me your tests where you tested this with 20 players please
06:47 hmmmm ...
06:47 Zeno` actually show me ANY tests
06:47 hmmmm Zeno`, for now you can revert back to a previous patch, or just revert the offending patches in your own branch, or use a non-development version
06:47 VanessaE hmmmm: that was a bit tongue in cheek but my point is that most people won't complain.
06:48 hmmmm why you are demanding i revert changes based off of two peoples' undemonstrated claims is beyond me.
06:48 Zeno` How many people run a server? Not many... so who is going to investigate this flaw?
06:48 Zeno` Who's even looking for it?
06:48 hmmmm Zeno`, I thought you were
06:48 Zeno` I am not demanding anything
06:48 hmmmm Zeno`, if you spent less time bitching and more time testing, things would get fixed
06:48 Zeno` and if you spent more time listening to people you'd have fewer problems
06:48 hmmmm i would love to get this fixed but i need your cooperation
06:49 hmmmm don't just tell me "ugh revert these horrific changes!"
06:49 hmmmm "they're obviously defective pieces of shit"
06:49 Zeno` ok
06:49 hmmmm that's the vibe i got anyway
06:50 hmmmm aigh
06:50 Zeno` yes, well I apologise
06:50 hmmmm so, again, does the issue persist at 3fa4f78
06:50 hmmmm last time i asked this you said "meeeeeeh not now" or something along those lines
06:50 Zeno` But to me they're showstoppers. I'll keep testing though
06:51 hmmmm "they're"
06:51 Zeno` The problem is I can only reproduce this on my server
06:51 hmmmm you say "they're" because you don't even know which one causes the problem
06:51 Zeno` I can't just take it down and wreck the world to do a test
06:51 Zeno` So I have to, first, reproduce on my home computer
06:51 hmmmm if you can only reproduce it on a specific world, doesn't that point to the specific world as having the problem?
06:52 Zeno` No
06:52 Zeno` I haven't had 15 players connected to my test world yet
06:52 Zeno` it may take me a month or so to convince enough players to join my world
06:52 hmmmm there is absolutely no way having 15 players can cause an issue
06:52 Zeno` You 100% sure?
06:53 hmmmm pretty damn sure.
06:53 Zeno` Well, maybe it's the 0.0001% possibility
06:53 hmmmm if it's so difficult to get the necessary number of people to reproduce this bug, but otherwise it works fine, how the hell is that a showstopper....?
06:53 Zeno` In any case, yes I will test this for you
06:53 Zeno` It's a showstopper for anyone running a server
06:54 Zeno` Or do you suggest I just delete the world and start again?
06:54 hmmmm were you the person who had "Assertion failed" from get_data()?
06:54 Zeno` I have to go, but I will test this
06:54 Zeno` different mod
06:54 hmmmm ghgh
06:54 Zeno` but yes
06:54 hmmmm anyway run gdb next time you're testing for that one
06:54 hmmmm i'd like a backtrace from the C++ side
06:55 Zeno` Yes I've been waiting for it to happen again
06:55 hmmmm okay
06:55 hmmmm so you've already been running it in gdb
06:55 hmmmm that's good
06:55 Zeno` since yesterday
06:58 hmmmm i keep looking at any of those three commits and failing to see how any of these issues are even possible
06:59 hmmmm if you do find the problem, it's going to be an interesting one for sure.
07:02 Krock joined #minetest-dev
07:29 sol_invictus updated #1611
07:32 VanessaE yep, that looks exactly like my issue
07:32 VanessaE and indeed, when it happened to me, there was nothing whatsoever in the area when I went and looked.
07:32 VanessaE just normal everyday terrain
07:33 sol_invictus ave
07:33 sol_invictus have you reverted to sqlite eventually or still using leveldb?*
07:33 VanessaE still using leveldb
07:34 Krock http://pastebin.com/xgKveArs
07:34 Amaz joined #minetest-dev
07:35 sol_invictus I wonder if anyone tried redis on production. Anyone having too much RAM? xD
07:35 VanessaE sol_invictus: I did not try the double migrate trick - wasn't aware of it.  I gave up trying to find the cause and eventually players just stopped visiting as much
07:36 sol_invictus VanessaE: I'm reverting to sqlite until the issue is resolved
07:37 VanessaE who maintains that backend anyway>
07:37 sol_invictus which one?
07:37 VanessaE leveldb
07:37 casimir joined #minetest-dev
07:38 sol_invictus I'm totally unaware of that, still noob here
07:38 Krock VanessaE, some google code coders :3
07:38 PenguinDad joined #minetest-dev
07:40 VanessaE looks like xyz used to, sfan5 mostly now
07:41 VanessaE sol_invictus: but does it happen with sqlite at all?
07:41 GhostDoge joined #minetest-dev
07:42 VanessaE (without migration involved that is)
07:42 sol_invictus well, I'm currently doing migration and in a day or two we will know if it happens
07:43 VanessaE ok
07:43 sol_invictus last time it ran perfectly two days before slowdown. on leveldb. doing remigration every two days would suck.
07:43 VanessaE indeed
07:44 VanessaE well think I'll go to bed now
07:44 VanessaE night
07:44 sol_invictus bye
07:45 sol_invictus it's still morning in russia ^^
07:46 sol_invictus so, no one actually used redis as a backend here?
07:46 sol_invictus I can't believe it
07:49 asl joined #minetest-dev
08:05 CWz joined #minetest-dev
08:39 Krock https://github.com/minetest/minetest/issues/1607#issuecomment-54740076
09:08 PenguinDad Krock: which compiler version do you use?
09:09 Krock PenguinDad, "msbuild /version" outputs 4.0.30319.1
09:13 Krock nvm I think I solved the problem
09:14 Krock need to test it on other mapgens now
09:44 Zeno` gcc (GCC) 4.8.3 20140624   and I get the issue with https://github.com/Zeno-/minetest-caverealms
09:46 Zeno` I can get this to occur locally now using backend dummy
09:46 Zeno` No other mods installed
10:04 T4im joined #minetest-dev
10:26 Zeno` This doesn't make any @&$*@ sense. For the last hour I've been able to replicate the undesired behaviour, and now it's not happening
10:26 Zeno` Maybe it depends on the position of the moon
10:29 ImQ009 joined #minetest-dev
11:21 OldCoder joined #minetest-dev
11:25 Krock joined #minetest-dev
12:13 PilzAdam joined #minetest-dev
12:24 Amaz joined #minetest-dev
13:11 ImQ009 joined #minetest-dev
13:12 Taoki[laptop] https://forum.minetest.net/viewtopic.php?f=5&amp;t=10077&amp;p=153419 Please check this out fellow Minetest devs
13:13 Taoki[laptop] Need to know opinions, for when I return home and get back to coding here and there
13:18 T4im i think client side colorgrading would fit well into that.. allowing to gray everything a bit if theres a storm, or yellowing/brightening it a bit, if its a hot summer day, (in contrast to the sky coloring it woud generally affect everything then)
13:19 Krock I submit "Don't care." because it will be buggy or laggy anyways.
13:20 Taoki[laptop] Krock: I plan to make sure that won't be the case :) Since it's hard coded client-side, it won't be
13:20 Krock MT devs have enough work with bugs. better fix those first
13:21 Krock Taoki[laptop], I was talking about client sided lag.
13:21 T4im krock: that is solveable by something called 'configuration'
13:21 T4im like quite common with gfx..
13:37 NakedFury joined #minetest-dev
15:02 VanessaE Taoki[laptop]: well an hour and a half later and you've already got 6 for, 1 against and 1 don't care.  I think we know where this is going ;0
15:02 VanessaE ;)
15:05 Taoki[laptop] :)
15:15 VanessaE one suggestion:  Allow the server to tell the client to follow the local humidity as defined by the desert/grass areas of the map (same as plants_lib does)
15:16 VanessaE that way the humidity can increase as the user, say, walks out of a desert.  if it's raining at the edge, the rain gets worse as the user walks further in, etc.
15:17 casimir joined #minetest-dev
15:17 VanessaE that way there's no worry about lag.
15:20 VanessaE similarly, it would be useful if precipitation could be made to vary with elevation
15:20 VanessaE just some density multiplier, nothing fancy
15:27 iqualfragile joined #minetest-dev
15:28 zat joined #minetest-dev
15:57 hmmmm joined #minetest-dev
16:19 RealBadAngel Taoki[laptop], 10 for
16:43 Creativeblob joined #minetest-dev
16:45 Creativeblob left #minetest-dev
16:50 Krock joined #minetest-dev
16:54 VanessaE RealBadAngel: I wanna know which chowderhead voted "no" :P
16:55 Anchakor_ joined #minetest-dev
17:04 * nore voted "yes"
17:06 VanessaE Taoki[laptop]: summarized my suggestions from above, added some stuff:  https://forum.minetest.net/viewtopic.php?f=5&amp;t=10077&amp;p=153445#p153445
17:18 Miner_48er joined #minetest-dev
17:19 Krock VanessaE, I voted "Con't care"
17:19 Krock s/c/d
17:21 alexxs joined #minetest-dev
17:21 * PenguinDad voted "yep"
18:07 Asydn joined #minetest-dev
19:16 proller joined #minetest-dev
19:53 sol_invictus blargh
19:54 sol_invictus VanessaE, seems like it's not exactly leveldb, the issue is present on sqlite as well
19:54 VanessaE hrm
19:54 VanessaE well at least that rules out the database backend being the problem
19:54 VanessaE what mods are installed?
19:55 VanessaE anything at all that could be creating these entities?
19:55 sol_invictus is there any way to see object creation calls?
19:55 VanessaE I expect you'll have to add a line or two of debug output to the engine for that
19:57 sol_invictus I can't think of a mod creating these entities
20:00 sol_invictus what exactly is object?
20:00 VanessaE ?
20:01 VanessaE oh.
20:01 sol_invictus does this term include anything but entities?
20:01 VanessaE um.
20:01 VanessaE actually I think it's just entities isn't it?
20:02 sol_invictus that's how I understand it as well
20:02 sol_invictus making sure I'm not missing something
20:04 VanessaE well players too, but I doubt the engine is creating dozens of those out of the aether.
20:04 sol_invictus ah yes
20:05 sol_invictus why they can't fix he problem with player removal
20:05 VanessaE *shrug*
20:05 VanessaE I guess that's been left to ShadowNinja to fix since he caused it
20:06 ShadowNinja VanessaE: No, I didn't cause it.  My changes may have made it more obvious though.
20:06 sol_invictus mt definitely needs more core devs
20:06 VanessaE ShadowNinja: ok.
20:07 VanessaE ShadowNinja: fix it anyway ;)
20:07 ShadowNinja sol_invictus: Maybe, but who would be add?  Good core devs are hard to find.
20:07 ShadowNinja we*
20:07 sol_invictus ShadowNinja: yeah I see. just saying.
20:08 sol_invictus I was thinking that maybe more attention to mt in general could help?
20:08 sol_invictus we (LL owners) are planning to make some advertisement
20:09 sol_invictus we think that generally, presense of good servers should help drog more devs to this project
20:10 sol_invictus correct me if I am wrong
20:16 sol_invictus what is a particle spawner?
20:16 sol_invictus is it an entity as well?
20:17 VanessaE it does use entities but they're client-side only
20:17 sol_invictus - means they are not saved on map whatsoever?
20:18 sol_invictus just sent to client?
20:18 VanessaE means the server tells the client to start spawning them and destroying them in realtimwe
20:19 VanessaE -w
20:19 VanessaE they are not saved in the map.
20:19 sol_invictus and still
20:19 VanessaE same for the add particle call.  the server tells the client to create the entity, lets it persist for a bit, then destroys it.  the server doesn't store anything about it.
20:20 VanessaE in both cases the client handles it entirely on its own
20:20 sol_invictus why the heck /clearbjocts is not removing these objects?
20:20 VanessaE I have no idea but I had the same trouble
20:20 VanessaE /clearobjects, come back right after, and they're still there, possibly even MORE of them than there were before.
20:20 sol_invictus I don't know how to find out why remigration helps
20:21 VanessaE and yet there's nothing visible in the world to imply that they're there except that if you drop something from your inventory, it gets deleted by the "too many objects" code.
20:21 sol_invictus for some reason these messages are referring always underground nodes
20:21 VanessaE (worldedit's [1] and [2] and checkerboard markers similarly get deleted)
20:22 VanessaE not always
20:22 VanessaE for me, the errant location was in the air
20:22 VanessaE just above the ground to be more specific.
20:22 VanessaE 18:54:14: ERROR[ServerThread]: ServerEnv: Trying to store id=645 statically but block (-43,1,-28) already contains 11255 objects. Forcing delete.
20:23 sol_invictus right, not always
20:23 sol_invictus mostly, for me
20:23 VanessaE nothing there on that map but terrain, and some old house a few dozen meters away
20:23 sol_invictus I got messages for overground blocks as well
20:23 sol_invictus >11255 omg
20:23 VanessaE yeah.
20:24 VanessaE and my servers' limit is 500.
20:25 sol_invictus okay
20:25 T4im is it possible those entities are held up within solid nodes, so that you dont see them?
20:26 sol_invictus if there is no way to see calls in the logs, no way to list objects in a block...
20:26 sol_invictus shouldn't it be implemented?
20:27 sol_invictus maybe names of these objects could help
20:27 kahrl we need a pymtlevel
20:27 sol_invictus T4im: i tried to dig all the place around, nothing
20:28 kahrl for obj in map.block(-43,1,-28).static_objects: print(obj.name)
20:28 khonkhortisan joined #minetest-dev
20:28 sol_invictus oh, that's cool
20:28 sol_invictus I will try tomorrow
20:28 VanessaE T4im: even if they were, they shouldn't be re-created continuously.
20:35 sol_invictus I wonder if it's only us having this problem?
20:35 sol_invictus VanessaE maybe other owners are not paying attention?
20:35 VanessaE idk
20:36 sol_invictus because this object replication issue seems to be the reason of the lags
20:36 sol_invictus and I haven't seen a non-laggy server on list
20:36 T4im last time i've seen entities duplicate was after setting up a quarry horribly wrong.. at first it was just the output of the quarry crashing the server, but after the restart there were quite a lot more entities around, than there should have been.. especially within nodes.. lava makes a horrible entity trash :D
20:36 T4im but i guess thats related to the crash as well then
20:38 sol_invictus well, the problem is I don't have mods thot could obviously create those objects
20:38 sol_invictus I even disabled tho mobs
20:44 T4im hm.. signs_lib does spawn entities too afaik.. maybe you have 'rogue sign'? ;)
20:44 VanessaE once.
20:44 VanessaE it spawns an entity one time for each sign and then goes idle.
20:46 sol_invictus yes, I don't think signs is to blame. anyways, I'm going to sleep
20:46 sol_invictus see you all later
20:46 T4im good night, sol
20:46 sol_invictus ty
20:51 ImQ009 joined #minetest-dev
20:55 RealBadAngel VanessaE, Kahrl, make highlighting menu setting?
20:56 VanessaE yeah
20:56 kahrl sure
20:56 VanessaE a spinbox or something like that
20:56 VanessaE (highlight, selectbox, both)
21:18 RealBadAngel kahrl, VanessaE, btw, when playing with just vertices i can animate them too
21:18 RealBadAngel make the node actually shrink and grow a bit
21:19 VanessaE interesting idea, so long as it's subtle
21:21 ShadowNinja RealBadAngel: Sounds prone to messing faces drawing, like http://i.imgur.com/a3gSxvv.png
21:25 ShadowNinja missing*
21:25 ShadowNinja ^ That was made with waving leaves.
21:25 ShadowNinja (With fancy_leaves off of course)
21:25 RealBadAngel ShadowNinja, interesting, will try to reproduce it now
21:25 VanessaE ShadowNinja: I can't reproduce that.
21:25 VanessaE wait, fancy off.
21:25 VanessaE ah, yep, I can reproduce that.
21:26 loggingbot_ joined #minetest-dev
21:26 Topic for #minetest-dev is now Minetest core development and maintenance. Chit-chat goes to #minetest. Consider this instead of /msg celeron55. http://irc.minetest.ru/minetest-dev/ http://dev.minetest.net/
21:28 ShadowNinja RealBadAngel: Also happens with water top face, one minute...
21:29 RealBadAngel only when you make them solid
21:29 ShadowNinja RealBadAngel: http://i.imgur.com/mUHqETz.png
21:29 VanessaE ShadowNinja: that's a rather old bug
21:30 VanessaE been there ever since new style water was in
21:31 RealBadAngel i wasnt aware of it, never using soild leaves and water
21:31 ShadowNinja ^ The water bug happened before too, which is why the lowering code was moved out of shaders.
21:31 VanessaE I'm kinda surprised no one's addressed that one.
21:31 RealBadAngel this is not shaders bug
21:31 RealBadAngel shaders just make it visible
21:32 ShadowNinja RealBadAngel: Oh, and: http://i.imgur.com/WyYVcIG.png
21:32 VanessaE ShadowNinja: already reported that one :)
21:32 ShadowNinja It happened with the old water lowering shaders too, but not with the in-engine water lowering code.
21:33 RealBadAngel what am i seeing at the last one?
21:33 ShadowNinja RealBadAngel: The bottom vertecies of the water are lowered too, into the node below.
21:33 VanessaE RealBadAngel: bottom coordinates of a node under the influence of the water surface shader should not move.
21:34 RealBadAngel first heard that something moves under influence of water
21:34 VanessaE RealBadAngel: I've mentioned this before.
21:35 RealBadAngel that cannot happen at all
21:35 VanessaE it does.
21:35 VanessaE :)
21:35 VanessaE always has.
21:35 RealBadAngel only moving stuff is water or leaves
21:35 RealBadAngel and plants
21:35 ^v joined #minetest-dev
21:35 VanessaE it's the water that moved.
21:35 RealBadAngel moved what?
21:35 VanessaE the bottom surface/vertexes of the water node are moved down to follow the movement of the top surface
21:36 VanessaE as the top surface of the water wavers around, so does the bottom surface
21:36 VanessaE (if you can call it a surface, since it's just the bottom edges of the node's sides)
21:37 RealBadAngel thx to that you have waves on shore
21:38 VanessaE only the top surface movement creates the waves.
21:38 VanessaE the bottom edges of those nodes are still hidden under the surface of the sand et al.
21:38 RealBadAngel thats not true
21:39 RealBadAngel if bottom were not moving you wont be able to see clear sand
21:39 ShadowNinja RealBadAngel: You sholdn't be moving the bottom four vertecies.
21:40 ShadowNinja verticies*
21:40 VanessaE wrong again RealBadAngel.  I just now checked.
21:40 ShadowNinja (vertices*?)
21:41 VanessaE vertexes. :P
21:41 RealBadAngel there are no such thing as four bottom vertices
21:41 VanessaE RealBadAngel: screenshot:
21:41 VanessaE http://digitalaudioconcepts.com/vanessa/hobbies/minetest/screenshots/Screenshot%20-%2009072014%20-%2005%3a41%3a56%20PM.png
21:41 VanessaE that's flowing water there.
22:14 loggingbot_ joined #minetest-dev
22:14 Topic for #minetest-dev is now Minetest core development and maintenance. Chit-chat goes to #minetest. Consider this instead of /msg celeron55. http://irc.minetest.ru/minetest-dev/ http://dev.minetest.net/
22:17 RealBadAngel so you cannot expect to assign that to whatever node and expect reflections vertically or underground
22:18 RealBadAngel shader will work under 2 conditions, a) it is water node b) its top surface is at ocean level
22:21 RealBadAngel however i can see no reason why modder couldnt change its name
22:21 RealBadAngel im using internal name for it
22:26 VanessaE the NAME is the whole argument.
22:26 VanessaE it cannot and must not be locked to default:water_*
22:27 VanessaE but at the same time it must be able to be applied to any node that sits at sea level and which is otherwise defined as a liquid
22:27 VanessaE same reflection/etc applied to all
22:27 VanessaE just the color changes
22:27 VanessaE that alone would satisfy 99% of modders' complaints I think
22:28 VanessaE shader should treat any node it finds at sea level that is a liquid (and that isn't lava) as being a candidate for this shader
22:33 RealBadAngel shaders never "detects" nodes
22:33 RealBadAngel shaders are being assinged to nodes
22:33 RealBadAngel by their drawtypes
22:33 VanessaE you know what I meant.
22:35 RealBadAngel technically it will propably look like that: liqiud drawtypes will be separated
22:35 RealBadAngel into general liquids, and water
22:35 RealBadAngel whatever you will assign to water drawtype will become water
22:36 RealBadAngel so i wont care how you will name your water, be it superdefault:milk ;)
22:37 VanessaE heh
22:37 RealBadAngel but it will look like water if it will use this drawtype :P
22:37 VanessaE well the point is that it better sure as hell look like a big ocean of milk :)
22:37 RealBadAngel as i mentioned you will be propably able to tint the water
22:38 RealBadAngel or give it another pertrurbation map for waves
22:38 VanessaE then there is probably no real issue here.
22:38 RealBadAngel but then the modding abilities ends
22:38 VanessaE you're sitting here making it sound like we can only ever have exactly one kind of water etc :)
22:38 VanessaE s/water/water-like liquid/
22:38 RealBadAngel i mean ofc the look of the water
22:39 VanessaE will the milk be white?
22:39 RealBadAngel another properties you can change as you wish
22:39 VanessaE will it ripple and glisten in the sun?
22:39 RealBadAngel propapbly yes
22:39 VanessaE can I have a lake of water next to it doing the same thing with the same shader?
22:39 RealBadAngel no
22:39 VanessaE ok, what's the failure mode then?
22:39 VanessaE what happens if the modder does exactly that?
22:40 RealBadAngel idk yet
22:40 VanessaE haha
22:40 RealBadAngel well i do know
22:40 RealBadAngel both will look the same
22:40 RealBadAngel theres one shader
22:41 kahrl does it even have to be another drawtype? couldn't NDT_LIQUID check if <texture>_perturbation.png exists and if so apply the new shader?
22:41 VanessaE so the tint applied to one gets used to both?
22:41 kahrl (like the way normal maps work)
22:41 VanessaE for both*
22:41 RealBadAngel tinting is part of the algorithm
22:41 VanessaE that didn't answer my question
22:41 VanessaE the tint is specified where?  in the node def?
22:42 RealBadAngel no, in the shader
22:42 VanessaE how do I tell the shader that my milk lake is white?
22:42 RealBadAngel you can pass that value on shader compile time
22:42 VanessaE WHAT?
22:42 VanessaE my milk is starting to turn into cheese..
22:42 RealBadAngel when all the shaders are created
22:43 VanessaE ok and how exactly is that value passed to the shader?
22:43 RealBadAngel read from nodedef
22:43 VanessaE by what API function or call or parameter is it given? :)
22:43 RealBadAngel for example
22:43 VanessaE *heddesk*
22:43 VanessaE [09-07 18:43] <VanessaE> the tint is specified where?  in the node def?
22:43 VanessaE [09-07 18:44] <RealBadAngel> read from nodedef
22:43 VanessaE *heddesk*
22:44 RealBadAngel by now it is only in shader :P
22:44 RealBadAngel but can be
22:44 VanessaE it will have to be
22:44 RealBadAngel ofc, but still
22:44 VanessaE then what will happen?
22:44 RealBadAngel theres just one such shader
22:44 VanessaE two nodes pass this value?
22:44 VanessaE last passed is the one that is used?
22:44 RealBadAngel and wont get multiplied to serve another nodes
22:44 VanessaE *shakes head*
22:45 VanessaE this won't do.
22:45 VanessaE modders will wring you dry if you do that :)
22:45 VanessaE with lava, you can get away with it.
22:45 RealBadAngel are you aware of it that mt has about 60 shaders already?
22:45 VanessaE with "water" you can't, because it's more than just water :)
22:45 VanessaE I am now.  I figured it was closer to a dozen
22:47 RealBadAngel each dtawtype X material type = number of shaders
22:47 RealBadAngel so, thats the way for your node to use wanted shader
22:48 RealBadAngel you have to pick correct drawtype and material
22:48 VanessaE I wasn't talking about adding another shader.
22:48 VanessaE I was talking about adapting the shader to read its settings in realtime for the piece of mesh it's operating on
22:48 RealBadAngel but
22:48 RealBadAngel liqiuds are exceptions
22:49 RealBadAngel they simply do have different code
22:49 RealBadAngel so water shader is completely different from lava one
22:50 RealBadAngel you wont be trying to make water look like lava and vice versa, wont you?
22:50 VanessaE of course not.
22:50 VanessaE I don't even create new liquids
22:50 VanessaE but plenty of modders do
22:50 RealBadAngel how could you assign lava shader to lava node?
22:50 RealBadAngel by checking if its called cheese?
22:50 RealBadAngel or damn lava?
22:50 VanessaE no.
22:51 VanessaE I was thinking more like passing raw colors etc to the shader
22:51 VanessaE it doesn't need to know node names.
22:51 VanessaE it just needs to know that {123, 456, 789} needs a base color of #431256
22:51 RealBadAngel its shader that make it looks like lava not modder that gives it a name
22:51 ^v joined #minetest-dev
22:51 RealBadAngel same applies to water
22:51 VanessaE you're not listening to me
22:52 VanessaE it doesn't need to know nodenames.  it just needs to know that {123, 456, 789} needs a base color of #431256.  compile that list when you build the mesh for display.
22:52 RealBadAngel you want me to make it moddable
22:52 RealBadAngel i say it will be just slightly moddable
22:52 RealBadAngel but you cannot turn water into milk completely
22:52 VanessaE the only thing that needs to be moddable is the color and MAYBE the perturbation normalmap.
22:52 RealBadAngel or lava into cheese
22:53 VanessaE what? no Velveeta rivers? ;)
22:53 VanessaE when you build the mesh, you have the node names then, right?
22:53 RealBadAngel water shader is meant to do realistic water, nothing less nothing more
22:53 VanessaE I mean the regular mesh
22:54 VanessaE yes or no?
22:54 RealBadAngel using it for something another is just plain stupid
22:54 RealBadAngel and just wont work any good
22:54 VanessaE it's not stupid, because it's not just water.  it's every low-viscosity liquid in every mod out there.
22:55 RealBadAngel more important for me are drawtypes
22:55 RealBadAngel not the node names
22:55 VanessaE yes
22:56 RealBadAngel and i will pick the water shader on the specific drawtype
22:56 VanessaE but with node names is the implication that the node looks different somehow
22:56 VanessaE even if all you can do is apply a new color and perturbation map, you have to be able to do that
22:56 RealBadAngel by now, yes
22:56 RealBadAngel because there are no special drawtypes yet
22:56 RealBadAngel so lava and water are using the same
22:57 blaise don't we need a cow, and some hay to turn water into milk?
22:57 RealBadAngel so only way for me to distinct them are the names
22:57 VanessaE blaise: nevermind.
22:57 * blaise hides
22:57 kahrl cowhides?
22:58 RealBadAngel but when i code new drawtype, i wont pay no shit how modder will name the water
22:58 VanessaE RealBadAngel: which is why I said to compile a table of liquid nodes.  at most it'll only be 20k or so per mapblock if you do it right.
22:59 VanessaE every node in the mapblock that is a liquid of some kind --> coords in a table --> color #123456 or a tag indicating that it's lava
22:59 RealBadAngel if he decide to have default:milk with drawtype NDT_WATER its his problem
22:59 VanessaE read from that table in your shader, apply those colors as you step through each piece of the mesh
22:59 VanessaE (or switch shaders if the lava flag is set, whatever)
23:00 RealBadAngel you cannot pass such things to shaders
23:00 VanessaE why not?
23:00 VanessaE you figured out how to pass other stuff to them
23:00 RealBadAngel because its impossible?
23:00 VanessaE you can't pass a simple array of integers?
23:00 RealBadAngel i cannot pass to them even 3 vectors per mesh and you are talking bout 20k tables? lol
23:01 RealBadAngel i can compile shaders with some predefined values
23:01 RealBadAngel but cant send anything to them when rendering
23:01 kahrl perhaps it's possible to maniulate the vertex colors to account for tints?
23:02 RealBadAngel irrlicht doesnt supply such things
23:02 VanessaE fuck irrlicht
23:02 VanessaE go bare opengl if you have to
23:02 VanessaE :)
23:02 RealBadAngel irrlicht makes opengl shaders aviable
23:02 RealBadAngel their implementation sucks
23:02 RealBadAngel we are using irrlicht
23:03 RealBadAngel kahrl, thats why i removed finalcolorblend from shaders
23:03 RealBadAngel to have 3 bytes at my disposal
23:04 VanessaE http://irrlicht.sourceforge.net/forum/viewtopic.php?t=39219
23:04 VanessaE looks like irrlicht can do this.
23:04 VanessaE unclear what the limit is though
23:05 RealBadAngel that wont work, tried those things
23:05 RealBadAngel first of all, not all cards would support that
23:05 RealBadAngel and mostly all opensource drivers will fail
23:05 VanessaE kahrl: good idea
23:06 RealBadAngel VanessaE, such shaders will not and wont be ever mixed
23:06 VanessaE well I give up.
23:07 RealBadAngel can you just listen to me?
23:07 VanessaE I am listening.
23:07 RealBadAngel water shader is using 4 out of 4 aviable textures
23:07 VanessaE but what you propose will require every game in existence to be modified.
23:07 RealBadAngel i mean texturing units
23:07 VanessaE and if you just change the default liquid draw type, you will break every liquid in existence (except water).
23:08 RealBadAngel refraction texture, reflection texture, depth texture and perturbation texture
23:08 RealBadAngel theres no way for such shader to serve anything else but water
23:08 RealBadAngel i say you can tint the water which is usually made blueish
23:09 RealBadAngel by giving another tint color
23:09 RealBadAngel but thats all what you can do with look of water
23:09 RealBadAngel rest is up to complex math
23:09 VanessaE but then no other liquid can be defined and still be able to glisten and wave and ripple.
23:10 RealBadAngel as i said, there is even no water texture
23:10 RealBadAngel all is CALCULATED
23:11 RealBadAngel you want to mod the water? write another shader and replace it for christ sake
23:11 kahrl do all of these textures use all channels?
23:11 kahrl otherwise they could be combined
23:11 RealBadAngel we are talking bout huge textures
23:11 kahrl so?
23:11 RealBadAngel rendering screens
23:12 RealBadAngel propably they could be combined, but then reading from them would be pain in the ass
23:13 kahrl ah, so they are dynamically updated with an actual render of the world
23:13 kahrl nvm then
23:13 RealBadAngel yes
23:13 RealBadAngel 3 of them actually
23:13 RealBadAngel perturbation map is static
23:14 kahrl is it grayscale?
23:14 RealBadAngel its a normalmap
23:14 kahrl ah, okay
23:17 RealBadAngel i will see if i will be able to make those texture aviable for more instaces of water shader
23:18 RealBadAngel i doubt that
23:18 VanessaE just go with your existing idea then
23:18 VanessaE water-only shader, new drawtype
23:18 RealBadAngel but if it will be possible maybe different couloured waters at the same time will be possible
23:18 VanessaE sure hope old clients handle it okay
23:19 RealBadAngel thats not my idea
23:19 RealBadAngel this is how its done everywhere
23:19 kahrl perhaps you can abuse the vertex normals to transfer the tint color
23:19 RealBadAngel even irrlicht has very specific kind of node
23:19 RealBadAngel water surface
23:19 kahrl since, if the water surface shader runs, you know that the normal had to be (0,1,0)
23:20 RealBadAngel http://irrlicht.sourceforge.net/docu/example008.html
23:20 RealBadAngel kahrl, yup
23:21 RealBadAngel im gonna use that in such cases
23:21 RealBadAngel VanessaE,  node = smgr->addWaterSurfaceSceneNode(mesh->getMesh(0), 3.0f, 300.0f, 30.0f);
23:21 RealBadAngel this is how one can add water in irrlicht
23:22 RealBadAngel as you can see its called water, and will look like water ;)
23:22 RealBadAngel also only at y=0
23:28 RealBadAngel btw, playing now with node highlighting and without selection boxes
23:28 RealBadAngel effect is cool
23:33 RealBadAngel hmm, i can even think of extending this
23:34 RealBadAngel make with similar effect placement prediction
23:35 RealBadAngel yup, gonna code that
23:39 VanessaE that'll be hard.
23:40 VanessaE (given how many ways there are to change the node after it's placed)
23:40 VanessaE what have you got in mind?
23:40 ImQ009 joined #minetest-dev
23:59 * VanessaE pokes RealBadAngel

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