Time |
Nick |
Message |
00:26 |
|
proller joined #minetest-dev |
01:23 |
|
DI3HARD139 joined #minetest-dev |
01:47 |
|
Tmanyo joined #minetest-dev |
03:50 |
|
paramat joined #minetest-dev |
04:16 |
paramat |
#6352 is ready, feel free to merge if approved |
04:16 |
ShadowBot |
https://github.com/minetest/minetest/issues/6352 -- Ores: Add stratum ore by paramat |
04:55 |
|
proller joined #minetest-dev |
05:09 |
|
Hunterz joined #minetest-dev |
05:43 |
|
nerzhul joined #minetest-dev |
06:07 |
Hijiri |
migrate to C++17 |
06:08 |
Hijiri |
btw I'm ready to rebase my PRs when someone is willing to review them |
06:08 |
Hijiri |
not this instant though I'm about to get ready to sleep |
06:09 |
nerzhul |
C++17 is pretty useless for MT, only fielsystem part can be useful |
06:54 |
|
lisac joined #minetest-dev |
07:55 |
|
YuGiOhJCJ joined #minetest-dev |
07:55 |
|
nerzhul joined #minetest-dev |
08:55 |
nerzhul |
hello |
08:55 |
nerzhul |
merging #6357 in ~5 mins |
08:55 |
ShadowBot |
https://github.com/minetest/minetest/issues/6357 -- Fix animation frame_speed and blend loosing precision due to incorrec… by sapier |
09:19 |
|
Hunterz joined #minetest-dev |
09:31 |
|
Megaf joined #minetest-dev |
09:59 |
|
troller joined #minetest-dev |
10:06 |
|
Krock joined #minetest-dev |
10:08 |
|
Fixer joined #minetest-dev |
10:29 |
|
troller joined #minetest-dev |
10:31 |
|
Wuzzy joined #minetest-dev |
10:32 |
Wuzzy |
Please somebody look at this: https://github.com/minetest/minetest/pull/5795 |
10:36 |
nerzhul |
no i don't want |
10:36 |
nerzhul |
:D |
10:37 |
Wuzzy |
How do I convert mapblock coordinates back to normal coordinates? |
10:38 |
nerzhul |
* BS ? |
10:38 |
nerzhul |
intToFloat and floatToInt({x,y,z}, BS); |
10:40 |
celeron55 |
define mapblock coordinates and normal coordinates, neither means anything |
10:40 |
celeron55 |
and nerzhul's answer is most definitely wrong |
10:41 |
Wuzzy |
mapblock coordinates: the thing you get in error messages lke this: |
10:41 |
Wuzzy |
"ServerEnvironment::deactivateFarObjects(): id=3984 m_static_exists=true but static data doesn't actually exist in (36,-3,332)" |
10:41 |
Wuzzy |
normal coornates: what you see in debug screen |
10:41 |
Krock |
* MAP_BLOCKSIZE or similar |
10:42 |
Wuzzy |
i.e. 80? |
10:42 |
sfan5 |
*16 |
10:42 |
celeron55 |
yeah, if you multiply by MAP_BLOCKSIZE, you get the lowest corner of the mapblock in node coordinates |
10:42 |
Krock |
no, 80 is the mapgen size (chunks?) |
10:43 |
celeron55 |
the rest of the nodes of the mapblock are +0...(MAP_BLOCKSIZE-1) from there in each coordinate |
10:43 |
celeron55 |
and MAP_BLOCKSIZE is 16 |
10:43 |
Wuzzy |
hmmm ok let me try |
10:45 |
Krock |
in C++, we have operator overloading for v3s16/s32, so my_vector * MAP_BLOCKSIZE is valid btw |
10:45 |
Wuzzy |
so (36, -3, 332) translates to the bounding box between (576, -48, 5312) .. (591, -63, 5297)? |
10:45 |
celeron55 |
no |
10:45 |
celeron55 |
-48 + 15 = -33 |
10:45 |
Wuzzy |
lol |
10:45 |
celeron55 |
and 5312 + 15 = 5327 |
10:46 |
Wuzzy |
oops i went the wrong way |
10:46 |
Wuzzy |
but ok I see how it works now, thank |
10:47 |
Wuzzy |
so its really just *16 for each coorinate and I have the lower bound |
10:47 |
celeron55 |
0,0,0 is the lower bound of a mapblock, and the rest just stack in a 3D grid from there |
10:48 |
celeron55 |
the lower bound of the 0,0,0 mapblock :P |
10:54 |
Wuzzy |
How were all schematics in Minetest Game created? did you use tools or something? |
10:56 |
sfan5 |
i think paramat uses some thing that turns .mts into lua tables and vice versa |
10:56 |
|
est31 joined #minetest-dev |
10:56 |
Krock |
there's also minetest.create_schematic |
10:56 |
Wuzzy |
that doesn't help me if I also need node probabilities and yslice_prob |
10:57 |
Wuzzy |
do you know paramat's "thing", by any chance? |
10:57 |
Wuzzy |
is it WorldEdit? |
11:07 |
sfan5 |
nah i think it's an utility/mod he wrote himself |
11:08 |
Wuzzy |
ah, found it! |
11:08 |
Wuzzy |
https://forum.minetest.net/viewtopic.php?f=9&t=12011&view=unread#unread |
11:15 |
Wuzzy |
Do you know of any other useful development tools (like saveschems, luacmd, NodeBoxEditor, etc.)? |
11:22 |
|
proller joined #minetest-dev |
11:31 |
nerzhul |
celeron55, i missed MAP_BLOCKSIZE like a noob in my calcul :( |
11:32 |
nerzhul |
merging #6358 in ~ 5 mins |
11:32 |
ShadowBot |
https://github.com/minetest/minetest/issues/6358 -- Remove nodeupdate completely by Rui-Minetest |
11:35 |
|
CalebDavis joined #minetest-dev |
11:38 |
|
ThomasMonroe joined #minetest-dev |
11:44 |
|
cx384 joined #minetest-dev |
11:46 |
Fixer |
get biome info |
11:56 |
|
quater joined #minetest-dev |
12:08 |
|
DS-minetest joined #minetest-dev |
12:12 |
|
tenplus1 joined #minetest-dev |
12:12 |
tenplus1 |
fixed - https://github.com/minetest/minetest_game/pull/1884 |
12:12 |
|
tenplus1 left #minetest-dev |
12:16 |
|
troller joined #minetest-dev |
12:19 |
nerzhul |
Krock, there is no sense to re-send the message to the sender |
12:19 |
nerzhul |
(passing by the server) |
12:20 |
Krock |
how come? two CSM mods might listen to the same channel |
12:20 |
nerzhul |
but if there is a need (i don't see why) we can broadcast to the local instance (SSM to SSM) and CSM to CSM in the same client |
12:20 |
nerzhul |
then it's a RPC like between mods permitting to standardize inter mod communication in the sandbox |
12:20 |
nerzhul |
exact ? |
12:21 |
nerzhul |
i can change the algorithm to add a callback on message sending in clients to handle that case, and send message to server when server sent the message, the problem is the sender will always receive it's message as a callback, and should handle it |
12:21 |
Krock |
they might would conflict each other when sending on the same channel :/ |
12:22 |
nerzhul |
i'm not afraid about the conflict |
12:22 |
nerzhul |
my main concern is the loopback on the same consumer/provider mod, it means each mod developer should handle its own sent message return |
12:23 |
nerzhul |
we don't have a mean to find we are sending message to the same mod :( |
12:23 |
Krock |
indeed, they'd have to do so |
12:23 |
Krock |
but if this feature is requested later, the risk of a loopback is much higher when mods started using it |
12:24 |
nerzhul |
yes |
12:24 |
nerzhul |
if someone find a real good usecase we can remove the return-back security later |
12:24 |
nerzhul |
as mods are on the same sandbox they can talk lua to lua directly instead of translating to core C++ and re translate to lua :) |
12:27 |
nerzhul |
the only thing i wanted to tune but our registration model doesn't permit it now is remove the channel param from lua callback registration and register to a table with channel name as a key |
12:27 |
nerzhul |
it prevent any mod to receive non listening channels messages |
12:28 |
Krock |
indeed |
12:28 |
nerzhul |
if a good builtin developper can help me to achieve this task it can be nice and prevent copying every event to every listener |
12:28 |
Krock |
but for now we need a base to build on. improvements can also happen later |
12:29 |
nerzhul |
yes, this just needs a API break in the same dev, but if it's tolerate in this cycle i can wait |
12:29 |
nerzhul |
it just needs to be fixed before release |
12:29 |
nerzhul |
Krock, did you tested it enablind CSM preview and playing on minimal ? |
12:32 |
|
Fritigern joined #minetest-dev |
12:35 |
|
troller joined #minetest-dev |
12:43 |
Krock |
tested it in an own mod to check whether it works like I expected - and it does. |
12:47 |
nerzhul |
heh |
12:47 |
nerzhul |
you have a real use case ? |
12:50 |
Krock |
not yet. just some ping/pong tests |
12:51 |
nerzhul |
without the HUD CSM pr it's less useful because you cannot have readable real time informations between clients |
12:51 |
nerzhul |
i should review it asap to make it merged asap, both are very linked in a real case usage |
12:52 |
|
troller joined #minetest-dev |
13:10 |
|
est31 left #minetest-dev |
13:22 |
nerzhul |
a question about the message content |
13:22 |
nerzhul |
is this core engine responsibility to serialize a lua object or lua mod owner to use core.serialize call ? |
13:30 |
|
RobbieF joined #minetest-dev |
13:30 |
|
nerzhul joined #minetest-dev |
13:37 |
|
RobbieF left #minetest-dev |
13:47 |
|
antims joined #minetest-dev |
13:47 |
celeron55 |
i'd say make the engine do it |
13:47 |
celeron55 |
modders would have to do it anyway in the majority if cases and the api is supposed to make things easy |
13:47 |
celeron55 |
of* |
13:49 |
|
Hunterz joined #minetest-dev |
13:54 |
nerzhul |
celeron55, okay i add it in the todo list, do we have any other API doing a similar thing ? |
13:55 |
celeron55 |
possibly none |
13:55 |
nerzhul |
erf :( |
13:55 |
nerzhul |
i hope minetest.serialize code is easily transposable heh |
13:55 |
celeron55 |
call it from C++ 8) |
13:56 |
celeron55 |
and let someone optimize it later |
13:56 |
celeron55 |
always a good plan! |
13:56 |
nerzhul |
lol, i don't like to be crazy like this, i'm not a NodeJS dev :p |
13:57 |
|
ThomasMonroe joined #minetest-dev |
13:59 |
celeron55 |
what the eff, minetest.deserialize has a "safe" parameter which is set to unsafe by default |
13:59 |
nerzhul |
lol |
14:04 |
|
proller joined #minetest-dev |
14:08 |
|
DS-minetest joined #minetest-dev |
14:31 |
|
YuGiOhJCJ joined #minetest-dev |
14:33 |
|
Player_2 joined #minetest-dev |
14:51 |
|
proller joined #minetest-dev |
15:31 |
|
proller joined #minetest-dev |
16:06 |
|
proller joined #minetest-dev |
16:22 |
rubenwardy |
!tell nerzhul why not JSON instead of (de)serialize? |
16:22 |
ShadowBot |
rubenwardy: O.K. |
16:31 |
|
quater joined #minetest-dev |
16:31 |
|
paramat joined #minetest-dev |
16:32 |
paramat |
Wuzzy use https://github.com/minetest-mods/saveschems instead, that's the latest version |
16:33 |
Wuzzy |
I am currently writing a small python script to parse and later manipulate schematics more easily. i plan to do enable common tasks like "replace all dirt with stone", etc. |
16:33 |
Wuzzy |
but thanks |
16:34 |
Wuzzy |
this lua-to-MTS and back is very tedious... :/ |
16:36 |
Wuzzy |
btw paramat, I added your mod to the Developer Wiki on the Developer Tools page: http://dev.minetest.net/Development_Tools |
16:41 |
Wuzzy |
Who is maintaining the Developer Wiki btw? |
16:41 |
Wuzzy |
I mean who's the admin? |
16:42 |
rubenwardy |
CalebDavis, |
16:42 |
rubenwardy |
oops |
16:42 |
rubenwardy |
Calinou, |
16:42 |
rubenwardy |
well |
16:42 |
rubenwardy |
c55 hosts it |
16:44 |
Calinou |
I don't have access to the hosting, I'm only a wiki admin |
16:46 |
paramat |
Wuzzy better to link directly to the minetest-mods repo, my forum topic may have some misleading or out of date explanation |
16:47 |
|
RobbieF joined #minetest-dev |
16:47 |
Wuzzy |
but it links to https://github.com/minetest-mods/saveschems |
16:48 |
Wuzzy |
i mean your post |
16:48 |
Wuzzy |
it already links to correct repo |
16:48 |
Wuzzy |
last commit was in December 2016 and that was by you. xD |
16:49 |
sofar |
I made him do it :P |
16:49 |
Wuzzy |
also, the readme is not really useful. forum post seems more complete |
17:02 |
paramat |
ok i'll update the forum post if there is any wrong information |
17:03 |
paramat |
maybe the readme too |
17:24 |
|
Megaf joined #minetest-dev |
17:41 |
|
proller joined #minetest-dev |
17:42 |
Wuzzy |
thx |
17:42 |
Wuzzy |
i noticed something strange in MTS files |
17:45 |
Wuzzy |
apparently many schematics in MTG have a y-slice probability of 127 (0x7F) for all slices instead of 255 (0xFF). WTF? The docs clearly say that 255 is equivalent to 100%. |
17:59 |
sofar |
interesting, for which ones did you see that? |
18:02 |
sofar |
yeah, I see it too (aspen tree, for one) |
18:03 |
sofar |
looks like during saving that ff -> 7f and 7f -> 3f |
18:05 |
sofar |
Wuzzy: https://github.com/minetest/minetest/blob/master/src/mg_schematic.h |
18:05 |
sofar |
#define MTSCHEM_PROB_ALWAYS 0x7F |
18:05 |
Wuzzy |
wtf |
18:05 |
Wuzzy |
so the docs are wrong. |
18:06 |
sofar |
1 bit was reserved for force placement of nodes, so the available mask for probabilities was reduced to omit that range |
18:06 |
Wuzzy |
but i was talking about y-slices which do not have that force placement bit |
18:06 |
sofar |
well the thing is that the save code accounts for it |
18:07 |
Wuzzy |
so... probabilities are actually from 0-127? |
18:07 |
sofar |
serialize_schematic() handles it |
18:08 |
sofar |
they're 0-255 if you use serialize_schematic() |
18:08 |
sofar |
and they're 0-127 from a binary storage perspective |
18:08 |
Wuzzy |
O_O |
18:08 |
Wuzzy |
whyyyyy |
18:08 |
Wuzzy |
this does not make sense |
18:08 |
sofar |
whoever added force_place flag obviously wanted to make the code consistent |
18:09 |
Wuzzy |
why allowing 0-255 in lua but only 0-127 in mts? this is not consistent at all |
18:09 |
|
Darcidride joined #minetest-dev |
18:10 |
sofar |
it keeps old code working the same way, so |
18:10 |
Wuzzy |
but the docs are still lying, right? |
18:10 |
sofar |
what docs? |
18:11 |
|
Megaf joined #minetest-dev |
18:11 |
Wuzzy |
lua_api.txt, "Schematic specifier" |
18:11 |
Wuzzy |
nowhere says it anything about 127 |
18:12 |
Wuzzy |
It looks like the Lua API is pretending you can have values between 0 and 255 while they are actually between 0 and 127 |
18:12 |
sofar |
it looks correct, it just omits stating the format of the bits in the mts binary format |
18:13 |
Wuzzy |
well why pretending you have a precision of 0-255 when you actually lose 1 bit of precision |
18:14 |
Wuzzy |
so... y-slice probability is also between 0-127. does this mean that y-slice prob of 128-255 is invalid? |
18:14 |
sofar |
https://github.com/minetest/minetest/blob/master/doc/lua_api.txt#L2979 |
18:15 |
Wuzzy |
but also: |
18:15 |
Wuzzy |
1118 * The `yslice_prob` field is a table of {ypos, prob} which sets the `ypos`th vertical slice |
18:15 |
Wuzzy |
1119 of the schematic to have a `prob / 256 * 100` chance of occuring. (default: 255) |
18:16 |
Wuzzy |
^ this is wrong |
18:16 |
sofar |
off-by-one error, sure |
18:16 |
paramat |
the per-node force-place encoding is confusing but the docs are correct, i had this conversation with octacian |
18:16 |
Wuzzy |
no. off-by-a-factor-of-two error. |
18:16 |
sofar |
not if you talk about lua table probabilities |
18:16 |
Wuzzy |
the correct formula should be prob / 128 * 100, right? |
18:16 |
sofar |
the internal format of MTS is not discussed here |
18:17 |
sofar |
so, you can't claim it's incorrect, since it does not exist in this document |
18:17 |
Wuzzy |
hmm strange |
18:17 |
sofar |
all this tries to explain is the lua table side of the equation |
18:17 |
Wuzzy |
does this mean a value of 255 (Lua) actually is divided by 2? |
18:17 |
sofar |
at least, that is how I read it |
18:18 |
Wuzzy |
i.e. 1 bit of precision is ismply thrown away |
18:19 |
Wuzzy |
okay. i think i understand it now. its actually the MTS docs (*.h) which needs clarification, then |
18:20 |
paramat |
hm i didn't realise y-slice used the same encoding although it doesn't need to |
18:20 |
sofar |
it's certainly not pretty, lol |
18:20 |
Wuzzy |
and the Lua docs should at least hint at the fact that the probability is internally divided by 2 |
18:21 |
Wuzzy |
its very awkward by the way to "fake" a probability range of 0-255. just my opinion |
18:21 |
Wuzzy |
by the same logic we could do a 0-100 range in Lua (percentage) |
18:21 |
Wuzzy |
(not that I would suggest that) |
18:22 |
Wuzzy |
but ok. its not really important. |
18:22 |
Wuzzy |
esp. because the "error" is very small |
18:22 |
paramat |
probability list appears confusing because it has not yet been updated to take per-node force-place into account, so you need to encode manually, that was the source of octacian's confusion |
18:23 |
paramat |
that's why i added the docs at L2979 to show how to manually encode |
18:25 |
paramat |
this was discussed here https://github.com/octacian/advschem/issues/1 |
18:26 |
paramat |
there are 128 levels of prob, but it's consistent to present that as 0-255 to modders, because before 'per-node force-place' was added prob really was 256 levels presented as 0-255 |
18:27 |
paramat |
hmmmm's doing |
18:27 |
Wuzzy |
"'but better for consistency that you ask the mod user to enter 0-255, then divide that by 2 to get 0-127' |
18:27 |
Wuzzy |
That should be done to avoid much confusion." |
18:27 |
Wuzzy |
has this been done? |
18:29 |
paramat |
anyway #6352 is ready, added ore density parameter, see pretty screenshots. Krock rubenwardy sfan5 sofar . ideally i'd like to merge later tonight |
18:29 |
ShadowBot |
https://github.com/minetest/minetest/issues/6352 -- Ores: Add stratum ore by paramat |
18:29 |
paramat |
no octacian hasn't updated yet afaik |
18:29 |
|
Megaf joined #minetest-dev |
18:30 |
Wuzzy |
awesome. Mese biomes, here we come!! :D |
18:31 |
Wuzzy |
paramat: In GitHub posts, you can create a pretty line segment by writing "---". add more dashes to make thicker |
18:40 |
|
MillersMan joined #minetest-dev |
18:45 |
paramat |
ah ok |
18:48 |
|
lisac joined #minetest-dev |
18:59 |
|
ThomasMonroe joined #minetest-dev |
19:11 |
|
quater joined #minetest-dev |
19:46 |
|
Megaf_ joined #minetest-dev |
20:01 |
|
RobbieF left #minetest-dev |
20:17 |
|
Fixer joined #minetest-dev |
20:36 |
|
RobbieF joined #minetest-dev |
20:37 |
|
RobbieF left #minetest-dev |
20:57 |
|
Lunatrius` joined #minetest-dev |
21:00 |
|
paramat joined #minetest-dev |
21:43 |
|
SilverLuke joined #minetest-dev |
21:58 |
paramat |
i just discovered ore param2 can be set, but this was never documented, will add doc to PR |
22:07 |
|
Lunatrius joined #minetest-dev |
22:12 |
|
Xio joined #minetest-dev |
22:26 |
paramat |
done |
22:44 |
|
fwhcat joined #minetest-dev |
23:00 |
paramat |
#6360 if anyone wants to test |
23:00 |
ShadowBot |
https://github.com/minetest/minetest/issues/6360 -- Mapgen Carpathian: Reduce influence of 3D noise on mountains by vlapsley |
23:18 |
|
Megaf joined #minetest-dev |
23:28 |
paramat |
hm worlds start just a little too early, just a little too dark, i would be ok with the next step in brightness (1 step before full brightness) |
23:34 |
|
Megaf joined #minetest-dev |
23:55 |
|
YuGiOhJCJ joined #minetest-dev |
23:59 |
basicer |
is there anyway to make a full screen formspec? |