Time |
Nick |
Message |
00:05 |
|
prozacgod joined #minetest-dev |
01:07 |
|
OldCoder joined #minetest-dev |
02:07 |
|
Aaron1011 joined #minetest-dev |
02:07 |
|
Robby joined #minetest-dev |
02:12 |
|
daswort joined #minetest-dev |
02:54 |
hmmmm |
i should probably commit some stuff |
02:54 |
hmmmm |
:| |
02:55 |
Zeno` |
ok |
02:55 |
Zeno` |
I love this: ((hp == 0) != (oldhp == 0)) |
02:56 |
hmmmm |
heh, that's xor logi |
02:56 |
hmmmm |
logic* |
02:56 |
Zeno` |
boolean voodoo |
02:56 |
hmmmm |
not quite, it has its place |
02:57 |
hmmmm |
but that's a poor use of it |
02:57 |
Zeno` |
lol, I'm just not sure the author meant it or not |
02:57 |
Zeno` |
I just found it funny for some reason |
02:58 |
hmmmm |
if there was a change between the hp being zero and nonzero |
02:58 |
hmmmm |
not necessarily interested if there was a change in the HP itself |
02:58 |
hmmmm |
so basically if there was a change in the player's life status |
02:58 |
Zeno` |
yeah |
02:58 |
hmmmm |
probably would be better as: #define IS_PLAYER_DEAD(player) ((player)->hp == 0) |
02:58 |
hmmmm |
or something |
03:00 |
Zeno` |
too much typing |
03:00 |
hmmmm |
bool player_is_dead = hp == 0; |
03:00 |
hmmmm |
bool player_was_dead = oldhp == 0; |
03:01 |
hmmmm |
if (player_is_dead != player_was_dead) { ... this is probably the ideal version |
03:01 |
Zeno` |
why not just xor it? |
03:01 |
Zeno` |
the obvious way, I mean |
03:02 |
hmmmm |
because that assumes 0 is always the dead hp |
03:02 |
Zeno` |
well yeah |
03:02 |
Zeno` |
but so does the current way |
03:02 |
hmmmm |
so #define ACTIVEOBJECT_HP_DEAD 0 |
03:02 |
Zeno` |
I think there has been an is_dead() function added, will have to look |
03:02 |
hmmmm |
ahh |
03:03 |
hmmmm |
i think we beat this issue to death |
03:03 |
Zeno` |
I'm only looking at diffs atm, so not seeing the whole issue |
03:03 |
Zeno` |
wow! you're funnier than I am |
03:03 |
Zeno` |
:D |
03:04 |
Zeno` |
while bisecting that issue, btw, I had to do full cleans and cmake's every (@$*(@*4 step |
03:05 |
Zeno` |
without rm'ing my cmake dir and re-running cmake and building everything from scratch the issue did not actually show up |
03:05 |
Zeno` |
#2501 |
03:05 |
ShadowBot |
https://github.com/minetest/minetest/issues/2501 -- creative & damage disabled: tnt deals damage and kils player |
03:05 |
Zeno` |
so now I need to write a script for bisects :( |
03:08 |
Zeno` |
brb |
03:08 |
hmmmm |
https://github.com/kwolekr/minetest/commit/a2f05cf1a16f44faba82b56f906d6cd3fa805c32 |
03:09 |
hmmmm |
do you think i should add some kind of option to force the filename to be relative |
03:10 |
hmmmm |
i'm still unsure of how this suddenly 'broke'... people didn't complain about it for all the years that schematics existed |
03:13 |
Zeno` |
I actually link that people didn't notice because they noticed it didn't work, realised it worked with full paths and discussed it together on IRC (or wherever they discuss these things) and just never reported it |
03:13 |
Zeno` |
i.e. if it was specified in the documentation that a full path was required I doubt anyone would have ever thought it was a bug |
03:13 |
hmmmm |
I'm going to merge #2403 unless anybody has objections |
03:13 |
ShadowBot |
https://github.com/minetest/minetest/issues/2403 -- Fix freetype detection by AMDmi3 |
03:14 |
Zeno` |
we've discussed that several times |
03:14 |
hmmmm |
we have? |
03:14 |
Zeno` |
not me and you |
03:14 |
hmmmm |
well |
03:14 |
Zeno` |
but I have no problem with it |
03:14 |
hmmmm |
freetype is broken on freebsd, I don't know how nerzhul got it working on his jenkins build but |
03:14 |
Zeno` |
est asked on #cmake about the bug referenced |
03:14 |
hmmmm |
this fixes the problem for me |
03:15 |
Zeno` |
well it works on linux |
03:15 |
Zeno` |
(after the fix I mean) |
03:15 |
hmmmm |
yeah I'm mostly afraid of breaking other platforms in the process |
03:15 |
Zeno` |
and MSCV still uses cmake so ... hmm |
03:15 |
Zeno` |
I think it uses cmake anyway... mingw does at least |
03:16 |
hmmmm |
well :) MSVC doesn't use pkgconfig |
03:16 |
hmmmm |
at least I think |
03:16 |
hmmmm |
you can never be too sure these days |
03:16 |
Zeno` |
well, maybe merge it and then we fix it for Windows if it's broken? |
03:16 |
Zeno` |
seems better to have a workaround for the only platform it doesn't work on than the other way around |
03:17 |
hmmmm |
I should probably set up test environments for all OSes someday |
03:17 |
Zeno` |
how can we do that for msvc? |
03:18 |
hmmmm |
beats me. |
03:18 |
Zeno` |
:D |
03:18 |
hmmmm |
wow CMake looks like a ghetto |
03:18 |
hmmmm |
look at those issues |
03:18 |
hmmmm |
http://www.cmake.org/Bug/view.php?id=14601 |
03:18 |
hmmmm |
http://www.cmake.org/Bug/view.php?id=13959 |
03:18 |
Zeno` |
I really think the bug referenced has been fixed but not updated |
03:19 |
Zeno` |
either that or freetype has somehow changed |
03:19 |
hmmmm |
hopefully |
03:19 |
hmmmm |
it seems like what's effected is OS X? |
03:19 |
hmmmm |
affected |
03:20 |
Zeno` |
see: https://github.com/minetest/minetest/commit/cb7bb736c70afa7e7dfc90545ad52992a35dc082 |
03:20 |
Zeno` |
^ is there any way to quickly find the PR related to that? |
03:21 |
Zeno` |
I've always wanted to ask this, and this is a good example |
03:21 |
hmmmm |
doesn't seem so |
03:21 |
Zeno` |
pity |
03:21 |
Zeno` |
anyway, that was question was a bit tangential |
03:21 |
hmmmm |
I guess if there's a problem platform after merging 2403 we can re-add the workaround for that specific platform |
03:21 |
hmmmm |
i mean it doesn't make sense to fix one and break another |
03:22 |
hmmmm |
that said, our cmake file has a lot of problems with it. frankly i don't understand how it functions. |
03:22 |
Zeno` |
yeah that's what I meant by my earlier comment |
03:22 |
hmmmm |
oh |
03:22 |
Zeno` |
i.e. if it causes a problem make a specific case for whatever OS breaks |
03:22 |
Zeno` |
I can probably test on OSX later btw |
03:23 |
hmmmm |
cool |
03:23 |
hmmmm |
I have an OSX vm actually, that i had set up for minetesting |
03:23 |
Zeno` |
I'll have to set up the dev environment but I've been meaning to do that for ages anyway |
03:23 |
Zeno` |
i have OSX in VM as well for testing another app |
03:24 |
Zeno` |
just haven't gotten around to installing dev stuff because my friend compiles for me, but I should do it |
03:25 |
hmmmm |
https://github.com/AMDmi3/minetest/commit/6d72aaee8daa9e92501f8bece1536c78342bf287 |
03:25 |
hmmmm |
should we merge this too? there was never a PR for it |
03:25 |
|
paramat joined #minetest-dev |
03:27 |
Zeno` |
yeah I think so |
03:27 |
Zeno` |
those things *should* be configurable |
03:29 |
Zeno` |
I suspect package maintainers must already have patches for that if their package puts things in non-standard or system-specific directories but *shrug* |
03:29 |
* Zeno` |
glares at paramat |
03:30 |
Zeno` |
heh, I suppose it's not your fault the bisect took so long. I shall forgive you |
03:30 |
paramat |
*sigh* hmmmmm i finally understand how you feel about nerzhul =) |
03:31 |
hmmmm |
what |
03:33 |
paramat |
https://github.com/minetest/minetest/issues/2524#issuecomment-90756393 |
03:33 |
hmmmm |
well, i did approve it |
03:33 |
hmmmm |
it doesn't *damage* anything |
03:34 |
paramat |
lol |
03:34 |
hmmmm |
as long as he's happy with his changes i suppose it's okay |
03:34 |
hmmmm |
i'm really tired of conflict |
03:35 |
hmmmm |
oh I read the wrong comment because the page didn't scroll down the whole way |
03:35 |
|
Fritigern joined #minetest-dev |
03:35 |
hmmmm |
yes it's very easy to reproduce |
03:37 |
Zeno` |
hmmmm you're full of puns today |
03:37 |
hmmmm |
i didn't make any puns there |
03:37 |
Zeno` |
didn't say you did |
03:38 |
Zeno` |
ok, I'm going to break some stuff |
03:38 |
Zeno` |
sick of bisecting now |
03:39 |
|
Hunterz joined #minetest-dev |
03:41 |
paramat |
then when i stand up to nerzhul, a newbie, i get talked down to as if i'm nothing (charlie brown *sigh*) |
03:42 |
hmmmm |
do you guys just want to revert all nerzhul commits |
03:42 |
hmmmm |
lol |
03:42 |
hmmmm |
I guess that PR of mine wasn't so horrible after all |
03:42 |
* VanessaE |
shudders |
03:42 |
VanessaE |
scary thing is I thought about this earlier todayu |
03:42 |
VanessaE |
-u |
03:43 |
VanessaE |
somehow, I got the feeling someone was gonna bring that up. |
03:43 |
hmmmm |
how could you not |
03:43 |
hmmmm |
all major bugs right now are the result of one person |
03:43 |
VanessaE |
I know |
03:43 |
VanessaE |
or it certainly looks that way |
03:43 |
paramat |
nah i don't =) |
03:44 |
Zeno` |
it's kind of hard to revert that much stuff :P |
03:44 |
hmmmm |
well yeah |
03:44 |
VanessaE |
well |
03:44 |
hmmmm |
there's no going back now |
03:44 |
VanessaE |
honestly, |
03:44 |
VanessaE |
I had considered the notion of doing a hard reset. |
03:44 |
Zeno` |
yikes |
03:44 |
hmmmm |
reset to what |
03:44 |
VanessaE |
all the way back to whatever is decided as "the beginning" |
03:45 |
hmmmm |
oh |
03:45 |
Zeno` |
version 0.0.1? |
03:45 |
Zeno` |
ok |
03:45 |
hmmmm |
yeah that's how I pretty much made my PR lol |
03:45 |
VanessaE |
not that far back to twit :P |
03:45 |
VanessaE |
and then re-applying everything on top of that state, one commit at a time |
03:45 |
VanessaE |
hmmmm: yeah, about the same as your commit I guess, but even more brute-force |
03:45 |
hmmmm |
it's impossible to do an actual revert |
03:45 |
hmmmm |
trust me, i tried it |
03:45 |
Zeno` |
reset hard and push -f |
03:46 |
Zeno` |
lol |
03:46 |
Zeno` |
I think we'd lose a lot of work though :P |
03:46 |
hmmmm |
shadowninja made freetype required |
03:46 |
hmmmm |
is this intentional? |
03:46 |
ShadowNinja |
hmmmm: No. |
03:46 |
VanessaE |
I see no reason not to depend on it |
03:47 |
hmmmm |
okay |
03:47 |
ShadowNinja |
hmmmm: It should be auto-detected. |
03:48 |
hmmmm |
oh nevermind |
03:49 |
hmmmm |
actually you did the opposite, you fixed it from being required |
03:55 |
|
prozacgod joined #minetest-dev |
04:02 |
paramat |
i do feel the network changes should require review and approval, perhaps with nerz not being a core dev, but of course that's more work for other devs |
04:08 |
hmmmm |
sooo |
04:08 |
hmmmm |
no comments on https://github.com/kwolekr/minetest/commit/a2f05cf1a16f44faba82b56f906d6cd3fa805c32 ? |
04:09 |
hmmmm |
nobody ever comments on or reviews my commits |
04:09 |
* paramat |
looks |
04:12 |
paramat |
that's because we foolishly trust you ;) |
04:12 |
Zeno` |
I reviewed something of yours just the other day! |
04:13 |
Zeno` |
some weird random number thing |
04:13 |
hmmmm |
that was a couple weeks ago |
04:13 |
Zeno` |
yeah |
04:13 |
hmmmm |
should there be an option to use the literal path, regardless of whether or not it's relative? |
04:13 |
Zeno` |
the other day a few weeks ago |
04:13 |
hmmmm |
I'm thinking maybe like add a weird character to the beginning that should never be in a path such as $ |
04:14 |
hmmmm |
filename = "$LITERAL$" + filepath, |
04:14 |
hmmmm |
s/+/../ |
04:15 |
Zeno` |
lua_getfield(L, LUA_REGISTRYINDEX, "current_modname"); |
04:15 |
Zeno` |
oops sorry... meant to paste it in my notes |
04:16 |
paramat |
i like the look of your work on registering schematics. for sapling growth i will need to detect mapgen and then either spawn a lua tree in mgv6 or spawn a schematic tree in v5/v7. perhaps registered schematics will allow that? |
04:16 |
hmmmm |
ohh shit |
04:16 |
Zeno` |
hmmmm, so all those members in ModApiBase now have to be public? |
04:17 |
hmmmm |
yeah why not |
04:17 |
hmmmm |
i can't articulate a reason why they should be private |
04:17 |
hmmmm |
paramat: yes sure |
04:18 |
paramat |
good |
04:18 |
Zeno` |
surely nothing needs them apart from subclasses |
04:18 |
hmmmm |
this should also work inside on_mapgen_init() callbacks since it's actually called directly in the context of mod initialization anymore |
04:18 |
Zeno` |
but anyway, lgtm |
04:18 |
hmmmm |
Zeno`, helper functions do |
04:19 |
hmmmm |
I should add documentation on this to lua_api.txt |
04:19 |
Zeno` |
which helper functions? |
04:19 |
Zeno` |
oh nvm |
04:19 |
hmmmm |
load_schematic etc. |
04:20 |
hmmmm |
they all have a lua_State, they don't have a Server, and they shouldn't be given a Server |
04:20 |
Zeno` |
well, getCurrentModPath() is fine because all it does it return a copy of a string |
04:20 |
hmmmm |
if you were to move those helper functions into ModApiMapgen, then you need to declare them in the header file |
04:20 |
hmmmm |
and that's nasty |
04:21 |
hmmmm |
it requires lots of forward declarations that otherwise would be totally unnecessary, and it'd also require #include <set> in the header |
04:21 |
paramat |
should default mod tree schems be stored as files or registered from lua tables? mtgame team prefers files for compactness |
04:21 |
hmmmm |
since it's a pain in the butthole to forward declare templated classes |
04:22 |
hmmmm |
they should be files. |
04:22 |
hmmmm |
really it's not going to matter once I write the convert-to-lua-table function |
04:23 |
Zeno` |
I guess what I'm saying is that they were protected before without having all these fwd decls weren't they? |
04:24 |
Zeno` |
or is this for register function |
04:24 |
hmmmm |
errrr |
04:24 |
hmmmm |
the helper functions are not part of any class, adding them as static methods to ModApiMapgen so they gain access to protected ModApiBase members would require declaring those function prototypes in the l_mapgen.h header, which requires pulling in a lot more stuff |
04:25 |
Zeno` |
ok I see now |
04:25 |
hmmmm |
and the simplest way to deal with the mess is to change the protection which was quite arbitrary to begin with |
04:25 |
Zeno` |
yep |
04:26 |
paramat |
great, lua table <-> file conversion is what i need. these are the final issues holding up the full biome system |
04:26 |
hmmmm |
I need to come up with a smart way of linking different managers together |
04:27 |
kahrl_ |
handcuffs? |
04:27 |
hmmmm |
SchematicManager needs to access DecorationManager, for example |
04:27 |
hmmmm |
BiomeManager needs to access OreManager and DecorationManager |
04:27 |
hmmmm |
this is going to be so messy |
04:29 |
kahrl_ |
I guess you don't want to do it similarly to IGameDef? |
04:29 |
hmmmm |
huh how does IGameDef do it? |
04:30 |
kahrl_ |
just a class with members and accessors for all the various managers |
04:30 |
hmmmm |
oh I can already do that |
04:30 |
hmmmm |
I think it'd set a bad precedent linking everything together |
04:30 |
hmmmm |
the different managers are supposed to be discrete, not spaghetti |
04:32 |
hmmmm |
how do you change the author/email address on a commit? |
04:32 |
ShadowNinja |
So, this is what I did to JThread: https://github.com/minetest/minetest/compare/minetest:master...ShadowNinja:cleanup-threading |
04:33 |
ShadowNinja |
It also adds an Atomic class, which may be useful for speed in some places (didn't check though). |
04:33 |
kahrl_ |
git commit --amend --author="Rick <rickminetest.net>" or something like that |
04:33 |
hmmmm |
oh that's easy |
04:33 |
hmmmm |
i was expecting a mess |
04:53 |
|
paramat left #minetest-dev |
05:10 |
Zeno` |
well, the player damage is obviously very easy to fix. The questions are: a) are there legitimate reasons for the player to be damaged if enable_damage == false; b) Should the HP packet still be sent by the server? or should the client just ignore the CE_PLAYER_DAMAGE event? |
05:10 |
Zeno` |
Related to a) is "healing" a valid thing to happen if enable_damage == false? |
05:11 |
Zeno` |
or "is dead" for that matter |
05:12 |
VanessaE |
imho, either hp should be absolutely meaningless when damage is disabled, or hp should be allowed to be increased, but never decreased. |
05:15 |
Zeno` |
well is there a use case where a mod (a fairly big one) would take over the role of player damage and healing? (i.e. and require enable_damage = false) |
05:16 |
VanessaE |
I could see a whole *game* doing that, |
05:16 |
Zeno` |
yeah, game then |
05:16 |
VanessaE |
but if that's the case, why not just enable damage and allow for some hooks into the damage system? |
05:16 |
VanessaE |
e.g. on_hp_change, on_hp_decrease, etc. |
05:16 |
Zeno` |
not sure, that's why I'm asking |
05:18 |
Zeno` |
There's a few places where it could be "fixed" I guess is what I'm getting at |
05:18 |
hmmmm |
well |
05:18 |
Zeno` |
few different places* |
05:18 |
hmmmm |
I think nerzhul was correct that set_hp and doing damage should be two different things |
05:19 |
hmmmm |
but here and now isn't the time and place to make the distinction |
05:19 |
VanessaE |
well I dunno about that |
05:19 |
hmmmm |
this is logic that should be in lua |
05:19 |
hmmmm |
not the core |
05:19 |
hmmmm |
when client side modding comes around, this is a prime target for moving to lua |
05:20 |
Zeno` |
that's what I'm getting at; it can be done in several places in core and also in Lua (builtin) and the implications are very different |
05:20 |
VanessaE |
classically, HP is a measure of your overall health, or so I thought. |
05:20 |
VanessaE |
you take damage by losing HP |
05:20 |
hmmmm |
having HP doesn't make sense for certain kinds of entities |
05:20 |
hmmmm |
erm, objects |
05:21 |
VanessaE |
well for something like a dropped block of dirt, yeah |
05:21 |
hmmmm |
I really do think the entirity of "HP" should be a lua thing |
05:21 |
Zeno` |
yes but setting an absolute HP (setHP) is just as valid as a relative hp (damage or heal) |
05:21 |
hmmmm |
then when the "HP" which only the lua side knows about reaches 0, it causes the client to perform a screen effect of making it red and then doing some server RPC |
05:23 |
Zeno` |
the red screen is not only when HP is zero though :p |
05:26 |
Zeno` |
the hp system probably needs rethinking at some point anyway |
05:27 |
Zeno` |
there are several size mismatches in the code as well (u8 vs u16 vs s16 O.o) |
05:27 |
hmmmm |
you know what i mean |
05:27 |
hmmmm |
it's u8 over the network, right? |
05:28 |
Zeno` |
over the network, yeah |
05:29 |
hmmmm |
i vote for normalizing it to u16 (aside from the network for now) |
05:31 |
Zeno` |
yes |
05:38 |
hmmmm |
how does relative HP setting work? |
05:38 |
hmmmm |
i don't think you can, currently |
05:38 |
VanessaE |
you can't. |
05:38 |
VanessaE |
you have to get_hp, add or subtract as needed, then set_hp the result. |
05:39 |
hmmmm |
if *I* were designing set_hp(), I would make the parameters set_hp(uint16 hp_amount, ActionType action=HP_ACTION_SET) (where action can be one of HP_ACTION_SET, HP_ACTION_INCREASE, HP_ACTION_DECREASE) |
05:41 |
hmmmm |
I thought set_hp() was signed in some cases to allow for relative setting |
05:41 |
VanessaE |
I think I'd have allowed the action type to be absolute or relative, rather than set, increate or decrease |
05:42 |
hmmmm |
then you'd have to make the first parameter signed |
05:42 |
VanessaE |
yeah |
05:42 |
hmmmm |
so then really it should be set_hp() and modify_hp() |
05:42 |
VanessaE |
nah, |
05:43 |
VanessaE |
better to use set_hp and assume an absolute, unsigned/positive value if there's no second param supplied from lua |
05:43 |
hmmmm |
yeah |
05:44 |
hmmmm |
set_hp() would be absolute, unsigned, then modify_hp() would be relative, signed |
05:44 |
hmmmm |
i don't know. people are okay with the way it is now. don't fix what isn't broken. |
05:45 |
VanessaE |
well I'm saying you could do both with the set_hp() call alone. set_hp(val) gets treated like it is now, while set_hp(val, flag) gets treated as a relative value if flag is true |
05:45 |
Zeno` |
yeah this is future talk. I don't mind future talk though |
05:45 |
|
Hunterz joined #minetest-dev |
05:45 |
Zeno` |
I guess for the bug to be fixed it doesn't matter which location it is fixed at for the time being |
05:46 |
hmmmm |
honestly |
05:46 |
Zeno` |
the event just has to be not sent |
05:46 |
hmmmm |
I'd rather leave the client-side lua interface for these "soft" items to the modders |
05:49 |
Zeno` |
probably the easiest thing would be to just handle it in SendPlayerHPOrDie() or maybe Server::SendPlayerHP() |
05:49 |
Zeno` |
whatever :) |
05:50 |
Zeno` |
DiePlayer |
05:50 |
Zeno` |
surely we can come up with better names lol |
05:50 |
|
selat joined #minetest-dev |
05:51 |
VanessaE |
KillPlayerWithFire |
05:51 |
VanessaE |
:) |
05:51 |
Zeno` |
DiePlayerNow |
05:53 |
VanessaE |
let's just make sure that whatever is done doesn't cause another death-loop like before :P |
05:53 |
Zeno` |
why not? it's fun |
05:58 |
|
selat joined #minetest-dev |
06:00 |
|
leat joined #minetest-dev |
06:26 |
|
Krock joined #minetest-dev |
06:27 |
|
denis joined #minetest-dev |
06:34 |
sofar |
VanessaE: if you have a sec, what are the export option you use in blender? |
06:34 |
|
denis joined #minetest-dev |
06:50 |
|
selat joined #minetest-dev |
06:57 |
|
selat joined #minetest-dev |
07:10 |
hmmmm |
oh deary |
07:10 |
hmmmm |
paramat: there are some problems with what characters a lua string can contain |
07:10 |
hmmmm |
how would you alternatively like the serialized lua table returned? written to a temp file perhaps? |
07:14 |
hmmmm |
actually nevermind, that only is a problem with long format strings |
07:16 |
|
kilbith joined #minetest-dev |
07:28 |
|
Darcidride joined #minetest-dev |
07:30 |
|
jin_xi joined #minetest-dev |
07:30 |
kilbith |
i regret there is no function ignore on github... |
07:30 |
kilbith |
for some reason, github has attracted ppl with zero taste, pawing the ground on each novelty and don't know at all on what they're opening their mouth |
07:31 |
kilbith |
(the kids in particular) |
07:38 |
hmmmm |
what do you mean |
07:38 |
hmmmm |
if there's a problem that needs moderating, we can certainly do that |
07:39 |
kilbith |
i don't think so, github is relatively not fool-proof enough |
07:39 |
kilbith |
you can delete comments but not prevent someone to comment |
07:40 |
hmmmm |
it hasn't been enough of a problem yet. i haven't seen any abuse personally |
07:42 |
kilbith |
just some kids that confuse github with a place for chit-chat |
07:42 |
|
Calinou joined #minetest-dev |
07:43 |
kilbith |
(mainly on the _game repo) |
07:43 |
hmmmm |
not my problem, i don't bother with _game |
07:51 |
Etzos |
You can prevent someone from commenting. But it will block them from doing basically anything on any repos owned by the person who does the block. |
08:17 |
|
selat joined #minetest-dev |
08:38 |
|
FR^2 joined #minetest-dev |
08:42 |
|
Amaz joined #minetest-dev |
09:00 |
|
eeew joined #minetest-dev |
09:04 |
|
cib0 joined #minetest-dev |
09:26 |
|
Darcidride joined #minetest-dev |
10:48 |
|
Player_2 joined #minetest-dev |
10:55 |
|
denis_ joined #minetest-dev |
10:59 |
|
Krock joined #minetest-dev |
11:14 |
|
cib0 joined #minetest-dev |
11:41 |
|
Amaz joined #minetest-dev |
11:51 |
|
roniz joined #minetest-dev |
11:52 |
|
proller joined #minetest-dev |
12:26 |
|
proller joined #minetest-dev |
12:32 |
|
cib0 joined #minetest-dev |
12:43 |
|
toctoc joined #minetest-dev |
12:44 |
|
nrzkt joined #minetest-dev |
12:45 |
nrzkt |
~tell Zeno`: you are right there is something wrong with the HP system. |
12:45 |
ShadowBot |
nrzkt: O.K. |
12:46 |
nrzkt |
~tell Zeno`: the proble is more important than my commit, this is the HP design, and also the mismatch types. We should use signed values. s16 is a good approach but we could use s23 |
12:46 |
ShadowBot |
nrzkt: O.K. |
12:47 |
nrzkt |
~tell Zeno`: s32, then leveling mods can use greater values for HP systems to have for example bosses or huge mobs if they want |
12:47 |
ShadowBot |
nrzkt: O.K. |
12:49 |
nrzkt |
~tell paramat: instead of trolling and telling me to stop the things i do on master (in fact not anything else than fixing bugs and talking with community on existing bugs), maybe you can look at issues and help fixing it :) |
12:49 |
ShadowBot |
nrzkt: O.K. |
12:56 |
|
AnotherBrick joined #minetest-dev |
13:13 |
|
selat joined #minetest-dev |
13:14 |
|
Zeno` joined #minetest-dev |
13:17 |
Zeno` |
nrzkt ~tell Zeno`: you are right there is something wrong with the HP system. |
13:17 |
Zeno` |
I guess ShadowBot does not like me because I don't get these things |
13:18 |
Zeno` |
anyway instead of complaining about the HP system why don't we fix the bug |
13:18 |
Zeno` |
I could do it I guess |
13:43 |
Zeno` |
except the event is sent twice |
13:43 |
Zeno` |
ugh |
13:47 |
|
kilbith joined #minetest-dev |
13:53 |
Zeno` |
this is much worse than I first thought |
13:53 |
Zeno` |
if the server is using enable_damage = true and the client is using enable_damage = false then damage is limited |
13:54 |
Zeno` |
if both are true then damage happens twice |
13:54 |
Zeno` |
(I am not using simple single player, but full client/server test) |
13:56 |
Zeno` |
this doesn't make sense |
14:00 |
|
kilbith joined #minetest-dev |
14:05 |
|
proller joined #minetest-dev |
14:07 |
Zeno` |
Evil will always triumph because good is dumb |
14:32 |
|
cib0 joined #minetest-dev |
14:53 |
|
hmmmm joined #minetest-dev |
15:27 |
|
hmmmm joined #minetest-dev |
16:10 |
|
jin_xi joined #minetest-dev |
16:21 |
|
ud1 joined #minetest-dev |
16:25 |
ShadowNinja |
~tell nrzkt A colon isn't part of the tell syntax, your messages were queued for "Zeno`:" and "paramat:", which are unvalid nicknames. |
16:25 |
ShadowBot |
ShadowNinja: O.K. |
16:25 |
|
Hunterz joined #minetest-dev |
16:26 |
hmmmm |
~tell my_wife I love her |
16:26 |
ShadowBot |
hmmmm: O.K. |
16:26 |
* hmmmm |
dies |
16:28 |
ShadowNinja |
WTF: https://travis-ci.org/minetest/minetest/jobs/57668269 PathIsRelative isn't even mentioned throughout the source tree, and I certainly didn't touch it. |
16:33 |
hmmmm |
that's my fault |
16:34 |
hmmmm |
it looks like i failed to link against Shlwapi.lib after using that |
16:35 |
|
celeron55 joined #minetest-dev |
16:36 |
hmmmm |
looking at CMakeFiles.txt:193 - how does minetest actually link on msvc? unless I'm totally mistaken, ws2_32.lib isn't being linked against |
16:37 |
|
SudoAptGetPlay joined #minetest-dev |
16:37 |
|
ElectronLibre joined #minetest-dev |
16:37 |
|
cib0 joined #minetest-dev |
16:41 |
ShadowNinja |
I found src/socket.cpp: #pragma comment(lib, "ws2_32.lib") src/CMakeLists.txt: set(PLATFORM_LIBS ws2_32.lib) |
16:41 |
ShadowNinja |
hmmmm: So, uh, how do I fix this? |
16:41 |
* hmmmm |
scratches head |
16:42 |
hmmmm |
remove the pragma from socket.cpp, remove the else() from if(MSVC), add shlwapi.lib |
16:42 |
hmmmm |
ShadowNinja, could you change the usage of PathIsRelative to PathIsRelativeA while you're at it? |
16:42 |
hmmmm |
thanx |
16:43 |
hmmmm |
lol I'll just do it |
16:43 |
ShadowNinja |
hmmmm: There is no usage of PathIsRelative* ! And it is the *A variant. |
16:43 |
|
Robert_Zenz joined #minetest-dev |
16:44 |
hmmmm |
https://github.com/minetest/minetest/commit/0df736173e60df06a7a7162c285b9c5731a07c20#diff-fec891646747a748bff916b31cef4733R105 ???? |
16:46 |
ShadowNinja |
hmmmm: Not in my branch. grep -r PathIs src returns nothing... I guess Travis is merging the PR first -- it didn't do that before. |
16:46 |
ShadowNinja |
Or maybe it auto-detects if a merge is possible and does it if so. |
16:46 |
hmmmm |
while we're on the topic of A |
16:47 |
|
Robert_Zenz joined #minetest-dev |
16:47 |
hmmmm |
whenever we use a windows api, should it be the A variant? |
16:47 |
hmmmm |
i mean, in theory it'll cause a compile time error anyway |
16:48 |
ShadowNinja |
hmmmm: What's the difference? |
16:48 |
hmmmm |
if i recall, there are a couple instances of apis where they take a void * and so either std::string::c_str() or std::wstring::c_str() would work, and the error would go undetected (if the generated project had UNICODE set somehow) |
16:49 |
hmmmm |
ShadowNinja, A versions are ASCII only, whereas W versions are unicode |
16:50 |
ShadowNinja |
hmmmm: Nah, it should use unicode variants. We've already had one bug report for non-ascii paths failing and I think that was fixed. |
16:50 |
hmmmm |
lol. |
16:50 |
hmmmm |
it's not using unicode paths on windows |
16:50 |
ShadowNinja |
Well, it probably should. |
16:51 |
hmmmm |
I agree that paths should be unicode, but they aren't in practice. otherwise I'd see all the file path apis using std::wstring and not std::string |
16:51 |
hmmmm |
;-) |
16:51 |
hmmmm |
maybe that could be something TODO. it's low priority for me, though |
16:51 |
ShadowNinja |
hmmmm: No, std::string can store UTF-8. |
16:52 |
hmmmm |
perhaps it can, but windows files apis do not treat the string as utf-8. |
16:52 |
hmmmm |
so then it's clear what needs to be done, right? |
16:53 |
hmmmm |
change all the usages of windows file apis to the W variant, and pass along the string converted from utf-8 to wide |
16:54 |
hmmmm |
that's MultiByteToWideChar() but i think there's already a utility function which for this |
16:54 |
|
Amaz left #minetest-dev |
16:55 |
hmmmm |
ShadowNinja, try building windows with this commit: https://github.com/kwolekr/minetest/commit/11925bb5fb3005a14b6d0a64932b17326d175efa |
16:57 |
hmmmm |
sorry, this one: https://github.com/kwolekr/minetest/commit/c758fd73ff0b95ca27f833f8aefd0345edd71fcc |
17:00 |
|
kilbith joined #minetest-dev |
17:05 |
* Krock |
is interested and gets the diff |
17:12 |
Krock |
Uhm. filesys.obj : error LNK2001: inresolved external Symbol "__imp__PathIsRelativeA4". |
17:12 |
Krock |
*un |
17:19 |
Krock |
Nvm. deleting filesys.obj and re-compiling helped |
17:22 |
Krock |
hmmmm, MSVC build works. Have you got an example code to test this change? |
17:23 |
hmmmm |
sure: it compiles |
17:24 |
hmmmm |
so, pushing c758fd7 soon, any comments or concerns? |
17:24 |
Krock |
Whoops. Looked on the wrong commit. In the new one aren't any important changes |
17:25 |
Krock |
You've got green light from the MSVC side. |
17:25 |
hmmmm |
okay good =] that's what it was supposed to fix |
17:40 |
ShadowNinja |
hmmmm: LGTM. |
17:50 |
|
SopaXorzTaker joined #minetest-dev |
17:51 |
|
ElectronLibre joined #minetest-dev |
17:52 |
hmmmm |
you're too late! |
18:03 |
ShadowNinja |
hmmmm: Care to check #2604 and/or #2613? |
18:03 |
ShadowBot |
https://github.com/minetest/minetest/issues/2604 -- Add support for multiple listen addesses by ShadowNinja |
18:03 |
ShadowBot |
https://github.com/minetest/minetest/issues/2613 -- Clean up threading by ShadowNinja |
18:06 |
ShadowNinja |
Hah. if (peer->getAddress()) {} else { bool invalid_address = true; if (invalid_address) {...} } |
18:09 |
|
JeDa joined #minetest-dev |
18:26 |
|
sockbat joined #minetest-dev |
18:38 |
|
cib_ joined #minetest-dev |
19:06 |
hmmmm |
wait |
19:06 |
hmmmm |
isn't to_string a C++11 thing? |
19:11 |
hmmmm |
+if (!udp_peer) continue; |
19:11 |
hmmmm |
bad |
19:11 |
hmmmm |
why are you hiding the block body? :/ |
19:11 |
hmmmm |
if (!udp_peer) |
19:11 |
hmmmm |
continue; |
19:12 |
hmmmm |
https://www.kernel.org/doc/Documentation/CodingStyle "Don't put multiple statements on a single line unless you have |
19:12 |
hmmmm |
something to hide:" |
19:13 |
hmmmm |
there's a lot there |
19:13 |
hmmmm |
i neeed more time to review it |
19:48 |
|
OldCoder joined #minetest-dev |
19:49 |
ShadowNinja |
hmmmm: I prefer to put really short conditionals on one line because it's clearer that you have to add braces if you want to add another statement. That's not a huge issue though. |
19:52 |
ShadowNinja |
I just pushed some tweaks (--listen overrides --port instead of the other way around, --port only tries to listen on :: if IPv6 is enabled, sockets_init/sockets_cleanup/sockets_initialized isn't compiled in at all on non-windows and is all handled internally instead of by main.cpp:init_common()) |
20:02 |
|
est31 joined #minetest-dev |
20:08 |
|
Miner_48er joined #minetest-dev |
20:35 |
|
est31 joined #minetest-dev |
20:37 |
|
AnotherBrick joined #minetest-dev |
20:37 |
|
proller joined #minetest-dev |
20:45 |
|
ElectronLibre_ joined #minetest-dev |
20:46 |
|
ElectronLibre left #minetest-dev |
20:47 |
est31 |
merging in 15 minutes http://pastie.org/10081105 |
20:47 |
est31 |
hmmmm, ok? ^ |
20:48 |
est31 |
(was regarding your commit) |
20:48 |
hmmmm |
did that subtlety burn you or something? |
20:49 |
est31 |
nope, but I think it should be right |
20:49 |
est31 |
I can remove the C part of the documentation |
20:49 |
hmmmm |
yeah probably a good idea |
20:49 |
hmmmm |
don't want this to be too messy |
20:50 |
hmmmm |
what does get_modpath() say? |
20:50 |
est31 |
that has a param for the modname |
20:50 |
est31 |
AFAIK |
20:52 |
est31 |
confirmed, and it doesnt secretly work when you omit it |
20:54 |
est31 |
better hmmmm? http://pastie.org/10081114 |
20:58 |
hmmmm |
well what I meant to ask is what wordage does the documentation for get_modpath use |
20:58 |
hmmmm |
because they should be the same |
20:59 |
est31 |
get_modpath has a param (modname) |
20:59 |
hmmmm |
that's it?? |
20:59 |
est31 |
yes |
20:59 |
hmmmm |
yeah I just looked at it |
21:00 |
hmmmm |
oh whoops |
21:00 |
hmmmm |
get_current_modname is what we should be looking at |
21:00 |
hmmmm |
that one says: "returns a string" - fantastic |
21:00 |
hmmmm |
it should have the same exact notice that you added for register_schematic |
21:00 |
est31 |
so I can document that too |
21:00 |
hmmmm |
right |
21:01 |
hmmmm |
i'm just saying be consistent about which things you document |
21:01 |
est31 |
yes good idea |
21:01 |
est31 |
didnt knew that function existed |
21:02 |
|
MinetestForFun joined #minetest-dev |
21:05 |
est31 |
http://pastie.org/10081139 |
21:05 |
est31 |
next try hmmmm ^ |
21:05 |
hmmmm |
sure |
21:07 |
est31 |
pushed |
21:10 |
est31 |
There has been some discussion with ShadowNinja about this topic (for his security patch), and that's how this issue got my attention. |
21:50 |
|
proller joined #minetest-dev |
21:55 |
est31 |
Hm, I think I have to break lua api in this point |
21:55 |
est31 |
minetest.set_player_password |
21:55 |
est31 |
assigning password hashes isn't good |
21:56 |
est31 |
There needs to be an api with more features |
21:56 |
est31 |
less basic |
22:00 |
est31 |
ah no |
22:00 |
est31 |
auth handlers have to be touched too |
22:02 |
est31 |
or dont have |
22:03 |
est31 |
even better |
22:04 |
|
OldCoder joined #minetest-dev |
22:06 |
hmmmm |
est31, what's up with that |
22:06 |
hmmmm |
? |
22:08 |
est31 |
I'm on a srp patch as you might now |
22:08 |
est31 |
know* |
22:09 |
est31 |
and now I'm checking what needs to be broken |
22:09 |
est31 |
as it seems the auth handler api can be kept stable |
22:09 |
est31 |
Only thing that bothers me is minetest.set_player_password. |
22:10 |
est31 |
but perhaps not even that has to be changed |
22:11 |
est31 |
I'm planing to change the format into sth like this: http://man7.org/linux/man-pages/man3/crypt.3.html#NOTES |
22:11 |
est31 |
(keeping base64 though) |
22:11 |
est31 |
(and having other ids ofc) |
22:11 |
est31 |
its the same format as /etc/shadow uses |
22:13 |
|
JeDa_ joined #minetest-dev |
22:19 |
|
JeDa_ joined #minetest-dev |
22:30 |
|
JeDa_ joined #minetest-dev |
22:33 |
|
JeDa_ joined #minetest-dev |
23:30 |
|
VargaD_ joined #minetest-dev |
23:37 |
est31 |
one day we have to change behaviour for minetest.get_password_hash... but that is a later change or commit, as we'll still support old hashes |