Minetest logo

IRC log for #minetest-dev, 2013-03-29

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

All times shown according to UTC.

Time Nick Message
00:00 RealBadAngel i will repeat it once again. you have broken a mod that was a standard for minetest modding. thus you have broken many mods out there
00:00 sapier vanessae are you telling standard is what loudest part of community is using? :-)
00:00 VanessaE sapier: yes.
00:00 RealBadAngel all this without even askin the community
00:00 VanessaE :)
00:00 VanessaE sapier: or more to the point, what is used the most
00:00 sapier oss projects aren't democracy (at least most)
00:00 PilzAdam RealBadAngel, the only thing that is "broken" is that you have double generation of ores if you have morores with the latest dev version of minetest
00:01 VanessaE and when there's only one, by definition it is a defacto standard
00:01 VanessaE (if people use it anyway)
00:01 sapier no vanessae you don't have any way to tell "what is used most" you can only tell what you think is used most based uppon some subjective readings
00:01 PilzAdam RealBadAngel, and this is easy to fix
00:01 VanessaE sapier: I'm basing it on a google search :)
00:02 RealBadAngel PilzAdam, you still dont getting the point of it...
00:02 sapier lol and of course google already knows about all those ppl not writing to any forum but playing minetest
00:02 PilzAdam RealBadAngel, you said I "broke" moreores, but I didnt
00:02 VanessaE heh
00:03 VanessaE well what would you have me base that metric on?
00:03 sapier I don't suggest any metric as we can't ever tell what most ppl use we can only guess
00:04 RealBadAngel PilzAdam, not just moreores. everything around...
00:04 PilzAdam what is broken then?
00:04 VanessaE every server, every texture pack, every mod that has moreores now has to make an adaptation.
00:04 sapier so neither can you proove you're right nor can I or anyone else give a guaranteed telling what is used
00:04 PilzAdam VanessaE, no
00:04 VanessaE s/has/has or uses/
00:05 PilzAdam only TP have to rename the textures, thats all
00:05 RealBadAngel PilzAdam says "no" because for him change was trivial, take this, trash that
00:06 RealBadAngel now we do have weeks of work to adapt his taste
00:06 PilzAdam but if you see all the other textures that are new/changed in 0.4.6, then thats a little change compared to them
00:06 PilzAdam RealBadAngel, actually 0 sec. of work
00:06 PilzAdam you can use everything as is
00:07 PilzAdam only Calinou has to fix the double generation, thats all
00:07 VanessaE PilzAdam: it's one thing to rename a couple of textures, it's another to have to *copy* them to support two different sets of the same object
00:07 RealBadAngel lol
00:07 RealBadAngel you do believe in what you are typing?
00:07 PilzAdam yes
00:08 RealBadAngel superb.
00:08 PilzAdam try it, get latest minetest_game with latest common, install morores and everything works fine
00:08 VanessaE you keep making enough of these arbitrary changes and there won't be any modding community left.
00:09 VanessaE because no one is going to want to have to keep making little updates to their mods just because of an arbitrary change
00:09 RealBadAngel ofc it works fine, double item, twice as much ores
00:09 sapier guys you're killing minetest development persisting in no changes of mod api to happen
00:09 VanessaE hrm, a little repetitive there, sorry
00:09 RealBadAngel and modders sittin out there rewritting their mods
00:09 VanessaE sapier: we're not talking about the API.
00:09 VanessaE we're talking about the default set of mods and how they affect the modding community as well as the players
00:10 RealBadAngel to fix your like and dont like ore stuff
00:10 sapier this is just extended part of api
00:10 VanessaE s/mods/mods, nodes, items/
00:10 PilzAdam VanessaE, Calinou has nothing against adding only parts of morores to default
00:11 VanessaE PilzAdam: maybe not but the REST of us do!
00:11 RealBadAngel PilzAdam, btw, you have said youre not using such mods like technic etc
00:11 PilzAdam but the rest has nothing to change
00:11 PilzAdam RealBadAngel, yes
00:11 RealBadAngel so how the heck you know if everything iis allright?
00:11 RealBadAngel lier
00:11 PilzAdam because I know how the API works?
00:12 RealBadAngel so youre wrong
00:12 PilzAdam what do you have to change?
00:12 PilzAdam (in technic or other mods)
00:13 PilzAdam hint: the answer is nothing
00:13 RealBadAngel lemme answer it
00:13 RealBadAngel for nothing
00:13 RealBadAngel you should do the following
00:13 RealBadAngel 1) take moreores mod
00:14 RealBadAngel 2) keep the namespace
00:14 RealBadAngel 3) insert the mod into commons
00:14 RealBadAngel then it would be nothing
00:14 sapier i don't think this is correct moreores != default
00:14 RealBadAngel shit, bucket ~= default
00:15 RealBadAngel and lotsa others
00:15 PilzAdam RealBadAngel, you dont have to change anything in the current state
00:15 PilzAdam so keep saying "everything is broken"
00:16 VanessaE PilzAdam: "broken" in the oldskool sense of the word, as in "this is done so wrong as to be worthy of intense argument"
00:16 VanessaE broken doesn't, in this context, mean not working.
00:16 RealBadAngel and literally translated: fucked up
00:17 VanessaE other synonyms include "botched", "screwed", and "clusterfuck"
00:18 RealBadAngel btw, anybody counted how much memory takes those aliases?
00:19 RealBadAngel all of them i mean
00:19 VanessaE right about now, PilzAdam is gonna say "bye" and sign off.
00:19 sapier good god everyone wants forced map loading by entities any you really ask about memory consumption of aliases?
00:20 RealBadAngel im old school coder
00:20 PilzAdam VanessaE, yes, because its sleeping time in germany
00:20 VanessaE sapier: there's a simple solution to that issue: hard limits on how much of the map can be loaded at any one time
00:20 PilzAdam but I will stay a bit longer
00:20 VanessaE whether by a mod or by the players
00:20 sapier so when a player joins he sees nothing ... not quite a solution
00:20 PilzAdam how many ores do you want to have in the default game?
00:21 Exio 100
00:21 VanessaE sapier: no, when the player joins, the engine decides "hey, I have too much map loaded..  okay, let's throw away thos stuff over here, no one's there now"
00:21 RealBadAngel 123 and 1/3th
00:21 Exio i want a rainbow
00:21 VanessaE PilzAdam: seven.
00:21 VanessaE coal, iron, copper, tin, silver, gold, mithril.
00:21 RealBadAngel we just wanted to merge moreores
00:21 VanessaE (I don't personally care much about diamonds)
00:21 RealBadAngel know minetest standard
00:21 sapier that impies enging can decide why something is loaded thus additional runtime information needs to be added to any loaded block
00:21 VanessaE so 8 ores if you include diamonds too.
00:21 RealBadAngel which Calinou defended like a lion to be not bigger than this
00:22 VanessaE sapier: the engine already has such code in it by virtue of timeouts for how long a mapblock stays loaded.
00:22 PilzAdam RealBadAngel, no, we wanted to add in more ores, and only parts of them from moreores
00:22 VanessaE you's just have to expire it a little sooner.
00:22 Exio i have an alias callled "/modsmt"
00:22 RealBadAngel read moreores topic if you dont believe
00:22 Exio should i use it PilzAdam?
00:22 VanessaE you'd*
00:22 sapier but engine doesn't know if its loaded by entity or player what to unload that block right behind player or that one in front of a entity
00:23 RealBadAngel PilzAdam, so lets say i will take wheels from your carts mod, merge it there
00:23 PilzAdam RealBadAngel, yes, because Calinou is right, too many ores arent good for the game
00:23 VanessaE how are they bad for the game?>
00:23 RealBadAngel and say wheels were the only thing i liked and game needed
00:23 sapier it's simple to unload something but hard to decide what is best
00:23 RealBadAngel rest you can take
00:23 PilzAdam RealBadAngel, you know how stupid that is?
00:23 VanessaE what do they effect if the user isn't doing anything with them?
00:23 RealBadAngel ofc
00:23 RealBadAngel that was the point
00:23 Exio does anyone know what "dev" means?
00:23 VanessaE they're just random dots on a map if the user doesn't care about them, jesus H christ in a cartoon
00:24 RealBadAngel to show how stupid thing you have done
00:24 PilzAdam RealBadAngel, you are comparing wheels with ores
00:24 Exio the bug of two ores will be fixed when 0.4.6 gets released
00:24 sapier pilzadam maybe it's easyer to add/remove moreores than continuing this endless discussion
00:25 PilzAdam VanessaE, if people find ores in the game, they want to do something with it
00:25 Exio i don't like the idea of moreores in common
00:25 PilzAdam and its nonsense to add ores wich dont have any use at all
00:26 PilzAdam sapier, no, because its not good for the game
00:26 RealBadAngel modders, users, players finding use for it
00:26 RealBadAngel this is free world game
00:26 sapier but it's bad for the game if core developers get mad on each other because of this issue
00:26 PilzAdam RealBadAngel, you see the default game as a bunch of resources for modders, right?
00:27 RealBadAngel partially yes
00:27 Exio cuz the core devs can't understand "THIS IS NOT THE STABLE RELEASE"
00:27 PilzAdam RealBadAngel, it isnt, its a game
00:27 sapier and as far as I understand pilzadam sees default game as a consistent game itself
00:27 Exio the moreores thing will be fixed in 0.4.6 when calinou updates it
00:27 PilzAdam sapier, exactly
00:27 sapier with full moreores ore set added consistency is lost
00:27 RealBadAngel its is a sandbox offering elements to play with
00:28 PilzAdam Exio, yes, I already said that
00:28 RealBadAngel not a complete game with a mission
00:28 Exio + aliases == backward compt
00:28 VanessaE it IS a resource for modders as much as it's a game damn it!
00:28 Exio well, let me check
00:28 Exio what is the real problem?
00:28 PilzAdam it should be playable without mods
00:28 VanessaE if it wasn't a resource for modders, then why the hell is there a modding API to begin with?
00:28 sapier vanessae true but if you can't do anything with ores it's more feeling of a limited demo than a game
00:28 PilzAdam and not: "You want a use for tin? install a mod!"
00:29 Exio just double gen of ores? that will  be fixed, aliases will be for stuff working, and the main game will be playable
00:29 Exio will be in minetest_game*
00:29 RealBadAngel exio: but also namespace is wrong
00:29 PilzAdam Exio, thats what Im talking about the last hour
00:30 Exio namespace
00:30 Exio ?
00:30 RealBadAngel mod shall be put as moreores without friggin aliases
00:30 VanessaE PilzAdam: how about "you want a use for tin?  it's coming soon."
00:30 PilzAdam RealBadAngel, why?
00:30 Exio so you mean, just add a mod what is *called* moreores to a "game"?
00:30 sapier what about unregister_ore("default:copper")
00:30 sapier ?
00:30 RealBadAngel because it is WRONG
00:30 Exio who said that?
00:31 RealBadAngel bad alloc said that
00:31 Exio the aliases are for compatibility, not "gameplay"
00:31 Exio eh?
00:31 sapier or alias "default:copper" to moreores:copper?
00:31 PilzAdam sapier, there is no unique identifier for register_ore() calls
00:31 Exio sapier: moreores:copper -> default:copper
00:31 Exio aliases in that way, working and so on
00:31 sapier yes but maybe this would be a solution?
00:31 Exio no
00:31 PilzAdam sapier, we already have this aliases
00:32 RealBadAngel go on insert 10k of aliases in the game that supposed to be lightweight
00:32 Exio ok, i have a good idea
00:32 PilzAdam there is no problem, except that RBA and VanessaE want all ores to be merged
00:32 sapier yes I know of the aliases I was talking about the register/unregister thing
00:32 Exio PilzAdam: rollback the git repo to 0.1
00:32 PilzAdam Exio, thats a nice idea
00:32 VanessaE PilzAdam: exactly.  All ores - lumps - ingots - blocks.  that's all.
00:32 VanessaE no silly tools
00:32 PilzAdam because people obviously are against changes here
00:32 hmmmm guys what the hell
00:32 hmmmm chill the fuck out
00:33 RealBadAngel :)
00:33 Exio hmmmm: nobody likes your mapgen
00:33 VanessaE PilzAdam: we are against changes that don't carry a complete set of whatever it is you are cherry-picking from
00:33 PilzAdam hmmmm, we are just starting to have fun
00:33 Exio PilzAdam: +1 at that
00:33 Exio this started to get funny!
00:33 PilzAdam VanessaE, you just think Minetest is good as is, and all changes are bad if they touch anything that exists
00:33 sapier we can't add changes while keeping endles compatibility
00:34 VanessaE PilzAdam: I repeat:  we are against changes that don't carry a complete set of whatever it is you are cherry-picking from
00:34 sapier this is true for api as well as content
00:34 hmmmm i agree with the cherry picking from moreores
00:34 sapier core already contains lots of compatibility stuff and it's getting more and more
00:34 hmmmm moreores has some things we don't really want
00:34 RealBadAngel sapier: its not like this, adding this change could be done without need to rebuild mods at all
00:34 hmmmm the whole "take everything or leave it" mindset is very unflexible and not necessary
00:35 hmmmm i already gave you guys a decent solution
00:35 PilzAdam RealBadAngel, it is already done like this
00:35 VanessaE hmmmm: maybe but we're only talking about five lousy ores.
00:35 VanessaE or in this case two or three.
00:35 hmmmm it lets us add what we want without breaking compatibility
00:35 hmmmm yes, but they change the gameplay..
00:35 sapier rba that impies minetest has to include every silly stuff just because its coupled to things we want ... not quite best way to do it
00:35 Exio [21:34:46] <RealBadAngel> sapier: its not like this, adding this change could be done without need to rebuild mods at all
00:35 Exio tell me what you need to rebuild
00:35 Exio the aliases are here
00:35 RealBadAngel hmmmm, youre more experienced low level coder. please tell me how having hundreds of aliases defined may affect engine?
00:36 PilzAdam Exio, he dont want to belive that its nothing
00:36 hmmmm by hundreds of aliases you mean like 20
00:36 VanessaE strange, I still seem to be able to dig, build, fight, kill mobs, the same as I did before I added this extra ore over here.  where's the issue?
00:36 hmmmm vanessa, you have a bazaar of ores in your inventory now
00:36 RealBadAngel hmmmm, this case. we are counting
00:36 VanessaE hmmmm: indeed I do.
00:36 PilzAdam VanessaE, and they are all useless
00:36 VanessaE and they don't seem to have caused a problem for anyone who plays on my server.
00:36 PilzAdam *most of them
00:36 Exio survival or creative?
00:36 VanessaE Exio: creative.
00:36 RealBadAngel lately i can see aliases are used as a solution for everything misplaced
00:37 PilzAdam VanessaE, because its a creative server with a trash can
00:37 Exio if i get something in survival, i want an use for it
00:37 PilzAdam ^
00:37 VanessaE every block has a use automatically - you can build with it.
00:37 sapier maybe we should start stripping of deprecated things some time ;-)
00:37 Exio VanessaE will kill you sapier
00:37 Exio VanessaE: "build" != "survival"
00:38 Exio the idea of survival is not just building, is "surviving"
00:38 VanessaE Exio: survival still involves building stuff.
00:38 VanessaE protective structures against MOBs if nothing else
00:38 sapier I know exio but this has to be done I'm starting to find more compatibility code in core than actual function code the last weeks
00:38 PilzAdam VanessaE, yes, a dirt house
00:39 PilzAdam I dont need useless tin blocks for that
00:39 VanessaE PilzAdam: oh, I see - so what you're really saying is that survival is all that matters, doesn't need anything at all, and piss on the creative users?
00:39 Exio do you want a example~? lapis lazuli blocks in minecraft, they are useless outside building
00:39 PilzAdam VanessaE, no
00:39 RealBadAngel then think about tin cans
00:39 RealBadAngel for paint for example
00:39 Exio they are used in survival and .. nothing in survival
00:40 Exio unless you make the ore very common, using it for building is ... i'd say impossible
00:40 RealBadAngel and add fuckin content using resources
00:40 Exio just digging one hour for a 4x4 house?
00:40 Exio they are used in creative and ... nothing in survival **
00:41 RealBadAngel and dont think one change HAVE to go together with immediately massive use of it by common
00:41 RealBadAngel i made formspec backrounds, you have woke up several months later using this
00:41 Exio there is already a lot of stuff what is "useless" without mods
00:41 RealBadAngel and you have not cried that it was useless before
00:42 PilzAdam VanessaE, additions to default should be usefull for both, creative and survival, since both include it
00:42 RealBadAngel PilzAdam, so find use for it
00:42 VanessaE PilzAdam: then why are wool blocks, dyes, and vessels included?
00:42 RealBadAngel allow others to do so
00:42 VanessaE why is jungle grass included?
00:42 PilzAdam VanessaE, they arent in default
00:42 VanessaE what about that other grass?
00:42 PilzAdam and they arent included in survival
00:42 hmmmm mmmm
00:42 VanessaE most of those are in common.  what do they add to the game?
00:43 VanessaE any of the games
00:43 Exio i like the idea of grass/jungle_grass
00:43 RealBadAngel but dont say when it is about to be added it doesnt have any use
00:43 hmmmm hey guys, how about this justification for the current ores:
00:43 hmmmm i like them
00:43 PilzAdam VanessaE, thats decoration of the landscape
00:43 VanessaE PilzAdam: but they have no USE.
00:43 Exio they make the terrain look nice
00:43 dexter0 joined #minetest-dev
00:43 VanessaE and as usual, you ignored half of my question.
00:43 Exio god, VanessaE
00:43 hmmmm i like them, and so does everybody else
00:43 RealBadAngel Exio +1
00:43 Exio you need to understand
00:43 VanessaE why are vessels, wool, dyes included?  they are utterly useless in any game right now and were from the start.
00:44 hmmmm if we considered another ore, and we ALL liked it, we'd add that too
00:44 PilzAdam hmmmm, right
00:44 PilzAdam VanessaE, we have every ore in default that everybody agrees on
00:44 hmmmm it doesn't have to have a use
00:44 VanessaE so now it requires unanimous vote?  ehm..
00:44 hmmmm yeah..... why not?
00:44 VanessaE hmmmm: but PilzAdam JUSt said it had to have a use.
00:44 Exio what?
00:44 hmmmm well i disagree with him
00:44 RealBadAngel hmmmm, uses will come when theyre in
00:44 hmmmm realbadangel, and what about the mods?
00:45 VanessaE [03-28 20:42] <PilzAdam> VanessaE, additions to default should be usefull for both, creative and survival, since both include it
00:45 Exio i missed something
00:45 RealBadAngel they already use them
00:45 hmmmm if anything had a dependency on moreores previously, it'll still work the same
00:45 hmmmm all that needs to be changed is moreores
00:45 hmmmm and it's very simple to do
00:45 PilzAdam hmmmm, I already told him that
00:45 Exio i just don't get ONE thing, the stuff will work as before, when 0.4.6 gets released (when calinou will do it)
00:45 hmmmm the core is not breaking its back for a *SINGLE MOD*
00:45 RealBadAngel yup, copy it to common
00:45 PilzAdam hmmmm, he doesnt want to believe it
00:46 Exio RealBadAngel: hey, that is a cool idea
00:46 Exio add every mod you have in mod releases to common
00:46 RealBadAngel :P
00:46 PilzAdam Exio, time for your statement :-)
00:46 Exio add yours carts mod PilzAdam
00:46 Exio and boats, i want boats
00:46 Exio aaand! i want some X mod in common!
00:47 sapier I'm with exio just copy every mod do mod common :-) .... just kidding of course
00:47 hmmmm i just don't get how people can have such strong feelings over some blocks that just aren't defined by default
00:47 PilzAdam hmmmm, they think everything is broken without them
00:47 RealBadAngel excuse me: can you tell me whats that?
00:47 RealBadAngel https://github.com/minetest/common/tree/master/mods/bucket
00:47 Exio ? what's up?
00:48 Exio a bucket mod, it has uses, recipes, and so on
00:48 RealBadAngel exio, tell me what is that code
00:48 RealBadAngel ok
00:48 RealBadAngel now tell me whats this:
00:48 RealBadAngel https://github.com/minetest/common/tree/master/mods/stairs
00:48 hmmmm notice who they're made by
00:49 RealBadAngel https://github.com/minetest/common/tree/master/mods/screwdriver
00:49 RealBadAngel https://github.com/minetest/common/tree/master/mods/vessels
00:49 hmmmm but does it make sense to include only part of stairs?
00:49 PilzAdam RealBadAngel, everything ok?
00:49 RealBadAngel you were sayin sir?
00:50 Exio that got converted on a "who haz a bick dick" competition between kids
00:50 hmmmm my counterargument to this is:
00:50 sapier what's a screwdriver? and why it this in common?
00:50 RealBadAngel no, my point is place for moreores is in common
00:50 hmmmm a lot of those mods were made by celeron and karhl, the people who were writing the core too
00:50 hmmmm so they know exactly what they wanted when they wrote those
00:50 PilzAdam sapier, its a tool to open locked doors
00:50 Exio RealBadAngel: moreores in common
00:50 hmmmm and then some other things like screwdrivers, you can't select a couple screwdrivers and not the rest
00:50 Exio moreores in common
00:51 hmmmm you can't just have, say, left-pointing stairs
00:51 hmmmm but for moreores, yes
00:51 hmmmm you can have a couple ores
00:51 hmmmm we like some parts of moreores, but we don't like all of them
00:51 hmmmm we don't all like everything*
00:51 sapier I see ... still I don't understand why this is in common ... but i don't have to understand everything
00:51 hmmmm there are some people who do like everything
00:51 PilzAdam the reason why we added moreores in isnt that we wanted to include the mod, but more ores to the default game for a good gameplay
00:52 hmmmm but that would make the people who don't like everything unhappy
00:52 PilzAdam *parts of moreores
00:52 Exio and if you want things what are actually only provided by moreores
00:52 Exio you will install moreores (when 0.4.6 gets released)
00:52 hmmmm but serious, what's wrong with the 'check if the node exists already' idea to determine what version of common it is?
00:52 VanessaE and if you have it already as part of a long-running server?
00:53 PilzAdam hmmmm, nothing
00:53 VanessaE you end up with double ore gen and ores being generated only in lua.
00:53 hmmmm what's wrong with updating moreores?
00:53 VanessaE some ores*
00:53 PilzAdam VanessaE, not if you use the stable version
00:53 hmmmm guys
00:53 hmmmm don't worry
00:53 Exio be happy
00:53 hmmmm i'll make sure everything is coordinated so there are no periods of breakage
00:53 VanessaE hmmmm: the need to update it multiple times, maybe?
00:53 sapier another suggestion ..... what's wrong with "if you want latest mod use latest core!"?
00:54 Exio calinou doesn't like that
00:54 hmmmm so how about this:
00:54 Exio everything is caused by calinou (aka "blame calinou") >:)
00:54 hmmmm right now i'll have calinou update his mod
00:54 RealBadAngel lol
00:54 sapier mobf for example never supports old core versions, if someone requires an old version she/he can use old mobf versions
00:54 hmmmm so it'll work for both versions
00:54 hmmmm so you guys can put the new version in
00:55 Exio hmmmm: then they will get other thing "to bother"
00:55 hmmmm then when 0.4.6 comes out, you can just update the core
00:55 RealBadAngel ok lets say we can all live with it
00:55 RealBadAngel but the aliases
00:55 hmmmm what of the aliases?
00:55 Exio what is EXACTLY wrong with aliases?
00:55 hmmmm the default mod is making the aliases to moreores
00:55 hmmmm not the other way around
00:56 hmmmm we're coordinating with calinou on this
00:56 RealBadAngel unnecesary memory consumption
00:56 hmmmm =/
00:56 hmmmm lame excuse
00:56 Exio do i need to ask other time
00:56 Exio what is wrong with aliases?
00:56 Exio 10 kb more of ram when the "leak" is in other place?
00:56 hmmmm grasping straws
00:56 Exio just limiting the game will not fix the issue
00:56 hmmmm exio, more like a half a kB for all those strings
00:57 RealBadAngel leaving mod with its name (even stripped for commons use) means no aliases needed at all
00:57 Exio i said 10 kb because RealBadAngel said +1000 aliases
00:57 Exio RealBadAngel: stripped == even more broke stuff
00:57 hmmmm let's just not break things --;
00:57 RealBadAngel no, just put there those defs pilzadam chosen
00:58 Exio and then add aliases for fixing the missing things in the stripped version?
00:58 RealBadAngel what for?
00:58 RealBadAngel moreores would be just moreores then
00:58 Exio [21:57:02] <RealBadAngel> leaving mod with its name (even stripped for commons use) means no aliases needed at all
00:59 RealBadAngel stripped content i meant
00:59 Exio yes, exactly
00:59 Exio how are you going to fix the issue of missing tools / blocks what are in the "full version"?
00:59 Exio replacing mods in the common game what should be part of upstream? good solution eh
01:00 Exio and what is wrong with adding a 1kb more of ram usage? when using a 512x texture pack is using 6 gb or 7
01:00 RealBadAngel calinou will just fill out missing parts
01:00 Exio it doesn't matter, and actually, even my OLD computer can handle 1kb more of ram usage
01:00 Exio RealBadAngel: how?
01:00 RealBadAngel that approach is never good for complex projects
01:01 Exio OOP is not good for what i think, but meh, minetest is coded in c++ and lua
01:01 RealBadAngel we are fighting for milisecond here and there and you say fuck some kilobytes?
01:01 Exio [21:55:42] <hmmmm> what of the aliases?
01:01 Exio [21:56:10] <RealBadAngel> unnecesary memory consumption
01:01 Exio you said the "why not aliases"
01:02 RealBadAngel after some period of happy adding things this way we can fail
01:02 RealBadAngel we already do with contstat bad alloc crashes
01:02 hmmmm we get bad alloc crashes because of jeija's trampoline mod
01:03 Exio .
01:03 Exio that iis not even related
01:03 hmmmm that has nothing to do with consuming too much memory
01:03 Exio is *
01:03 RealBadAngel I dont have this mod installed
01:03 Exio it is an infinite while loop
01:03 RealBadAngel and see this error several times a day
01:03 sapier i think aliases are minor related to bad_alloc ;-)
01:03 hmmmm if you have a bad std::alloc crash, please report it and give a traceback...
01:04 RealBadAngel you can generate it for yourself. run clean game
01:04 RealBadAngel start extit to menu
01:04 RealBadAngel and repeat
01:04 RealBadAngel until you got it
01:04 Exio it is caused by other thing
01:04 hmmmm oh that you're talking about
01:04 sapier thats not an alias problem but texture cache
01:04 Exio ^
01:04 Exio RealBadAngel: https://github.com/minetest/minetest_game/blob/master/mods/legacy/init.lua
01:04 sapier game isn't really cleant up on exit
01:05 Exio here we go, you have a lot of aliases
01:05 Exio that mod is useless add the whole 0.3 core because it will make mt use less ram!
01:05 sapier lol ... a lot
01:05 Exio i missed the word "useless" before aliases
01:05 sapier I've just added almost same number of compatibility methods to support old scriptapi style :-)
01:07 Exio https://github.com/minetest/minetest/issues/142
01:08 Exio RealBadAngel: you mean this ^
01:08 Exio or some bug related to that?
01:08 hmmmm i am actually quitting and going back to the menu multiple times
01:08 RealBadAngel no
01:08 RealBadAngel no glithches
01:08 hmmmm i must've done it like 20 times and ram is now 36mb more than it was when i started it
01:08 RealBadAngel but ordinary out of memory error
01:08 hmmmm but i am getting some textures corrupted, and i keep seeing the textures getting rendered on the loading screen
01:09 RealBadAngel i may get it faster because of 128x tp
01:09 Exio s/may //
01:09 Exio it is a leak in the texture pack, not the aliased stuff
01:09 VanessaE hmmmm: seeing the textures rendering on the loading screen is a good thing, that needs to be formalized.  it gives the user some feedback.
01:10 VanessaE that is, assuming there's no way to get rid of the cause of it entirely.
01:10 hmmmm might be hard to do
01:10 hmmmm i really don't know much about the graphics part but
01:10 VanessaE c55 once said it's a side effect of irrlicht's render-to-texture function I think.
01:10 hmmmm yeah i figured as much
01:10 RealBadAngel afaik it already uses draw place to render items
01:10 sapier i suggest adding kahrls patch and find out what really triggers the irrlicht problems when textures are cleant up
01:11 RealBadAngel let it be formally display
01:11 PilzAdam VanessaE, we need a real loading screen
01:11 VanessaE PilzAdam: it's better than nothing.
01:11 hmmmm i don't think we should be drawing things like that where it'd render
01:12 hmmmm unless you want all the items to have a powder blue background
01:12 RealBadAngel hmmm, hold on, will look for a vid
01:13 RealBadAngel http://www.youtube.com/watch?v=ySI38AOIfAA
01:13 VanessaE wrong vid, rba
01:13 VanessaE oh there it is
01:13 VanessaE at about 33 seconds in
01:13 RealBadAngel watch this side effect of recording (normally it is not vissible)
01:14 VanessaE why DOES the engine render those anyway?
01:14 VanessaE are they for the inventory or something?
01:14 RealBadAngel yes
01:14 VanessaE why not display the actual object in-game?
01:14 hmmmm ?
01:14 VanessaE er, in-game object.
01:14 RealBadAngel this is exactly items visuals checkbox
01:14 PilzAdam VanessaE, disable preload_item_visuaks
01:14 PilzAdam *visuals
01:14 hmmmm dunno, you can do that if you'd like
01:15 VanessaE I know what makes them render, guys - it was my griping about the startup time that got preload item visuals flag added in the first place.
01:15 hmmmm we'd have to add a new formspec field though
01:15 VanessaE but that doesn't explain WHAT uses those renderings.
01:15 PilzAdam the inventory
01:15 VanessaE ok
01:15 VanessaE so why do we need that at all?
01:16 VanessaE why does the engine bother to render those objects when it can just directly display them as it does in-world?
01:16 PilzAdam because its faster, I guess
01:16 Exio uhm...?
01:16 VanessaE faster?
01:16 VanessaE um
01:16 PilzAdam I mean , drawing them in the inv is faster
01:17 VanessaE I doubt that
01:17 PilzAdam dunno
01:17 VanessaE the video card can render them a fuckload faster than the CPU
01:17 PilzAdam just a guess
01:17 sapier maybe this preload could be done in a separate thread in background?
01:18 hmmmm ha ha
01:18 hmmmm no we need them all before the user can see them
01:18 hmmmm (inventory)
01:18 hmmmm but anyway, you did give me an idea
01:18 VanessaE so draw the inventory like you draw the rest of the screen - with real 3d objects (and not renderings thereof).
01:18 hmmmm like what if we don't render to a texture, what if we just render the actual cube, maybe slowly jiggling up and down or rotating back and forth
01:19 hmmmm in the inventory screen
01:19 VanessaE i just said that!
01:19 VanessaE (but I see no reason for it to move around)
01:19 sapier don't see any problem if a non existing one is requested it's generated on the fly ... ok this will slow down FIRST inventory open ... but currently whole game is slowed down
01:19 hmmmm more livelyhood
01:19 VanessaE well if they just rotate really slowly, I guess that's okay
01:20 VanessaE fast enough to be noticable, but slow enough to not be distracting
01:20 sapier just have a try if inventory background is opaque you don't have to draw world this reducing graphics load drasticaly ... this should be enough to display some additional nodes
01:22 RealBadAngel or somebody write irrlicht snippet to generate inventory image and make it mandatory when registering node
01:22 RealBadAngel or item
01:22 Exio does anyone know where are the memory leaks?
01:22 sapier irrlicht textures arent freed
01:23 RealBadAngel no time spent on generating them then and startup of game blazing fast. and no glitches later
01:23 sapier kahrls patch did this but for whatever reaseson those textures were still in use on start of new game
01:23 RealBadAngel sapier, i do have such code here
01:23 RealBadAngel by cornernote
01:23 RealBadAngel its built ingame
01:23 RealBadAngel to create such images for wikis
01:24 sapier thats creepy make a modder add a picture of a node ...
01:24 RealBadAngel how much it differs from creating the texture actually?
01:25 VanessaE RealBadAngel: yeah, he said once that he actually captures the output of the render-to-texture step and just dumps that to disl
01:25 VanessaE disk*
01:25 sapier you have to keep them in sync ... keeping things in sync that already are fully defined by one instance is always a source of error
01:25 RealBadAngel make a simple tool for texture creators just
01:25 sapier we already have a texture cache why not cache inventory images too?
01:26 sapier this could be done without bothering modders
01:26 VanessaE sapier: I suggested that months ago.
01:26 VanessaE no one listened.
01:26 sapier most likely because of pain isn't big enough ;-)
01:27 RealBadAngel and yet game needs 2 minutes to start here
01:27 RealBadAngel see? bit to bit
01:27 sapier I know when I added texture caching it took me 5 minutes to start game with a local server
01:27 VanessaE startup time for me is tolerable, I'm thinking more of memory usage, and more importantly that stupid, old, long-standing bug where inventory textures don't match the actual in-world objects
01:27 VanessaE you place a lava and you get leaves.
01:28 sapier vanessae thats the cleanup bug, caching wouldn't help anything
01:28 VanessaE sapier: seems to happen to people right out of the first start of the game, I doubt that's a cleanup issue
01:28 VanessaE and it doesn't happen to everyone
01:28 PilzAdam bye
01:29 sapier texture atlas isn't very big maybe those ppz atlas is already overrrun
01:29 RealBadAngel atlas is already dead
01:29 RealBadAngel and obsolete
01:29 sapier is it removed?
01:29 RealBadAngel not yet
01:30 RealBadAngel only disabled by default
01:30 sapier any you're sure those ppl aren't playing minetest with old config files?
01:30 RealBadAngel 045 disables it by default
01:31 VanessaE sapier: the problem is unrelated to the texture atlas.
01:31 Exio still, there a lot of mem leaks and "gpu mem leaks" and so on
01:31 sapier valgrind and efence ;-) ... yes I know its slow
01:31 RealBadAngel ah, it reminded me something
01:32 RealBadAngel thx to different approach and not using "^transform" way to rotate textures
01:32 RealBadAngel just for default facedired nodes
01:32 VanessaE RealBadAngel: speaking of that,
01:32 VanessaE pm, please
01:33 RealBadAngel on Vanessae's server memory usage dropped by 400mb
01:35 sapier lol definitely lost: 51,697 bytes in 649 blocks  ... after running minetest for 30 seconds
01:35 sapier indirectly lost: 61,808,379 bytes in 1,595 blocks
01:35 sapier possibly lost: 102,525,126 bytes in 29,373 blocks
01:35 sapier seems noone did bother about cleaning up on close
01:35 Exio what cpu sapier? and how many FPS?
01:36 sapier not playable ;-)
01:36 Exio ok, how many FPM?
01:36 Exio frames per minute :P
01:36 sapier aproximatly 30 fpm
01:36 Exio pretty good versus my netbook
01:36 Exio 4~6 fpm i'd say with valgrind
01:37 sapier but even if its slow it's a good hint where to start cleaning up
01:37 VanessaE fpm?  heh
01:37 Exio yeah! :P
01:37 sapier you know everyone can play if you have fps ... its a challange to play with fpm
01:38 Exio xD
01:38 RealBadAngel think chees
01:38 RealBadAngel and play fph
01:39 sapier playersao is missing initialization
01:40 VanessaE hmmmm: so, live objects in the inventory -> TODO ? :-)
01:40 hmmmm ugh i'm not doing it
01:40 VanessaE haha
01:41 sapier I have to complete scriptapi patch ;-)
01:41 VanessaE I have to learn C++ some time this decade.
01:41 ds-2k joined #minetest-dev
01:41 VanessaE RealBadAngel has stuff to do also
01:41 VanessaE c55 won't do it
01:41 VanessaE thexyz I dunno about
01:42 VanessaE darkrose is mia again :-)
01:42 RealBadAngel i wonder why this code is so damn slow
01:43 RealBadAngel game renders thousends of block
01:44 hmmmm it might have something to do with the drawing-to-screen part
01:44 Exio this morning i said, every time i read the backlog you have new things in your TODO list
01:44 Exio this day wasn't an exception
01:45 VanessaE hmmmm: interesting, if generic answer :-)
01:45 hmmmm i'm saying that if we had a way to render it to a texture in memory, that'd be much faster
01:45 VanessaE ah
01:45 hmmmm but it's that it has to actually wait for the card to draw it on the screen in order to grab it
01:46 VanessaE well still, the idea of rendering it at all is kinda....dumb
01:46 hmmmm that being said
01:46 hmmmm what if we did more than one at a time
01:46 hmmmm i better take a shower
01:47 RealBadAngel what for you need a shover to code?
01:47 VanessaE yeah, you're covered in bits
01:47 RealBadAngel use keyboard
01:47 hmmmm lol
01:47 * VanessaE picks a "0" off of hmmmm's shoulder
01:47 VanessaE see?  look how filthy this thing is
01:47 hmmmm haven't showered in two days
01:47 hmmmm feeling pretty gross
01:47 hmmmm and i don't want to go to sleep like this
01:48 hmmmm also it'd keep me awake longer, which i need to do, so i don't go to bed at 4 am and wake up at noon again
01:48 hmmmm i usually take a nap at 7 and that screws everything up
01:48 hmmmm but the point is:  i'm going to be AFK for like 30 minutes
02:02 sapier left #minetest-dev
02:12 ds-2k left #minetest-dev
02:21 hmmmm back.
02:21 hmmmm i was wondering why i felt the need to say that in the channel, and i think it's because i treat IRC like my own stream of consciousness, which is why i tend to talk so much
02:21 VanessaE wb
02:22 VanessaE nothing wrong with that
02:22 VanessaE I think a lot of us do the same thing
02:22 hmmmm i talk about unnecessary details all the time, like i didn't even realize i typed in the word 'shower' before, i just said it
02:22 hmmmm this is a really bad habit that i try hard to supress and fail
02:22 VanessaE it's not really a bad habit
02:22 VanessaE think of it this way:
02:22 hmmmm well it decreases the signal-to-noise ratio
02:22 VanessaE what is your primary memory supplement?
02:23 hmmmm ginsing?
02:23 VanessaE haha
02:23 hmmmm or however you spell it
02:23 VanessaE I meant what you do to boost your memory capacity - I expected either "a stack of books" or "google", or words to either effect.
02:23 hmmmm no idea
02:24 VanessaE point is, you use technology as an extension of your brain and your senses, but you don't rely solely on it.
02:24 hmmmm perhaps
02:24 hmmmm yes, indeed, that was it
02:24 VanessaE so it's really not bad.
02:24 hmmmm i said "i need to take a shower" out loud in the channel so that i remember to actually go do it, and not just keep aimlessly browsing the internet and chatting it up
02:24 hmmmm that makes sense
02:24 VanessaE see?
02:25 VanessaE if that's what you have to do, then you do it
02:25 hmmmm i need to work on l_find_nodes_near()
02:25 VanessaE same reason people leave themselves sticky notes.
02:28 VanessaE besides, if there isn't any signal to interrupt, there's no reason to worry about the noise
03:03 jojoa1997|Tablet joined #minetest-dev
03:45 darkrose VanessaE: I'm not mia, just busy elsewhere >.>
03:46 VanessaE hah, I though that might get your attention
04:08 kaeza1 joined #minetest-dev
04:19 jojoa1997|Tablet with the new collision thing added to minetest does that mean player bump inot eachother?
04:21 VanessaE nope.
04:22 thexyz joined #minetest-dev
05:42 darkrose joined #minetest-dev
05:42 darkrose joined #minetest-dev
06:08 hmmmm hmm
06:08 hmmmm i think Minecraft blocks are bigger than minetest blocks
06:08 hmmmm or at least were, in Classic
06:08 VanessaE minecraft generates whole columns by 16x16 no?
06:08 hmmmm i mean nodes
06:08 VanessaE OH
06:09 hmmmm their blocks are our nodes
06:09 VanessaE that's a good question
06:09 VanessaE from every video I've seen it doesn't look that way though
06:09 hmmmm but yeah i think their blocks are 16 pixels, ours are 10
06:09 VanessaE ours are 16.
06:09 hmmmm they are?
06:09 VanessaE *nod*
06:09 hmmmm BS 10.0
06:10 VanessaE to be fair, you can't really measure them in pixels though
06:10 hmmmm i was going through my first ever map and everything just seems so much tinier
06:10 hmmmm maybe half of it is thanks to flying, run mode and whatever
06:11 VanessaE might be
06:11 VanessaE see, with my texture pack a node is "512 pixels", but of course is still a 1m cube
06:12 VanessaE a quick google says the same of minecraft classic
06:12 VanessaE (assuming what I found has any believability to iy)
06:12 VanessaE (it*)
06:14 hmmmm hmm
06:14 hmmmm ah that's what it meant by pixels
06:14 hmmmm but the 1m thing
06:14 hmmmm how do we know it's 1m
06:14 hmmmm i never thought the cubes looked like 1m
06:14 VanessaE wel
06:14 VanessaE well
06:15 VanessaE we know the player's eyes are at 1.6m, so the player is 2m
06:15 VanessaE that's like hard-coded or something
06:16 VanessaE interesting reasoning I saw on in the search results though:  A door is usually about a meter wide, and in-game they are of course one block/node wide by 2 tall.
06:16 VanessaE usually, in reality I mean
06:16 hmmmm so that's pretty much their entire basis for saying 2 meters?
06:16 hmmmm err, 1 meter
06:16 VanessaE beats me, but that's how the players seem to rationalize it
06:17 VanessaE you's have to ask notch :)
06:17 VanessaE you'd
06:17 VanessaE or whoever wrote infiniminer
06:17 hmmmm i can't articulate exactly why, but it doesn't feel like blocks are 1m
06:18 VanessaE I know, it indeed doesn't
06:18 hmmmm and yeah, you're right, that BS constant doesn't have to do with the size of nodes
06:18 VanessaE but at the same time, so often it seems like they're farking huge
06:19 hmmmm in theory, changing BS should change everything
06:20 hmmmm but it doesn't seem to have an effect on apparent size of nodes
06:20 VanessaE the value is probably just a maginifier or something
06:20 VanessaE magnifier*
06:20 VanessaE or not.
06:20 hmmmm hrm weird
06:20 VanessaE of course the easiest is to just change the size of the player relative to the world.
06:21 VanessaE why move the world if all you have to do is move the camera, right?
06:21 hmmmm right
06:21 hmmmm that's what BS should do though
06:21 hmmmm hmm
06:21 hmmmm dunno weird
06:21 hmmmm i'm not going to dwell on it too much
06:22 ShadowNinja hmmmm: player size and such are also based on BS
06:22 VanessaE of course doing that also has a minor side effect of reducing the effective size of the map, and there's the small issue of people's structures suddenly being akin to dollhouses.... ;)
06:22 hmmmm shadowninja, i just tried BS = 16.0 and BS = 10.0, nothing visually changed, i compared the two screenshots
06:25 hmmmm oh
06:25 hmmmm duh
06:25 VanessaE light bulb time?
06:25 hmmmm i don't notice anything because everything else changes along with it
06:25 hmmmm what i want to change actually is the player to world size ratio
06:27 darkrose just make the player about 2/3 its current width... then look at a player model standing in the world and it all starts to make sense
06:28 ShadowNinja I saw the camera height somewhere, maybe camera.cpp?
06:32 hmmmm yes, definitely, i'm absolutely certain that blocks in minecraft classic were larger, relative to the player
06:32 hmmmm the abysmal draw range also helped make it seem even larger
06:39 hmmmm oh my, seems to be problems in Map::unspreadLight()
06:40 hmmmm i was noticing that the ServerThread was awful unresponsive when using singlenode mapgen, so i checked it out, and it appears that a getBlockNoCreate() in unspreadLight() called in a Map::updateLighting on a server tick keeps throwing exceptions and it keeps catching them
06:42 hmmmm which seems to happen when liquid flows into an inexistant block
06:42 hmmmm how do i fix this....
06:44 VanessaE form mod consensus needed...
06:44 VanessaE forum*
06:44 VanessaE (offtopic)
06:45 VanessaE eh, ignore that.
06:45 hmmmm jordan's licencing?
06:45 VanessaE yeah.
06:46 VanessaE I thought it was decided that non-free licenses weren't allowed in -Releases
06:46 hmmmm *shrug* no clue here
08:22 celeron55 VanessaE: NoDerivs is completely disallowed; that's not even a question worth of asking this time
08:22 celeron55 noncommercial is arguable, no derivatives is utterly wrong
08:22 VanessaE as I thought.
08:22 VanessaE but my memory, as you well know, isn't entirely trustworthy.
08:23 celeron55 i think i'll add some clarifying words to the guidelines
08:23 VanessaE good idea.
08:23 VanessaE GAH
08:23 VanessaE stupid thing
08:23 VanessaE that stupid "Leave a redirect topic in the forum" checkbox ha gotta go.
08:24 VanessaE (it's too easy to forget to check it off)
08:24 celeron55 you should direct stuff about the forum to thexyz; he is the only one with access to the running instance's source code
08:25 VanessaE ok
08:25 VanessaE I'll keep that in mind.
08:25 VanessaE (for some reason I thought you sort of admin'd it and he just hosted)
08:31 celeron55 added "Disallowed licenses" to http://forum.minetest.net/viewtopic.php?pid=14697
08:31 celeron55 that wasn't there before because i didn't think anyone would seriously try to use a license that disallows all derivatives
08:32 VanessaE that works.
08:32 VanessaE hah!
08:32 VanessaE first time I noticed the rickroll link in that post :D
08:33 celeron55 just to clarify: we do allow such licenses for texture packs though
08:34 celeron55 as long as it doesn't become too frequent
08:35 VanessaE if it does, we can work out some kind of basic rules then.
08:35 VanessaE for now I see no reason to mess with that.
08:35 celeron55 (mainly to allow MC texture packs to be ported without licensing issues)
08:43 VanessaE ok, bedtime for me...about 4 hours late.
08:47 proller joined #minetest-dev
08:49 celeron55 umm
08:49 celeron55 hmm
08:52 celeron55 yes, the item texture generation is slow probably because it needs to do a full render cycle for each item
08:53 celeron55 i guess there is plenty of overhead in such a one
08:56 celeron55 altough, i have no idea how some other game might handle such or whether such is actually generally done anywhere
09:08 prestidigitator joined #minetest-dev
09:09 prestidigitator Hey dev folks!  I've got some Simplex Noise for your pleasure, and it's SWEET!  http://forum.minetest.net/viewtopic.php?pid=79748#p79748
09:16 celeron55 a comparison would be useful; i don't see how anyone could do any objective evaluation based on those screenshots
09:18 prestidigitator True.  Actually there may not be a lot of qualitative difference at this point, but I am absolutely amazed that the performance is as good as it is, honestly.  That's the sweetest part.  LOL.
09:19 prestidigitator I'll work on a tangible comparison though.
09:19 prestidigitator Might even be worth trying fewer octaves of noise and seeing if we could get away with, e.g. 3 instead of 5.
09:19 prestidigitator THAT should increase performance, if it works out!
09:20 darkrose joined #minetest-dev
09:20 darkrose joined #minetest-dev
09:22 prestidigitator I may even try out that thing of varying fractal persistence next.  It should be incredibly easy given the Decorator Design Pattern the object-oriented interface has.
09:23 celeron55 i think many people would appreciate if you had your code already up on github or so
09:24 prestidigitator I'll have to clean up the history a little, but I'll push it to my fork soon, and create a pull request probably in the next couple days.
09:24 celeron55 there's probably something in it that needs to be modified for upstream anwyay, so it's good to let people find such out early
09:25 prestidigitator Yeah.  I'll make sure and merge upstream's master branch as close to the time I create the pull request as possible.
09:28 proller prestidigitator, you want to parse some config strings with lua ?
09:28 darkrose joined #minetest-dev
09:29 proller or it will be in special noise.config.lua ?
09:29 prestidigitator Yeah.  I have a working prototype of that, but I'm holding it off for a second phase.
09:31 prestidigitator Oh.  No.  What I did is took the code that parses structs from settings.h and modified it to take a descriptor object holding info about the C++ struct fields instead of a straight string.  Then I created a Lua state with an empty environment to parse it.
09:32 prestidigitator I test the first (non-whitespace) character of the value, and if it is not a "{" then I replace all parens with curly braces in order to take care of the vectors and wrap the whole value in "{".  Then I prepent "return " and pass it to Lua.
09:33 prestidigitator Other than values that the C++ code asks settings.h to parse as a struct, the settings file is not affected.  So it's still the same basic syntax, even up to getting the np... = .... from a line of the file.
09:34 prestidigitator Other methods could certainly work too though.  I'm not too hung up on it.
09:35 prestidigitator That's an interesting idea, taking a second config file.
09:36 sapier joined #minetest-dev
09:36 prestidigitator Actually it would be a good way to phase the config file completely to Lua, if that was interesting to people.  Create game.conf and game.conf.lua, and merge all the values, taking the ones from the Lua file first if they exist in both places.
09:37 prestidigitator That would allow existing config files to live unmolested.
09:37 sapier moving config file to lua will take any chance to get security enabled/disabled on per config base
09:37 prestidigitator Security?  In what sense?
09:38 sapier currently security patches use a special set of prefixed config switches that are not allowed to be changed if security is enabled
09:38 prestidigitator Oh.  I think I see what you might be getting at.  The way I was thinking was as a completely independent Lua state, totally separate from the interpreter used for mods.
09:38 celeron55 note that the Settings class is used for network serialization and such too; if you make it slower or modify it's behavior, you need to make a second version of it for those purposes
09:39 sapier if full config file handling would be done in lua you wouldn't have any chance to stop it from being changed
09:39 prestidigitator Ahh.  Okay.  Interesting.  I'd say the second version would be a good idea anyway.  I wouldn't think Lua should be used for basic client/server communication.  Hmm.
09:39 celeron55 but anyway, i think the right path to take here is minimal changes to other things while getting the noise thing done
09:40 prestidigitator Oh, yes.  No settings file changes for now.  Just the basic API.
09:40 celeron55 what i want to do is put you and hmmmm in the same discussion again once you have stuff in github
09:41 prestidigitator Ah.  Err, okay.  :o
09:41 sapier I've had a look at jmutex and was wondering if it's possible that jmutex posix implementation behaves completely different from win32 one in terms of recursion
09:41 celeron55 i think you two can agree in something that makes nobody sad
09:42 prestidigitator I hope so.  I really hope the performance numbers help him feel more comfortable with it.  I was surprised myself!
09:42 sapier as far as I understood win32 documentation a CRITICAL_SECTION oject is recurive by default while a normal pthread mutex isn't
09:42 prestidigitator Hmm.  If that's true about mutexes, it might be worth looking at the Boost threads library.
09:43 prestidigitator (Which has a version written on top of Windows threads, by the way.)
09:43 sapier is boost stable in between last time I tried to compile something with boost I had to update boost twice a week
09:43 prestidigitator That's true, but there IS a setting for pthread mutexes that makes them recursive.
09:44 celeron55 boost is pretty much a no-go here; it's too bloated for it's purposes
09:44 sapier I know but it isn't set
09:44 prestidigitator Boost isn't a single library, but a huge colletion of them.  I believe Boost's thread library only depends on like the Boost time/date library and one other.  I HATE many of the Boost libraries, but the threading one is pretty good and clean.
09:44 sapier so currently same code on linux and windows should do completely different things (if I'm correct)
09:45 celeron55 C++11 threads are more in the spirit of minetest; they can be used once all of our supported platforms have it (do they now?)
09:45 prestidigitator Ah.  That's a thought.
09:45 prestidigitator No idea.
09:45 sapier can someone tell me which version of gcc supports cx11?
09:45 celeron55 we support the version of gcc in debian stable, visual studio 2010 and newest clang
09:46 sapier still we should fix jmutex if my interpretation is correct
09:47 celeron55 sapier: http://gcc.gnu.org/projects/cxx0x.html
09:47 celeron55 that's for gcc
09:47 celeron55 debian stable has... 4.6 i think
09:47 sapier as CRITICAL_SECTION can't be switched to non recursion mode (at least msdn documentation tells this) we should use a (slower) recursive mutex too
09:47 celeron55 here's a good list for all compilers: http://wiki.apache.org/stdcxx/C++0xCompilerSupport
09:48 prestidigitator g++ 4.7's man page says "The 2011 ISO C++ standard plus amendments.  Support for C++11 is still experimental, and may change in incompatible ways in future releases".  At least as of the version Ubuntu 12.10 has.
09:48 sapier do we require full cx11 compatibility?
09:48 sapier not even 4.8 has reached this state
09:48 celeron55 sapier: how is that relevant to us
09:49 sapier I don't know those features missing in gcc4.8 don't seem to be relevant to us (as far as I understand)
09:49 celeron55 "they can be used once all of our supported platforms have it" refers to any single feature of C++11 by their own
09:49 celeron55 not the full thing
09:49 sapier ok
09:49 sapier so we only have to wait until wheezy is released
09:50 sapier but as far as I know c++ threads aren't a full replacement for phreads
09:50 prestidigitator I believe there's actually a library that puts a pthreads API on top of Windows threads too.  It's possible that might give some consistency.  Then again, maybe that's what jmutex is supposed to do anyway?
09:51 prestidigitator No idea about licensing on that one.
09:52 sapier ok I'm wrong according to cppreference thread documentation c++ threads seam quite as good as jthread
09:53 sapier but they are missing thread prioritys ... if we want to make minetest multithreaded we most likely will require this
09:53 celeron55 apparently VC10 doesn't support C++11 threads and never will
09:53 sapier ok so no c++ threads anytime soon
09:54 sapier I suggest only fixing jmutex to behave same way in linux and windows for the time being
09:55 prestidigitator If Windows' default is recursive, fixing the pthreads version should be very easy.
09:55 celeron55 sapier: or we could just define that our mutex implementation is free to behave recursively or non-recursively; that isn't really a problem other than in very special cases
09:56 sapier it's no problem yes but it should be same on linux and windows
09:56 sapier stop it is a problem
09:56 sapier if you define it's free you have to assume it's non recursive
09:56 celeron55 yes, you have to code like it's non-recursive
09:57 sapier ... might be even better .. but more difficult to handle
09:57 celeron55 i'm fine with switching to recursive pthreads though, if the windows one indeed is stuck to being recursive
09:58 sapier it's the quick solution ...as atm mutexes aren't used very excessive the speed penalty might not be noticed within linux
09:59 celeron55 the non-recursive pthread mutexes are multiple times faster than recursive windows ones i think
09:59 sapier but I'll have look if it's possible to make scriptapi behave fine with non recursive mutexes ... functions called from within scriptapi as well as modapi might be a problem ... maybe I need to add aditional functions to get this done
10:00 celeron55 the other windows implementation (the inter-process one, i guess that's non-recursive) selectable in jmutex by a flag is way slower
10:00 prestidigitator All you have to do is call pthread_mutex_init() with an attribute object you've called pthread_mutexattr_settype(..., PTHREAD_MUTEX_RECURSIVE_NP) on.
10:01 sapier yes but we need to be sure we want to use the slow recursive mutexes
10:02 sapier semaphores (events) are heavy operations compared to mutexes (at least on most architectures)
10:02 prestidigitator True.  Honestly I doubt they are that much slower though.  Hmm.
10:03 sapier mutex speed does make a difference but only if called thousands of times per second (which may happen in some programs) ... i don't know if minetest uses locking this way
10:03 prestidigitator Well, I believe recursive mutexes just lock a non-recursive mutex and check on a thread ownership variable.
10:04 Kray recursive mutexes are bad because they indicate the program is structured poorly
10:04 prestidigitator Right.  Hopefully most operations are done using mostly independent state on the different threads.
10:05 prestidigitator I'd have to disagree there.  It CAN indicate this, but there are well designed programs that can still recursively lock mutexes.
10:05 sapier which is exactly what minetest is considering locking kray ;-)
10:06 sapier imho locking is done way to heavy within minetest this is like the big kernel lock in linux was some years ago
10:09 prestidigitator I haven't really dug enough to get a sense of that yet myself.  I did create the noise API I am working on with concurrency in mind.  The noise generation itself is completely re-entrant.  To generate blocks of noise, callers pass in a result buffer.
10:09 prestidigitator Somewhat better than the existing API, where the results are stored in the noise object itself.
10:10 prestidigitator So to safely generate noise independently on different threads, the whole noise object would have to be copied.
10:10 prestidigitator Not that big of a deal, until you realize that many objects hold a noise object...
10:14 prestidigitator Anyway, I should probably be getting some sleep.
10:14 sapier ok I've just enabled locking without recursion lets see where I'm gonna be stuck
10:15 prestidigitator Uh oh!  Good luck!  :-)
10:15 prestidigitator Good talking to you.  Goodnight folks.
10:16 prestidigitator left #minetest-dev
10:17 sapier lol no lockup at all due to big minetest lock :-)
10:42 proller joined #minetest-dev
10:58 iqualfragile joined #minetest-dev
11:26 darkrose joined #minetest-dev
11:54 PilzAdam joined #minetest-dev
11:56 sapier PilzAdam are used to locks and how they are used in core?
11:56 rubenwardy joined #minetest-dev
11:56 PilzAdam no
11:57 sapier :-/ I try to understand how this is done
12:06 Pepsininja joined #minetest-dev
12:08 Pepsininja Hello:)
12:08 rarkenin Hi.
12:09 Pepsininja You use this too Rark?
12:09 rarkenin Occasionally. IRC is a meeting place for people/developers. :)
12:10 Pepsininja joined #minetest-dev
12:10 Pepsininja Gtg
12:30 sapier ok I've investigated env lock, there's no way this lock can ever be taken from anyone outside of server thread. Can someone tell me what's this lock good for at all?
12:33 sapier argh ... eclipse has hidden a file ... there is exactly one other thread ... emerge thread
12:37 sapier and emerge thread protects map operations by using env lock ... most other occurences of env lock don't do anything with map ... imho this lock is used as "let me be the only one doing anything"-lock
12:38 celeron55 it protects the environment, consisting of the nodes and objects
12:38 celeron55 and lua
12:38 sapier so "protect everything" is very close
12:40 sapier for example to send time to players env lock is taken ... I don't see any dependency of time and map ... is there a hidden one?
12:41 celeron55 could be that there is none for that, but previously was
12:41 sapier most env locks have been commented within client maybe they have been necessary once
12:41 celeron55 you need to take into account who may write the data, and who may read the data
12:42 celeron55 sapier: don't let that fool you; the client was made single-threaded a while back as far as environment goes
12:43 sapier yes that's why I'm asking I know it's difficult to make locks more specific but currently it's a one thread or another thread lock resulting in almost single thread performance
12:43 Jordach joined #minetest-dev
12:44 celeron55 in order to do that, you need to define smaller atomic operations for everything that needs to be done
12:44 celeron55 currently there is only one atomic operation, which is "do anything that modifies anything in the game state"
12:44 sapier that's what I suggest to aim at
12:44 celeron55 "modifies or reads", that is
12:44 sapier it's not a thing to be done at once of course
12:45 sapier sorry gtg
12:45 celeron55 well i don't really want to discuss this either so whatever 8) other things to do
13:06 troller joined #minetest-dev
13:31 PilzAdam I merged the sound_place field for tools and the new damage system together into one branch, since they both require a new protocoll version: https://github.com/PilzAdam/minetest/commits/dev
13:31 PilzAdam all changes are fully backwards compatible
13:39 PilzAdam pull request: https://github.com/minetest/minetest/pull/576
13:45 rarkenin joined #minetest-dev
14:10 hmmmm joined #minetest-dev
14:18 hmmmm http://forum.minetest.net/viewtopic.php?pid=79748#p79748  <---- something's not right here
14:19 hmmmm the point-noise functions are about 30x slower than my batch noise generation
14:23 hmmmm and i am reading the backlog from that guy now... oh god... "decorator design pattern"?
14:23 hmmmm all the things i thought would happen are happening with this guy
14:24 hmmmm yeah, his code is definitely not making its way in without heavy modification to actually fit with minetest
14:28 celeron55 you have a lot of presuppositions considering you haven't seen a single line of code
14:29 hmmmm i have good intuition much of the time
14:29 celeron55 i suggest not so openly disliking it before you have actually seen it; it does no good to anyone
14:29 celeron55 nor this project
14:29 hmmmm decorator design pattern though
14:29 celeron55 they're just words
14:29 hmmmm did he just finish a software engineering course at his school and he's eager to javafy minetest?
14:30 hmmmm why not draw up some UML diagrams too
14:30 hmmmm make a use flowchart
14:30 Kray why not?
14:30 hmmmm start shitting up the source code with doxygen comments
14:30 serengeor joined #minetest-dev
14:30 Kray doxygen comments in the source is a good thing
14:31 hmmmm they're ugly, space consuming, and often uninformative
14:31 Kray it allows generating nice documentation of APIs
14:31 Kray they are not uninformative if you don't write them to be such
14:32 Kray you have to document somewhere, so why not where the code that's being documented resides?
14:32 hmmmm because it's too distracting
14:32 Kray it's distracting to have well documented and commented code?
14:32 Kray gtfo
14:33 hmmmm you seem to think that comments turn something that was unreadable before into something that's easy to understand
14:33 Kray nope
14:33 hmmmm just by talking about what the parameters are in a full sentence instead of a word or phrase
14:34 PilzAdam hmmmm, if you have time can you look at this: https://github.com/minetest/minetest/pull/576 ? it needs to be merged before 0.4.6 to make the new swords work correctly
14:34 rarkenin joined #minetest-dev
14:34 Kray wat
14:36 hmmmm PilzAdam, it looks nice I guess, i can't comment on its functionality though
14:36 iqualfragile joined #minetest-dev
14:36 hmmmm you know, damage is something that I would've thought would best be done completely in lua
14:36 hmmmm doesn't matter though
14:36 PilzAdam no, the client predicts it
14:37 celeron55 these days i'm actually in for trying doxygen, but i'm leaving actual usage (there is a patch around that puts in the few required pieces to the build system) for those who mainly code things
14:37 hmmmm that's a challenge for the bar api, client-side prediction
14:37 hmmmm celeron, have you seen the average doxygen comment?
14:37 hmmmm a lot of code is self-explanatory to begin with
14:37 hmmmm there is some that isn't, like profiler i'd argue
14:38 celeron55 we can just set up a policy that any self-explanatory code shall not be written extra documentation for
14:38 hmmmm but there, you'd just need a block comment at top to explain in two or three sentences what is going on
14:39 hmmmm i just fear having a 10-12 line comment for a 4 line function whose usage is totally described by the function name, parameters, and parameter types
14:40 hmmmm oftentimes what's needed is to talk about what the function does, not its parameters and what not
14:40 Kray "code is self-explanatory"
14:40 celeron55 ehm... do you not think i would like such ones?
14:40 Kray no, it isn't
14:40 hmmmm doxygen encourages doing that
14:40 celeron55 if such would appear, i'd just go remove it myself if nobody else did
14:41 celeron55 seriously, we're not so dumb that we couldn't use doxygen to our advantage
14:41 hmmmm but where do we draw the line
14:42 celeron55 a few examples should do well
14:42 hmmmm and then people will say it's incomplete because it doesn't document all of the methods of something
14:42 hmmmm and then we're going to get pull requests for complete commentary on the code
14:43 celeron55 maybe initially have a policy of no methods whatsoever to be documented, and only a file top level comment allowed - so it's nicely browseable in a browser, and keeps the actual code compact
14:43 hmmmm "oh yeah will someone merge my pull request, i fixed minetest by giving fizzbuzz() a doxygen style comment and encapsulated it in an interface with a  decorator design pattern"
14:43 celeron55 :D
14:45 hmmmm but anyway i like the last idea better
14:45 hmmmm i want to keep code with code mostly
14:45 celeron55 let's say also that only those who have worked on some code are allowed to add the doxygen comment about it, so it stays actually relevant (zero "i++; // Increment i by one" stuff)
14:47 Exio but the i++ is very hard to understand
14:47 Exio add macros like #define Increment_Variable_by_One(i) i++;
14:47 celeron55 anyway, this won't happen until somebody actually wants to handle this
14:48 celeron55 but it's allowed assuming the discussed things will be done correctly
14:48 Kray hey, ++i !
14:48 Kray i++ in unoptimized !1
14:49 hmmmm that was the whole point of COBOL
14:49 hmmmm it was verbose so that middle managers could read the code like any other document
14:49 hmmmm and we know how fun COBOL is
14:50 hmmmm java definitely has elements of this with the verbosity
14:50 hmmmm languages that are naturally terse (like C/++) are best left alone
14:52 celeron55 (middle managers don't need to understand code at all though; their purpose is to serve the people who actually do stuff in things they don't want to do)
14:53 IceCraft joined #minetest-dev
14:53 iqualfragile you can do i++ in java, too
15:01 rubenwardy joined #minetest-dev
15:08 hmmmm celeron, your dungeon game won't break if everything is set to a light value of 0x0F, right?
15:09 sapier why is block generation split into intit and finish?
15:10 hmmmm ahh nevermind, that won't work, you don't call set node with an explicit param1
15:10 hmmmm sapier, locking
15:10 sapier I still don't understand?
15:11 sapier init is done within one lock finish within another
15:11 hmmmm makeChunk() is called in between the two
15:11 PilzAdam celeron55, do you want to look at the serialization? https://github.com/minetest/minetest/pull/576
15:11 hmmmm you don't want to call makeChunk() while the environment is locked, that's braindead
15:11 sapier ok I'll have alook what this does
15:12 sapier I try to understand where env lock is used for what in order to replace it by smaller locks ... e.g. a map lock where only map operations are done
15:12 hmmmm you'll have trouble
15:12 hmmmm i was looking at the same exact code you're looking at now
15:13 sapier primary goal is to enable scriptapi to run with no lock at all ... currently all scriptapi calls are done under envlock ... wich isn't quite fast
15:14 sapier but I'm in early stage of investigation atm
15:16 hmmmm https://github.com/minetest/minetest/commit/b0f39da131bc24a41c5d5c8a03d06192937a4568
15:20 celeron55 joined #minetest-dev
15:27 celeron55 sapier: it might usually not make sense to run scriptapi without a lock - because the vast majority of the time the only thing the scripts are going to do is mess around with everything in the environment
15:28 celeron55 but dunno
15:29 hmmmm celeron, do you have any ideas on how to fix Map::updateLighting() from taking insane amounts of CPU time from the server thread when a liquid is flowing into an inexistant block?
15:29 sapier inventory actions aren't modifying map, entity interaction isn't modifying map, crafting doesn't modify map  ... there are at least some situations where a map lock is not necessary
15:29 celeron55 hmmmm: no
15:29 celeron55 >inventory actions aren't modifying map
15:29 celeron55 they can be modifying node metadata
15:30 sapier if it's a node inventory and not a detached one
15:31 celeron55 but what do you achieve by letting the global lua run without a lock? node placements and the constructors of special nodes and so on need to run in it, blocking everything anyway
15:31 hmmmm hah, this is fun, if you have some water and lava source nodes at the edge with nothing but air surrounding them, they make some pretty cool terrain thanks to the new lava cooling and the way liquids spread
15:31 celeron55 it would possibly be more reasonable to make a system for allowing some kind of script threads maybe
15:32 sapier that's exactly what I want to do but it's useless unless It can't run asynchronously to server
15:33 sapier if this thread requires env lock taken to run it'd exclude server thread vice versa
15:33 celeron55 well, just disable the whole environment and server api from the threads and just allow serialized data to go in and out
15:34 sapier isn't worth the work as you couldn't do anything with a script environment stipped down that much
15:34 celeron55 you can then 1) do blocking i/o in them, 2) launch one in on_generated to build some terrain in the background, passing the copied table of originally generated nodes to it 8)
15:34 celeron55 not sure if this is really viable, but it's one of possible approaches
15:35 sapier that's why I want more specific locks to make those threads run asynchronously as long as possible
15:35 sapier if someone places a node from lua I don't have any chance but locking map
15:35 sapier but if someone punches a entity i don't need to bother about map
15:35 celeron55 sapier: what do you want to do in non-locked lua?
15:36 celeron55 you need to know the answer to that before you can design anything
15:36 sapier e.g. entity interaction inventory interaction
15:37 sapier lua based pathfinding for example took 1s to fetch data from map but several hundreds to calculate ... I know if something is that heavy it'd not be done in lua but it's a good example for locks just not required for so long
15:40 sapier But I'll do some investigations how much time is wasted within lock not required to be wasted
15:48 hmmmm sapier, it would probably help to have some APIs for manually unlocking/locking the environment back, to be used at the modder's own careful discression..
15:48 hmmmm that's what i would do anyway.
15:50 rubenwardy left #minetest-dev
15:54 celeron55 basically, here is why it has been left like that - it'll take much effort to figure out how to do it so that it can actually bring some benefit
16:13 sapier I know it's lots of effort but as cpu's don't get faster anymore but only get additional cores amdals law is most important for any application doing paralelizable computation
16:16 dexter0 joined #minetest-dev
16:18 Zeg9 joined #minetest-dev
16:19 rubenwardy joined #minetest-dev
16:37 celeron55 joined #minetest-dev
16:57 sapier hmmm for some cases this might be usefull but I don't think modders should bother to take env lock when adding a single block
16:58 sapier excuse me I meant node of course
17:02 celeron55 obviously it can be automated when the modder doesn't care
17:11 sapier according to profiler there is time consumed within lua functions that don't need a lock ... it's about 0.06 if here's almost nothing to be done within lua
17:14 hmmmm holy crap i am such an idiot
17:18 hmmmm https://github.com/minetest/minetest/commit/5b854f95d2144710493520151aafc48a887ac1b3
17:18 hmmmm why didn't anybody tell me i did something dumb
17:19 PilzAdam we want you to find your bugs yourself :-)
17:33 rubenwardy joined #minetest-dev
18:03 Calinou joined #minetest-dev
18:21 proller joined #minetest-dev
18:47 PilzAdam celeron55, sorry for repeating, but can you look if I have done something dumb to the serialization: https://github.com/minetest/minetest/pull/576 ?
18:52 celeron55 it seems to be roughly right
18:52 celeron55 you've screwed up the documentation though
18:53 PilzAdam wich documentation? lua-api.txt?
18:53 celeron55 damage_groups = {fleshy=100}, <- this example is ridiculous
18:53 celeron55 a tool that makes 100hp of damage
18:54 PilzAdam oh
18:55 PilzAdam anything else?
18:55 celeron55 and after "List of damage for groups of entities.", add "See "Entity damage mechanism"", and also after line 473
18:55 celeron55 so that it's easy to find how it actually is supposed to work
18:55 celeron55 oh and
18:56 celeron55 hmm, i think it's good enough after that
18:57 celeron55 i think this may leave some old misinformation somewhere but i can't immediately find such
18:59 PilzAdam ok, thx
19:02 PilzAdam maybe in "Known damage and digging time defining groups" add "percentage of damage caused by damage group fleshy" to fleshy
19:03 celeron55 umm hmm
19:03 celeron55 no
19:04 celeron55 the mention about percentage should be added under "Groups of entities"
19:05 celeron55 from "Known damage and digging time defining groups" the line "Valid ratings for these are 0, 1, 2 and 3, unless otherwise stated." should be removed
19:05 celeron55 or alternatively changed to... well no, it doesn't belong there
19:05 celeron55 it's supposed to be just a list
19:06 celeron55 the 1...3 thing for digging time is explained elsewhere already
19:08 celeron55 lua_api.txt should be minimal but accurate 8)
19:09 hmmmm celeron, was it l_find_node_near() that was being slow?
19:09 hmmmm there are a lot of calls to l_find_node_near(), but they all take <= 1ms
19:09 PilzAdam updated
19:10 celeron55 >there are a lot of calls
19:10 celeron55 there are a fuckton of calls, made by leaf decay
19:10 VanessaE moretrees uses the lua hook for that as well.
19:10 VanessaE (for the same reason)
19:11 celeron55 l_find_node_near should be optimized to be as light as possible for light queries
19:11 celeron55 not something that takes as much as "<=1ms"
19:11 PilzAdam Ill push it now
19:11 hmmmm there are a lot of other functions called more than that which take longer than 2ms
19:11 hmmmm i'm not wasting my time
19:12 celeron55 could be
19:12 hmmmm haha j/k, i'm not like that
19:12 celeron55 that's just one thing that easily popped out by inspecting with callgrind/kcachegrind
19:13 celeron55 leaf decay will actually cache the result on it's own so it gets easier over time
19:13 hmmmm but i'm going to need to add a microsecond precision timer, something that's long overdue
19:13 VanessaE plants_lib also uses it during mapgen time.
19:14 VanessaE (just mentioning these because they're the two heaviest mods I know of that would benefit from a speedup in that function)
19:23 hmmmm well this isn't as simple as it should be
19:23 hmmmm irrlicht doesn't have anything other than ms
19:23 celeron55 you need to add a platform-specific one to porting.h
19:23 hmmmm yeah i had to do that anyway
19:23 celeron55 posix has gettimeofday, windows has something else
19:24 hmmmm i know, i know
19:24 celeron55 why don't you just do it then and stop talking :P
19:24 hmmmm for the hell of it, i expanded timing to seconds, microseconds, and nanoseconds
19:25 hmmmm ah, you have to specify whether or not a timetaker is quiet now in order to use that, oh well
19:28 hmmmm and for nanoseconds i guess i can use clock_gettime()
19:28 sapier I like it :-)
19:45 Taoki joined #minetest-dev
19:49 hmmmm hrmm
19:49 hmmmm does anybody have Windows to test something?
19:51 VanessaE hmmmm: got Win2k via virtualbox over here...
19:51 VanessaE (on husband's machine)
19:51 hmmmm haha, no thanks
19:51 VanessaE heh
19:51 hmmmm I mean an actual machine that can run minetest
19:52 VanessaE well it works enough to play his pinball games :D
19:52 VanessaE but no, nothing handy that actually has win installed
19:56 Calinou joined #minetest-dev
19:56 Exio hmmmm: for testing what?
19:57 hmmmm well, two things I guess.  my implementations of getTimeUs and getTimeNs for windows, and to see how slow l_find_nodes_in_area really is for other people
19:57 Exio how should i test that?
19:57 Exio any virus.exe? :P
19:57 hmmmm oh, well hold on a minute
19:57 hmmmm not at the moment
19:58 hmmmm actually i can do this without dragging other people around
19:58 hmmmm nevermind
19:58 kaeza joined #minetest-dev
20:00 Exio ok...
20:00 hmmmm sorry :p
20:00 * Exio throws lava at hmmmm's computer
20:00 hmmmm lava!
20:00 hmmmm hopefully not a lava source
20:01 Exio it is a NON RENEWABLE lava source
20:03 hmmmm haha
20:03 hmmmm / CLANG SUCKS DONKEY BALLS
20:03 Exio i saw that when grep-ing
20:05 jojoa1997|Tablet joined #minetest-dev
20:08 Calinou it does :>
20:08 Calinou well, not really
20:08 Calinou but it bugs with a lot of programs
20:09 hmmmm clang is nice because it has a BSD license and it's quite fast these days.. i am looking forward to freebsd 10 where it's the default cc
20:09 hmmmm well, let's be honest, anything is better than gcc 4.2.2
20:29 Calinou I don't really care about compile speed (MSVC ALWAYS wins in this anyway, no need to compile), just about the resulting binary speed :P
20:29 Calinou or the fun intel compilers :p
20:29 rarkenin joined #minetest-dev
20:35 VanessaE Calinou: you forgot to delete gold, copper, bronze nodes from moreores :-)
20:36 VanessaE (and tools, items)
20:38 sfan5 bug:
20:39 sfan5 ERROR[main]: WARNING: updateListener: invalid value
20:39 sfan5 and the world turns invisible
20:39 jojoa1997|AWAY How do I add a. Name to my account
20:40 sfan5 debug stack trace: http://pastie.org/pastes/7166009/text?key=prs9gr93ikamveaqce17oa
20:48 hmmmm this is harder than i thought
20:48 hmmmm QueryPerformanceCounter is wildly inaccurate
20:48 hmmmm a lot of the time i do get what i expect, other times it's way off
20:48 hmmmm and i don't think it's due to context switching
20:49 hmmmm ah, nevermind, it's accurate enough, it's Sleep() that's not accurate
20:50 Pepsininja joined #minetest-dev
20:53 hmmmm https://github.com/minetest/minetest/commit/df49b93877b40551111be6ef5ecfe4629787ab75
21:00 sapier1 joined #minetest-dev
21:30 hmmmm vanessae, they still have to be there in case those nodes need to be registered
21:31 VanessaE oh.
21:31 VanessaE but they show up anyway
21:31 VanessaE so the test isn't being done
21:33 jojoa1997|Tablet joined #minetest-dev
21:37 proller https://github.com/proller/minetest/commit/c0c55e3c8a196eaa1ec412a230a339b771c692b9 - masterserver fixes
21:38 proller added gameid, uptime from server
21:45 rarkenin joined #minetest-dev
21:46 proller comments?
21:48 PilzAdam is it backwards compatible?
21:53 PilzAdam and wouldnt it be better to use the name that is set in game.conf instead of the id?
21:53 jojoa1997|Tablet joined #minetest-dev
21:55 proller fully compatible
21:57 hmmmm from what i understand, the name in game.conf is a larger string to describe the game better, not a unique identifier
21:58 hmmmm yeah, looks good aside from the lines that are like 150 columns long
21:58 hmmmm lol, 'human_time()'
21:58 hmmmm the time that earthlings use
21:59 proller yes, too long
21:59 proller human-readable
22:00 proller commit with .id ?
22:00 hmmmm yeah
22:00 hmmmm because an id actually identifies the game, that's why it's called the I.D.
22:03 PilzAdam the ID of games is just the name of the directory of it, while the actual name of the game is set in game.conf
22:03 PilzAdam like "name = Build"
22:04 hmmmm yea
22:04 hmmmm oh... wait... that's going to be displayed to the user?
22:04 PilzAdam lua-api.txt says is the "human readable" version of the game ID
22:04 PilzAdam *its
22:04 PilzAdam I guess, yea
22:05 hmmmm if that's the case, then yeah, the name should be used
22:05 proller "minimal"
22:05 PilzAdam we also need to change the select world GUI to show the name instead of the ID behind the worlds in the []
22:05 proller and now its for show in web only, no space in game chooser
22:06 hmmmm yeah
22:06 hmmmm if the end user is going to see this in a list, it should be .name, if not, .id
22:06 proller http://minetest.setun.net:8000/
22:06 PilzAdam proller, also a proper commit message would "Small fixes for masterserver and add uptime and game name to announce"
22:07 PilzAdam +be
22:07 proller ok
22:08 PilzAdam oh, the one you commited is also good
22:08 proller ^^ in link .name
22:08 proller no, i commited .id
22:08 proller but can change
22:08 proller but look on http://servers.minetest.net/
22:09 proller add long string too bad
22:13 proller main difference now in first letter, capital or not
22:15 hmmmm wow, gotta wonder, is that really all the minetest servers there are?
22:16 VanessaE http://servers.minetest.ru/
22:16 VanessaE those, too
22:16 hmmmm minetest isn't popular outside of the people in our channel i guess
22:16 serengeor joined #minetest-dev
22:16 hmmmm ah that looks a bit better
22:17 proller hmmmm, all with server_announce=1
22:17 VanessaE hmmmm: well that's not true, if you were to look at my auth.txt, you'd find maybe 80% or more of the 1491 entries are people we've never seen in these channels
22:17 hmmmm isn't server_announce=1 the default?
22:17 proller no
22:17 hmmmm oh
22:17 proller but you can enable in gui
22:18 proller "Public"
22:18 PilzAdam most people dont know how to use it
22:18 Calinou idea: ability to change server name in the server creation menu :P
22:18 Calinou name, desc, maybe max players
22:18 VanessaE it's just more a problem of "how to run server plz I cant read web halp plzzz"
22:18 VanessaE know what I mean?
22:18 Calinou (we could have a more full server gui, actually)
22:19 Calinou a separate one, but in the MT main menu
22:20 proller btw, now possible to embed serverlist in any page, i think must be tab in http://minetest.net/
22:21 proller or directly on main page like http://buildandshoot.com/
22:27 IceCraft Lol
22:27 IceCraft Buildandshoot.com :3
22:27 IceCraft Yay
22:34 proller PilzAdam, ups, uptime backward comp. was broken 8) small fix..
22:34 proller only in js
23:33 PilzAdam hmmmm, whats this? http://www.zimg.eu/i/4153720300
23:34 PilzAdam it appeared in my world after I started MT in a shaft under the tower and went up
23:34 PilzAdam the trees are grown from saplings
23:35 VanessaE I saw something like that on my server a few days ago too.
23:35 VanessaE inexplicable, square black shadows.
23:39 jojoa1997|Tablet joined #minetest-dev
23:39 PilzAdam oh, I have planted a new sapling, and when the tree grows the shadows are gone
23:42 PilzAdam yep, its reproduceable that a growing sapling fixes it
23:51 jojoa1997|Tablet joined #minetest-dev

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