Time |
Nick |
Message |
01:00 |
|
specing joined #minetest-dev |
01:02 |
|
Eater4 joined #minetest-dev |
01:03 |
|
init joined #minetest-dev |
01:15 |
|
Miner_48er joined #minetest-dev |
01:22 |
|
kahrl_ joined #minetest-dev |
01:56 |
hmmmm |
celeron55, sapier said it was trivial to add his async api to the mod environment |
01:56 |
hmmmm |
so really not much work |
01:56 |
hmmmm |
or are you asking about a completely asynchronous API |
01:57 |
hmmmm |
we would get 95% of the benefit of having a separate mod thread if sapier adds async api to mods and modders start using that (correctly) |
01:58 |
hmmmm |
anyway I think if we make (light userspace) locks per-mapblock and have the container itself lock-free/wait-free, we can almost eliminate the contention problem |
01:58 |
hmmmm |
i mean how often are two separate pieces of code really working on the same MapBlock |
01:59 |
hmmmm |
and even then, how long would they be working on that MapBlock for? |
02:05 |
|
us`0gb joined #minetest-dev |
02:14 |
|
spillz joined #minetest-dev |
02:15 |
ShadowNinja |
~tell sapier https://github.com/minetest/minetest/blob/master/builtin/builtin.lua#L13-L17 This needs to go. It causes duplicate tracebacks and tracebacks when unwanted. Use xpcall() or lua_pcall's errorhandler argument instead. |
02:15 |
ShadowBot |
ShadowNinja: O.K. |
02:33 |
spillz |
My 2c on threading and mods... trying to put mods into individual threads sounds like a tremendously bad idea. Better idea: all of the server side LUA stuff stays on one thread, but add engine API calls that do threaded/parallel processing for mods and use callbacks for tasks that may take some time to complete. e.g. mapgen mods should be able to ask the engine to do various processor intensive manipulations of map blocks ra |
02:34 |
spillz |
Also, ping on #1217 |
02:34 |
ShadowBot |
https://github.com/minetest/minetest/issues/1217 -- Keyboard shortcuts for chat commands (REDUX) by spillz |
02:35 |
|
spillz left #minetest-dev |
02:49 |
ShadowNinja |
Objections to reverting https://github.com/minetest/minetest/commit/5b518ed2feff28c9bf21ad940c1b211b72d71bd1 ? |
02:49 |
ShadowNinja |
Oh, that also ignored the level parameter to error(). |
02:51 |
ShadowNinja |
And didn't pass the message to debug.traceback(). |
02:58 |
hmmmm |
spillz, yeah that's the idea. |
02:58 |
hmmmm |
each mod can be quite interdependent upon each other, so it doesn't make sense to have a separate thread for each. the idea is to have a mod thread that is separate from the server thread so one isn't hung up on the other |
04:11 |
ShadowNinja |
~tell spillz Check the logs for -dev. |
04:11 |
ShadowBot |
ShadowNinja: O.K. |
04:11 |
ShadowNinja |
Let's resolve this 'engine' vs. 'minetest' discussion. I'm in favor of 'core' (or 'engine') because it's less awkward for forks (and shorter :-) ). |
04:11 |
ShadowNinja |
celeron55 raises the point that 'core'/'engine' is too generic, using 'minetest' makes it unlikely that you will confuse a Minetest mod with a generic Lua file. |
04:11 |
ShadowNinja |
However, I think that you will be able to tell because of |
04:11 |
ShadowNinja |
1. The location of the file and files near it (particularly a README) |
04:11 |
ShadowNinja |
2. Comments in the file describing it (particularly a header comment) and |
04:11 |
ShadowNinja |
3. What the mod does (you don't register a node and a craft for it in many applications...) |
04:11 |
ShadowNinja |
|
04:11 |
ShadowNinja |
Also: What do you think about adding a 'strict' module to builtin like Penlight's strict.lua? It would make reading global varibles that haven't been defined an error rather than just returning nil. |
04:11 |
ShadowNinja |
Lua's behavior with undifined globals is a common source of errors, and this shouldn't have a significant performance impact since anything that needs to be done fast is done with locals. |
04:11 |
ShadowNinja |
Annother function of the strict module could be to print a warning when a global is added, to prevent global scope polution. You could use, eg, core.add_global("areas", {}) (Basically just an alias for rewset()) for variables that should be global. |
04:11 |
ShadowNinja |
|
04:12 |
ShadowNinja |
Finally, I'd like to organize builtin into 'game', 'common', and 'mainmenu' folders. I'd like to do this after my async pull is merged, to minimize rebasing. |
04:12 |
ShadowNinja |
|
04:12 |
ShadowNinja |
Sorry about the wall of text. ;-) |
04:20 |
ShadowNinja |
I just got flooded with "A sapling grew into a tree" messages, and no tree grew. It seems the growing code's broken. |
04:21 |
ShadowNinja |
(The growing code is very ugly, so now would be a good time to fix it's style too.) |
04:23 |
VanessaE |
rip out all of the growing code and merge plants_lib into core ;-) |
04:23 |
VanessaE |
(ok, maybe not, it's even uglier :P ) |
04:24 |
|
proller joined #minetest-dev |
04:37 |
|
nore joined #minetest-dev |
04:50 |
Megaf |
Am I the only one who find this really pretty and fun? http://en.zimagez.com/zimage/compilingminetestonraspberrypi-megaf.php |
04:59 |
|
diemartin joined #minetest-dev |
05:07 |
ShadowNinja |
Comments? http://ix.io/bTD/diff (sorry about the big diff blocks, it was indented with spaces) |
05:08 |
ShadowNinja |
BBL, sleep. |
05:09 |
VanessaE |
comment: |
05:09 |
VanessaE |
borrow some code from moretrees and make an L-system model instead of building the tree "manually". |
05:10 |
VanessaE |
surely that would be less code than the current way. there's a model there (beech) that, with some minor changes, should look about the same as an existing tree. |
05:16 |
|
CraigyDavi joined #minetest-dev |
05:27 |
* VanessaE |
wanders off to bed. |
05:29 |
Megaf |
Good night VanessaE, sleep well |
05:31 |
Megaf |
I'm making a new game, man, that's gonna be great |
05:32 |
Megaf |
and lightweight |
05:40 |
|
smoke_fumus joined #minetest-dev |
06:23 |
celeron55 |
hmm, running the lua environment in a separate but single thread sounds quite reasonabl |
06:23 |
celeron55 |
+e |
06:24 |
celeron55 |
it would get rid of the main problem which is the engine not being able to do trivial things like transferring positions of players when something in lua happens to be calculating something |
06:25 |
celeron55 |
at least i think that is the main issue |
06:29 |
celeron55 |
random inspirational video for minetest developers: https://www.youtube.com/watch?v=KeqQVHSvxG0 |
06:31 |
celeron55 |
ShadowNinja: i didn't know about such strict.lua thing; that does sound useful |
06:32 |
celeron55 |
ShadowNinja: it also sounds like many mods will break but they'll be easy to fix and it will be much better in the long term |
06:33 |
|
CraigyDavi joined #minetest-dev |
06:34 |
celeron55 |
also organizing builtin sounds reasonable |
06:34 |
|
CraigyDavi joined #minetest-dev |
06:36 |
celeron55 |
ShadowNinja: also the issue i mentioned is not about confusing a minetest file with a generic lua file; the issue is not being able to use a generic term locally in each mod's code |
06:39 |
celeron55 |
i'd like to hear everyone's opinion on this though |
06:42 |
celeron55 |
i'm in favor of "core" because it's shorter |
06:42 |
celeron55 |
(compared to "engine") |
06:58 |
diemartin |
+1 for strict.lua; I made an experiment a while ago, and it seems some of the mods in "default" tended to "leak" globals |
06:58 |
diemartin |
(in addition to a lot of leaks from other mods) |
06:59 |
diemartin |
my remarks at that time seem to get ignored due to more pressing issues (I think it was the modstore) |
07:00 |
diemartin |
except for a few modders which took my recommendation and fixed their stuff :P |
07:02 |
celeron55 |
well, it happens (it helps to file an issue on github or write it on the forum if people are too busy doing something else on IRC) |
07:27 |
|
PenguinDad joined #minetest-dev |
07:48 |
diemartin |
am I the only one using 4:3 display mode?? |
07:48 |
diemartin |
oops |
07:49 |
diemartin |
wrong chan, sorry |
07:51 |
|
ImQ009 joined #minetest-dev |
08:35 |
|
rsiska joined #minetest-dev |
09:12 |
|
Taoki[mobile] joined #minetest-dev |
09:25 |
|
proller joined #minetest-dev |
09:27 |
|
Calinou joined #minetest-dev |
10:20 |
|
darkrose joined #minetest-dev |
10:24 |
|
grrk-bzzt joined #minetest-dev |
10:26 |
|
rdococ joined #minetest-dev |
10:56 |
|
proller joined #minetest-dev |
11:06 |
|
proller joined #minetest-dev |
11:15 |
|
proller joined #minetest-dev |
11:21 |
|
twoelk joined #minetest-dev |
11:22 |
|
troller joined #minetest-dev |
11:28 |
|
RealBadAngel joined #minetest-dev |
11:30 |
|
proller__ joined #minetest-dev |
11:31 |
|
Taoki joined #minetest-dev |
11:33 |
|
iqualfragile joined #minetest-dev |
11:36 |
|
proller__ joined #minetest-dev |
11:43 |
|
Taoki joined #minetest-dev |
11:56 |
|
werwerwer_ joined #minetest-dev |
12:00 |
|
troller joined #minetest-dev |
12:03 |
twoelk |
If it makes any sense I would place the all the mapgenerating kids together in a sandbox of their own (be it engine/core or mod) apart from all the other kids screaming for attention. So that life can go on at a normal pace near spawn while big geography is being calculated on the outer rims of the known world. |
12:05 |
twoelk |
This may not be an issue anymore, my setup may be outdated but if any process should be considered to run in |
12:05 |
twoelk |
an own thread/container, I would strongly suggest all mapgenerating stuff to be parted from the rest and not |
12:05 |
twoelk |
along any core/lua/mod border but rather as a functional group regardless of source. This may need some mod |
12:05 |
twoelk |
or even function classification though. |
12:06 |
|
proller__ joined #minetest-dev |
12:06 |
twoelk |
? sorry my ircclient split that |
12:14 |
|
troller joined #minetest-dev |
12:15 |
celeron55 |
twoelk: i've considered that too... there are quite many options here |
12:16 |
celeron55 |
it could work like minetest.start_mapgen_thread("mapgen.lua") and that would run in it's own environment with only access to some voxelmanips or so |
12:16 |
|
PenguinDad joined #minetest-dev |
12:21 |
|
proller__ joined #minetest-dev |
12:30 |
|
proller__ joined #minetest-dev |
12:31 |
|
Anchakor_ joined #minetest-dev |
12:36 |
|
Anchakor_ joined #minetest-dev |
12:40 |
|
Amaz joined #minetest-dev |
12:55 |
|
hmmmm joined #minetest-dev |
13:42 |
Taoki |
Why was finite liquid removed? o.o |
13:47 |
Taoki |
Seemed to work good enough to me... prolly just needed some extra fixes here and there |
13:48 |
Taoki |
I won't miss finite liquid that much, but I'd really like to see weather added back without it. More precisely, water freezing and turning to ice... this should be totally possible even without finite liquid. By allowing only water sources to turn into ice blocks and vice versa |
14:08 |
|
proller joined #minetest-dev |
14:26 |
|
NakedFury joined #minetest-dev |
14:38 |
|
Zeitgeist_ joined #minetest-dev |
14:38 |
|
Zeitgeist_ joined #minetest-dev |
14:42 |
|
BrandonReese joined #minetest-dev |
15:08 |
|
proller joined #minetest-dev |
15:10 |
|
Jordach joined #minetest-dev |
15:17 |
|
tomreyn joined #minetest-dev |
15:27 |
|
grrk-bzzt joined #minetest-dev |
15:52 |
|
twoelk joined #minetest-dev |
15:55 |
|
rsiska joined #minetest-dev |
16:01 |
|
CraigyDavi joined #minetest-dev |
16:02 |
|
PilzAdam joined #minetest-dev |
16:08 |
|
Calinou joined #minetest-dev |
16:13 |
|
OldCoder joined #minetest-dev |
16:15 |
|
proller joined #minetest-dev |
16:29 |
|
BlockMen joined #minetest-dev |
16:49 |
|
PenguinDad joined #minetest-dev |
17:28 |
|
Zeitgeist_ joined #minetest-dev |
17:30 |
|
rubenwardy joined #minetest-dev |
17:39 |
|
sapier joined #minetest-dev |
17:41 |
sapier |
ShadowNinja: I don't remember using error a lot, I just added the backtrace to it as it wasn't available by that time. Do your changes make sure we really get the backtrace? |
17:42 |
sapier |
it'd be quite annoying we'd have backtraces only half of time because of new handling doesn't handle everything |
17:51 |
Megaf |
sapier: There's a not too serious bug that is quite old already, but it's been annoying me for a while |
17:51 |
sapier |
tell about it |
17:52 |
Megaf |
sapier: That shadow thing, some areas get shadowed (I'm not sure about this word, may be wrong) with no apparent reason |
17:52 |
Megaf |
crop wont grow in that shadow |
17:52 |
Megaf |
crops* |
17:52 |
sapier |
lighting issues ... I know about yes but those issues are nontrivial |
17:53 |
Megaf |
if you go to my server ( minetest.megaf.info 30003 ) you will notice near the spawn point a large rectangular shadow |
17:53 |
Megaf |
any idea about what causes that? |
17:53 |
proller |
игппн дшпрештп |
17:53 |
Megaf |
some I can fix selecting the area with world edit and doing a //replace air air |
17:53 |
proller |
buggy lighting |
17:54 |
VanessaE |
I've seen that happen on my servers when using worldedit |
17:54 |
VanessaE |
solution: select the area, //replace air with something like mese (anything you know for sure is NOT in the area), then //replace the mese or whatever you chose, with air again. |
17:54 |
Megaf |
sometime when many trees grown in a cluster, and you take them down, the shadow will remain |
17:54 |
sapier |
no need to proove I believe you. An idea yes, because I tried to optimize light calculation once and did make that issue even worse, so I didn't continue that work. I don't exactly understand how light is calculated but that's be required to fix it. |
17:55 |
celeron55 |
there could be some bug in eg. the assumptions lighting has to make when something isn't generated yet, or there could be some rare situation where it's impossible to assume correctly |
17:55 |
Megaf |
VanessaE: you can replace air air, it works |
17:55 |
VanessaE |
Megaf: hm, I never thought of doing that, didn't think it would work. good tip. |
17:55 |
VanessaE |
(I assumed it had to be something opaque) |
17:56 |
VanessaE |
maybe a vmanip bug? |
17:56 |
Megaf |
yep, that was my first thought too, then I tried air air and it worked |
17:56 |
|
Jordach joined #minetest-dev |
17:57 |
sapier |
my optimizations broke block edges, maybe there's a bug in how minetest usually calculates light on block edges |
18:00 |
* twoelk |
didn't notice those random shadows relating to block edges |
18:00 |
sapier |
well that's just an idea I don't have verified this yet |
18:02 |
|
Garmine joined #minetest-dev |
18:15 |
Megaf |
sapier: so there's no quick fix for that |
18:17 |
sapier |
I don't think so megaf no |
18:20 |
twoelk |
I wonder if minetest should have a mod that shows block edges in game. Might be usefull for many debugging issues. |
18:21 |
twoelk |
no wait, doesn't landrush allready have a command for something similar? |
18:25 |
|
proller joined #minetest-dev |
18:29 |
Megaf |
how now a days Minetest Minimal compares to Minetest 0.3? |
18:30 |
Megaf |
is it comatible with Minetest 0.3 clients? |
18:30 |
VanessaE |
not really comparable, and no. |
18:31 |
VanessaE |
and besides, 0.3.x is dead, use Minetest Classic if you want a 0.3.x-esque client. |
18:31 |
* VanessaE |
pokes darkrose |
18:31 |
VanessaE |
that one is quite the opposite of dead. |
18:32 |
Megaf |
Yep, I'm asking that because I'm reading the post about darkrose's servers |
18:38 |
|
CraigyDavi_ joined #minetest-dev |
18:41 |
|
proller joined #minetest-dev |
18:41 |
|
CraigyDavi_ joined #minetest-dev |
18:45 |
|
exoplanet joined #minetest-dev |
18:51 |
|
blaise joined #minetest-dev |
18:58 |
|
blaise joined #minetest-dev |
18:59 |
|
proller joined #minetest-dev |
19:01 |
Megaf |
darkrose: I want that snowcap biome for update minetest versions |
19:01 |
Megaf |
I mean, now a days |
19:09 |
|
proller joined #minetest-dev |
19:14 |
|
sfan5 joined #minetest-dev |
19:17 |
|
troller joined #minetest-dev |
19:37 |
|
kaeza joined #minetest-dev |
19:56 |
|
blaise joined #minetest-dev |
20:10 |
|
werwerwer joined #minetest-dev |
20:22 |
ShadowNinja |
The //fixlight / //replace air air trick doesn't always work. I've had to use //replace air torch //replace torch air once or twice. |
20:32 |
Megaf |
ShadowNinja: That might do the trick, air air isnt working |
20:58 |
|
rsiska joined #minetest-dev |
21:11 |
|
EvergreenTree joined #minetest-dev |
21:13 |
|
iqualfragile joined #minetest-dev |
21:16 |
|
Amaz joined #minetest-dev |
21:21 |
|
BrandonReese joined #minetest-dev |
21:30 |
|
sapier left #minetest-dev |
21:34 |
|
proller joined #minetest-dev |
21:47 |
ShadowNinja |
~tell sapier No, you won't get a backtrace if you use pcall() in a mod. But if you do that you probably don't want a backtrace. Your override forces a backtrace if you use error(), whether or not you want it. |
21:47 |
ShadowBot |
ShadowNinja: O.K. |
21:48 |
ShadowNinja |
celeron55: Great! I'll change it to 'core' later (after some of my stuff is merged and I've asked a few people). |
21:54 |
ShadowNinja |
Strict.lua, comments?: http://sprunge.us/HfIQ?diff I fixed a few leaking globals too. |
21:56 |
ShadowNinja |
Also, comments on #1226 please. I don't want to do much before merging it to prevent conflicts. |
21:56 |
ShadowBot |
https://github.com/minetest/minetest/issues/1226 -- [WIP] Remove dependency on marshal and push the Lua error handler only once by ShadowNinja |
21:56 |
ShadowNinja |
The [WIP] can probably go now. |
22:06 |
|
sapier joined #minetest-dev |
22:07 |
sapier |
ShadowNinja: well in case of a real error it's reasonable to assume a backtrace could be helpfull |
22:08 |
ShadowNinja |
sapier: Yep. There's xpcall() for that. |
22:08 |
sapier |
ipv4/ipv6 address family fixes somehow caused a major bug in packet retransmission |
22:08 |
ShadowNinja |
sapier: Can you check https://github.com/minetest/minetest/issues/1226 ? |
22:09 |
sapier |
right now it seems impossible to resend timed out reliables because of address family in packet backup doesn't match address family of socket |
22:10 |
sapier |
I'm gonna check tomorrow ShadowNinja but I haven't changed opinion about moving those files is wrong |
22:11 |
Megaf |
ShadowNinja: replace air torch and then orch air did not work to wipe that shadow |
22:11 |
|
sapier left #minetest-dev |
22:19 |
|
sapier joined #minetest-dev |
22:20 |
sapier |
forget about my last comment about a bug ... it's been in my local changes |
22:21 |
|
BlockMen left #minetest-dev |
22:54 |
|
sapier left #minetest-dev |
23:28 |
|
Exio4 joined #minetest-dev |
23:45 |
|
runfromtasers__ joined #minetest-dev |
23:49 |
|
kahrl joined #minetest-dev |
23:52 |
|
literaryraven joined #minetest-dev |