Minetest logo

IRC log for #minetest-dev, 2016-01-19

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

All times shown according to UTC.

Time Nick Message
00:01 eliemichel left #minetest-dev
00:17 Ritchie joined #minetest-dev
00:45 Ritchie joined #minetest-dev
01:18 Lunatrius joined #minetest-dev
01:50 nolsen joined #minetest-dev
02:14 RealBadAngel sofar, here?
02:30 mangeurdenuage joined #minetest-dev
02:46 sofar RealBadAngel: sort of, what's up?
02:46 RealBadAngel about bf culling again
02:46 RealBadAngel that thing is introduced in protocol version 17
02:47 RealBadAngel but somehow broken
02:47 RealBadAngel lemme show you something
02:48 RealBadAngel https://github.com/minetest/minetes​t/blob/master/src/nodedef.cpp#L941
02:48 RealBadAngel for regular tiles its set in code, for special tiles its being read from tiledef only
02:49 RealBadAngel that should be somehow fixed, like setting it once with code and alter it when nodedef is set to a different value
02:49 RealBadAngel for both sets of tiles
02:50 sofar we can change
02:50 sofar case NDT_MESH:
02:50 sofar to
02:50 sofar f->solidness = 0;
02:50 sofar and then NO break
02:50 sofar and NO f->backface_culling = false;
02:51 RealBadAngel but you are making changes to NDT_MESH only, while "backface_culling" in tiledef is general setting for all the drawtypes
02:51 sofar whooops didn't see the end of the switch
02:52 sofar grmbl I hate redoing PR's to fix other people's bugs :P
02:52 RealBadAngel hehe
02:53 RealBadAngel its quite old, but i suppose it was designed so
02:53 RealBadAngel that flag was propably meant only for water nodes and nothing more
02:54 RealBadAngel and it was way before we had such fancy drawtypes as meshes ;)
02:55 RealBadAngel on the other hand bugs are sometimes useful, thx to wield mesh hunt ive fixed rendering to texture for postprocessing :)
02:57 RealBadAngel that means in fact i could apply now water reflections :)
02:57 RealBadAngel how neat that could be? :)
03:09 sofar ok so this isn't out of the woods yet
03:09 sofar backface_culling inside tiles seems to be enabled by default?
03:09 sofar I can't seem to turn it OFF
03:09 sofar lol
03:10 RealBadAngel default is true i think
03:10 sofar yeah I'll figure it out
03:10 RealBadAngel for sure
03:10 sofar at least, I think I can
03:10 RealBadAngel tiledef.backface_culling = getboolfield_default(
03:10 RealBadAngel L, index, "backface_culling", true);
03:11 red-001 joined #minetest-dev
03:11 RealBadAngel so if you dont specify it at all, it will hold true
03:11 sofar oh we never read the tiledef culling
03:11 sofar gotcha
03:12 RealBadAngel so if if its set to "false" it means that modder altered it
03:12 sofar that doesn't work
03:12 sofar wait
03:12 * sofar tries st else
03:12 RealBadAngel you have to apply that around line #941
03:12 ShadowBot https://github.com/minetest/minetest/issues/941 -- Index the player list from minetest.get_connected_players() with player names by ShadowNinja
03:13 RealBadAngel su bot ;)
03:14 sofar still something not right, if I just rely on f->tiledef[j].backface_culling, it still is always enabled even if my mod disables it for a tile
03:15 sofar afk 1yr old girl needs attention
03:15 RealBadAngel hold on a sec
03:15 RealBadAngel something like that should work: http://pastie.org/10693785
03:16 sofar Website is offline No cached version of this page is available.
03:16 sofar Error 522
03:16 RealBadAngel if tiledef's is false it means that it is altered, so override nodedef's set one
03:16 RealBadAngel wrrr, wait
03:17 sofar im sure i have the same change
03:17 RealBadAngel http://pastebin.com/fvvcgHgz
03:18 sofar https://gist.github.com/sofar/b435a32d14cf70fbbfd5
03:18 sofar afk... cant code when hugs are needed...
03:19 RealBadAngel ok, take ur time
03:19 frustrated joined #minetest-dev
03:19 frustrated howdy
03:19 frustrated i'm having a strange problem
03:20 frustrated a mod i'm writing had a bug on line 185 of some certain file in it
03:20 frustrated i fixed the bug, and added logging above that line, yet the game keeps crashing with the same error on the "old" line
03:20 frustrated i even renamed the file and the bug keeps happening with the old file name and old line number
03:21 frustrated but if i delete the file altogether the mod won't load
03:21 frustrated if i restore the file, even with a new name, the bug persists
03:21 frustrated is there some sort of lua cache?
03:21 frustrated this thing is driving me mad
03:23 sofar paste the code/bug
03:25 frustrated http://pastebin.com/be5uCV5Z
03:26 frustrated behavior.lua doesn't even evist anymore, and all the paths are correct
03:26 sofar are you sure it's not running your mod from a different mod folder?
03:27 frustrated it's the only one one my whole system
03:27 frustrated the bug suddenly started happening in the middle of development, with no unusual activity on my part
03:29 sofar are you puttnig mod inside your compiled minetest tree?
03:29 frustrated i compiled with RUN_IN_PLACE, then put the mode in /mods of the minetest folder
03:29 frustrated *mod
03:30 sofar and it's not reading mods from ~/.minetest/mods/ or anything?
03:30 frustrated nope. i'm on gentoo. that folder doesn't even exist
03:31 sofar how about /usr/games/minetest or anything?
03:31 sofar have you tried `locate behavior.lua` ?
03:32 frustrated locate returns nothing
03:32 sofar find / -name behavior.lua
03:32 sofar crude, lol
03:32 frustrated here's a new development:
03:32 frustrated i made a new world and the bug is gone
03:32 frustrated but in the old world it's there
03:33 sofar worldmods/ ?
03:33 RealBadAngel have you checked world folder?
03:33 frustrated nothing in the world folder
03:34 frustrated the function is assigned to a variable in a table that for simple_mobs
03:34 frustrated is the function just getting pickled somehow?
03:36 RealBadAngel theres no cache for mods, you have this mod installed and enabled for the previous world
03:36 RealBadAngel when the error is gone in the new one it means that mod is not enabled propably
03:36 RealBadAngel so you have just find the folder with your mods
03:36 frustrated no, i enabled the mod in the new one and it behaves as expected
03:37 sofar load your old world
03:37 frustrated sofar: still crashes
03:37 sofar is there a worldmods folder in that world?
03:37 frustrated nope
03:38 sofar <sofar> find / -name behavior.lua
03:38 sofar did that give you anything?
03:38 frustrated it's taking a while, i have a lot of files
03:39 RealBadAngel btw, it looks like a mod bug, the function is called on entity
03:39 RealBadAngel there shall be check for nil on params added
03:39 frustrated data.mob is a table not an entity in that code
03:40 frustrated but i should change it if the name was not clear
03:40 sofar dammit rba
03:41 frustrated when an entity is "saved" to the world file, what happens to anonymous functions on it?
03:41 frustrated are they serialized?
03:42 RealBadAngel function mkFindNodeNear(sel, _dist)
03:42 RealBadAngel if sel == nil or _dist == nil then return "failed" end
03:42 frustrated sofar: the find command turned up nothing (i renamed the original behavior.lua file)
03:42 RealBadAngel that should fix the mod's bug
03:42 frustrated i didn't add checks because they are called with constants in only one place
03:43 RealBadAngel its wise to check for nils in mods
03:43 RealBadAngel shitload of mod bugs are from that
03:43 frustrated sure, but the thing where it was erroring on a file that didn't exist anymore is weird
03:44 sofar FINALLY
03:46 frustrated thanks for the help, i think it was just me not understanding lua very well :)
03:46 RealBadAngel sofar, got it working?
04:41 sofar RealBadAngel: yeah, I think i got it
04:42 RealBadAngel can i see the code changes?
04:42 sofar I just got back from kiddo bedtime, sec
04:56 sofar https://github.com/minetest/minetest/pull/3578
04:56 sofar update PR
04:56 sofar I'm just relying on tiledef to provide the value, which works
04:56 sofar the trick was the damn tiles = {} syntax
04:56 sofar believe it or not
04:57 sofar that had me confused more than anything
04:58 sofar RealBadAngel: I don't see why we want to invert logic for some node drawtypes
04:58 RealBadAngel actually i pasted you example with syntax needed in my comment on the PR before ;)
04:59 RealBadAngel its general property, it doesnt mean some usages may be wise
04:59 RealBadAngel but better to have it that way than restricting it for some nodes imho
05:01 RealBadAngel hmmm, atm you have set it to tiledef only
05:01 RealBadAngel which means you have disabled all the nodedef.cpp set values
05:01 RealBadAngel point was to allow override those ones not to trash them
05:03 sofar right
05:03 sofar yeah I'm just quickly testing with my other meshes and I'll want to change this
05:04 RealBadAngel i see
05:05 sofar actually
05:06 sofar your change makese no difference
05:06 sofar and it can't I think
05:06 sofar follow me here
05:06 sofar formerly
05:06 RealBadAngel go on
05:06 sofar meshes, always disabled
05:06 sofar so now we want to enable it per specific mesh tiledef
05:06 sofar but it's enabled by default there
05:07 RealBadAngel we need 3rd state? ;)
05:07 RealBadAngel lemme think a moment
05:07 sofar no we need to tell lua to disable culling in tiledefs for meshes
05:07 sofar by default
05:07 sofar and then just use my patch
05:07 sofar that maintains the default settings
05:08 RealBadAngel so just inverse my logic
05:08 sofar you can't fix this in nodedef.cpp alone
05:08 RealBadAngel if false is default, true will mean modified and have to be used
05:09 RealBadAngel tiledef.backface_culling = getboolfield_default(
05:09 RealBadAngel L, index, "backface_culling", true);
05:09 RealBadAngel you need to change that in c_content.cpp
05:09 sofar ah, yes, that's a way to do it
05:09 sofar very good indeed
05:09 RealBadAngel but hold on
05:10 RealBadAngel if we have true in nodedef and wanna disable it?
05:10 RealBadAngel same shit :)
05:10 sofar same problem
05:10 sofar yes, so we're back to always using the tiledef setting, but setting it to false for nodes where it's currently false
05:11 sofar bool culling_default = (NDT_MESH) ? false : true;
05:11 sofar something like that
05:11 RealBadAngel lemme have a cofee, need that for better thinkin
05:11 RealBadAngel atm i do have my brain full of texture tear problem and slabs ;)
05:15 RealBadAngel i think that "modified" flag is needed
05:16 sofar no, it's not that hard
05:16 sofar hold on
05:26 sofar someone explain me the difference between "visual = "mesh"" and "drawtype = "mesh""
05:34 sofar you know, this whole bloody mess, is pissing me off
05:34 sofar it's all about how the hell lua gets parsed
05:34 sofar because effin shit
05:34 sofar tiles = { "foo.png" }
05:35 sofar is not the same as
05:35 sofar tiles = {{ name = "foo.png" }}
05:35 sofar that's the whole damn problem
05:36 sofar I'll see if I can fix it up, tho
05:38 RealBadAngel visual i think is for entities
05:38 RealBadAngel drawtype ofc for nodes
05:40 RealBadAngel it shall be the same, i mean all the 6 tiles shall be filled with this one
05:40 sofar I've got a solution now
05:45 Dragonop joined #minetest-dev
05:47 RealBadAngel need to reboot and check something brb
06:35 Hunterz joined #minetest-dev
06:39 Player_2 joined #minetest-dev
07:03 Calinou joined #minetest-dev
07:06 DFeniks joined #minetest-dev
07:23 nrzkt joined #minetest-dev
07:23 Obani joined #minetest-dev
07:29 sofar LOL
07:29 sofar signlike... is used by? ladders
07:29 sofar what are signs? nodeboxes
07:29 sofar seeds on the ground?
07:29 sofar signlike!
07:40 sofar https://github.com/minetest/minetest_game/pull/793
07:40 sofar enough PR's for today
07:40 sofar I'm done, have a good one
07:59 red-001 joined #minetest-dev
08:04 Darcidride joined #minetest-dev
08:07 red-001 how do I get the default value for a setting in C++
08:10 celeron55 red-001: in no way without modifying Settings to support it
08:11 red-001 so is it ok to hardcode defaults or should I change settings
08:15 kahrl red-001: what are you trying to do?
08:16 red-001 and a reset keys to the change keys dialog
08:16 kahrl I see
08:17 kahrl I'd probably add a method to Setting that removes a given setting (and reverts it to its default value, if any)
08:17 kahrl Settings*
08:17 red-001 yes I might do that
08:21 kahrl actually Settings::remove(name) exists
08:22 red-001 doesn't that just remove the setting?
08:22 kahrl yes, isn't that what you need?
08:22 kahrl if a setting isn't defined, the default is used
08:22 red-001 ok then
08:23 johnnyjoy joined #minetest-dev
08:24 kahrl (don't expect its return value to mean anything, I'm pretty sure it always returns true)
08:29 kahrl hmmmm: that ^ was a bug introduced in f2c18511
08:29 kahrl the "delete m_settings[name].group" creates an entry if it doesn't exist, so the erase below it always returns 1
08:31 kahrl it didn't matter until now since nothing in minetest calls Settings::remove, if I checked right
08:31 jin_xi joined #minetest-dev
08:48 hmmmm i do not even remember writing that commit
08:52 hmmmm well that's a simple enough fix (the Settings::remove thing - just use std::map::find, instead of using the convenience operator notation)
08:56 Alduin_ joined #minetest-dev
09:08 kahrl untested: https://gist.github.com/kahrl/3e37088d40f9346196db
09:13 hmmmm lgtm
09:13 kahrl thanks, merging
09:13 hmmmm aah I got a +1 on this https://github.com/kwolekr/minetest/commit​/f8b3395227b2f15ea67844415c96e076f6c097ef
09:14 hmmmm you have any thoughts before I merge?
09:16 kahrl I don't think I know the emerge queue well enough to check that one
09:16 hmmmm it seems inconspicuous enough and it seems to work well... heh... heh...
09:17 hmmmm I'm going to write a unit test for the emerge manager at some point, I promise
09:18 hmmmm later
09:19 kahrl cya
09:20 Megaf joined #minetest-dev
09:38 Ardonel joined #minetest-dev
10:38 blaze joined #minetest-dev
10:56 Darcidride joined #minetest-dev
11:53 proller joined #minetest-dev
12:01 Fixer joined #minetest-dev
12:14 Calinou joined #minetest-dev
12:21 proller joined #minetest-dev
12:27 lezzy joined #minetest-dev
12:33 lezzy Irrlicht: Could not open file of texture:  <= all textures show correct but this fucking error is spamming it to death what is going on, i never had this issue before
12:47 proller joined #minetest-dev
13:00 Megaf joined #minetest-dev
13:01 Lunatrius joined #minetest-dev
13:01 RealBadAngel joined #minetest-dev
13:58 twoelk joined #minetest-dev
14:00 jin_xi joined #minetest-dev
14:01 dfelinto joined #minetest-dev
14:07 H-H-H1 joined #minetest-dev
14:28 Lunatrius joined #minetest-dev
14:53 proller joined #minetest-dev
15:16 paramat joined #minetest-dev
15:18 paramat !tell hmmmm a freeminer schematic commit in case it's useful https://github.com/freeminer/freeminer/comm​it/551eb8515450be4167504f12653d111e09b0ee32
15:18 ShadowBot paramat: O.K.
15:19 proller joined #minetest-dev
15:26 Hunterz joined #minetest-dev
15:33 kaadmy joined #minetest-dev
15:36 proller joined #minetest-dev
15:44 paramat nice looking mars mod https://forum.minetest.net/v​iewtopic.php?f=9&amp;t=13913 < celeron55
15:45 sofar I don't think Jordach noticed I wasn't using entities for the chests
15:46 sofar interesting mod
15:49 RealBadAngel he meant animations
15:50 RealBadAngel since the very start
15:50 RealBadAngel you have made just on/off
15:51 RealBadAngel we cant use animatons for regular nodes
15:51 RealBadAngel and propably never will be able to
15:55 kaadmy sofar: for signs and ladders i use nodeboxes now
15:55 kaadmy looks better and cleaner
15:56 RealBadAngel but anyway, sofar, youre asking the very same questions
15:56 RealBadAngel wonder where that will lead you
16:01 hmmmm joined #minetest-dev
16:02 luizrpgluiz joined #minetest-dev
16:05 twoelk joined #minetest-dev
16:08 paramat luiz we know the cause, RBA will be hopefully be working on a fix. it's only 21-25% drop in FPS, not 70%
16:11 Darcidride_ joined #minetest-dev
16:11 celeron55 there's a massive system load on my VPS and i'm now temporarily disabling a bunch of minetest stuff in order to diagnose it
16:15 RealBadAngel paramat, i will after texture tear problem, inventory meshes
16:15 RealBadAngel atm im workin on texture tear problem
16:17 paramat okay that's cool
16:18 RealBadAngel those problems stand in my way
16:19 RealBadAngel if i fix them i will be able to make reflections
16:19 RealBadAngel so you can bet i will fix them
16:19 Calinou joined #minetest-dev
16:25 rubenwardy joined #minetest-dev
16:36 luizrpgluiz sometimes I wonder if it would be interesting to put an option to choose to play the minetest more processor cores as a non-binding option
16:39 luizrpgluiz I know many developers like more OpenGL, but the game has a bug in the graphical engine that when you open the game in OpenGL 1.2, players can not see the icons of the items in survival mode and creative mode
16:41 sofar RealBadAngel: I'm prefectly happy with mesh nodes - I do not want to do animations as entities right now
16:41 sofar RealBadAngel: if one day mesh nodes can animate, then great
16:43 sofar Having chests behave visually like doors seems entirely coherent and natural to me
16:43 sofar RealBadAngel: plus I managed to get the chest-close sounds perfectly timed with people closing chests too
16:43 sofar even with multiple people looking inside the same chest
16:45 sofar the only sad thing... the formspec mostly obscures the chest as you open it :D
16:45 Hunterz joined #minetest-dev
16:58 RealBadAngel the solution you proposed is imho right in the middle
16:58 RealBadAngel im ok with it
16:59 sofar I think it's fancy enough to make a difference, but simple enough so that it doesn't stand out with the rest of minetest_game
16:59 sofar and on purpose so
16:59 sofar I thought about node animations, and they're cool (I certainly want to learn blender better so I can make those)
17:00 sofar right now I can redraw the chest mesh in maybe 30 minutes
17:00 sofar so I'm getting more proficient in that
17:00 sofar which is fun
17:00 RealBadAngel you can do animations is separate scene nodes
17:00 sofar I know
17:00 RealBadAngel easily
17:00 sofar I made an animation for a different mesh already
17:01 sofar but, that's besides the point
17:02 sofar the things I'm proposing for minetest are things that I think should be in minetest_game
17:02 sofar having a few more mesh nodes in minetest_game will help mod makers show what's possible
17:02 RealBadAngel youre following the pretty same way to mine
17:02 sofar similarly I think we should have 2-3 monsters in minetest_game ultimately
17:02 sofar not 13
17:02 sofar just 2-3 really well-done
17:03 sofar I should perhaps also git commit my .blend files
17:03 RealBadAngel get client side lua first
17:03 sofar right
17:03 sofar perhaps that's what is needed first
17:03 RealBadAngel you have saw proof of concept already?
17:03 sofar no
17:03 RealBadAngel by Jeija
17:04 sofar oh, I know what needs an upgrade first in minetest_game?
17:04 sofar torches :)
17:04 RealBadAngel im talkin client side lua
17:04 RealBadAngel it possible since ages
17:04 sofar I'm sure it is
17:04 luizrpgluiz put monsters back in minetest would be a good idea, but do not need to put in the source code of the game, can be in the same language script
17:04 RealBadAngel back? we never had any
17:04 sofar luizrpgluiz: right, not in C++
17:05 luizrpgluiz yes
17:05 sofar he's just saying "merge"
17:05 RealBadAngel floating sprites do not count
17:06 RealBadAngel sofar, https://github.com/Jeija/mi​netest/tree/clientside_mods
17:07 sofar RealBadAngel: I'm sure it's not difficult
17:07 RealBadAngel ofc not
17:07 luizrpgluiz I know I do monsters in 3D takes work, but I have a friend who can program well in LUA and he made a monster using the 4 horsemen of the apocalypse where it only comes when you have bone that has not yet been removed from the map, and the mod checks that no longer has the same monster like him
17:08 RealBadAngel but propably against the spirit of the mt ;)
17:08 RealBadAngel and its simplicity
17:08 sofar I dunno
17:08 sofar what are you going to have the client-side api do?
17:08 RealBadAngel move things
17:08 RealBadAngel without client asking server
17:09 RealBadAngel mobs, items, carts etc
17:09 sofar how does the server keep track of your position then?
17:09 RealBadAngel dont ask me
17:09 RealBadAngel idk
17:10 RealBadAngel but m$ paid billions for that
17:10 RealBadAngel and indie guys were able to make it
17:11 luizrpgluiz for now I use the windows to play, but Linux for me is the best system to develop something
17:11 Fixer win is degenerating anyway
17:12 RealBadAngel win? i had something like that a few yrs agp
17:13 luizrpgluiz but minetest runs better on Linux than in Windows
17:13 RealBadAngel depends on the drivers sadly
17:13 luizrpgluiz yes
17:13 RealBadAngel nvidia is beter supported
17:14 luizrpgluiz in my notebook I realized that the game had a very good improvement, but of course my laptop is 10 years Ago
17:15 RealBadAngel im said that i  do develop high end candies
17:15 RealBadAngel but i do that on most cheap i3, 4 gb ram, 6 yrs old GTX550ti
17:16 RealBadAngel so i usually want to say "stfu"
17:17 luizrpgluiz My notebook is simple, the configuration is a Pentium dual core, 3GB of ram and Intel HD graphics card
17:17 RealBadAngel 5-6 yrs old gaming platform for coder is like having sex with dinosaurs
17:17 sofar LOL
17:17 sofar painful?
17:17 RealBadAngel they do have STANDARDS to take care of
17:18 RealBadAngel and yet you know those standards are all gone
17:18 RealBadAngel and dinosaurs are exctint already
17:18 luizrpgluiz hehehe
17:19 RealBadAngel but mt HAVE to be compatible with all those all dead poor dinos
17:19 Fixer I usually update every 10 years or so
17:19 Fixer and now you don't need to update at all
17:19 luizrpgluiz the minetest be done in C#,many developers would not be here
17:19 Fixer it is good enough
17:19 RealBadAngel i had an ati card, 2 yrs ago or something
17:20 RealBadAngel AMD dropped drivers for that card then
17:20 RealBadAngel so i wasnt even able to get drivers for it
17:20 Krock joined #minetest-dev
17:21 RealBadAngel it was a few times faster than minetest reference i945m
17:22 RealBadAngel ive "sold" this card to work witch text editors and data sheets at my uncle office
17:23 RealBadAngel that topic about conspiracy has more sence when you stop laughing and think about things goes here
17:23 Obani joined #minetest-dev
17:23 rubenwardy joined #minetest-dev
17:28 Robert_Zenz joined #minetest-dev
17:34 sofar hmm, I have 13 pending PRs
17:34 sofar this is getting out of control
17:34 twoelk joined #minetest-dev
17:41 Fixer joined #minetest-dev
17:43 nrzkt joined #minetest-dev
17:55 paramat left #minetest-dev
18:00 Megaf joined #minetest-dev
18:07 sofar RealBadAngel: client-side modding would be nice for sounds, effects and the like
18:08 sofar RealBadAngel: I've been thinking of adding weather, the effects for that should all be client-side tho
18:08 sofar RealBadAngel: similarly, explosions, fire, etc. could be client side
18:08 sofar RealBadAngel: sound effects
18:13 louiloui joined #minetest-dev
18:14 twoelk actually individuall fixed position sounds should be all client side as they are different for each client - but somehow I thought sounds where allready processed clientside only
18:15 sofar not the scheduling
18:15 twoelk mh - now where is that toilet flush in homedecor
18:16 sofar servers tells client where to play sounds
18:22 twoelk as it should as the position is part of the map but the calculating what is actually heard is calculated by the client, I though (or maybe just hoped)
18:23 rubenwardy Ambient sounds should be client side
18:23 rubenwardy Lua or not
18:24 twoelk can I actually decide in a mod who proccesses something?
18:24 Hunterz joined #minetest-dev
18:24 rubenwardy ?
18:25 rubenwardy What do you mean by who, twoelk
18:25 twoelk client or server
18:25 rubenwardy No. Mods are entirely client side, there is no lua environment on a client
18:25 rubenwardy (There's the main menu, but that is destroyed by the time the client is running)
18:26 twoelk whatabout all the stuff in builtin?
18:26 rubenwardy that's server side
18:27 rubenwardy It's just a hidden mod that always runs first
18:28 twoelk ah, so the client runs lua on sdtartup but blocks lua when connecting tio a server
18:28 twoelk *startup
18:29 rubenwardy The mainmenu of the client runs lua but stops running lua when it starts connecting
18:29 rubenwardy It doesn't block anything
18:31 twoelk so if I flush the homedecor toilet or hear the villages church bell all the calculating of checking and comparing the positions is done by the server that then tells the client how to play the sound from the cache?
18:32 rubenwardy Yes. The server runs a lua command which sends a packet to the client telling it which sound and where
18:33 twoelk I had thought it would be just - soundhere + rangethat - and the client figures out the rest
18:33 rubenwardy I don't understand what you're saying
18:35 twoelk sounds can have a range, right?
18:35 sofar sounds are rendered just like graphics
18:35 sofar the client does all the rendering
18:35 sofar the server says "a sound is here, this loud"
18:35 sofar the client tells openAL to render the sound in that position
18:35 sofar the sound rendering is done in C++
18:36 proller joined #minetest-dev
18:36 sofar what my suggestion is, is to add ambience sounds in client-side lua
18:36 sofar e.g. you take damage - on_client_damage() handler in lua gets called and plays sound and displays special effects
18:36 sofar that's several less packets to the client
18:37 sofar since now the server only needs to send a "damage" event
18:37 twoelk so sounds get handled like client side textures?
18:37 luizrpgluiz left #minetest-dev
18:37 sofar and not a "damage" event, and a "sound" event, and a "effect" event
18:37 sofar sounds get handled just like a node change, or an object move
18:38 twoelk wouldn't that be too general?
18:39 sofar I don't get your question
18:40 twoelk maybe the game has more detailed sounds for special effects
18:41 turtleman joined #minetest-dev
18:42 red-001 joined #minetest-dev
18:42 twoelk might be on another siedtrack but I was just playing with positioning certain sounds in certain places that mingle with each other
18:43 sofar twoelk: obviously the subgame would have to be able to tell the client how and what sounds to play and when
18:43 sofar twoelk: in other words, the client-side lua would be sent to the client by the server when you connect to a server
18:44 twoelk for example I don't just use one -running water- sound but experiment with different ones to give fountains a unique sound character
18:44 sofar twoelk: also, sound assets are already coming from the server, so the client has access to per-subgame sounds
18:44 twoelk or as in sokomines villages use different bells for each church
18:46 red-001 joined #minetest-dev
18:48 dfelinto joined #minetest-dev
18:54 twoelk sofar: I fear I don't get where you want to split the computing
18:54 twoelk the server sends -this damage to that- and the client looks up the sound and effects?
18:55 sofar twoelk: I have a better example
18:55 sofar for instance, the player walks into a water node
18:56 sofar if the player is only feet-deep in water, play a splashy water foorstep sound
18:56 sofar if the player is head-deep, play a "player submerges" sound
18:56 sofar that doesn't need any server side processing
18:56 sofar can all be done client side
18:56 sofar but
18:56 sofar let's take that 1 step further
18:56 sofar suppose you're standing NEAR the water
18:57 sofar and a different player walks into the water
18:57 sofar the client knows a player object walked into water
18:57 Alduin_ joined #minetest-dev
18:57 sofar it knows how deep the other player is
18:57 sofar so it can play the right water sound effect for the other player
18:57 sofar also, it can put splashing particles on the water
18:58 red-001 how would this be used by mods?
18:58 Robert_Zenz joined #minetest-dev
18:58 twoelk you mean it can calculate the right sound (loudness, direction)
18:58 sofar twoelk: no, loudness and direction is calculated by OpenAL
18:58 twoelk wich is clientside
18:58 sofar the difference is that the server doesn't send any sound events to the client
18:59 red-001 doesn't this need client sided lua?
18:59 sofar the client lua code does all the detection of sound events and generate them
18:59 sofar red-001: yes
18:59 sofar red-001: design wise, you'd have a small set of builtin lua client-side code to initialize and run handlers
19:00 sofar red-001: then the subgames would provide most of the code that generates events
19:00 twoelk well sounds pretty much as I had hoped was allready done
19:00 twoelk :-P
19:00 sofar red-001: e.g. it would run each tick to detect things like players walking into a wall
19:00 sofar twoelk: it's all possible now, but not client side - e.g. the server needs to sent all the clients all the events
19:00 sofar which just adds lag, and processing time
19:01 red-001 so we will finally have client sided lua?
19:01 sofar red-001: I'm considering it unavoidable
19:01 red-001 I heard celeron55 started working on it
19:01 red-001 so he might have some code you could use
19:01 twoelk red-001: of course - just nobody knows when
19:02 sofar At this point I have a few other things I want to finish first
19:02 sofar I've got 13 open pull requests
19:03 sofar I'd like to see most of them merged ;)
19:03 * twoelk hopes for the next merging spree
19:03 rubenwardy hm_mm started making a prototype, then c55 said he would
19:04 celeron55 ...then i did the farmesh reboot instead
19:04 celeron55 but we'll see
19:05 sofar celeron55: hehe. as said I've got 1-2 things that I want to work on first after my current waterfall of changes, but client-side lua may be after ;)
19:05 rubenwardy This is cool: https://www.youtube.com/watch?v=nHH8N_lNZzI
19:05 rubenwardy ~web title
19:05 ShadowBot rubenwardy: web title [--no-filter] <url>
19:05 twoelk waterfall with sounds?
19:05 rubenwardy ~web title https://www.youtube.com/watch?v=nHH8N_lNZzI
19:05 ShadowBot rubenwardy: HTTP Error 429: Too Many Requests
19:05 Krock lol
19:05 rubenwardy ShadowBot is the most useless IRC that I've ever interacted with
19:05 ShadowBot rubenwardy: Error: You must be registered to use this command. If you are already registered, you must either identify (using the identify command) or add a hostmask matching your current hostmask (using the "hostmask add" command).
19:05 rubenwardy point proved
19:06 rubenwardy "Rigid-Body Fracture Sound (ACM SIGGRAPH 2010)"
19:06 twoelk lol
19:06 sofar twoelk: hehehe
19:06 Amaz joined #minetest-dev
19:07 * twoelk is dreaming of walking accross a market with lots of sounds mingeling from the right directions and all individually adjustable
19:09 Fixer and farmap is buried in PR...
19:18 luizrpgluiz joined #minetest-dev
19:20 luizrpgluiz left #minetest-dev
19:38 Elinvention joined #minetest-dev
19:41 SilverLuke joined #minetest-dev
19:42 Elinvention joined #minetest-dev
19:43 dfelinto joined #minetest-dev
20:11 CraigyDavi joined #minetest-dev
20:16 red-001 joined #minetest-dev
20:36 Elinvention joined #minetest-dev
20:40 red-001 joined #minetest-dev
21:01 Robert_Zenz joined #minetest-dev
21:13 mangeurdenuage joined #minetest-dev
21:29 red-001 joined #minetest-dev
21:32 kaeza joined #minetest-dev
21:36 red-001 joined #minetest-dev
21:46 rubenwardy joined #minetest-dev
21:53 proller joined #minetest-dev
21:53 paramat joined #minetest-dev
21:54 paramat will merge 3578 3581 very soon
22:01 nrzkt paramat, wait for 3578
22:01 nrzkt i have some comments
22:01 paramat ok
22:02 paramat i'll wait so i can merge the 2 PRs at once
22:16 DFeniks joined #minetest-dev
22:33 nrzkt joined #minetest-dev
22:36 Niebieski joined #minetest-dev
22:37 RealBadAngel sofar, good idea to move defaults
22:37 RealBadAngel that looks ok now
22:52 paramat left #minetest-dev
22:52 Elinvention joined #minetest-dev
23:00 Robert_Zenz joined #minetest-dev
23:10 Megaf_ joined #minetest-dev
23:13 rubenwardy celeron55, 500 Internal Server Error
23:13 rubenwardy on forums.minetest.net
23:14 sofar he was rebooting some stuff
23:14 sofar apparently he had some load issues
23:14 rubenwardy and is now working O_o
23:14 RealBadAngel luckily irrlicht forums are up now
23:15 sofar RealBadAngel: did you edit your github comment?
23:16 sofar RealBadAngel: special_tiles and tiles use the same method, so I think that works now similarly
23:18 RealBadAngel noticed that? lol
23:18 RealBadAngel ive deleted that comment because of water
23:19 RealBadAngel in its case content_mapblock expects hardcoded values in special tiles
23:19 RealBadAngel that should be changed imho, its mess
23:19 RealBadAngel and special tiles shall carry the same flags as regular ones
23:19 Fixer joined #minetest-dev
23:20 RealBadAngel at least by default
23:20 RealBadAngel then we can add that switching tile sets to reduce number of nodedefs
23:22 RealBadAngel as far as i remember only thing that should be added is an alternative light source value
23:23 sofar this change should help at least
23:23 RealBadAngel furnaces active become light sources
23:23 sofar moving more of the tile settings to the lua parsing code makes it more readable
23:23 sofar hmmm that's nice
23:24 RealBadAngel everybody here is crying about high ram usage
23:24 RealBadAngel and things that can reduce it simply are not in
23:24 sofar you should try to split your PRs better
23:25 sofar I know it's hard
23:25 sofar but it's so worth it
23:25 RealBadAngel if a few liner can half the number of for example mesecons nodedefs is definitely worth it
23:25 sofar especially since you depend on it
23:26 RealBadAngel well, i can reanimate that PR now
23:26 RealBadAngel need a break from texture tearing anywyay, its a frustrating work
23:27 RealBadAngel the reason for it is deeply burried, not only slabs are affected
23:27 RealBadAngel its visible on each and every surface, but somehow on slabs just a bit more
23:28 sofar do you want to do some mundane C++ work?
23:29 RealBadAngel oh great, another task? ;) whats that?
23:29 sofar I need a new metadata container in ItemStack, but I hate coding up classes from scratch
23:29 sofar it needs a new lua method
23:29 RealBadAngel why would you need that?
23:30 sofar so you can attach attributes to itemstack items
23:30 RealBadAngel its already capable of storing anything you would ever need
23:30 sofar not in a coherent and c++ safely readable way
23:30 sofar the itemstack meta could also be written from lua as a plain string directly
23:30 sofar it needs separation just like nodemetadata has
23:30 RealBadAngel hmm, i was using it to store whole tables
23:31 sofar :get_meta() ; meta:set_int("name", 120) ; etc.
23:31 sofar it should really have the same design as nodemeta
23:31 RealBadAngel technically you can even store here blobs
23:31 sofar items inside items
23:32 sofar but
23:32 sofar more importantly
23:32 sofar infotext
23:32 sofar and
23:32 sofar description
23:32 sofar are the ones I want to immediately use
23:32 sofar that way we can have named items
23:32 RealBadAngel infotext you already have
23:32 sofar nodedef infotext
23:33 sofar != itemstack metadata infotext
23:33 sofar you can't modify nodedef infotext
23:33 RealBadAngel hold your horses
23:33 sofar I want to rename swords
23:33 RealBadAngel ofc you can
23:33 sofar books with titles
23:33 RealBadAngel thats the lua mod that sets it
23:33 sofar there's only 2 book craftitems
23:34 sofar you can't rename the book
23:34 sofar it's always a "book"
23:34 sofar you can attach a description field in the itemstack metadata
23:34 sofar but the client doesn't know how to display that
23:34 sofar https://github.com/minetest/minetest/pull/3449
23:34 sofar that PR changes that
23:34 sofar except, the use of itemstack metadata is weaksauce
23:35 sofar it needs a full meta backing storage
23:35 sofar a real backing storage like nodemetadata
23:35 RealBadAngel i remember that PR
23:35 sofar with that, we can enchant swords
23:35 sofar make potions with damage values
23:35 sofar all sorts of varied items coming from a single nodedef
23:35 sofar plus renaming books
23:36 sofar or keys, like my example
23:36 sofar basically, I was thinking of splitting NodeMetadata into a proto Metadata class
23:36 sofar and have NodeMetadata inherit it
23:36 sofar that would be patch #1
23:36 ShadowBot https://github.com/minetest/minetest/issues/1 -- GlowStone code by anonymousAwesome
23:36 RealBadAngel LOL
23:37 sofar patch #2 would be to add the new Metadata class to ItemStack
23:37 ShadowBot https://github.com/minetest/minetest/issues/2 -- Burned wood
23:37 RealBadAngel hehehehe
23:37 sofar and #3, tell shadowbot to go fuck himself
23:37 ShadowBot https://github.com/minetest/minetest/issues/3 -- Furnace segfault
23:37 sofar sorry :)
23:37 RealBadAngel that was really good :)
23:38 RealBadAngel it even segfaulted on that fuck ;)
23:38 RealBadAngel but yeah, that would make things easier
23:39 sofar I know what needs to be done
23:39 RealBadAngel all is actually doable atm with lua, except for displaying custom names
23:39 sofar just dont like class deign
23:39 RealBadAngel hmm
23:40 RealBadAngel actually theres a simpler way to have custom tooltips
23:40 sofar well that patch gets the display part already
23:40 sofar that PR
23:40 RealBadAngel lemme check your code and compare it to my idea
23:40 RealBadAngel hold on
23:41 sofar read the PR thread too
23:43 sofar RealBadAngel: your "display infotext of dropped inventory items" could also use this metadata store to retrieve an alternative text
23:43 sofar instead of "a sword" it could display "DragonSlayer 3000(TM)"
23:46 sofar afk

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