Time |
Nick |
Message |
00:06 |
|
VargaD joined #minetest-dev |
00:10 |
|
VargaD joined #minetest-dev |
00:16 |
|
luizrpgluiz left #minetest-dev |
00:34 |
|
Ritchie joined #minetest-dev |
00:34 |
|
proller joined #minetest-dev |
00:51 |
|
VargaD joined #minetest-dev |
00:54 |
|
hmmmm joined #minetest-dev |
00:55 |
|
Tablet_One joined #minetest-dev |
00:56 |
hmmmm |
nerzhul: I don't approve of 5f8e48c at all and I'm sure lots other devs don't either. |
00:57 |
hmmmm |
how come you didn't seek any approval from anybody else? |
00:57 |
hmmmm |
now lua errors will abort the application instead of kicking the game back to the main menu. |
00:59 |
|
OldCoder joined #minetest-dev |
01:01 |
hmmmm |
also I'm not too sure about e7737ff.. reliable_data and unreliable_data are sent in the same exact manner? |
01:02 |
est31 |
https://github.com/minetest/minetest/commit/e7737ff |
01:02 |
est31 |
404 4 me |
01:02 |
hmmmm |
before your changes, I bet they were sent very differently. there is a reason why it was made like that and I think you should research this before determining it's irrelevant and changing its functionality. "it looks like this works fine for me" is a bad excuse |
01:03 |
hmmmm |
est31, e7736ff rather. |
01:03 |
hmmmm |
nerzhul: unless you understand the totality of minetest, I don't understand how you can make commits so quickly without prior discussion |
01:05 |
est31 |
hmmmm, was that commit more than refactoring? |
01:05 |
hmmmm |
that particular commit, no. but that piece of code was changed with the huge network changes |
01:06 |
est31 |
what do you mean with "differently"? |
01:07 |
hmmmm |
https://github.com/minetest/minetest/blob/stable-0.4/src/server.cpp#L944 |
01:09 |
est31 |
I see what you mean now |
01:09 |
est31 |
(with the change) |
01:09 |
hmmmm |
there is a large difference between reliable and unreliable data |
01:09 |
est31 |
yes |
01:09 |
|
Tablet_One joined #minetest-dev |
01:09 |
hmmmm |
but it just got steamroll'd by nerzhul's large network changes |
01:10 |
hmmmm |
this qualifies as a regression |
01:10 |
est31 |
it still works, doesn't it? |
01:10 |
hmmmm |
I'm willing to bet that all of the unreliable data is now erroneously being marked as reliable |
01:10 |
hmmmm |
that's irrelevant |
01:11 |
hmmmm |
if I add Sleep(5000); in the main loop of your GUI application and it freezes for 5 seconds every time you do some kind of action, "it still works, doesn't it?" |
01:12 |
est31 |
memcpy isn't beautiful either |
01:12 |
est31 |
ok thats coding style not behaviour |
01:13 |
est31 |
(reliable/unreliable is behaviour) |
01:13 |
Tablet_One |
Ok, so I tried to join a server, and I got in, but the app crashed right after. I don't know if it's the app, or if the server is to heavy for a tablet. Here's the debug: http://pastebin.com/3MPPv4pX |
01:13 |
hmmmm |
est31: FWIW, *all* of the packets are copied using memcpy before being sent |
01:14 |
est31 |
I know they are copied |
01:14 |
est31 |
perhaps memcpy is still used |
01:14 |
est31 |
but using memcpy in a repetitive style is ugly |
01:15 |
|
cib0 joined #minetest-dev |
01:15 |
est31 |
and dangerous |
01:15 |
est31 |
Wayward_One, I see is no crash in that log |
01:22 |
|
Ritchie joined #minetest-dev |
01:22 |
Tablet_One |
Ok, then my tablet must not be powerful enough |
01:23 |
Tablet_One |
Thanks for clearing that up |
01:23 |
est31 |
Tablet_One, how did you create the log? |
01:23 |
Tablet_One |
It was formed automatically in the Minetest folder |
01:24 |
est31 |
hm, can you check the logcat? |
01:24 |
Tablet_One |
What is that? |
01:25 |
est31 |
its android logging mechanism |
01:25 |
est31 |
every app logs there |
01:25 |
est31 |
install this: https://play.google.com/store/apps/details?id=com.nolanlawson.logcat |
01:25 |
Tablet_One |
Ok |
01:25 |
est31 |
only if you have root access. if not, then nvm |
01:26 |
|
zat joined #minetest-dev |
01:26 |
Tablet_One |
Nope, I haven't rooted it yet |
01:27 |
est31 |
you did singleplayer? |
01:28 |
Tablet_One |
No, I joined BlueLobster Free-4-All |
01:28 |
est31 |
ok |
01:34 |
|
Zeno` joined #minetest-dev |
01:55 |
Zeno` |
Looks like the android release went well? |
02:05 |
Wayward_One |
pretty well, yeah |
02:07 |
est31 |
there is #2502 ... |
02:07 |
ShadowBot |
https://github.com/minetest/minetest/issues/2502 -- Shaders on android produce wrong colors |
02:08 |
est31 |
f-droid process can be tracked here : https://gitlab.com/fdroid/fdroiddata/merge_requests/639 |
02:08 |
est31 |
but yes it went well otherwise |
02:08 |
est31 |
already 10-50 installs! |
02:08 |
est31 |
we'll make our first million in a week :P |
02:09 |
est31 |
(at this pace) |
02:41 |
Zeno` |
#2503 (trivial) |
02:41 |
ShadowBot |
https://github.com/minetest/minetest/issues/2503 -- Minor cleanup: game.cpp by Zeno- |
02:42 |
Zeno` |
So sfan5 is less upset |
02:42 |
Zeno` |
I am not going to make GameRunData "global" though (sorry sfan5) |
02:43 |
Zeno` |
s/"global"/"effectively global" |
02:50 |
Zeno` |
est31, the only time I've seen "all red" is when shaders are not working |
02:54 |
VanessaE |
*rubs eyes* hi all. |
02:58 |
Zeno` |
no chatting! /me throws chalk at VanessaE |
02:59 |
hmmmm |
hmm |
02:59 |
VanessaE |
ow. |
03:00 |
hmmmm |
does PseudoRandom lose its ability to get inlined if I use virtual functions? |
03:00 |
Zeno` |
hmmmm, I would say so |
03:00 |
hmmmm |
yeah... shit |
03:01 |
hmmmm |
I'm not sure how to implement this in a clean manner without reducing performance or bloating code |
03:01 |
Zeno` |
implement what? |
03:02 |
* Zeno` |
looks at the logs |
03:09 |
|
JeDaYoshi joined #minetest-dev |
03:10 |
|
JeDaYoshi joined #minetest-dev |
03:17 |
hmmmm |
a non-crappy version of pseudorandom =-] |
03:35 |
Zeno` |
How does Jenkins work? |
03:35 |
Zeno` |
There is no config file anywhere? |
03:37 |
Zeno` |
I don't really "get" it |
03:39 |
hmmmm |
LEEEEEEEROY! |
03:43 |
Zeno` |
oh |
03:43 |
Zeno` |
https://github.com/minetest/minetest/commit/699d42efc64cb1e317efbdf21dd55fdbef4c108c |
03:43 |
Zeno` |
that was stupid anyway (using assert()) |
03:44 |
Zeno` |
assert() is not in release builds |
03:44 |
Zeno` |
Why can't people understand that? :( |
03:52 |
est31 |
wasn't there this custom assert definition of minetest? |
03:53 |
Zeno` |
There was before it got removed |
03:53 |
est31 |
knew you would comment on this |
03:54 |
Zeno` |
I just don't understand where people got the idea of using assert() for lazy error checking in the first place? |
03:54 |
Zeno` |
Are universities full of stupid people now? |
03:55 |
est31 |
https://github.com/minetest/minetest/pull/2503/files#diff-18513665750ef5adf42b5ec29e14162eR68 |
03:55 |
Zeno` |
(the ones teaching I mean) |
03:55 |
est31 |
is github stupid, or did you really add a # and then a tab? |
03:55 |
Zeno` |
I added a tab |
03:56 |
est31 |
at the start or behind the #? |
03:56 |
Zeno` |
after the # |
03:56 |
est31 |
why that |
03:56 |
est31 |
does the preprocessor ignore it otherwise |
03:56 |
Zeno` |
nope |
03:57 |
Zeno` |
there was nothing in the style guide and looking at other files I couldn't find a clear way that the MT source code prefers it |
03:57 |
est31 |
but I understand the idea behind. you shouldn't ident because of #ifdefs |
03:57 |
est31 |
so you did the pseudoident |
03:58 |
Zeno` |
you do indent if it's all pre-processor stuff |
03:58 |
Zeno` |
(you don't have to, but it's easier to read and common practice) |
03:59 |
Zeno` |
The question is where to place the tab; and that's a style issue |
03:59 |
est31 |
stupid thing that preprocessor requires newlines. |
03:59 |
est31 |
in fact, you could spare all newlines in a file if there wasnt the preprocessor |
04:00 |
Zeno` |
well, you can use # inside the macro so I guess there's no reasonable way around it heh |
04:00 |
est31 |
I mean, why do we have three kinds of non-printable chars? |
04:00 |
est31 |
refactor them to one, the space |
04:00 |
est31 |
its easier to read, without all the downscrolling |
04:00 |
est31 |
after all, most computer screens are broader than high |
04:01 |
Zeno` |
you must have a very small screen/terminal if you need to downscroll to see all 3 lines |
04:01 |
Zeno` |
:) |
04:04 |
Zeno` |
regarding # at the start of the line followed by tab(s), vs. tab(s) before the #... apparently before ANSI C the # was *required* to be the first character on the line. So there is some historical reasoning why some projects prefer it always as the first character even if though that's no longer a requirement |
04:08 |
Zeno` |
we should write a documentary |
04:08 |
est31 |
? |
04:13 |
Zeno` |
The History of Silly Things Inherited from Ancient C Programming |
04:40 |
|
Hunterz joined #minetest-dev |
04:52 |
hmmmm |
I really wonder how much of a performance hit there would be if I made PseudoRandom next() a virtual function |
04:53 |
hmmmm |
probably not significant enough to be an issue, but relative to actual operations taking place it might be bad |
04:58 |
|
est31 joined #minetest-dev |
05:01 |
Zeno` |
Why's it need to be virtual? |
05:02 |
hmmmm |
so i can minimize the amount of changes I do to the rest of the code |
05:03 |
Zeno` |
I guess I'd need to see what you're doing to actually understand that |
05:04 |
|
est31 joined #minetest-dev |
05:05 |
hmmmm |
lol |
05:05 |
hmmmm |
I love how -O2 code is almost always faster than -O3 |
05:26 |
|
paramat joined #minetest-dev |
05:27 |
paramat |
weird damage bug i just confirmed https://github.com/minetest/minetest/issues/2501 |
05:30 |
paramat |
probably caused by nerzhul's recent damage related commits |
05:30 |
hmmmm |
i wonder if they were tested... |
05:38 |
paramat |
ShadowNinja and MTGame team, i'll soon push https://github.com/minetest/minetest_game/pull/453 to MTGame, as it's now a mapgen/bugfix/maintenance commit, hope this is okay |
05:39 |
paramat |
then will also push #2504 |
05:39 |
ShadowBot |
https://github.com/minetest/minetest/issues/2504 -- Mgv6: Remove addDirtGravelBlobs, replaced by registered blob ore in MTGame by paramat |
05:40 |
est31 |
no apples anymore?? |
05:41 |
hmmmm |
i have an idea of how to do apple trees |
05:41 |
hmmmm |
it requires a new version of schematics though |
05:41 |
paramat |
the tree was controversial =) i need to get this pushed |
05:41 |
Zeno` |
well I've found out the source of the "invisibility" bug that I haven't reported |
05:42 |
paramat |
when there are trees growing through each other the trunk dissappears on one, i was considering using the probability value to allow per-node control of force-placement |
05:43 |
hmmmm |
we need to write unit tests for schematics |
05:43 |
hmmmm |
the code for schematics is waay too fragile |
05:44 |
paramat |
255 values of probability are so fine, we can control more with the prob value, perhaps odd = force place, even = not force place, or something |
05:44 |
hmmmm |
paramat: you know the schematic replacements field in the lua api |
05:45 |
hmmmm |
add a probability parameter to that |
05:45 |
hmmmm |
actually that'd require a fair bit more coding |
05:45 |
hmmmm |
hrmm, okay... |
05:46 |
VanessaE |
hmmmm: Ltrees does something very similar to place fruits. |
05:46 |
hmmmm |
I think this could be a shared field between both DECO_LSYSTEM and DECO_SCHEMATIC |
05:46 |
hmmmm |
good to note |
05:47 |
paramat |
placing apples in appletrees doesnt seem a problem though, apart from it being the choice between apple and air, not apple and leaf |
05:49 |
paramat |
unrelated: now trees are allowed to grow to full_node_max i am having to drop dust from there too, am working on that.. |
05:49 |
hmmmm |
hmmm ... |
05:50 |
hmmmm |
this is so messy |
05:50 |
Zeno` |
this is not good |
05:50 |
Zeno` |
I don't even know what type hp is supposed to be |
05:51 |
Zeno` |
in some places (most) it's u8, in others 16, and in at least one place s32 |
05:51 |
hmmmm |
maybe it's time to think about shifting discrete structures over to a different system altogether |
05:51 |
hmmmm |
where it gets placed outside of the map generator |
05:51 |
paramat |
so hmmmmm what's the issue you see with appletrees? |
05:52 |
hmmmm |
trying to think of whether to modify Schematic or DecoSchematic |
05:53 |
hmmmm |
probably DecoSchematic |
05:54 |
hmmmm |
add a std::map<content_t, std::pair<content_t, u8> > to DecoSchematic |
05:54 |
hmmmm |
that'll be the replacement probability map |
05:54 |
hmmmm |
as you could guess, it's original node -> (replacement node, probability value) |
05:55 |
hmmmm |
have this loaded from place_schematic and register_decoration |
05:55 |
hmmmm |
and then pass it as a parameter to Schematic::blitToVManip |
05:55 |
hmmmm |
I guess that makes the most sense here |
05:57 |
hmmmm |
so this way we'll have one register_decoration using the same schematic as regular trees, it just has a replacements = {{from="default:leaves", to="default:apple", probability=128 } |
05:57 |
hmmmm |
well that's too high of a probability for apple trees |
05:57 |
hmmmm |
but you get the idea |
05:57 |
paramat |
ah i see |
06:02 |
paramat |
for jungles i need to pack the trees really close, overlapping in fact, so trunks should be force-placed and leaves should not. we could perhaps have 0-127 as probs with no force place, 128-255 as probs with force place |
06:05 |
hmmmm |
i don't see force-placed probabilities as being particularily useful. more likely than not you'll end up with swiss cheese of the two node types |
06:05 |
hmmmm |
and it'll look ugly |
06:05 |
hmmmm |
as for particular nodes being force placed and others not, that would necessitate a new schematic format. i don't really have any other ideas |
06:08 |
paramat |
ah yes. i did think of 255 = force place. 0-254 = no force-place with probability |
06:09 |
hmmmm |
oh don't assign special meaning to certain probability values |
06:09 |
hmmmm |
i made that mistake the first schematic format version |
06:10 |
hmmmm |
do you want to make force placement an attribute of the node itself, or the content type? |
06:13 |
paramat |
othe node itself |
06:13 |
paramat |
(-o) |
06:14 |
hmmmm |
that's going to require much more storage |
06:15 |
hmmmm |
you'd also need to rewrite MapNode::deSerializeBulk if you do that |
06:15 |
hmmmm |
well, nevermind that |
06:16 |
paramat |
maybe i misunderstand. essentially because prob in param1 doesn't really need 255 levels of prob we could encode more information with param1, that was my idea for using it to also control force-place |
06:16 |
paramat |
anyways it's not urgent, the forests will still 'look' good with hidden chopped trunks |
06:17 |
hmmmm |
so you want to split param1 between "probability of placement" and "probability of force placement"? |
06:18 |
paramat |
prob of force place is not needed, that can be yes or no |
06:18 |
paramat |
we just need to make sure trunks are always force placed |
06:19 |
paramat |
..and leaves are not, within one schem |
06:19 |
hmmmm |
that can be doable by separating it on content |
06:19 |
paramat |
the problem with MT is, if one becomes too perfectionist one quickly goes insane =) |
06:22 |
paramat |
back later O/ |
06:22 |
|
paramat left #minetest-dev |
06:23 |
Zeno` |
hmmmm, #2505 and #2503 if you have a few seconds |
06:23 |
ShadowBot |
https://github.com/minetest/minetest/issues/2505 -- Fix various damage related bugs (client-side) by Zeno- |
06:23 |
ShadowBot |
https://github.com/minetest/minetest/issues/2503 -- Minor cleanup: game.cpp by Zeno- |
06:23 |
hmmmm |
lol what @ 2503 |
06:23 |
hmmmm |
if you wanted to make game.cpp cleaner, a good start would be to separating things into new files |
06:23 |
Zeno` |
sfan was unhappy the parameter names were not consistent |
06:24 |
hmmmm |
you misspelled parameter in the commit msg by the way |
06:24 |
Zeno` |
I know and I planned to do that (split into files and other things) after I refactored the whole file originally but lost steam :) |
06:24 |
Zeno` |
Oh... I'll fix that |
06:24 |
hmmmm |
removing unnecessary includes is always good, doubly so if you're removing them from a header :-) |
06:25 |
hmmmm |
as far as "# preprocessor_directive" - I would normally do that in my own code for correctness, but minetest has " #preprocessor_directive" everywhere already so i figured i'd be consistent |
06:26 |
Zeno` |
yeah I wasn't sure about the accepted style |
06:27 |
hmmmm |
it doesn't matter, what is consistent in this entire codebase |
06:27 |
hmmmm |
heh |
06:28 |
sfan5 |
Zeno`: why not make GameRunData a class var.? |
06:28 |
hmmmm |
also GameRunData is a pointer in some places and const ref in another |
06:29 |
hmmmm |
do the functions where it's passed as a pointer modify it? |
06:29 |
Zeno` |
sfan5, well that effectively makes it almost global |
06:29 |
Zeno` |
hmmmm, not all of them |
06:29 |
Zeno` |
oh as a pointer always |
06:29 |
sfan5 |
almost global? |
06:29 |
hmmmm |
if you ever looked at google code style this is a thing |
06:30 |
Zeno` |
if not it's passed as a const reference |
06:30 |
Zeno` |
sfan5, the class is huge |
06:30 |
hmmmm |
they have a rule that things should usually be passed as pointers, but you could pass it as a const ref instead if it's not being odified |
06:30 |
hmmmm |
modified |
06:30 |
hmmmm |
void processUserInput(VolatileRunFlags *flags, GameRunData *rundData, |
06:30 |
hmmmm |
rund data |
06:31 |
Zeno` |
hmmmm, and that's what I use as well... pointer for stuff to be modified and const ref. otherwise |
06:31 |
hmmmm |
lol you propogated the typo throughout the function |
06:31 |
hmmmm |
was that on purpose to piss off sfan |
06:31 |
Zeno` |
shit |
06:31 |
sfan5 |
lol |
06:31 |
Zeno` |
nah, it's my stutter |
06:31 |
hmmmm |
otherwise LGTM +10000 |
06:32 |
Zeno` |
sfan5, I can explain the history (if you want it) behind the parameters if you want it ;) |
06:32 |
Zeno` |
see... I stuttered again |
06:33 |
hmmmm |
so why does spawning into lava cause invincibility |
06:33 |
hmmmm |
when you respawn don't you become un-dead and it starts hurting you? |
06:34 |
hmmmm |
also i'm not sure what the difference is between being dead and having zero hp |
06:35 |
Zeno` |
I'll give the brief history. When I refactored the_game() it was originally a 3400 line function. So, I broke that giga-function into many smaller functions; it was not a class at all. So that the GameRunData didn't have to be an object with file scope I naturally used parameters. Then, after that someone suggested (or asked, I can't remember) that it be made a class instead. After changing it to a class I figured that it would be nice (still) to |
06:35 |
Zeno` |
know which functions changed the rundddData so I left them |
06:35 |
Zeno` |
hmmmm, there is no difference |
06:36 |
Zeno` |
hmmmm, and I don't know why spawning into lava makes you never lose health. It's related to https://github.com/minetest/minetest/commit/64ff966bae99813229dff6629fd9131a91ba7484 |
06:36 |
Zeno` |
and the client and server being out of sync somehow |
06:36 |
hmmmm |
oh |
06:36 |
Zeno` |
server version doesn't matter |
06:36 |
Zeno` |
just connect to any server with the current client... |
06:37 |
sfan5 |
Zeno`: function d needs GameRunData, it is called like this function a -> function b -> function c -> d; i now need to change at least 8 lines of code to get that variable into my function |
06:37 |
sfan5 |
and you won't <Zeno`> know which functions changed the rundddData |
06:37 |
sfan5 |
because function a, b and c need the runData arg too |
06:38 |
Zeno` |
teleport into lava; you die; teleport back into lava; /sethome if the server has it; and from then on whenever you /home you become invincible (e.g. you can skip the dying part) |
06:38 |
sfan5 |
whats so bad about making it 'almost global' anyway? |
06:38 |
Zeno` |
if you don't have teleport you need to be able to type /sethome really quickly but it's still possible |
06:39 |
Zeno` |
sfan5, what's so bad about having everything global (or file scope)? |
06:39 |
sfan5 |
I'm not talking about having everything global |
06:40 |
sfan5 |
but having something that is needed by many functions and just passing that along w/ every one of them is inefficient |
06:40 |
Zeno` |
What I'm saying is that class is way too large anyway I guess... so in this case it probably doesn't matter |
06:40 |
* sfan5 |
bbl |
06:41 |
Zeno` |
But that's kind of explained by the historical events (it was not a class at the beginning)... I guess I'm not particularly scared of passing arguments. |
06:41 |
Zeno` |
sfan5, it's not a moral issue :) |
06:42 |
Zeno` |
does function d need everything inside runData? |
06:42 |
Zeno` |
oh, sorry... missed the bbl |
06:46 |
Zeno` |
The majority of the existing functions don't need runData |
06:46 |
Zeno` |
One day I'll get back to my original plan of continuing to clean up game.cpp |
06:47 |
Zeno` |
Maybe I should just make GameRunData smaller for a start |
06:48 |
Zeno` |
it's a pretty large struct |
06:50 |
|
Hunterz joined #minetest-dev |
06:51 |
Zeno` |
I may split that class into two as well... if not classes then files where I can expose GameRunData in another way. I remember why I did it that way (in addition to them all originally being functions and not member functions). You can see the pattern by looking at the functions where GameRunData is currently passed to |
06:52 |
Zeno` |
(i.e. they are all related to processPlayerInteraction) |
06:52 |
Zeno` |
apart from the single gui one |
06:54 |
Zeno` |
hmmmm... I might do that tomorrow |
06:54 |
Zeno` |
s/hmmmm/hmm |
06:56 |
Zeno` |
especially now we have a client/ directory |
07:05 |
hmmmm |
about tht |
07:08 |
hmmmm |
I wanted to reorganize the directories |
07:08 |
hmmmm |
it might help if we do it all at once, like ripping off a bandaid |
07:09 |
hmmmm |
if more people are on board with this, I'd like to go through all current pull requests over the course of a few days |
07:10 |
hmmmm |
and merge, or at least give a comment on why it's not merged yet, or close it if it's been old and abandoned |
07:11 |
hmmmm |
things that are really specific to client go in client/, really specific server things go into server/, common things stay in src/, then each client/ and server/ has a script/ directory |
07:12 |
hmmmm |
network is too small of a directory to bother maintaining anymore and the source files in there should be split between client/ and server/ |
07:12 |
hmmmm |
third party libraries should go into a directory called third_party or something |
07:12 |
hmmmm |
jthread and util stay in src/ |
07:15 |
hmmmm |
I like directories for organizing things, but we should be very careful about going overboard because I don't want to turn into a C++ version of terasology |
07:25 |
Zeno` |
oh great |
07:26 |
Zeno` |
my fix causes a lag before damage is updated on-screen |
07:32 |
Zeno` |
well, actually... you see the damage flash but the hearts don't update straight away |
07:34 |
|
Ritchie joined #minetest-dev |
07:37 |
Zeno` |
I'm pushing this: http://dpaste.com/2BRZXH0 (minor bug fix) |
07:37 |
|
paramat joined #minetest-dev |
07:39 |
paramat |
will push game#453 very soon |
07:39 |
ShadowBot |
https://github.com/minetest/minetest_game/issues/453 -- default/mapgen.lua: Fix biomes, register blob ores in mgv6 to replace addDirtGravelBlobs by paramat |
07:40 |
celeron55 |
"Hi I like the game multicraft, but can you make a world with unlimited blocks and objects? Also I've been meaning to ask you if you can make beds and lamps for the miners so they don't have to go out and look for wool and stuff that will save them slot of time,thanks for reading." |
07:40 |
celeron55 |
enjoy this yet another nonsense email |
07:41 |
Zeno` |
umm. Thanks? |
07:41 |
Zeno` |
heh |
07:42 |
Zeno` |
A good employer would supply beds and lamps for their miners |
07:42 |
Zeno` |
All employees should have a bed for quick naps |
07:42 |
celeron55 |
if i didn't think that person is completely retarded, i would be angry of him asking me to add something to a minetest android ripoff |
07:43 |
|
nrzkt joined #minetest-dev |
07:45 |
paramat |
okay now pushing 453 to game .. |
07:45 |
celeron55 |
that particular one seems to have something like 350 000 installs |
07:46 |
nrzkt |
then for 5f8e48c63baf12930430d5d8fc07495021599e61 we have two choices: catch the exception on server side and exit. Use a ifdef SERVER and do the way i propose else do the throw for the client. |
07:46 |
Zeno` |
for what? |
07:46 |
nrzkt |
this crash i fixed which isn't well handled for client running embedded server: https://github.com/minetest/minetest/commit/5f8e48c63baf12930430d5d8fc07495021599e61 |
07:46 |
Zeno` |
anyway, as usual for this time of day I go away for a few hours :) See you soon |
07:47 |
Zeno` |
oh that one. Yes, and assert() was no good either :P |
07:47 |
nrzkt |
yesterday i experienced a problem with this throw which isn't catched on server then server crashes because of this without warn me about the error |
07:47 |
Zeno` |
read logs. will be back an a few hours |
07:47 |
nrzkt |
i already read logs |
07:47 |
Zeno` |
k :) |
07:47 |
nrzkt |
then we must fix this crash. The error isn't handled on minetestserver. |
07:47 |
paramat |
ugh whitespace errors, will push this later |
07:48 |
Zeno` |
sorry, just rushing to get off before I get involved in yet another conversation... hehe been trying to do what I have to do for 30 minutes now |
07:49 |
nrzkt |
hmmmm: your suggestion was what i was suggest and if i remember you rejected it :) |
07:49 |
nrzkt |
and for network, don't touch the directory now, because some files will be added when i will work on sessions |
07:50 |
paramat |
actaully, i'll fix my whitespace errors right now, continuing with push .. |
07:50 |
nrzkt |
for third_party we can use a well known name: contrib/ |
07:50 |
hmmmm |
that sounds better |
07:50 |
hmmmm |
nrzkt: your version of the suggestion I thought you wanted to make common a separate library |
07:51 |
hmmmm |
i don't agree with that part at all |
07:51 |
hmmmm |
i don't want common source files to be in a separate directory either... |
07:51 |
nrzkt |
yeah, no problem for this it's only a compilation comfort :). Also for common no problem for me |
07:51 |
hmmmm |
making it a library would ruin whole program optimization |
07:52 |
nrzkt |
can you explain me really what is the problem with libraries and optimization, i'm not very familiar with this |
07:52 |
hmmmm |
there's this feature on all modern optimizing compilers called Whole Program Optimization |
07:53 |
hmmmm |
basically you know how each compilation unit (.cpp file) is its own self-contained module of compiled code? |
07:53 |
hmmmm |
well if it has several of these it can figure out ways to optimize the code across each file when making the resulting binary |
07:53 |
nrzkt |
okay, i see |
07:53 |
hmmmm |
but if it's a library this causes problems with that and it won't attempt this optimization with any calls to the common library or vice versa |
07:56 |
nrzkt |
okay, thanks for the explanation |
07:57 |
paramat |
(push complete) |
07:59 |
nrzkt |
#2495 seems good for me. hmmmm, paramat ? |
07:59 |
ShadowBot |
https://github.com/minetest/minetest/issues/2495 -- Save creative_mode and enable_damage setting for each world in world.mt by fz72 |
07:59 |
hmmmm |
yes, agreed |
07:59 |
hmmmm |
let me look at the implementation... |
08:00 |
|
sofar_ joined #minetest-dev |
08:00 |
paramat |
yeah cool |
08:01 |
hmmmm |
without testing, it looks good to me |
08:01 |
hmmmm |
I trust that it works though |
08:02 |
nrzkt |
i will test it another time to be sure, and push it if okay, agree ? |
08:03 |
hmmmm |
yes |
08:03 |
|
leat joined #minetest-dev |
08:03 |
paramat |
what hmmmmm said |
08:03 |
hmmmm |
night |
08:05 |
|
est31 joined #minetest-dev |
08:08 |
nrzkt |
strange; i create a branch and i have this issue: unable to find rule to make:Â po/timestamp/minetest.po |
08:11 |
nrzkt |
i can make minetest and minetestserver targets without problems |
08:14 |
est31 |
timestamp is for android, isnt it? |
08:14 |
est31 |
nrzkt, have you done an android build with that repo before? |
08:17 |
nrzkt |
you are right, i do it :) |
08:17 |
nrzkt |
okay fixed, thanks for the tip; i have never let my android builds before :) |
08:18 |
nrzkt |
sorry, not fixed |
08:18 |
nrzkt |
make clean_all on android build doesn't fix the thing |
08:18 |
|
kilbith joined #minetest-dev |
08:19 |
nrzkt |
then, no problem i set the targets in my command, i'll look at this later |
08:22 |
|
FR^2 joined #minetest-dev |
08:35 |
|
Calinou joined #minetest-dev |
08:37 |
nrzkt |
will push the reliable/unreliable fix for unreliable send regression to master now |
08:37 |
nrzkt |
packet: TOCLIENT_ACTIVE_OBJECT_MESSAGES |
08:40 |
|
paramat left #minetest-dev |
09:03 |
|
Dartmouth joined #minetest-dev |
09:17 |
|
OldCoder joined #minetest-dev |
09:43 |
nrzkt |
guys, new stats on sunday: 39 Minetest installations on android |
09:43 |
|
selat joined #minetest-dev |
10:05 |
|
Dartmouth joined #minetest-dev |
10:06 |
est31 |
so, what is the best method to point players to the app... |
10:06 |
est31 |
I want to add a message on join |
10:06 |
nrzkt |
i don't know. I add a hardcoded patch which check the client version at join |
10:06 |
nrzkt |
which does a sendchatmessage to client if version < 0.4.12 |
10:07 |
est31 |
please not to master |
10:07 |
nrzkt |
no |
10:07 |
nrzkt |
it's only for my server |
10:07 |
est31 |
for master, I can perhaps make a patch... |
10:07 |
nrzkt |
i have a separate branch with some little core additions :p |
10:08 |
nrzkt |
i don't think it's a core issue. Admins must do the communication themselves |
10:09 |
est31 |
yes ofc, but when lua api is extended to enable a simple lua patch, then perhaps more admins will add it. |
10:09 |
nrzkt |
yes |
10:09 |
est31 |
there is already register_on_joinplayer |
10:09 |
est31 |
perhaps add another argument |
10:09 |
nrzkt |
yes, you can use it |
10:09 |
nrzkt |
you need to retrieve client version major minor and patch and compare it. Then send a message |
10:11 |
nrzkt |
here is my message: "*[EN] Server Notification* You client version is outdated. We recommend you to upgrade to 0.4.12 or later.\nIf you are on Android, please use the new free and official version 'Minetest' on the Google Play Store available here:\nhttps://play.google.com/store/apps/details?id=net.minetest.minetest" |
10:12 |
|
cib0 joined #minetest-dev |
10:13 |
Calinou |
use a short link so that it is easily typable |
10:13 |
est31 |
yup |
10:13 |
Calinou |
or point to minetest.net/download |
10:13 |
est31 |
anyone knows a good url shortener? |
10:13 |
Calinou |
ur1.ca bans tons of people :P |
10:13 |
Calinou |
someone needs to update minetest.net/download anyway |
10:14 |
est31 |
perhaps also with link to the F-droid repo |
10:14 |
est31 |
when/if it gets there |
10:14 |
Calinou |
that's why we should point users to minetest.net/download |
10:15 |
Calinou |
and not Google Play |
10:16 |
nrzkt |
right, but F-Droid and play store permit to update the apk without user action better for the maintenance |
10:17 |
|
MinetestForFun joined #minetest-dev |
10:17 |
est31 |
F-Droid doesnt |
10:17 |
nrzkt |
oh ? okay :) |
10:17 |
est31 |
its like apt-get or yum |
10:18 |
nrzkt |
okay |
10:43 |
nrzkt |
as discussed with celeron55, i have created a topic on the forum to create a minetest_game enhanced for android users. The basic idea was to improve minetest_game, but it seems it's more reasonable to create a meta-game which include minetest_game and some others mods for our android customers. Everybody can contribute to this topic, adding ideas and argument about which mod add or not add and why. => https://forum.minet |
10:43 |
nrzkt |
est.net/viewtopic.php?f=3&t=11499 |
10:43 |
nrzkt |
erf... cutted: https://forum.minetest.net/viewtopic.php?f=3&t=11499 |
10:47 |
nrzkt |
the goal is not to supersede minetest_game; regular clients and servers must continue to use it. |
10:47 |
est31 |
"est.net" |
10:48 |
nrzkt |
xD, sorry IRC cut my message :p |
11:00 |
|
MinetestForFun joined #minetest-dev |
11:13 |
|
blaze joined #minetest-dev |
11:25 |
|
Dartmouth joined #minetest-dev |
11:36 |
|
Tablet_One joined #minetest-dev |
11:38 |
kilbith |
i'm a bit tired to report 4-10 forum spams everyday, does a captcha solution can be considered ? |
11:41 |
|
proller joined #minetest-dev |
11:42 |
Calinou |
captcha annoys everyone |
11:43 |
kilbith |
typing 4 clear characters is annoying ? |
11:44 |
kilbith |
report and cleaning posts daily is. |
11:45 |
est31 |
captchas when you register? |
11:45 |
est31 |
not at every post |
11:45 |
kilbith |
yes |
11:46 |
Calinou |
you're not obliged to report, we eventually notice it :P |
11:46 |
Calinou |
est31, some users do fail to solve captchas |
11:46 |
Calinou |
IMO they're a thing of yesterday |
11:46 |
est31 |
so what do you think is the thing of today? |
11:47 |
kilbith |
the current caretakers won't be eternally present to monitorize closely the forum - some day it can be drowned by spams |
11:48 |
kilbith |
not all captchas are equals, some are very hard to decrypt but some not |
11:53 |
kilbith |
or as another solution, force copying a short phrase in a field |
11:54 |
kilbith |
well, all that is not painful |
12:04 |
|
MinetestForFun joined #minetest-dev |
12:08 |
|
chchjesus joined #minetest-dev |
12:22 |
|
cib0 joined #minetest-dev |
12:45 |
|
Dartmouth joined #minetest-dev |
12:51 |
sfan5 |
~tell Zeno` the 4 function thing was just an example but it might be exactly that case in the future when somebody works in game.cpp |
12:51 |
ShadowBot |
sfan5: O.K. |
12:54 |
|
leat joined #minetest-dev |
13:00 |
|
Zeno` joined #minetest-dev |
13:02 |
Zeno` |
est31, I have no idea what to make of #2509 |
13:03 |
ShadowBot |
https://github.com/minetest/minetest/issues/2509 -- full version of a client is empty |
13:03 |
nrzkt |
i'm on it Zeno` |
13:03 |
est31 |
Zeno`, |
13:03 |
est31 |
man wrong button |
13:03 |
est31 |
sry |
13:03 |
Zeno` |
you are reporting a bug in your own PR that hasn't even been merged? |
13:03 |
est31 |
its a bug with an internal variable |
13:03 |
est31 |
but, yes. |
13:03 |
Zeno` |
:/ |
13:04 |
est31 |
nerzhul wanted it for tracking |
13:04 |
est31 |
I've pmed it to him first |
13:04 |
nrzkt |
he points a bug :) |
13:04 |
Zeno` |
nrzkt, est31, umm why? Why not just fix the PR?! |
13:04 |
est31 |
because the PR doesnt touch that code |
13:04 |
est31 |
it only reads it |
13:05 |
Zeno` |
that's not clear in the issue |
13:05 |
est31 |
its obviously a bug |
13:05 |
nrzkt |
Zeno` it's not a PR bug Zeno` :p it's a single bug. |
13:05 |
Zeno` |
yeah I see that now but the issue is confusing |
13:06 |
est31 |
sry for that |
13:06 |
nrzkt |
no problem, i take it :p look at the PR mention in PM :p |
13:06 |
Zeno` |
ok, onto the second question. Why is the full client version needed by Lua? |
13:06 |
est31 |
yes |
13:07 |
est31 |
Zeno`, I want it because I want to enable server owners to show a nice "you have an old version" message. Its totally their choice, and they have to code the function themselves, but I added the functionality |
13:07 |
Zeno` |
I think you'll have a lot of difficulty getting that accepted |
13:08 |
est31 |
and why full version ... why do something incompletely |
13:08 |
est31 |
why? |
13:09 |
Zeno` |
https://github.com/minetest/minetest/pull/1689 as an example |
13:10 |
nrzkt |
maybe a dedicated Lua call which gets the playername as parameter and return the client versions is better |
13:10 |
nrzkt |
this call can be trigger by the original on_register |
13:13 |
nrzkt |
i push the 2509 fix now |
13:15 |
est31 |
ok, what about sending the "fork"'s name too? |
13:15 |
Zeno` |
est31, it already shows that |
13:15 |
est31 |
where |
13:15 |
Zeno` |
when you connect if your client is older than the server version it gives some warning |
13:16 |
Zeno` |
something like "warning this server uses ******* but your client is old and may not support all features" |
13:17 |
|
selat joined #minetest-dev |
13:17 |
est31 |
aha |
13:21 |
|
srifqi joined #minetest-dev |
13:21 |
est31 |
ok building 0.4.10 and checking that |
13:23 |
est31 |
connecting with 0.4.10 gave me no such message |
13:23 |
est31 |
to 0.4.12 |
13:24 |
Zeno` |
it gives it to you in the status text |
13:24 |
Zeno` |
it'll look like a chat command |
13:24 |
Zeno` |
chat message* |
13:26 |
est31 |
no nothing |
13:27 |
nrzkt |
Zeno` there is no message. My wife uses a 0.4.11 on my 0.4.12 server, no message |
13:28 |
srifqi |
Zeno`, sorry, but what do you mean? (about: #2480) another dialog? |
13:28 |
ShadowBot |
https://github.com/minetest/minetest/issues/2480 -- Add mg spflags in dlg create world by srifqi |
13:28 |
srifqi |
there is no more room |
13:28 |
srifqi |
have you idea? |
13:29 |
est31 |
hm on 0.4.3, you can't enter into formspecs |
13:30 |
est31 |
ha! 0.4.4 has no compat to 0.4.12 |
13:30 |
est31 |
but error |
13:30 |
Zeno` |
srifqi, not sure actually. A dropdown with with checkboxes would be idea but can't do that :( |
13:31 |
nrzkt |
ping Zeno` #2506 #2429 and #2443 |
13:31 |
srifqi |
Zeno`, yes, there is no checkboxes in dropdown, any other idea? |
13:31 |
ShadowBot |
https://github.com/minetest/minetest/issues/2506 -- Server::step throw is never catched in minetestserver by nerzhul |
13:31 |
ShadowBot |
https://github.com/minetest/minetest/issues/2429 -- Update credits by Zeno- |
13:31 |
ShadowBot |
https://github.com/minetest/minetest/issues/2443 -- Make MutexedQueue use std::deque instead of using a std::list member by nerzhul |
13:32 |
est31 |
0.4.6 has assert errors |
13:33 |
Calinou |
the protocol did not change between 0.4.11 and 0.4.12 |
13:34 |
Zeno` |
srifqi, I guess what I am saying is that if the person creating the world knows what flags to add in the new text edit your PR creates then they are 99% likely to know how to manually add them anyway |
13:35 |
srifqi |
so, we need something like helper? |
13:36 |
est31 |
ok, with 0.4.8 I was abled to generate an error |
13:38 |
est31 |
https://github.com/minetest/minetest/blob/814e55597d3c3c1711825366d4345cee48d8fb87/src/network/serverpackethandler.cpp#L692 |
13:38 |
est31 |
^ for reference |
13:40 |
|
hmmmm joined #minetest-dev |
13:41 |
est31 |
so, nrzkt perhaps your method approach is better than my param approach... but I'll wait for community to input on this |
13:42 |
est31 |
before I invest more time |
13:44 |
nrzkt |
no problem :) |
13:48 |
est31 |
Zeno`, I think part of the criticism was that ShadowNinja suggested to do feature detection by version and not by feature. Thats a very bad thing. User agent strings have shown us where this had led to. However I don't think that this should disable the API completely. after all, mods can already now parse core.get_server_status() |
13:56 |
|
AnotherBrick joined #minetest-dev |
13:56 |
Zeno` |
" I want it because I want to enable server owners to show a nice "you have an old version" message. Its totally their choice" |
13:56 |
Zeno` |
do it in the engine then, rather than using Lua? |
13:57 |
est31 |
lua allows for a wide variety of options |
13:57 |
est31 |
and mods can exploit them all |
13:58 |
Zeno` |
what's the PR again? |
13:59 |
est31 |
#2508 |
13:59 |
ShadowBot |
https://github.com/minetest/minetest/issues/2508 -- Pass version information to joinplayer callback by est31 |
13:59 |
Zeno` |
yes, but that does the same thing as SN's patch did (in effect) |
13:59 |
est31 |
one is for the server, one for clients, isn'T it? |
14:00 |
est31 |
(exploit in a positive sense ofc, for the record) |
14:00 |
Zeno` |
I must be confused then... there is no client side scripting (well, there is, but there isn't supposed to be) |
14:01 |
nrzkt |
right. SN => server est => client |
14:01 |
est31 |
ShadowNinja's patch allows to fetch the version of the server. mine allows to fetch the version of the client. |
14:01 |
Zeno` |
yeah ok, I see |
14:02 |
Zeno` |
the same arguments may apply though |
14:02 |
Zeno` |
(not that I agree with all the arguments presented) |
14:04 |
est31 |
minetest is no kindergarden for mods to prevent them from doing bad things |
14:05 |
est31 |
we don't even check identation |
14:05 |
est31 |
I agree though that the situations of these two PRs are similar |
14:06 |
est31 |
the fork argument clearly applies |
14:06 |
Zeno` |
yep |
14:06 |
Zeno` |
anyway, the PR is new so a day or so of discussion cannot hurt |
14:07 |
Zeno` |
let's discuss #2462 |
14:07 |
ShadowBot |
https://github.com/minetest/minetest/issues/2462 -- Configurable automatic texture scaling and filtering at load time. by Warr1024 |
14:07 |
est31 |
but the question is: do you want to privilege fork users, who most times use an outdated and ad laden fork which lowers reputation, or do you want to privilege server owners |
14:07 |
est31 |
agreed Zeno`. |
14:08 |
Zeno` |
est31, I don't know about that. Which is why I'd like to think more and hear some more opinions. At the moment I'm ambivalent |
14:08 |
Zeno` |
so... 2462... |
14:08 |
Zeno` |
I tested it when I made my comment and could see no issues (it looked good on screen -- to me -- actually) |
14:09 |
est31 |
it should probably be done with setDefaults |
14:10 |
est31 |
and default off, in mine opinion, after all its a blocky game :) |
14:10 |
Zeno` |
yeah |
14:10 |
Zeno` |
so that needs to be added |
14:10 |
est31 |
not that its looking good |
14:10 |
nrzkt |
agree for 2462 |
14:11 |
est31 |
(add second not somewhere) |
14:12 |
Zeno` |
ok, assume I set the default value for "texture_clean_transparent" (if I'm in a good mood), merge? |
14:13 |
Zeno` |
ugh... I will add a comment |
14:13 |
Zeno` |
I can't be bothered doing that hehe |
14:13 |
nrzkt |
i don't find any issue on this PR and it's a good improvement. but don't forget default value for texture_clean_transparent and texture_min_size in defaultsettings.cpp |
14:15 |
Zeno` |
nrzkt, those are the comments I just added to the PR :P |
14:15 |
nrzkt |
a oh, my page wasn't up to date :) |
14:18 |
Zeno` |
2506 looks better now :) well, apart from the Jenkins failing |
14:18 |
nrzkt |
android makefile shit |
14:18 |
nrzkt |
ndroid NDK: ERROR:jni/Android.mk:ssl: LOCAL_SRC_FILES points to a missing file |
14:18 |
Zeno` |
ask Jenkins to fix the make file! |
14:18 |
Zeno` |
heh |
14:18 |
nrzkt |
this error occurs some times... |
14:18 |
nrzkt |
not only on jenkins, also on my computer |
14:19 |
Zeno` |
smae with on mine |
14:19 |
Zeno` |
it's very irritating |
14:19 |
est31 |
for i in 1 2 3 do make && break; done |
14:19 |
est31 |
ugly way of "solving" it |
14:19 |
nrzkt |
xD |
14:19 |
Zeno` |
maybe the whole makefile can be rewritten one day |
14:19 |
Zeno` |
but I don't think I want to do that |
14:20 |
nrzkt |
yes, i started. But i stopped because it's boring :p |
14:20 |
Zeno` |
it's all too hacky and I get annoyed looked at it lol |
14:20 |
Zeno` |
yes, and boring lol |
14:20 |
est31 |
the -j JOBS setup is wrong too |
14:20 |
nrzkt |
the first thing will be translate all the commands to cmake calls |
14:20 |
est31 |
make has an own jobserver for parallelism, you dont need to handle it yourself |
14:21 |
nrzkt |
right. I will remove this ugly hack this afternoon. This override my freebsd make and it's useless |
14:22 |
est31 |
and I'm off |
14:22 |
est31 |
cya |
14:22 |
Zeno` |
bye :) |
14:22 |
Zeno` |
sleep"? |
14:23 |
nrzkt |
then, okay for 2506 N |
14:23 |
nrzkt |
? |
14:25 |
Zeno` |
as far as I can see, yes |
14:25 |
Zeno` |
looks fine to me |
14:25 |
nrzkt |
thanks |
14:26 |
nrzkt |
pushed |
14:29 |
nrzkt |
#2471 seems good for me, Zeno`, hmmmm ? |
14:29 |
ShadowBot |
https://github.com/minetest/minetest/issues/2471 -- Standalone bundle for OSX (w/ dependencies!) by neoascetic |
14:29 |
nrzkt |
as far i know about Mac OSX (last use on mavericks) this is good |
14:31 |
Zeno` |
yeah I don't understand enough about that one |
14:31 |
Zeno` |
but it's a bit like translations |
14:31 |
Zeno` |
sometimes I guess we have to trust our users if we can't understand (for translations) or test (on an OS we don't have) |
14:32 |
Zeno` |
so as long as it does not break any other builds I'm fine with it |
14:32 |
nrzkt |
on this PR all paths are correct |
14:32 |
nrzkt |
and the modification affects only apple products |
14:33 |
Zeno` |
(I haven't tested it, but I don't see anything obviously wrong) |
14:33 |
Zeno` |
yep, well I guess it's a case of merge then |
14:33 |
Zeno` |
I can't test and I don't know any other core dev using OSX either |
14:34 |
Zeno` |
so, yeah |
14:34 |
Zeno` |
as long as it only affects osx I would agree to merge. I meant to raise this PR myself actually |
14:37 |
nrzkt |
i push it now |
14:37 |
Zeno` |
k |
14:48 |
|
MinetestForFun joined #minetest-dev |
14:48 |
nrzkt |
i will remove the ugly hack for android build |
14:48 |
nrzkt |
the -j HACK |
15:09 |
|
MinetestForFun joined #minetest-dev |
15:13 |
|
MinetestForFun joined #minetest-dev |
15:15 |
|
Calinou joined #minetest-dev |
15:23 |
hmmmm |
yeah 2471 looks good |
15:24 |
hmmmm |
but i don't know if it is good unless i were to install mac os x and test it |
15:24 |
hmmmm |
:/ |
15:24 |
hmmmm |
I'd have a much higher level of confidence about commits if we had better unit testing, but I'm not sure how to unit test over half the stuff committed |
15:25 |
|
VargaD joined #minetest-dev |
15:25 |
nrzkt |
right, this is difficult to add so more unit tests on each platform :( |
15:26 |
hmmmm |
no, it's just hard in general |
15:26 |
hmmmm |
how are you supposed to unit test, say, a change to the inventory code? |
15:26 |
hmmmm |
I'm thinking it might be worthwhile to add autoit scripts to simulate GUI navigation like a user might actually do |
15:27 |
nrzkt |
you need to test the output result of a classic modification into the inventory |
15:27 |
nrzkt |
like stacking or destacking items |
15:27 |
hmmmm |
oh I mean from the GUI point of view |
15:28 |
hmmmm |
I'm not actually sure, I was just using the android inventory crash bug as an example |
15:30 |
nrzkt |
i don't experience this problem on my phone, can you give me more information to reproduce it ? |
15:30 |
hmmmm |
ahh |
15:30 |
hmmmm |
I was under the impression it was a reliable failure |
15:31 |
hmmmm |
this was just a report I heard from tablet_one in the channel. he seems to be testing the android builds a fair bit which is great |
15:33 |
hmmmm |
[10:48 AM] <nrzkt> i will remove the ugly hack for android build what is this? |
15:33 |
nrzkt |
android Makefile add -j <X> instead of letting the user do it. |
15:34 |
hmmmm |
oh that's sort of dumb |
15:34 |
nrzkt |
https://github.com/minetest/minetest/commit/94b3950958c643c39c60b382c85f833593a718d0 |
15:34 |
hmmmm |
i wouldn't call it a hack, though |
15:34 |
nrzkt |
not really a hack but i haven't any best translation for my own words :p |
15:34 |
hmmmm |
multithreaded make might result in errors so it's always best to keep it optional |
15:35 |
sfan5 |
^ |
15:35 |
nrzkt |
in fact, make -j4 release will do the work properly. Why the makefile want to override my options ? Parallelise is the job of the developper not the makefile :( |
15:37 |
nrzkt |
it was on the original sapier's file in fact |
15:37 |
|
MinetestForFun_ joined #minetest-dev |
15:39 |
Calinou |
make -j$(grep -c processor /proc/cpuinfo) |
15:39 |
Calinou |
automatic detection :) |
15:39 |
nrzkt |
and if i don't want to use all my CPU because i'm doing something else ? i don't have choice |
15:40 |
Calinou |
then use arithmetics to substract 1 thread |
15:40 |
nrzkt |
sorry but this mustn't be done by makefile. |
15:42 |
hmmmm |
well, I agree with removing -j, but I wish people would have a chance to discuss it like this before it got pushed to upstream |
15:43 |
hmmmm |
and possibly get approval from at least 2 core developers |
15:44 |
nrzkt |
this is a trivial change, and i'm the main android packager atm |
15:44 |
nrzkt |
and it was discussed briefly and pointer by est31 |
15:44 |
nrzkt |
pointed* |
15:45 |
Zeno` |
In all fairness I was the one who spent over a week fixing the Android bugs |
15:45 |
nrzkt |
thanks you, hopefully you permit this release :) |
15:45 |
Zeno` |
Am I the main packager? No. Did I fix the bugs? Yes |
15:45 |
nrzkt |
you are the main debuguer :D |
15:46 |
Zeno` |
2 weeks ago Android build did not display text |
15:46 |
Zeno` |
that's not a debugging issue :/ |
15:46 |
Zeno` |
nobody cared that Android did not display text |
15:47 |
nrzkt |
somes parts of our code are abandonned :s like irrlicht engine, lightning issues... :( |
15:47 |
Zeno` |
So, sorry, I find your comment a bit offensive |
15:48 |
Zeno` |
I asked for help even... but nobody even offered or could care to look |
15:48 |
nrzkt |
No problem Zeno`, i understand. I know you use many time to find the Android bugs which permit to have a good Android release (with cherry pick on master) |
15:48 |
hmmmm |
I'd help but I don't even have an android device :( |
15:49 |
nrzkt |
you can make a IOS build then ? :D |
15:50 |
|
proller joined #minetest-dev |
15:50 |
hmmmm |
I'm not really interested in mobile devices at all |
15:50 |
nrzkt |
i was laughing :) |
15:51 |
nrzkt |
https://github.com/minetest/minetest/issues/2507#issuecomment-82428061 ... |
15:52 |
nrzkt |
user wants us to recover from LuaError due to a Lua coding error... |
15:52 |
hmmmm |
it's definitely possible and, if done, needs to be a server option |
15:53 |
hmmmm |
one that's disabled by default |
15:53 |
nrzkt |
if a mod trigger a null pointer exception we need to recover from it ? This could trigger unexpected effects |
15:53 |
hmmmm |
you mean nil access exception? it's a LuaError |
15:53 |
nrzkt |
and this permits modder to do code with many problems |
15:54 |
hmmmm |
absolutely not, if you make it optional and disabled by default |
15:54 |
nrzkt |
yes, i was talking about that |
15:54 |
nrzkt |
it's like having a great and ugly while(true) { try { runServer(); } catch (std::exception e) {} }; |
15:54 |
hmmmm |
the people who want their server to ignore the error (which in 99% of cases will be minor and pretty much irrelevant) and the vast majority of other users will still see the problem when minetest crashes |
15:55 |
hmmmm |
i can see server owners with one errant mod that has one bug in very rare circumstances wanting this functionality |
15:55 |
hmmmm |
the entire thing doesn't need to go down because of one sandboxed script |
15:56 |
hmmmm |
hrmm |
15:57 |
hmmmm |
maybe we can try to guess which mod caused the crash and dynamically unload it |
15:57 |
nrzkt |
i understand the uptime issue, i agree with it, but mods bugs cannot be found easily if they are not shown to server administrators, who looks debug.txt and send reports to modders ? |
15:57 |
hmmmm |
that'd be difficult but i'd argue an ideal solution |
15:57 |
hmmmm |
maybe these kinds of errors should be added to the syslog in addition to debug.txt |
15:57 |
nrzkt |
and if the recoverable situation generate some missing and mandatory code for a mod which modify the player ? |
15:58 |
nrzkt |
unrecoverable* |
15:58 |
hmmmm |
that's a risk the people enabling this would have to understand |
15:59 |
nrzkt |
many mods users wants working mods, not mods which can corrupt datas :s |
15:59 |
|
VargaD joined #minetest-dev |
15:59 |
hmmmm |
want to just try it? if this causes problems we can just remove the script recover feature later on |
15:59 |
hmmmm |
I'm willing to bet it's fine in 99% of cases, though |
15:59 |
nrzkt |
personnaly i don't want to talk with the 1% which have problems if you do it :p |
16:00 |
hmmmm |
FWIW there's also ignore_world_load_errors |
16:01 |
hmmmm |
so it's not like ignoring some non-fatal errors is unprecedented |
16:01 |
nrzkt |
exact... strange thing too, we can corrupt the map with this, no ? if you want to add the switch, i think it's better to let server trigger their errors and if admins wants to turn of the thing, they must be careful and do it |
16:01 |
nrzkt |
turn off* |
16:02 |
hmmmm |
you must've misunderstood me earlier |
16:02 |
hmmmm |
I'm saying this would need to be an option, that is disabled by default |
16:02 |
hmmmm |
server owners would need to explicitly enable it on their own and be mindful of the risks involved |
16:02 |
nrzkt |
oh sorry :) i understand the other |
16:02 |
nrzkt |
in that case i agree then, you can make the modification if you want :) |
16:06 |
nrzkt |
there are many issues to solve and many PR to check. hmmmm, Zeno` i need a last review with #2443 |
16:06 |
ShadowBot |
https://github.com/minetest/minetest/issues/2443 -- Make MutexedQueue use std::deque instead of using a std::list member by nerzhul |
16:06 |
hmmmm |
i thought this was merged already |
16:06 |
|
VargaD joined #minetest-dev |
16:07 |
nrzkt |
no, because no other core dev agreed, and it's a modification on a sensible object. If you agree i push it :) |
16:07 |
hmmmm |
hmm I don't get how those changes could cause synchronization bugs |
16:09 |
hmmmm |
oh nvm didn't read the comments very well |
16:09 |
hmmmm |
yeah it looks good |
16:09 |
hmmmm |
i don't understand why people use std::list so much. it's a very slow data structure. |
16:10 |
nrzkt |
yes, and i changed many std::list to better std::vector or std::queue |
16:10 |
hmmmm |
http://www.codeproject.com/Articles/5425/An-In-Depth-Study-of-the-STL-Deque-Container |
16:11 |
|
Hunterz joined #minetest-dev |
16:11 |
nrzkt |
and as i noticed this improved server performance many times, now i can use nuke mode without any lag |
16:11 |
nrzkt |
ok i push it to master then |
16:12 |
nrzkt |
i do a last local test and push |
16:13 |
nrzkt |
Google now uses PEGI, i answered their form and we are classified as 3+ |
16:20 |
nrzkt |
perfect. Now pushing |
16:21 |
Calinou |
heh, Minecraft is 7+ |
16:21 |
Calinou |
we are beating them! |
16:21 |
nrzkt |
i don't know why, we have no drugs, ni violence, no terrorists (except TNT users) |
16:37 |
|
SopaXorzTaker joined #minetest-dev |
16:46 |
|
neoascetic joined #minetest-dev |
16:56 |
|
neoascetic joined #minetest-dev |
16:57 |
|
SopaXorzTaker joined #minetest-dev |
17:05 |
celeron55 |
i think the in-game chat and player-made creations make the age limit higher |
17:06 |
celeron55 |
where did you get this information? |
17:26 |
VanessaE |
actually, ESRB rates Minecraft as "E 10+" |
17:26 |
VanessaE |
http://www.esrb.org/ratings/synopsis.jsp?Certificate=100396 |
17:37 |
|
cib0 joined #minetest-dev |
17:40 |
Calinou |
it's the equivalent of PEGI's 7+ |
17:46 |
|
Robert_Zenz joined #minetest-dev |
17:51 |
|
disablec1 joined #minetest-dev |
18:00 |
|
nrzkt joined #minetest-dev |
18:05 |
|
cib0 joined #minetest-dev |
18:12 |
|
Calinou joined #minetest-dev |
18:16 |
|
rubenwardy joined #minetest-dev |
18:20 |
|
Krock joined #minetest-dev |
18:34 |
|
DFeniks joined #minetest-dev |
18:37 |
|
fz72 joined #minetest-dev |
18:39 |
sfan5 |
*sigh* |
18:39 |
sfan5 |
this is exactly why you should not allow users to choose things they'll not want |
18:39 |
sfan5 |
https://forum.minetest.net/viewtopic.php?p=172567#p172567 |
18:39 |
sfan5 |
tl;dr "I get the red screen. The edges are messed up too." >Irrlicht Software Driver 1.0 |
18:43 |
Krock |
oh. he uses the irrlicht driver, that's why it looks to... special xD |
18:44 |
Calinou |
we can remove drivers other than OpenGL, sfan5 |
18:44 |
Calinou |
even ezQuake removed the software driver :P |
18:44 |
sfan5 |
ofc we can |
18:44 |
sfan5 |
the question is why did/do we allow the user to select the software driver in the first place? |
18:45 |
Krock |
beside to the burningsvideo it's the only driver that works on every graphic card |
18:46 |
Calinou |
99,5 % of our user base has working 3D acceleration |
18:46 |
Krock |
and 99.999% supports opengl |
18:46 |
Calinou |
I can play Minetest smoothly with Nouveau now |
18:46 |
Calinou |
it has evolved |
18:46 |
sfan5 |
hm |
18:46 |
sfan5 |
Krock: your sentence sounds incorrect while it's completly correct |
18:46 |
sfan5 |
burningsvideo has nothing to do with video cards though |
18:46 |
sfan5 |
it just renders the thing |
18:46 |
Krock |
same with irrlicht's driver |
18:46 |
sfan5 |
displaying it is the job of the os |
19:17 |
|
fz72 joined #minetest-dev |
19:21 |
ShadowNinja |
sfan5: build-cleanup updated, and the man page looks much nicer now :-). I also combined the largely duplicate man pages and added the --worldname option. |
19:21 |
ShadowNinja |
I should also make --migrate not require --server, but I'll do that seperately. |
19:22 |
ShadowNinja |
I addressed all your comments except the endif() one, which I prefer as-is. |
19:23 |
ShadowNinja |
(And the RUN_IN_PLACE one) |
19:29 |
ShadowNinja |
sfan5: Good to merge now? |
19:30 |
sfan5 |
i haven't looked at it again |
19:52 |
|
ElectronLibre joined #minetest-dev |
19:56 |
ShadowNinja |
nrzkt: Your server's 503ing. |
19:58 |
rubenwardy |
sfan5, I remember a case where a user had to use software renderers as they had no other choice |
19:59 |
nrzkt |
i know ShadowNinja, i'm migrating apache, you need something ? |
20:00 |
ShadowNinja |
nrzkt: No, I was just checking a build. |
20:00 |
sfan5 |
rubenwardy: i wouldn't disable software drivers, just not have them in the menu |
20:00 |
sfan5 |
rubenwardy: also mesa has a way better software driver than irrlicht |
20:00 |
rubenwardy |
That's true |
20:01 |
nrzkt |
i need to finish PHP compilation in ~ 20 min to repair my migration from PHP 5.4 to 5.6 on FreeBSD but my repository decided to recompile every packet instead of mod_php5.6 only :( then the varnish cache is the only available atm |
20:02 |
|
Hunterz joined #minetest-dev |
20:05 |
|
Calinou joined #minetest-dev |
20:15 |
|
Calinou joined #minetest-dev |
20:24 |
ShadowNinja |
I'm getting this when attempting to load the server list now: *** Error in `bin/minetest': malloc(): memory corruption (fast): 0x00007fb648120f60 *** |
20:24 |
ShadowNinja |
The local list segfaults instead. |
20:25 |
|
Calinou joined #minetest-dev |
20:26 |
ShadowNinja |
Hmmm, it's somehow an issue with my branch. |
20:27 |
ShadowNinja |
Don'tcha love obscure bugs that show up in things that you didn't touch? </sarcasm> |
20:29 |
|
est31 joined #minetest-dev |
20:30 |
ShadowNinja |
est31: Does https://github.com/minetest/minetest/pull/2491 lower the loading menu clouds FPS? |
20:31 |
est31 |
no, it increases them |
20:31 |
ShadowNinja |
est31: O.K., good. |
20:32 |
est31 |
from [never during that specific phase] to [all 100ms when a whole percent of progress has been made] |
20:32 |
est31 |
I didn't know how the porting time functions behave e.g. on windows |
20:32 |
est31 |
and didnt want to call it ~10k times |
20:32 |
est31 |
so I only call it 100 times |
20:33 |
est31 |
(then better "all 100 ms" could have been implemented) |
20:33 |
est31 |
really best would be however to have different threads |
20:34 |
est31 |
but im not that good at irrlicht, and doubt that it supports the multithreaded access. |
20:34 |
ShadowNinja |
est31: Hmmm, you should use an FPS limiter and use wanted_fps. |
20:34 |
est31 |
fps is never larger than 10 |
20:34 |
ShadowNinja |
Yes, it seems like the client loading thread is the main thread. |
20:49 |
|
Tablet_One joined #minetest-dev |
20:58 |
ShadowNinja |
Apparently my distros JSONCPP is the problem. |
21:00 |
sfan5 |
i think we did not use linking systemd-wide jsoncpp because of that exact cause |
21:00 |
sfan5 |
s/cause/problem/ |
21:05 |
est31 |
what systemd has swallowed jsoncpp too |
21:08 |
est31 |
btw ShadowNinja satisfied with #2482 ? |
21:08 |
ShadowBot |
https://github.com/minetest/minetest/issues/2482 -- Fix bug that disabled game-based minetest.conf default setting by est31 |
21:09 |
|
MinetestForFun joined #minetest-dev |
21:14 |
ShadowNinja |
est31: Yep. |
21:22 |
nrzkt |
ShadowNinja: jenkins is back |
21:23 |
nrzkt |
Monday stats on Google play Store: 53 installations |
21:28 |
|
ElectronLibre left #minetest-dev |
21:29 |
nrzkt |
est31: #2490 is good ? if you can comment the PR i can't understand german |
21:29 |
ShadowBot |
https://github.com/minetest/minetest/issues/2490 -- Update and complete German translation and fix mistakes (second try) by Wuzzy2 |
21:30 |
|
Hunterz joined #minetest-dev |
21:38 |
ShadowNinja |
sfan5: I have this patch for the master server. Look O.K? http://sprunge.us/hVMW?diff |
21:45 |
ShadowNinja |
sfan5: And this too: http://sprunge.us/YWRg |
21:48 |
ShadowNinja |
Above with ping tweaked: http://sprunge.us/WLEe?diff |
21:48 |
|
Calinou joined #minetest-dev |
21:51 |
ShadowNinja |
Hmmm, I'll also make it add a penalty for servers with over, say, 16 players, because: 1. It'll start getting laggy with that many. 2. Other servers should get a chance, the top 5 shouldn't have half of the users. |
22:00 |
ShadowNinja |
http://sprunge.us/IXFj?diff |
22:00 |
ShadowNinja |
Might remove that guest penalty. |
22:03 |
Sokomine |
it is confusing that the order servers in the list are shown is constantly changing. and some very good servers are at the bottom, while crowded chaotic ones where building is rather pointless do get top positions |
22:03 |
Sokomine |
i've also wished for an ignore option for some very few servers |
22:03 |
VanessaE |
Sokomine: a player rating option added to servers.minetest.net would help that |
22:04 |
VanessaE |
(but that comes with its own problems like ballot stuffing) |
22:04 |
est31 |
yup |
22:04 |
Sokomine |
yes. rating isn't easy either |
22:05 |
ShadowNinja |
Rating requires a major change in the server list's backend. |
22:05 |
Sokomine |
you'd get lots of excited kids who think that a pile of bones around spawn is all there could ever be... |
22:05 |
VanessaE |
ShadowNinja: that too. |
22:05 |
ShadowNinja |
It'll have to use an SQL database or so to store the servers persistently. |
22:06 |
ShadowNinja |
Sokomine: I've set it so that more than 16 clients is not beneficial to your score. |
22:06 |
est31 |
to start with, servers need unique way to identify them |
22:07 |
ShadowNinja |
est31: IP & port is used currently. |
22:07 |
VanessaE |
est31: hash the server's name field and IP? |
22:07 |
est31 |
both name and ip can change |
22:08 |
est31 |
best is we also do something that might work in the future with encryption |
22:08 |
VanessaE |
true, but I wouldn't think they'd change particularly often |
22:08 |
Sokomine |
i've always wished for a tiny picture of the server (or its spawn) provided by the server so that they can be identified more easily |
22:08 |
VanessaE |
besides, penalize a server that uses dynamic IPs or where they can't make up their mind for their name |
22:08 |
ShadowNinja |
This discussion should probably go to #minetest. |
22:08 |
VanessaE |
(i.e. always start with a ranking of 0 or neutral or some such) |
22:09 |
Sokomine |
admittedly, a local blacklist is rarely needed. it's just sometimes that servers do not match up to expectations, and expectations differ so much that a particular server might not fit at all |
22:10 |
Sokomine |
shadowninja: good idea |
22:10 |
VanessaE |
ShadowNinja: no real point to move the conversation if there's nothing else being discussed here :P |
22:11 |
est31 |
most players dont scroll |
22:11 |
est31 |
(so yes) |
22:11 |
VanessaE |
ok ok #minetest |
22:13 |
|
Calinou joined #minetest-dev |
22:19 |
|
Calinou joined #minetest-dev |
22:22 |
|
vlad_ joined #minetest-dev |
22:23 |
|
vlad_ left #minetest-dev |
22:44 |
ShadowNinja |
Pushing master-server IPv6 support. |
22:53 |
|
proller joined #minetest-dev |
23:24 |
|
Ritchie joined #minetest-dev |
23:42 |
|
proller joined #minetest-dev |