Time |
Nick |
Message |
00:07 |
|
NakedFury joined #minetest-dev |
00:31 |
|
shadowzone joined #minetest-dev |
00:32 |
|
domtron_ joined #minetest-dev |
01:14 |
|
paramat left #minetest-dev |
01:39 |
|
shadowzone joined #minetest-dev |
01:39 |
|
exio4 joined #minetest-dev |
01:46 |
|
Miner_48er joined #minetest-dev |
01:48 |
|
ShadowLadyXD joined #minetest-dev |
01:54 |
|
shadowzone joined #minetest-dev |
01:57 |
|
ShadowLadyXD joined #minetest-dev |
02:16 |
|
shadowzone joined #minetest-dev |
02:31 |
hmmmm |
hey guys, what are your opinions on escaped strings in the config? |
02:31 |
hmmmm |
I am thinking of doing it backwards, like instead of a string having special chars escaped, all the special chars are escaped to begin with |
02:32 |
hmmmm |
adding multi-line string settings while i'm doing this other thing because why not |
02:47 |
ShadowNinja |
hmmmm: Um, I already did that... |
02:48 |
hmmmm |
what? |
02:48 |
ShadowNinja |
#1684 |
02:48 |
ShadowBot |
https://github.com/minetest/minetest/issues/1684 -- Add multi-line settings and setting escapes by ShadowNinja |
02:49 |
hmmmm |
ah |
02:49 |
hmmmm |
this is implemented in a totally different manner though |
02:49 |
hmmmm |
in fact, what I wrote so far nukes everything in your commit |
02:50 |
|
hintss joined #minetest-dev |
02:52 |
hmmmm |
ShadowNinja, this is a lot simpler. if """ is the value for a config setting all by itself, the next lines will be the multi-lined text until it sees the next """ on a line by itself |
02:55 |
|
exio4_ joined #minetest-dev |
03:09 |
ShadowNinja |
hmmmm: Ah. You could also do the same with single quotes, since they'll probably not be at the start of a value. |
03:09 |
ShadowNinja |
Er, single double-quotes ("). |
03:11 |
hmmmm |
i wanted to use three double-quotes because that's the multiline-text specifier for pytho |
03:11 |
hmmmm |
python |
03:12 |
hmmmm |
and it's pretty rare |
03:12 |
hmmmm |
i'm not bothering with escaping the text because that gets messy and it's not worth it in general |
03:21 |
kahrl |
hmmmm: you could use serializeJsonStringIfNeeded from inventory.cpp |
03:21 |
hmmmm |
absolutely disgusting |
03:21 |
hmmmm |
this is not quite json |
03:22 |
hmmmm |
http://fpaste.org/155226/41731774/ |
03:22 |
kahrl |
that function leaves the string unchanged if there is nothing to escape |
03:23 |
hmmmm |
so basically the parser is super simple |
03:24 |
hmmmm |
parseConfigObject returns events now |
03:24 |
hmmmm |
could be a comment, a key-value pair, a group ({}), a multiline value, etc. |
03:25 |
hmmmm |
i also fixed updateConfigFile. not that it didn't work, but holy crap... |
03:26 |
|
chchjesus joined #minetest-dev |
03:27 |
hmmmm |
settings are maps from strings to SettingsEntry, which is a struct with a string or a Settings *. if the settings * is not-NULL, then it has child settings. you can get settings from groups by either doing something like: Settings *mapgen_config = g_settings->get("mapgen"); mapgen_config->get("seed"); or you could do g_settings->get("mapgen.seed"); |
03:27 |
hmmmm |
yes? no? |
03:28 |
hmmmm |
as for setting defaults in settings sub-trees, i haven't figured that one out. there's no elegant interface there. |
03:29 |
|
zat joined #minetest-dev |
03:30 |
|
Zeno` joined #minetest-dev |
03:30 |
kahrl |
imo get() should return string and throw an error if the setting is actually a group |
03:31 |
hmmmm |
get() already returns a string |
03:31 |
kahrl |
have a getGroup() that returns a child settings object |
03:31 |
hmmmm |
oh, whoops |
03:31 |
hmmmm |
yeah, sorry. there's getEntry() now. get() just returns getEntry().value, and getChildren() returns getEntry().children |
03:32 |
kahrl |
sounds good |
03:34 |
kahrl |
how do you handle the case where one thread uses a child settings object and another thread deletes it? |
03:35 |
hmmmm |
i don't! user beware, don't delete children Settings objects |
03:36 |
hmmmm |
at first I was going to have getChildren return a deep copy of a std::map<std::string, SettingsEntry> but that'd be a bit awkward to handle |
03:39 |
kahrl |
what if one thread calls g_settings->set("blah", "something") and setting blah was a group? that would delete the child settings object, right? does every caller have to check for that case? |
03:40 |
hmmmm |
that's one piece of behavior i haven't decided on yet |
03:41 |
hmmmm |
i think what i'm going to have it do is what it does right now, which is lets it succeed, but doesn't get written back to the config file |
03:41 |
hmmmm |
or maybe write two entries; blah = something \n blah = { ...child settings here... } |
03:42 |
kahrl |
I prefer the second version |
03:42 |
hmmmm |
same.. |
03:53 |
ShadowNinja |
Groups would be great -- just make it accessible from Lua too. |
03:53 |
ShadowNinja |
And if \n and friends aren't escaped in keys throw some kind or error if you try to use them. |
03:54 |
ShadowNinja |
(That was a security issue in my security branch) |
03:54 |
hmmmm |
security issue? |
03:55 |
ShadowNinja |
Seems like only [a-zA-Z0-9_-.] should be allowed. |
03:55 |
hmmmm |
maybe from lua... i dunno... |
03:55 |
ShadowNinja |
hmmmm: minetest.setting_set("foo=true\nsecure.enable_security", "false") |
03:56 |
hmmmm |
multiline is for values, not keys |
03:56 |
ShadowNinja |
Causes a problem when reloaded. |
03:56 |
hmmmm |
ahhhh |
03:56 |
hmmmm |
i see what you're saying now |
03:56 |
hmmmm |
that's clever |
03:57 |
hmmmm |
though, isn't that true with the current Settings? |
03:57 |
ShadowNinja |
hmmmm: Yes, just while you're at it. |
03:57 |
hmmmm |
security in settings deserves a closer look |
03:59 |
ShadowNinja |
if (!string_allowed(name, ...) throw UnsupportedOperationException("Only alphanumeric characters, underscores, and dashes allowed in setting keys"); |
04:00 |
ShadowNinja |
Just something like that in set((. |
04:00 |
hmmmm |
have to do the same thing for keys |
04:00 |
hmmmm |
erm values |
04:00 |
ShadowNinja |
Make foo.bar = true equivalent to foo = { bar = true } too |
04:00 |
hmmmm |
also need to check to make sure they're not inserting a multiline specifier |
04:01 |
ShadowNinja |
hmmmm: Yes, although I'd just make them escape properly. |
04:01 |
ShadowNinja |
(values that is) |
04:02 |
hmmmm |
agh the escaping |
04:02 |
hmmmm |
no escapes! escaping strings opens a can of worms |
04:03 |
kahrl |
how so? |
04:03 |
hmmmm |
more potential security issues, more code complexity, more confusing to look at, etc. I'd personally rather have my settings a little bit less flexible instead |
04:03 |
hmmmm |
if you can't write """ in a piece of multiline text... well then |
04:04 |
ShadowNinja |
hmmmm: Alright, sanitize it then. |
04:04 |
kahrl |
serializeJsonStringIfNeeded has been around for a long time without issues |
04:04 |
hmmmm |
actually |
04:04 |
kahrl |
it's also tested |
04:04 |
hmmmm |
you can still write """ in multiline text |
04:04 |
hmmmm |
it just can't be on a line all on its own |
04:05 |
hmmmm |
i'll check out the serializeJsonStringIfNeeded |
04:05 |
|
cg72 joined #minetest-dev |
04:05 |
kahrl |
well, serializeJsonString is tested to be fully exact |
04:05 |
ShadowNinja |
hmmmm: Er, so are the leading and trailing newlines stripped? |
04:06 |
|
cg72 left #minetest-dev |
04:06 |
hmmmm |
not for multiline text |
04:06 |
hmmmm |
http://fpaste.org/155226/41731774/ |
04:07 |
hmmmm |
actually what i pasted is a tiny bit inaccurate.. the closing """ would not be indented otherwise that line would be treated as another part of the multiline string |
04:08 |
ShadowNinja |
hmmmm: So that produces "\ntext begins here....\n"? |
04:08 |
hmmmm |
no beginning and trailing \ns |
04:08 |
hmmmm |
intermediate newlines are kept |
04:08 |
hmmmm |
so that text would be: |
04:08 |
ShadowNinja |
I'd prefer if leading indentation was stripped, but that would be trickier. |
04:09 |
hmmmm |
"text begins here\nwhitespace is not removed\n in a multiline string" |
04:09 |
hmmmm |
see |
04:09 |
ShadowNinja |
hmmmm: Alright. |
04:09 |
hmmmm |
I considered stripping the leading indentation |
04:09 |
hmmmm |
sorta wonder if I could put an option for that in a config-meta-config |
04:10 |
hmmmm |
i also had another idea for config directives |
04:10 |
hmmmm |
@include "somefile.conf" |
04:10 |
hmmmm |
@multiline_indentation off |
04:10 |
hmmmm |
or something |
04:10 |
ShadowNinja |
hmmmm: Just strip the indentation in front of the setting declaration, if any. |
04:10 |
kahrl |
didn't you say that @include makes updateConfigFile almost impossible to write? |
04:10 |
hmmmm |
not impossible |
04:10 |
hmmmm |
just more difficult than it's worth |
04:11 |
hmmmm |
including other files is pretty useless |
04:11 |
hmmmm |
if I were REALLY bored I guess i'd put it in but i have so many better things to do |
04:12 |
ShadowNinja |
It's usefull if you have more than one server, but I can see how it would be much more complex. |
04:13 |
hmmmm |
you'd need to keep track of which settings originated from where |
04:15 |
kahrl |
you could probably get away with not overwriting the included files and appending changed settings to the end of the main config file |
04:16 |
ShadowNinja |
Just changed ones, yes. |
04:17 |
hmmmm |
i guess that's true |
04:17 |
hmmmm |
heh that's dirty but it works |
04:20 |
ShadowNinja |
Another thing to do to Settings: Make them typed so you don't have to stoi/strtof/is_yes/etc on every get. I'd convert all settings that weren't obviously numbers or booleans to quoted strings to remove ambiguity (1337/"1337"/true) |
04:21 |
ShadowNinja |
Possible issue: some people use 1 instead of true/yes/on. |
04:22 |
Zeno` |
Sounds pretty complicated |
04:22 |
ShadowNinja |
It would add a fair amount of complexity though. |
04:23 |
hmmmm |
ShadowNinja, that's way outside the scope of this |
04:23 |
ShadowNinja |
Zeno`: You said as as I typed ^. |
04:23 |
hmmmm |
I originally wanted to do that but everybody told me it was worthless |
04:23 |
ShadowNinja |
hmmmm: Yes, just saying. |
04:24 |
ShadowNinja |
hmmmm: IMO you should use getGroup instead if getChildren, it sounds better. |
04:24 |
ShadowNinja |
(If I understood you) |
04:25 |
hmmmm |
I was debating between getSubtree, getChildren, getBranch, and getGroup |
04:26 |
ShadowNinja |
subtree -> no, sounds complicated | branch -> not descriptive of what it is | children -> meh, just doesn't sound right to me |
04:28 |
ShadowNinja |
Also, Settings isn't necessarily a RB tree, it could be a hashmap, or even a vector, that's an implementation detail. |
04:29 |
hmmmm |
it becomes a tree in concept with this new feature though |
04:30 |
ShadowNinja |
I see, but it still sounds complicated. Use simple words where possible. |
04:31 |
ShadowNinja |
But I'll be off to sleep now. o/ |
04:48 |
|
OldCoder joined #minetest-dev |
04:48 |
|
OldCoder joined #minetest-dev |
05:36 |
|
sol_invictus joined #minetest-dev |
05:54 |
|
kaeza joined #minetest-dev |
06:11 |
|
Calinou joined #minetest-dev |
06:27 |
|
darkrose joined #minetest-dev |
06:27 |
|
nore joined #minetest-dev |
06:46 |
Zeno` |
Can anybody explain what https://github.com/minetest/minetest/commit/d0be27415eb9386b2367ab798268da6fbe8b7a68 actually does? |
06:47 |
Zeno` |
It seems to be the source of https://forum.minetest.net/viewtopic.php?f=3&t=10655&p=163167#p163167 |
06:47 |
Zeno` |
s/source/cause |
06:51 |
Zeno` |
https://gist.github.com/Zeno-/a6b5191d2190d053f219 |
07:06 |
Calinou |
https://github.com/minetest/minetest_game/pull/350 |
07:10 |
Calinou |
https://github.com/minetest/minetest_game/pull/351 |
07:16 |
Calinou |
https://github.com/minetest/minetest_game/pull/352 |
07:19 |
Calinou |
https://github.com/minetest/minetest_game/pull/353 |
07:19 |
Calinou |
they can all be tagged as low-priority enhancement |
07:19 |
Calinou |
except the tools one, which can probably be enhancement |
07:33 |
|
cg72 joined #minetest-dev |
07:34 |
|
cg72 left #minetest-dev |
07:53 |
|
Hunterz joined #minetest-dev |
08:02 |
|
selat joined #minetest-dev |
08:12 |
Calinou |
https://github.com/minetest/minetest_game/pull/354 – 3D signs |
08:26 |
|
hintss joined #minetest-dev |
08:38 |
|
Krock joined #minetest-dev |
08:38 |
Krock |
Hello world. |
08:47 |
|
jin_xi joined #minetest-dev |
09:42 |
|
jack_desktop joined #minetest-dev |
09:45 |
jack_desktop |
Howdy, I'm currently wondering if there is a wiki or something that goes through the steps of developing what is now Minetest? I assume what I'm asking may not exist though, just thought I would ask, would love to know how Minetest was created from very basics to what it is now. |
09:46 |
jack_desktop |
I know there is the dev.mintest.net wiki, does that fit the question, currently reading through bits of it now actually. |
09:49 |
sfan5 |
i don't think we have a wiki entry for that |
09:50 |
jack_desktop |
Ahh okay, thanks. |
10:01 |
|
exio4 joined #minetest-dev |
10:18 |
|
DFeniks joined #minetest-dev |
10:28 |
|
sapier joined #minetest-dev |
10:29 |
sapier |
any final thoughts on https://github.com/minetest/minetest/pull/1561 ? I'm gonna merge it in a few hours |
10:31 |
Zeno` |
sapier, regarding #1885, my latest commit exposes the g_core_settings pointer as const, so I'm not sure how things can get out of sync. This also eliminates have to "sync back" to g_settings when the class is destroyed (i.e. all sets must be done through g_settings()) |
10:31 |
ShadowBot |
https://github.com/minetest/minetest/issues/1885 -- Create CoreSettings class for time-critical sections to use by Zeno- |
10:31 |
|
ImQ009 joined #minetest-dev |
10:32 |
sapier |
Zeno what happens if someone changes the setting via directly accessing that member |
10:32 |
Zeno` |
Which member? |
10:32 |
sapier |
+bool enable_shaders; +bool enable_fog; +bool doubletap_jump; +bool node_highlighting; |
10:32 |
Zeno` |
they can't |
10:32 |
sapier |
for example |
10:32 |
sapier |
why not? |
10:32 |
Zeno` |
it's const |
10:33 |
Zeno` |
the whole external reference (pointer) to the core_settings object is now const |
10:33 |
sapier |
ok so they couldn't without using const_cast |
10:34 |
sapier |
so only the unmaintainable shadowcopy remains |
10:34 |
Zeno` |
well, yes, but if people are going to do that... *shrug* |
10:34 |
sapier |
ppl are doing that |
10:34 |
Zeno` |
why? |
10:35 |
sapier |
because they don't see how they're supposed to change the value and will just thing you've ben over-cautious when making it const |
10:35 |
sapier |
having two central copys of variables feels quite bad and I'm almost 100% sure this will cause errors in future |
10:36 |
Zeno` |
At the moment there are more that two copies of this critical variables |
10:36 |
sapier |
any "protection" you add can be easyly removed by someone not knowing the consequences |
10:36 |
Zeno` |
every class makes their own copy |
10:36 |
Zeno` |
of course protection can be removed :) |
10:36 |
sapier |
not here ain't more then one central copy |
10:37 |
Zeno` |
I can even access private members of a class, but I think if something went wrong it'd be my own fault |
10:37 |
sapier |
100 local copys which are controled by that local instance are better then two global stores to be kept in sync |
10:37 |
sapier |
everyone usually looks for the first way to do something and wont continue to look for another one once this seemed to work |
10:38 |
Zeno` |
? |
10:38 |
Zeno` |
this first way to do something is cast away const? |
10:38 |
sapier |
It's useless to discuss who's fault it would be as it's allways gonna be someone else who has to fix it ;-) |
10:38 |
Zeno` |
Anyway, I guess I just can't think of a better way :/ |
10:39 |
sapier |
what's wrong with using the callback mechanism I suggested? |
10:39 |
Zeno` |
I'm not sure how it's different to what I've implemented |
10:39 |
sapier |
the difference is the lack of second central store |
10:40 |
Zeno` |
So every function that want to keep copies of these values would register a callback? |
10:40 |
sapier |
we're in c++ so it's more every class but that's a semantic detail |
10:40 |
Zeno` |
err, yes, that's what I meant |
10:41 |
sapier |
basically yes |
10:41 |
Zeno` |
well, that's easily done now using my callback class |
10:41 |
Zeno` |
I guess I could modify it |
10:42 |
sapier |
As I said your callback mechanism is quite good, the minor change I'd like would be a way to pass a parameter to a callback |
10:42 |
jin_xi |
hey Zeno, did you read the logs? there was some discussion regarding settings whey you were off |
10:42 |
sapier |
I'll push the font_engine today there's a more simple callback mechanism for settings. I'd like to replace this by your one in next step |
10:42 |
Zeno` |
I really don't see much of a difference though ;) An advantage, though, of the current method is the actual place where "perform the callbacks" can be isolated to somewhere it's safe(r) |
10:43 |
Zeno` |
jin_xi, do I dare read it? |
10:43 |
Zeno` |
(s/the current method/this patch) |
10:44 |
jin_xi |
http://irc.minetest.ru/minetest-dev/2014-11-29#i_4043326 |
10:44 |
Zeno` |
All the callback does is set a dirty flag... the actual updates are done in a place where syncronisity shouldn't be an issue (as far as I can see) |
10:44 |
Zeno` |
The font patch looks good |
10:44 |
Zeno` |
celeron55, has misunderstood |
10:45 |
Zeno` |
there is no necessity to add code in 10 different places :/ |
10:45 |
jin_xi |
read on |
10:45 |
Zeno` |
I have no idea where he got that idea (nor kahrl) |
10:45 |
sapier |
looks like another variant of callbacks to me |
10:45 |
Zeno` |
templates? |
10:46 |
* Zeno` |
sighs |
10:48 |
sapier |
:-) well I don't like templates to much too |
10:49 |
Zeno` |
I don't think celeron55 actually read the code based on his comments :/ |
10:49 |
Zeno` |
meh |
10:49 |
Zeno` |
sapier, I haven't tried the font thing for about a month, but I tried it when you first made the PR |
10:50 |
sapier |
I added Zeframs commit about a week ago so there might be a major difference |
10:50 |
Zeno` |
When are you merging it? |
10:50 |
sapier |
my part is only the basics, zefram fixed the formspecs |
10:50 |
sapier |
in about 5-6 hours |
10:51 |
Zeno` |
I'll test before then |
10:51 |
sapier |
thanks |
10:51 |
Zeno` |
If I don't find anything it will be because I found no issues and/or fell asleep :) |
10:51 |
Zeno` |
If I don't say anything it will be* |
10:52 |
sapier |
well there will be changes, quite reasonable as now font scaling is added :-) |
10:56 |
nore |
./minetest --address digitalaudioconcepts.com --port 30001 --name nore --password <password> --go --config minetest.conf <-- if "video_driver = null" in minetest.conf, then I get floating point exception right after connecting |
10:57 |
sfan5 |
nore: fixed in freeminer |
10:57 |
sfan5 |
</troll> |
10:57 |
nore |
lol |
10:57 |
sfan5 |
nore: suggestion: gdb it, fix it and pull request |
11:00 |
nore |
SIGFPE in CNodeDefManager::fillTileAttribs |
11:07 |
Zeno` |
sapier, where is doCallbacks() called? |
11:17 |
Zeno` |
I'm not sure if people are going to add settings if they have to register a callback for every setting they're interested in :p |
11:18 |
Zeno` |
sapier, are the valgrind leaks false positives? (in #1561) |
11:18 |
ShadowBot |
https://github.com/minetest/minetest/issues/1561 -- Implement proper font handling by sapier |
11:44 |
|
kilbith joined #minetest-dev |
11:50 |
sapier |
Zeno`: for what I remember doCallbacks is called on setting a setting |
11:51 |
sapier |
valgrind leaks? I'll check |
12:02 |
sapier |
Nope no false positives. font is grabed once to often so it's not deleted on shutdown, fixed |
12:02 |
|
PenguinDad joined #minetest-dev |
12:03 |
sapier |
It'd be a shutdown leak only but better to have no leak at all |
12:03 |
Zeno` |
That's the only issue I experienced. The only other (very minor) one was that on the pause screen my path was chopped off at the bottom |
12:04 |
sapier |
is this a new issue? I remember this beeing told multiple times by now? maybe we need to implement some sort of size check for it |
12:06 |
Zeno` |
I don't know if it's new... I just happened to notice it |
12:07 |
Zeno` |
I can't check if it's a current issue or not because I'm fixing merge conflicts in another one of my branches :( |
12:08 |
sapier |
no problem if it's new I'm gonna address it later guess that's nothing mission critical |
12:10 |
Zeno` |
yep, very minor as I said (just cosmetic) |
12:16 |
PenguinDad |
the path being cut off isn't a new issue for me |
12:18 |
Zeno` |
It's new for me (just tested), but *shrug* |
12:24 |
|
nore joined #minetest-dev |
12:26 |
kilbith |
https://github.com/minetest/minetest_game/pull/327 |
12:26 |
kilbith |
https://github.com/minetest/minetest_game/pull/338 |
12:26 |
kilbith |
nore, sfan5 ^ |
12:27 |
kilbith |
then we'll done with the textures for 0.4.11 |
12:30 |
sapier |
What about a feature freeze as of about 10th december to be able to do a release for christmas? |
12:31 |
nore |
seems good |
12:32 |
sapier |
but means that everyone who wants things in for this release has to get it polished till next weekend |
12:32 |
nore |
together with the addition of snow biomes & other snow related things to minetest_game |
12:32 |
nore |
yep |
12:34 |
sapier |
I'm gonna check the android pulls and issues, hopefully most of them can be merged. My first check was quite positive but without real test I can't be sure |
12:34 |
sapier |
And I don't know how much was broken through other commits since last android build ;-) |
12:35 |
sapier |
-through + due to |
12:35 |
|
ImQ009 joined #minetest-dev |
12:37 |
|
ImQ009 joined #minetest-dev |
12:41 |
|
rubenwardy joined #minetest-dev |
12:45 |
rubenwardy |
https://github.com/minetest/minetest/pull/1603 |
12:45 |
rubenwardy |
"Use frame instead of words 'no screenshot available" |
12:45 |
rubenwardy |
The build doesn't fail, Travis is lying |
12:45 |
rubenwardy |
(I only changed an image) |
12:46 |
PenguinDad |
rubenwardy: the build failing isn't caused by your change |
12:46 |
rubenwardy |
Yeah. It is something to do with wrong version of irrlicht (no matching call to irr:: blah blah) |
12:47 |
PenguinDad |
you just forked at a point where the build was failing |
12:48 |
sapier |
rubenwardy: just rebase to latest version |
12:53 |
rubenwardy |
Done |
12:53 |
sapier |
thanks |
13:03 |
rubenwardy |
Travis passed |
13:14 |
Zeno` |
sapier, what if I close my PR and just work on the callback class |
13:14 |
Zeno` |
would that be more digestible? |
13:14 |
Zeno` |
and celeron55* |
13:14 |
sapier |
good Idea, if you want to merge it I suggest waiting till font_engine is merged as you can replace that callback mechanism by yours too |
13:15 |
sapier |
-merge +split |
13:16 |
Zeno` |
Yeah, I think that's the way to go because it doesn't cause arguments and it can be used with whatever method is finally agreed upong |
13:16 |
sapier |
yes |
13:18 |
Zeno` |
If you want to cherry pick those two files (callback.cpp|.h) before I get around to it, feel free :p It's almost midnight here |
13:19 |
Zeno` |
Also, the data type passed... std::string is good I think (to pass the setting name) but should there be user data as well? |
13:19 |
Zeno` |
Actually it doesn't matter |
13:19 |
Zeno` |
std::string is fine |
13:20 |
sapier |
well we'll have to think about how to pass parameters in a generic mechanism. that's an open issue true |
13:20 |
Zeno` |
yes |
13:20 |
sapier |
I'd prefere to avoid passing a void* pointer ;-) |
13:20 |
Zeno` |
same |
13:21 |
celeron55 |
one way to do that kind of thing is to make an abstract base class for callback parameters and dynamically casting it when receiving it |
13:22 |
celeron55 |
then it's a matter of preference whether to add template functions for getting and passing it directly as the final type or leaving that to the caller and callback |
13:22 |
celeron55 |
the class can be completely empty, C++ will store the type of it |
13:22 |
Zeno` |
quite possibly. But depending on what happens the name of the setting might be enough. They (the settings) don't change that much after startup, though. But that's an idea worth exploring |
13:23 |
Zeno` |
I'm not sure about templates (only because I find them ugly... I am biased) |
13:23 |
celeron55 |
for a simple purpose like that they don't look bad |
13:24 |
Zeno` |
quite possibly yeah |
13:24 |
celeron55 |
but they will cause weird errors when used wrong in any complexity |
13:26 |
sapier |
well the first version (font_engine) one has built in callbacks. I think we should design the generic mechanism in a way it's most likely gonna handle all situations where we may need callbacks in future. Let's better take some time then rush into something we have to fix soon again |
13:27 |
Zeno` |
I think callbacks are the way to go. I know there is that thing called, umm, main_game_callback or something, but it's not very useful atm (it might be client only as well) |
13:27 |
|
Amaz joined #minetest-dev |
13:28 |
sapier |
and of course once we have a solution we should replace ALL callback style things in mt by this one ;-) |
13:29 |
Zeno` |
yeah |
13:37 |
Zeno` |
#1889 ... feel free to modify/adapt/whatever. I need to rest (spent half the afternoon bisecting stuff heh) |
13:37 |
ShadowBot |
https://github.com/minetest/minetest/issues/1889 -- Proposed callback manager. by Zeno- |
13:37 |
sapier |
good night zeno |
13:37 |
Zeno` |
I'll hang around, but night ;) |
13:37 |
Zeno` |
night celeron55 |
13:55 |
|
nore joined #minetest-dev |
14:04 |
|
Sokomine_ joined #minetest-dev |
14:09 |
|
Sokomine joined #minetest-dev |
14:14 |
|
Sokomine_ joined #minetest-dev |
14:16 |
|
PilzAdam joined #minetest-dev |
14:40 |
|
Wayward_One joined #minetest-dev |
15:24 |
|
kaeza joined #minetest-dev |
15:29 |
|
zat joined #minetest-dev |
15:33 |
|
johnnyjoy joined #minetest-dev |
15:43 |
|
lag01 joined #minetest-dev |
15:57 |
|
jin_xi joined #minetest-dev |
16:15 |
|
sapier joined #minetest-dev |
16:17 |
|
CWz joined #minetest-dev |
16:18 |
|
CWz left #minetest-dev |
16:18 |
sol_invictus |
I get a lot of messages like: Got packet command: 60 for peer id 642 but client isn't active yet. Dropping packet |
16:18 |
sol_invictus |
What could be the reason? |
16:19 |
sapier |
most likely some old client connects |
16:19 |
sapier |
maybe a andoid fork |
16:20 |
sapier |
there's been a lot of issues with client joining about a year ago sadly we couldn't fix them backwards for those old clients |
16:21 |
sfan5 |
nore: did you already agree to #327? |
16:21 |
ShadowBot |
https://github.com/minetest/minetest/issues/327 -- Localplayer check position by MirceaKitsune |
16:22 |
sapier |
how often do you see those messages and on which loglevel sol_invictus, maybe we need to lower the level where that messages are shown |
16:23 |
|
prozacgod joined #minetest-dev |
16:23 |
sol_invictus |
I see this in server console with --quiet |
16:24 |
sol_invictus |
it's ERROR[ServerThread] |
16:24 |
sapier |
did anyone check how much cpu load 327 gnerates? |
16:24 |
sfan5 |
sapier: talking about minetest_game |
16:24 |
sapier |
sol_invictus: hmmm guess we really should lower the loglevel for that entry |
16:24 |
sapier |
ahhhh wrong link again :-) |
16:25 |
sapier |
I wonder if we have that code in ... |
16:25 |
sapier |
well I don't wonder enough to check it |
16:28 |
nore |
sfan5, yes |
16:29 |
|
jin_xi joined #minetest-dev |
16:32 |
sfan5 |
nore: I'l merge it then |
16:32 |
nore |
ok |
16:35 |
|
Calinou joined #minetest-dev |
16:35 |
|
hmmmm joined #minetest-dev |
16:37 |
CraigyDavi |
Anything stopping https://github.com/minetest/minetest_game/pull/345 from getting merged? |
16:38 |
sfan5 |
nore: ^ |
16:39 |
nore |
no, nothing preventing merg |
16:39 |
nore |
e |
16:39 |
nore |
sfan5, your thoughts? |
16:39 |
Zeno` |
well, I don't see why de-indenting the block mentioned can't be done now |
16:39 |
Zeno` |
why make it a separate PR? |
16:40 |
sfan5 |
nore: the PR looks good, but Zeno` is right |
16:40 |
sfan5 |
CraigyDavi: can you do what Zeno` suggested? |
16:40 |
CraigyDavi |
Ok I'll de-indent it |
16:40 |
Zeno` |
I'm ok with it apart from that |
16:40 |
nore |
sfan5, btw: your thoughts on the pine-* pull? |
16:41 |
sfan5 |
nore: link? |
16:41 |
nore |
https://github.com/minetest/minetest_game/pull/336 |
16:41 |
sfan5 |
nore: pine PR is ok |
16:42 |
nore |
ok, and should we do it all at once, or add tree models & mapgen at the same time? |
16:44 |
sfan5 |
nore: tree models & mapgen later |
16:44 |
sfan5 |
nore: can i merge 336? (pine-pr) |
16:44 |
nore |
yep, merge it |
16:45 |
Zeno` |
yeah |
16:45 |
Zeno` |
nore, but I thought you wanted it for a Christmas release :P~ |
16:46 |
CraigyDavi |
#336 doesn't have any sapling growth code though? |
16:46 |
ShadowBot |
https://github.com/minetest/minetest/issues/336 -- Settings checkboxes not saved if you quit without first leaving the Settings tab |
16:46 |
nore |
no, not yet |
16:46 |
sfan5 |
Zeno`: later doesn't imply after christmas |
16:46 |
sfan5 |
CraigyDavi: correct |
16:46 |
nore |
but it's easy to import the code from mg |
16:47 |
CraigyDavi |
Updated minetest_game/pull/345 with de-indentation |
16:47 |
Zeno` |
sfan5, my bad. I thought he said he wanted it as part of the Christmas release. I sometimes imagine things (and I was joking anyway) :) |
16:47 |
nore |
sfan5, btw: what about adding code to get snow biomes in mgv6? (so that would be lua mapgen) |
16:47 |
sfan5 |
nore: can i merge the new 345? |
16:48 |
nore |
sure |
16:49 |
sfan5 |
ok |
16:50 |
sfan5 |
CraigyDavi: error: mods/bucket/init.lua: patch does not apply |
16:50 |
CraigyDavi |
Oh that's due to https://github.com/minetest/minetest_game/commit/e707ba3 |
16:50 |
nore |
kaeza fixed a few globals too IIRC |
16:51 |
CraigyDavi |
Well it was in my PR before kaeza... |
16:51 |
sfan5 |
CraigyDavi: can you rebase it? |
16:51 |
CraigyDavi |
Yeah I'll remove the bucket part |
16:52 |
sapier |
I'm preparing https://github.com/minetest/minetest/pull/1561 for merge now so last chance to mention issues prior merge |
16:56 |
sfan5 |
sapier: why XML? |
16:56 |
sapier |
ask irrlicht guys that's the way they do fonts |
16:57 |
sapier |
our old font was legacy only |
17:00 |
|
Miner_48er joined #minetest-dev |
17:00 |
sfan5 |
sapier: 1) see github comments 2) who agreed to that pull? |
17:01 |
sapier |
all the comments have been handled |
17:01 |
sapier |
unless there's been a new one within the last 10 min ;-) |
17:02 |
sfan5 |
i made some new ones |
17:02 |
CraigyDavi |
sfan5, rebased |
17:03 |
sapier |
its desktop only because android for example provides valid dpi information automaticaly |
17:03 |
sapier |
would you agree to replace "PC/MAC" to "Desktop" |
17:03 |
Zeno` |
irrlicht probably uses XML because of fontconfig |
17:04 |
sfan5 |
Zeno`: no |
17:04 |
Zeno` |
no? |
17:04 |
sfan5 |
the irrlicht xml files contain which chat is where in the png |
17:05 |
sapier |
I don't know why irrlicht uses those fonts, and to be honest I don't care because I can't change it |
17:05 |
sfan5 |
that has nothing to do with fontconfig |
17:05 |
sapier |
sfan5 is "Desktop" ok? |
17:05 |
sfan5 |
yes |
17:08 |
sapier |
sfan5 only those 3 comments or don't I see the other ones yet? |
17:09 |
sfan5 |
sapier: no, thats the only one |
17:10 |
sapier |
ok in this case I'm gonna merge it. hopefully our formspec scaling issues are gone after this |
17:10 |
|
nore joined #minetest-dev |
17:11 |
kahrl |
ugh |
17:11 |
kahrl |
I started downloading the patch when you said you're going to merge it to try it and it's not even downloaded yet |
17:11 |
kahrl |
that's how bloated those XML files are |
17:12 |
kahrl |
why not just drop non-freetype support? |
17:13 |
kahrl |
for comparison, the current minetest working tree is about 44K, while 1561.patch is 5.08M |
17:14 |
kahrl |
ok, download is finished now |
17:15 |
kahrl |
still, requiring everyone who wants to git clone minetest to download this stuff (which they even probably won't use, as they'll enable freetype) is bad |
17:15 |
|
johnnyjoy1 joined #minetest-dev |
17:16 |
kahrl |
especially since the download rate at github.com is so low |
17:16 |
|
NakedFury joined #minetest-dev |
17:18 |
kahrl |
17.5KB/s according to wget |
17:18 |
Calinou |
<+kahrl> why not just drop non-freetype support? |
17:19 |
Calinou |
I agree, it is worth it |
17:19 |
Calinou |
(we could do the same for gettext.) |
17:19 |
Calinou |
LANG=C forces english. |
17:21 |
kahrl |
well supporting USE_GETTEXT=0 is quite trivial |
17:21 |
Calinou |
gettext should be enabled by default |
17:21 |
Calinou |
I don't like having to use cmake . -DENABLE_GETTEXT=1 -DENABLE_FREETYPE=1 -DENABLE_LEVELDB=1 -DENABLE_REDIS=1 |
17:21 |
kahrl |
just do #define gettext(String) String (as is done in gettext.h) |
17:22 |
Calinou |
(LevelDB and Redis should be used if found on system, that's all) |
17:22 |
Calinou |
(and could be explicitly disabled if found) |
17:22 |
PenguinDad |
Calinou: Redis is enabled if it's found |
17:22 |
Calinou |
but why not LevelDB? |
17:24 |
kahrl |
how often do you actually run cmake? I never have to do it |
17:24 |
Calinou |
a few times a month since I make builds I publish |
17:24 |
Calinou |
(and I strip them of useless files by hand…) |
17:25 |
kahrl |
sounds like a job for a script |
17:27 |
Zeno` |
I run cmake maybe 12 times a week :3 |
17:28 |
PenguinDad |
I run cmake 4 times a week :D |
17:29 |
kahrl |
I feel bad for neglecting my cmake now ;) |
17:29 |
sfan5 |
Calinou: xyz wanted me to enable redis by default |
17:31 |
Calinou |
both should be enabled if found |
17:31 |
Calinou |
trying out my script… (I'll publish it when done) |
17:32 |
kahrl |
is it as simple as changing OPTION(ENABLE_LEVELDB "Enable LevelDB backend") to OPTION(... 1)? |
17:32 |
sfan5 |
kahrl: i think it is |
17:32 |
kahrl |
if so then I support it |
17:34 |
Zeno` |
Sort of related, why are debug builds built using -O1? |
17:35 |
kahrl |
they would be way too slow otherwise |
17:35 |
kahrl |
unplayable for most |
17:35 |
PenguinDad |
Zeno`: because -Og is pretty new? |
17:35 |
Zeno` |
PenguinDad, what about -O0 |
17:36 |
Zeno` |
kahrl, with no optimisation (compared to -O1) I find very little difference |
17:36 |
Calinou |
what is your hardware? |
17:37 |
Zeno` |
Calinou, not really relevant because there is very little difference |
17:38 |
Zeno` |
But if you must know, Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz |
17:39 |
Zeno` |
I run debug builds with no optimisation on my laptop as well without -O1, though |
17:40 |
Zeno` |
If there is a huge difference between -O0 and -O1 there is a big problem (IMO) |
17:42 |
sapier |
kahrl you know that everyone not wanting to use freetype has to download those fonts too ;-) well true ttf files are only 5 mb compared to 10mb for the other ones. but I'm quite sure the xml files are heavyly compressed for transmission |
17:42 |
sapier |
if you really wanna debug you have to set it to -O0 anyway, -O1 is quite useless for gdb debugging |
17:45 |
sapier |
kahrl yes we could drop non freetype support. I'd not do this for two reasons: 1) Freetype code isn't anything different except it creates those "files" otf ... and second the code doing this is a nightmare, it's buggy as hell misses all checks and we don't have anyone who understands it |
17:46 |
sapier |
if irrlicht would have native freetype support I'll be first to agree dropping non freetype support |
17:46 |
kahrl |
what are those bugs? |
17:47 |
sapier |
try setting your font file to something invalid ;) |
17:48 |
kahrl |
it falls back to the builtin irrlicht font |
17:48 |
sapier |
If I remember correct zefram mentioned some font parameters aren't exactly correct too, He did do special handling for this for his formspec fixes |
17:48 |
|
ImQ009 joined #minetest-dev |
17:48 |
sapier |
something invalid not something not existing ;-) |
17:49 |
kahrl |
same thing |
17:50 |
kahrl |
"works for me" (tm) |
17:50 |
sapier |
well I don't know what you're doing different but I got various out of bounds memory accesses because the code did interpret a png file as ttf |
17:52 |
sapier |
And as I don't have any knowledge about fonts so I can't fix it |
17:55 |
kahrl |
maybe older versions of freetype didn't reject invalid files? |
17:55 |
kahrl |
dunno |
17:55 |
sapier |
is there any additional concern left except the size issues? I don't say they don't exist but that's the price to pay if we wanna have full scaling support |
17:55 |
Calinou |
font size could be slightly larger by default |
17:55 |
sapier |
it's crashing outside of freetype withing our own code |
17:55 |
Calinou |
also make shadow alpha 255 instead of 128 |
17:56 |
Calinou |
makes font easier to read |
17:57 |
sapier |
I don't have any preferences about the alpha does anyone agree to changing this? |
17:58 |
sapier |
current size and alpha was checked by various ppl so I'd only change it if there's more then one person saying same |
17:59 |
Calinou |
do these people play the game on a regular basis? |
17:59 |
sapier |
I think so |
18:04 |
sapier |
But as I said I don't really have a preference |
18:10 |
|
MinetestForFun joined #minetest-dev |
18:13 |
|
Calinou joined #minetest-dev |
18:26 |
sapier |
ok I'm pushing it now, we can change those parameters later if there's a majority for it |
18:28 |
Calinou |
thanks |
18:29 |
sapier |
thanks? I didn't change them by now |
18:30 |
sapier |
but if you want to change them I wont stop you from doing it ;-) |
18:33 |
|
shadowzone joined #minetest-dev |
18:42 |
|
khonkhortisan joined #minetest-dev |
18:44 |
kilbith |
sfan5: I still need your vote for the new header : https://github.com/minetest/minetest_game/pull/341 |
18:44 |
kilbith |
thanks again |
18:54 |
|
khonkhortisan joined #minetest-dev |
18:54 |
shadowzone |
kilbith: I like the last one |
18:59 |
|
chchjesus joined #minetest-dev |
19:01 |
Megaf |
sapier: take a look https://github.com/minetest/minetest/issues/1890 |
19:01 |
Megaf |
#1890 |
19:01 |
ShadowBot |
https://github.com/minetest/minetest/issues/1890 -- Copying text from gnome terminal to minetest causes both to crash. |
19:02 |
Megaf |
Professional look you say. kahrl |
19:02 |
Megaf |
:) |
19:07 |
sapier |
is this new or as of font scaling? |
19:07 |
kahrl |
I think it's a duplicate of #373 |
19:07 |
ShadowBot |
https://github.com/minetest/minetest/issues/373 -- Copy-paste doesnt work on GNU/Linux, from another program to Minetest |
19:08 |
kahrl |
it's mentioned in the comments there |
19:13 |
sapier |
hmm on kde there ain't a crash nor does copy n paste work |
19:14 |
PenguinDad |
Megaf: I already noticed this ~6 months ago but thought it's not worth reporting :/ |
19:14 |
Calinou |
whoa, why were so many files added to repository? |
19:14 |
Calinou |
quite heavy ones |
19:14 |
sapier |
fonts |
19:15 |
Calinou |
that sucks |
19:15 |
Calinou |
bitmap fonts should be buried |
19:15 |
sapier |
well once irrlicht supports freetype we can do this |
19:15 |
Calinou |
we have Freetype support? |
19:16 |
sapier |
but irrlicht doesn't have |
19:16 |
sapier |
and our freetype support is quite ugly and buggy code |
19:16 |
Calinou |
works well enough |
19:16 |
Calinou |
handles some Latin characters, better than nothing |
19:16 |
sapier |
unless you try your own fonts |
19:16 |
Calinou |
also we could have coloured chat :( |
19:16 |
Calinou |
I've tried the Droid Sans fonts without issues |
19:16 |
sapier |
once you do that youd recognize how broken our code is |
19:17 |
Calinou |
I can't type stuff like é in chat, only in console |
19:17 |
sapier |
I've read multiple times irrlicht guys want to support freetype maybe there's light at the end of the tunnel |
19:17 |
Calinou |
yes, but when will we ship it? it takes years until all distributions package it |
19:18 |
sapier |
true |
19:18 |
sapier |
so we don't really have options |
19:21 |
kahrl |
Calinou: I complained about the huge files (see log) but I was the only one, so I figured no one else cared |
19:21 |
sapier |
well none of you seems to have mentioned that the biggest file (with huge difference) is a truetype font |
19:22 |
Calinou |
it looks cleaner when you don't ship a lot of random files |
19:22 |
Calinou |
but anyway the damage is done, you commited the files, they are in history :P |
19:23 |
sapier |
still I can't merge truetypes font generator ;-) |
19:23 |
sapier |
-truetype + irrlicht |
19:26 |
sapier |
btw according to git size of all those files is 3.8m compressed, less then that single ttf fonts size |
19:26 |
Megaf |
we should really migrate to other engine |
19:26 |
Megaf |
irrlight is our biggest limitation... |
19:26 |
Calinou |
no, just no |
19:26 |
Calinou |
we can sure do a lot of things using it |
19:26 |
Megaf |
no copy and paste, no proper fonts, lots of bugs |
19:26 |
Megaf |
slow development |
19:27 |
Megaf |
and so on |
19:27 |
sapier |
no too ... any other engine will just have other limitations ... limitations we don't know yet |
19:27 |
Calinou |
it would take too much time to change engine |
19:27 |
Megaf |
and it's not that lightweight and simple |
19:27 |
kahrl |
sapier: couldn't you have compressed that ttf file then? |
19:27 |
kahrl |
I mean removed unused glyphs |
19:27 |
Megaf |
Calinou: more time than fixing all bugs and implementing all resources? |
19:27 |
sapier |
how to know which ones are unused? we do have i18n support? |
19:28 |
kahrl |
do we really need the whole kanji set? |
19:28 |
Calinou |
yes, way more |
19:28 |
Calinou |
the game seems to support Latin and Russian |
19:28 |
Calinou |
but remember about Japanese users… |
19:30 |
|
shadowzone joined #minetest-dev |
19:31 |
kahrl |
even buildat, at its early stage of development, already had to make changes to its engine (urho3d) to work properly |
19:31 |
Calinou |
Megaf, as for copy-paste, there are other doable chat improvements, like history in chat window, chat colours, … |
19:32 |
Calinou |
shortcuts (Ctrl + U erases whole line to the left, Ctrl + K erases whole line to the right) |
19:32 |
kahrl |
use f10 and those shortcuts work :) |
19:35 |
sapier |
btw colored chat could be implemented if someone would care ;-) |
19:37 |
nore |
sapier, I thought it was backported... |
19:38 |
kilbith |
there's coloured chat in FM |
19:38 |
sapier |
did someone check the license yet nore? |
19:39 |
nore |
no, but it was said to have been backported from before the license change |
19:39 |
nore |
I did not check that though |
19:39 |
sapier |
well we have to be sure unless we wanna remove it again ;-) |
19:39 |
sapier |
backporting is from fm is usually a bad idea better just look at what something does and implement yourself |
19:41 |
nore |
https://github.com/freeminer/freeminer/commits/master/src/chat.cpp <-- chat colors were implemented before license change |
19:41 |
sapier |
nice :-) |
19:42 |
nore |
and not modified since then |
19:42 |
nore |
(at least, chat.cpp did not have a change that affected colors it seems) |
19:42 |
kahrl |
while talking about fm: does anyone agree that we should replace the server flags in the multiplayer tab by icons before the next release? |
19:42 |
|
gravgun joined #minetest-dev |
19:43 |
hmmmm |
I agree |
19:43 |
sapier |
me too |
19:43 |
nore |
me too |
19:44 |
kahrl |
ok great, I'll work on it then |
19:44 |
nore |
btw, about fm: their "COPYING" file says GPL but the "LICENSE" file says LGPL |
19:44 |
sapier |
as there are so many dev online right now what do you think about feature freeze as of about 10th december to get a release till christmas? |
19:44 |
kahrl |
sapier: sounds good to me |
19:45 |
|
cg72 joined #minetest-dev |
19:45 |
|
cg72 left #minetest-dev |
19:46 |
nore |
already told it looked good, that leaves about 1 week to complete a few features for mt_game too |
19:49 |
|
shadowzone joined #minetest-dev |
19:56 |
|
ShadowLadyXD joined #minetest-dev |
19:56 |
nore |
sfan5, about what to do in minetest_game before the 0.4.11 release: make pine trees generate and grow, add snow biomes, maybe pine/jungle sticks? |
19:56 |
nore |
any other thing I might have missed? |
19:56 |
sfan5 |
i don't think you missed anything |
19:58 |
nore |
should we add an issue somewhere for the TODO, or in the wiki? |
20:00 |
kahrl |
I think something in #1561 is droppped too early |
20:00 |
ShadowBot |
https://github.com/minetest/minetest/issues/1561 -- Implement proper font handling by sapier |
20:00 |
kahrl |
if I switch tabs, I get a segfault on shutdown |
20:00 |
kahrl |
s/droppped/dropped |
20:00 |
sapier |
are you sure? it's been dropped to late before :-( |
20:01 |
kahrl |
I saw that in the log |
20:01 |
sapier |
hmm maybe order of deletion is wrong |
20:01 |
kahrl |
gdb backtrace is not very helpful (it crashes in ~CGUIEnvironment()) |
20:03 |
sapier |
can you try moving the fontenginne deletion behind device dropping in main.cpp l1572? |
20:03 |
kahrl |
will try |
20:05 |
kahrl |
http://sprunge.us/QFdI |
20:07 |
sapier |
oh the other way round someone drops the font fontenginge is supposed to handle .. great |
20:07 |
kahrl |
oh, forgot to mention this is a build without freetype |
20:08 |
sapier |
was this backtrace prior or after modification? |
20:08 |
kahrl |
after |
20:08 |
kahrl |
I think when you do m_env->getFont() in initSimpleFont you have to grab() the font |
20:09 |
|
shadowzone joined #minetest-dev |
20:10 |
sapier |
great ... I just removed that assuming it to be same memory leak as for freetype mode :-( |
20:10 |
kahrl |
the irrlicht convention is: if a function name starts with create, you have to drop() the resulting object yourself, otherwise you must not |
20:11 |
kahrl |
so drop the result of createTTFont but not the result of getFont |
20:11 |
sapier |
hmm my fault, I always mix it up |
20:17 |
|
fsdfsdfsdf joined #minetest-dev |
20:17 |
sol_invictus |
what happened to freetype support, sapier? |
20:18 |
jin_xi |
sol_invictus: use -DENABLE_FREETYPE=1 |
20:19 |
sol_invictus |
it's always on in my builds |
20:19 |
sol_invictus |
I can't use custom fonts anymore with HEAD |
20:19 |
Krock |
<3 costom fons |
20:20 |
Krock |
-o+u+t |
20:21 |
sol_invictus |
this was taken with droid sans set in config https://i.imgur.com/oBIECfL.png |
20:21 |
sapier |
freetype should still be on |
20:22 |
sapier |
there's no change in default settings just non freetype mode looks way better then before |
20:24 |
sol_invictus |
then why doesn't it work anymore? |
20:24 |
sapier |
can you give me your settings? |
20:24 |
sol_invictus |
I reverted your commits and now it's fine https://i.imgur.com/oBIECfL.png |
20:25 |
sapier |
still can you give me your settings ;-) |
20:25 |
sol_invictus |
http://sprunge.us/gYVA |
20:26 |
sapier |
do you have a DroidSans.ttf file there? |
20:26 |
sol_invictus |
of course! |
20:27 |
sapier |
can you post debug log of startup somewhere? |
20:27 |
sol_invictus |
no, won't do this now |
20:28 |
sapier |
btw both of your screenshots are same file |
20:29 |
sol_invictus |
https://i.imgur.com/cD0MGfX.png * |
20:30 |
sapier |
doesn't look to me like not working at all but just some slightly different font size |
20:32 |
|
zat joined #minetest-dev |
20:33 |
sol_invictus |
slightly different?! |
20:33 |
sol_invictus |
what are smoking? it's tiny! |
20:34 |
sapier |
well as mentioned before our freetype code doesn't really provide correct font sizes so zephram had to use some reference which most likely was 800x600 |
20:34 |
sapier |
you can verify my assumption about the size by setting it to a bigger value |
20:34 |
celeron55 |
you should aim to preserve font size settings in a maximized full hd window though |
20:34 |
celeron55 |
that's what people use anyway |
20:35 |
sapier |
then next one will complain about not beeing identical in 800x600 |
20:35 |
celeron55 |
but who uses 800x600 for actual gameplay? |
20:35 |
celeron55 |
sounds insane |
20:36 |
sapier |
well we can tune the default size |
20:36 |
celeron55 |
this isn't a large issue at all but this just seems like the wrong assumption anyway |
20:36 |
sapier |
right now for the first time freetype and non freetype sizes are equal (within certain range) |
20:36 |
celeron55 |
feel free to do nothing, i guess people can just adjust their settings |
20:37 |
sapier |
don't get me wrong, I don't have any problem with adjusting the default size, as long as I don't have to change it every day due to someone complaining ;) |
20:38 |
sapier |
prior someone mentions this as bug, the strange gui scaling due to y size of window was removed too |
20:39 |
sapier |
celeron don't make me lookup the chat log where you did agree to this ;-) |
20:40 |
celeron55 |
also, to make myself clear, i don't want default font sizes to be preserved; they have been too small for years |
20:40 |
celeron55 |
(i was only referring to settings that users may have set by themselves) |
20:41 |
sapier |
I agree that this is suboptimal but we'd get only one thing correct either freetype or non freetype as both haven't been consistent by now |
20:42 |
sapier |
by definition you can't make two things consistent which haven't been without making one different from befor |
20:47 |
sapier |
well I'm gonna wait for a little bit more feedback prior fixing the issues with those font changes. I'm quite sure there will be more |
20:49 |
hmmmm |
alright done |
20:51 |
hmmmm |
agh god damn |
20:51 |
jin_xi |
lol |
20:53 |
hmmmm |
merge conflict with the proper font handling patch |
20:54 |
sapier |
:-) not very surprising |
21:00 |
hmmmm |
usually it's not too bad but this needs a lot of manual intervention |
21:05 |
hmmmm |
sapier... question |
21:05 |
sapier |
yes? |
21:05 |
hmmmm |
where are the settings.cpp modifications actually used |
21:05 |
hmmmm |
I mean where is doCallback called |
21:06 |
sapier |
I'll have a look, hope it's not been lost due to merge error |
21:07 |
sapier |
oops |
21:08 |
hmmmm |
don't fix it yet! |
21:08 |
hmmmm |
woah those are big fonts |
21:08 |
hmmmm |
heh it compiles and passes the unit tests |
21:08 |
hmmmm |
ok good enough for me |
21:09 |
sapier |
it's supposed to be called in the set functions, obviously it ain't |
21:09 |
hmmmm |
ironically this callback mechanism was what zeno- was going to do |
21:10 |
hmmmm |
hrmmm it's taking a long time to push to github for some reason |
21:10 |
hmmmm |
https://github.com/kwolekr/minetest/commit/bc4fbc8567d9a35d463484e128a9b3fa40cf5132 |
21:10 |
hmmmm |
goot i just realized i forgot something |
21:10 |
sapier |
well that mechanism was implemented quite some time before. And that part of zenos fix wasn't denied what was questioned was the shadowcopy of settings |
21:11 |
hmmmm |
btw |
21:12 |
hmmmm |
from now on, people should turn on their code editor's remove-trailing-whitespace feature no matter how messy it makes diffs |
21:12 |
hmmmm |
I'm really getting tired of the trailing whitespace stuff |
21:12 |
sapier |
I'm with you ... even I'll make sure it's on again ;-) |
21:13 |
sapier |
tell me when I can fix the docallbacks bug |
21:13 |
hmmmm |
well |
21:13 |
hmmmm |
any concerns about my patch? |
21:14 |
sapier |
what's it supposed to do? |
21:14 |
hmmmm |
add settings groups and multiline settings entries |
21:14 |
hmmmm |
see the test.cpp diff for a sypnopsis |
21:16 |
sapier |
I'm not sure about the groups do we really need it? isn't it just a optical change? |
21:16 |
hmmmm |
it's part of a bigger change |
21:16 |
hmmmm |
i.e. noise parameters |
21:16 |
hmmmm |
and map_meta.txt |
21:17 |
sapier |
well I guess you wouldn't add it if you didn't need it so if it works merge it |
21:17 |
hmmmm |
this way, map_meta.txt contents == g_settings->getGroup("mapgen"); |
21:18 |
hmmmm |
and also now i'll be able to add noise params as i'd like |
21:18 |
sapier |
hmm I wonder how groups do fit the callback mechanism |
21:18 |
hmmmm |
okay, fetch from upstream, rebase, and then fix the set doCallbacks thing |
21:19 |
hmmmm |
have them callback as well, why not |
21:19 |
sapier |
how to call the callback for a parameter within a group ... or can't those be changed on their own? |
21:20 |
sapier |
e.g. group1->param1 vs group2->param1 |
21:20 |
hmmmm |
oh.. |
21:20 |
hmmmm |
your callback should pass the Settings object it was called frmo |
21:20 |
hmmmm |
do you *assume* your callback was from g_settings? that's not a good idea |
21:21 |
sapier |
well by that time there wasn't any other settings object ;-) |
21:21 |
hmmmm |
sure there was |
21:21 |
sapier |
Zenos callback mechanism would solve that issue |
21:21 |
hmmmm |
just not global |
21:21 |
|
kaeza joined #minetest-dev |
21:21 |
sapier |
there was? where? |
21:26 |
hmmmm |
well all the *_meta.txt files for one |
21:26 |
hmmmm |
mapgenparams is a Settings |
21:26 |
hmmmm |
i'm sure there are more |
21:27 |
hmmmm |
now we have structured settings! |
21:27 |
sapier |
well I don't see a immediate problem as a callback is registred to that specific settings instance. |
21:28 |
sapier |
yet I see that right now you can't use same callback to handle different settings instances |
21:28 |
hmmmm |
wonder if it would've been a better idea to move to an XML-based config file |
21:49 |
sapier |
wow .... months ago mentioning xml would've caused an immediate flamewar |
21:50 |
jin_xi |
resignation |
21:50 |
hmmmm |
i'm being sarcastic :) |
21:51 |
sapier |
hmm could someone write a world -> stl converter? I'd like to try printing a world :-) |
21:51 |
sapier |
hmm a small one :-) |
21:52 |
celeron55 |
just look in the forums, there have been topics about that |
21:52 |
sapier |
really? :) |
21:52 |
celeron55 |
probably better use google because forum search sucks |
21:53 |
sapier |
wow there's really a mod to do this :-) |
21:53 |
hmmmm |
why would anybody want to waste real-life resources on perlin puke |
21:54 |
sapier |
well I'd guess "just for fun" ;-) |
21:54 |
celeron55 |
looks like these guys did it succesfully https://forum.minetest.net/viewtopic.php?f=9&t=9949 |
21:54 |
celeron55 |
or... this guy |
21:54 |
celeron55 |
it's only one talking there 8) |
21:54 |
shadowzone |
http://picpaste.com/pics/Screenshot-rCli6W1i.1417384474.png <-- is it suppose to look like this? |
21:55 |
sapier |
but I'm missing a photo of a actual print |
21:55 |
* shadowzone |
waves at celeron55 |
21:55 |
sapier |
I think so yes |
21:55 |
sapier |
I'd prefer it a little bit smaller but that's my personal taste |
21:56 |
kahrl |
that's what she said |
21:56 |
* kahrl |
hides |
21:57 |
sapier |
I wonder how long the size finetuning will take this time ;) |
22:04 |
|
NakedFury joined #minetest-dev |
22:20 |
kahrl |
sapier: shall I push the segfault fix? |
22:20 |
sapier |
the non grabbed font? |
22:20 |
sapier |
yes |
22:20 |
kahrl |
ok |
22:22 |
|
ShadowLadyXD joined #minetest-dev |
22:29 |
|
shadowzone joined #minetest-dev |
22:38 |
|
ShadowLadyXD joined #minetest-dev |
22:41 |
|
shadowzone joined #minetest-dev |
22:51 |
|
shadowzone joined #minetest-dev |
23:19 |
|
khonkhortisan_ joined #minetest-dev |
23:43 |
|
paramat joined #minetest-dev |
23:49 |
paramat |
nore > "sfan5, about what to do in minetest_game before the 0.4.11 release: make pine trees generate and grow ...", yes pine sapling growing code and the pine schematic will be done for 0.4.11, thanks for merging the pine nodes |