Time |
Nick |
Message |
00:23 |
|
EvergreenTree joined #minetest-dev |
00:23 |
|
EvergreenTree joined #minetest-dev |
00:44 |
|
Yepoleb joined #minetest-dev |
01:24 |
|
EvergreenTree joined #minetest-dev |
02:12 |
|
kaeza joined #minetest-dev |
02:35 |
|
OldCoder joined #minetest-dev |
02:38 |
|
us_0gb joined #minetest-dev |
05:51 |
|
Evolykane joined #minetest-dev |
06:13 |
|
ImQ009 joined #minetest-dev |
06:40 |
|
rambomedic joined #minetest-dev |
07:03 |
|
salamanderrake joined #minetest-dev |
07:13 |
khonkhortisan |
What kind of text box is in the main menu? It's not intlGUIEditBox or guiChatConsole. |
07:17 |
kahrl |
khonkhortisan: gui::IGUIEditBox |
07:26 |
khonkhortisan |
eew |
07:27 |
khonkhortisan |
When you press a button, it sends an event. This event.KeyInput has two parts, Char and Key. |
07:27 |
khonkhortisan |
Key is the actual button. Char is a letter or number that's on the button. |
07:28 |
khonkhortisan |
If you press a, it should use the char, because a char exists. If you press enter, it should use the key, because a char doesn't exist. |
07:29 |
khonkhortisan |
On the numpad, if you press 1 when numlock is off, the Char is 0, and the Key is KEY_END. If you press 1 when numlock is on, the Char is 1, and the Key is KEY_END. |
07:30 |
khonkhortisan |
The key part of the button press doesn't go away when numlock is on, so you have to check for event.KeyInput.Key == KEY_END && event.KEYInput.Char == 0 to know that it is an end key and it is not disabled by numlock. |
07:32 |
khonkhortisan |
I have a branch where I edited minetest's addition of intlGUIEditBox to irrlicht to make that work, but IGUIEditBox (CGUIEditBox?) is still only in irrlicht I believe. |
07:36 |
kahrl |
I know |
07:36 |
kahrl |
irrlicht's input system is messed up |
07:37 |
khonkhortisan |
then I'm happy it's not minetest's fault |
07:37 |
kahrl |
I guess we should use intlGUIEditBox everywhere (that way we could also potentionally fix the copy&paste issues) |
07:38 |
kahrl |
I'm not going anywhere near i18n right now though |
07:38 |
khonkhortisan |
I haven't seen a KEY_NUMPAD1 event yet |
07:40 |
khonkhortisan |
If someone happened to want to set their controls to be on the numpad, I'm not sure what the correct way to handle that would be, if it was set to end, either end key would work unless numlock was on. If it used numlock as the key, the char/key thing would have to be handled differently. |
07:43 |
khonkhortisan |
*If it used a numpad key, the char/key thing |
07:51 |
khonkhortisan |
*facepalm* The create new player textbox also only accepts 0, 3, and 9 from the numpad when numlock is on. |
07:51 |
khonkhortisan |
in supertuxkart |
08:01 |
|
grrk-bzzt joined #minetest-dev |
08:08 |
|
werwerwer joined #minetest-dev |
09:29 |
VanessaE |
kahrl: *poke* |
09:58 |
|
Gethiox2 joined #minetest-dev |
10:05 |
|
VanessaE joined #minetest-dev |
10:19 |
|
Calinou joined #minetest-dev |
11:05 |
|
proller joined #minetest-dev |
12:33 |
|
Zeitgeist_ joined #minetest-dev |
12:33 |
|
Zeitgeist_ joined #minetest-dev |
12:34 |
|
iqualfragile joined #minetest-dev |
12:45 |
|
EvergreenTree joined #minetest-dev |
12:45 |
|
EvergreenTree joined #minetest-dev |
13:31 |
|
ImQ009 joined #minetest-dev |
13:39 |
|
hmmmm joined #minetest-dev |
13:45 |
|
rsiska joined #minetest-dev |
13:51 |
|
troller joined #minetest-dev |
13:53 |
|
keesj joined #minetest-dev |
14:06 |
|
Zeitgeist_ joined #minetest-dev |
14:06 |
|
Zeitgeist_ joined #minetest-dev |
14:26 |
|
BlockMen joined #minetest-dev |
14:30 |
|
proller joined #minetest-dev |
14:48 |
|
NakedFury joined #minetest-dev |
15:14 |
|
Yepoleb joined #minetest-dev |
15:14 |
|
rambomedic joined #minetest-dev |
15:15 |
|
zat joined #minetest-dev |
16:03 |
|
Jordach joined #minetest-dev |
16:08 |
BlockMen |
IMO the current submodule systems is not perfect as is atm. for example #1103 would fit in client/audiovisuals or in server/client/env. |
16:08 |
ShadowBot |
https://github.com/minetest/minetest/issues/1103 -- Prevent player jumping into nodes from below by BlockMen |
16:09 |
BlockMen |
could we make more clear which module does contains what or divide some of them more? |
16:10 |
proller |
current submodule systems useless |
16:12 |
iqualfragile |
why not prevent players from building blocks where they stand? |
16:12 |
ShadowNinja |
BlockMen: Currently those are placed in both. |
16:13 |
BlockMen |
iqualfragile: , #85 |
16:13 |
ShadowBot |
https://github.com/minetest/minetest_game/issues/85 -- Tweaked Mese behavior so that the old Mese object is still available. by VanessaE |
16:14 |
iqualfragile |
https://github.com/minetest/minetest/issues/85 |
16:14 |
iqualfragile |
i guess |
16:15 |
BlockMen |
blame ShadowBot :P and yes |
16:15 |
|
EvergreenTree joined #minetest-dev |
16:15 |
|
EvergreenTree joined #minetest-dev |
16:16 |
VanessaE |
wat |
16:19 |
iqualfragile |
VanessaE: http://farm9.staticflickr.com/8545/8683466047_4a3b550234_z.jpg |
16:19 |
VanessaE |
heh |
16:26 |
sfan5 |
who keeps breaking the mingw build? |
16:27 |
sfan5 |
src/httpfetch.cpp:29:25: Fehler: sys/utsname.h: File or directory not found |
16:27 |
sfan5 |
src/httpfetch.cpp:57: error: aggregate ‘utsname osinfo’ has incomplete type and cannot be defined |
16:27 |
sfan5 |
src/httpfetch.cpp:58: error: ‘uname’ was not declared in this scope |
16:30 |
|
tomasbrod joined #minetest-dev |
16:31 |
sfan5 |
really? |
16:31 |
sfan5 |
someone put windows specific code into an #ifndef _MSC_VER |
16:31 |
sfan5 |
what the fuck |
16:32 |
sfan5 |
proller: why? |
16:32 |
sfan5 |
anyway: fix incoming in 5 mins |
16:33 |
|
Evolykane joined #minetest-dev |
16:34 |
proller |
oops |
16:34 |
xyz |
because we don't have a list of supported build environments |
16:34 |
xyz |
under MSVC it'll work fine |
16:34 |
proller |
better to move this code to porting |
16:35 |
BlockMen |
http://irc.minetest.ru/minetest-dev/2014-01-14#i_3547555 |
16:35 |
BlockMen |
^sfan5 |
16:35 |
sfan5 |
oh, someone already reported that |
16:36 |
sfan5 |
mhm, but still; we should consider making a list of supported build environments |
16:37 |
celeron55 |
and then what? expect everyone who codes to test on all of them? |
16:38 |
celeron55 |
i think it's pretty well known that minetest is built on mingw and msvc without stating it in some place that nobody reads |
16:39 |
celeron55 |
just try to avoid them and learn to fix them quick if they happen |
16:39 |
VanessaE |
doesn't matter too much what you build on if #1101 remains unfixed :-) |
16:39 |
ShadowBot |
https://github.com/minetest/minetest/issues/1101 -- 0.4.9-36-g574ed6a Minetest Client /mainmenu.lua:562: in function handle_multiplayer_buttons |
16:40 |
xyz |
if we only support a single build env officially then we only have to make sure it works under it |
16:42 |
|
tomasbrod left #minetest-dev |
16:42 |
|
Calinou joined #minetest-dev |
16:42 |
|
tomasbrod joined #minetest-dev |
16:43 |
tomasbrod |
Hello. Can I listen what is going on here? |
16:47 |
Calinou |
yes |
16:47 |
|
PilzAdam joined #minetest-dev |
16:58 |
ShadowNinja |
Yes, but _MSC_VER isn't correct, even if our only supported build is MSVC and it works there. |
17:06 |
ShadowNinja |
Um... http://pastebin.ubuntu.com/6757199/ |
17:08 |
ShadowNinja |
Hmmm, NVM, I somehow removed that. |
17:08 |
xyz |
no, if we only support MSVC for Windows then using _MSC_VER is okay |
17:11 |
ShadowNinja |
Or git got confused. There was a conflict near there. |
17:12 |
ShadowNinja |
And why is HTTPFetchRequest::HTTPFetchRequest() indented? |
17:15 |
xyz |
dunno, does it matter? |
17:15 |
ShadowNinja |
Yes, it's confusing and violates the code style guidelines. |
17:16 |
xyz |
well, then fix it |
17:20 |
|
kaeza joined #minetest-dev |
17:43 |
xyz |
there has to be function to remove detached inventory |
17:46 |
xyz |
it hurts when a server is popular, and there's a mod which creates a detached inventory for every player (unified inventory) |
17:46 |
xyz |
all those inventories are never unloaded from memory, but the actual problem is that all of them are sent to every player on connect |
17:55 |
|
Zeitgeist_ joined #minetest-dev |
17:55 |
|
Zeitgeist_ joined #minetest-dev |
17:58 |
|
rubenwardy joined #minetest-dev |
18:02 |
celeron55 |
xyz: yeah, it's at a bit of a proof-of-concept stage for that part |
18:03 |
celeron55 |
(we've been able to get away with it because originally it was used for mods like the creative mode and craftguide which make like exactly one) |
18:03 |
xyz |
guess something as simple as minetest.delete_detached_inventory(name) would work |
18:05 |
celeron55 |
there'd need to be some kind of logic too for selectively sending them to players but i'm not sure what that would mean |
18:06 |
celeron55 |
like, should a client request one before it gets sent to the client, or would it be pre-chosen somehow |
18:07 |
kahrl |
perhaps add a function to mark player-specific detached inventories as such |
18:07 |
kahrl |
those are only sent to that player |
18:11 |
xyz |
maybe we can just introduce more types of inventories? |
18:12 |
xyz |
i.e. player-specific inventory which is only sent to the player |
18:14 |
kahrl |
that would work too |
18:14 |
kahrl |
might need more "boilerplate" code if you add new inventory types, though |
18:15 |
kahrl |
and new protocol messages possibly |
18:15 |
xyz |
although what other inventory types are possible? |
18:18 |
BlockMen |
iqualfragile, #1104 |
18:18 |
ShadowBot |
https://github.com/minetest/minetest/issues/1104 -- Prevent placing node when player would be inside new node by BlockMen |
18:19 |
kahrl |
BlockMen: can you still place torches on the ground below you? |
18:20 |
BlockMen |
kahrl, oh, forgot that. will add a check for solidness |
18:21 |
celeron55 |
that will annoy many people |
18:22 |
celeron55 |
i'm sure people are already very used to being able to place blocks at their feet |
18:22 |
celeron55 |
well nodes |
18:22 |
celeron55 |
disabling placing a node that would block the camera would probably be appreciated by everyone |
18:23 |
xyz |
BlockMen: what about other players? |
18:23 |
celeron55 |
i seriously mean that "fixing" that issue is not automatically better |
18:26 |
BlockMen |
xyz, since other players are active objects, no |
18:26 |
BlockMen |
celeron55, what is good at placing a node "in the feet" of players? |
18:28 |
BlockMen |
but well, that isnt that "worse" than nodes in the head |
18:28 |
celeron55 |
i think it could be put in if we carefully listen to people's opinions it afterwards and possibly change it more |
18:29 |
celeron55 |
+about |
18:29 |
|
sapier joined #minetest-dev |
18:29 |
kahrl |
minor note: make sure to disable it in noclip mode |
18:30 |
sapier |
https://github.com/minetest/minetest/pull/1102 updated this one to work on win32 again |
18:30 |
Exio4 |
if it causes too much trouble and mixed feelings, make it an option! |
18:30 |
xyz |
inb4 every jump instruction is an option |
18:31 |
VanessaE |
http://xkcd.com/1172/ |
18:31 |
BlockMen |
no, it needs more change than i thought when checking for torches, etc |
18:31 |
BlockMen |
and is there a reason that server gets noticed before places is checked? |
18:32 |
celeron55 |
#define if(x) if((x) && g_settings->getBool(__FILE__ ## ":" __LINE__ ## "_enabled")) |
18:33 |
sapier |
guys could we just stop trying to find out who broke win32 and what could be done better and start to fix this issues? most of those are minor and can be fixed by anyone with a little bit programming knowledge within less time than each single discussion about this topic took ;-) |
18:33 |
celeron55 |
(how does CPP work? lol) |
18:35 |
celeron55 |
wait what |
18:35 |
celeron55 |
that would actually work |
18:36 |
kahrl |
let's merge it |
18:36 |
celeron55 |
...with some hacks |
18:36 |
celeron55 |
(it's not valid C++ as-is 8)) |
18:37 |
celeron55 |
but for example "#define if(x) if((x) && __LINE__ == 7)" does work |
18:39 |
kahrl |
we should also hack the lua interpreter so it does a similar thing |
18:40 |
celeron55 |
yes this is clearly beneficial |
18:42 |
sapier |
hack lua interpreter? what's this good for if we use system lua/luajit? |
18:42 |
kahrl |
sapier: sweet distro maintainer rage |
18:42 |
|
zat joined #minetest-dev |
18:43 |
sapier |
I have missed what you wanna hack, what's the issue we want to fix? |
18:43 |
PilzAdam |
re inventories: there should be a way to send the inventory of a player to other players, so stuff like a backback can be accessed by others |
18:44 |
sapier |
hmm I guess if we merge all inventories to a single base this wouldn't be a big deal |
18:45 |
sapier |
and would be even more clean than current implementation |
18:45 |
sapier |
but first we need to fix server to handle clients correctly |
18:45 |
kahrl |
sapier: the issue is that lua doesn't have a preprocessor that can do wonderful things like this http://irc.minetest.ru/minetest-dev/2014-01-15#i_3548283 |
18:45 |
proller |
https://github.com/freeminer/freeminer/commit/5b6334a6020e298469676e0819e0fb7abe92f2fe |
18:47 |
sapier |
shouldn't a detached inventory be automaticaly deleted once last reference is deleted? |
18:47 |
sapier |
this function is dangerous, e.g. if there's still a reference in lua and someone deletes the linked c/c++ element |
18:48 |
xyz |
can't do nothing about it |
18:48 |
xyz |
and no, I don't think they should be deleted automatically |
18:48 |
kahrl |
sapier: InvRef contains only an InventoryLocation, not an Inventory* |
18:49 |
sapier |
ok in this case it's most likely not a problem |
18:51 |
|
john_minetest joined #minetest-dev |
18:53 |
xyz |
ShadowNinja: ^^^ |
18:54 |
sapier |
xyz do you want to test #1102 prior merge? |
18:54 |
ShadowBot |
https://github.com/minetest/minetest/issues/1102 -- Fix win32 reading semaphore count not working (broke all queues) by sapier |
18:54 |
xyz |
sapier: did you test it? |
18:54 |
BlockMen |
xyz, i did |
18:55 |
sapier |
I tested on mingw blockmen on msvc |
18:55 |
xyz |
well, then what's the problem? |
18:55 |
sapier |
but the mingw fixes in httpfetch are still missing |
18:55 |
kahrl |
sapier, sfan5 merged those |
18:55 |
sapier |
he did? ok then I guess I need to rebase that one first |
19:01 |
sapier |
ok pushing now |
19:02 |
sapier |
ok now win32 version should work again |
19:10 |
|
Miner_48er joined #minetest-dev |
19:15 |
|
nore joined #minetest-dev |
19:20 |
|
Jordach joined #minetest-dev |
19:33 |
BlockMen |
ok, al walkable nodes can placed anyway now and if noclip priv and enabled you can still place nodes into the player |
19:37 |
xyz |
https://github.com/minetest/minetest/pull/1096#issuecomment-32399678 |
19:37 |
xyz |
wat |
19:37 |
xyz |
ShadowNinja: the doc he provided describes everything |
19:38 |
ShadowNinja |
xyz: It only seems to describe the first 6 entries... |
19:38 |
xyz |
is it okay if I post a facepalm reaction image to issue comments? |
19:42 |
ShadowNinja |
... |
19:43 |
xyz |
ah, I forgot to explain |
19:43 |
nore |
(any thoughts on my comment? sorry, can't stay long, and I have a buggy connection, so better do it quick) |
19:43 |
BlockMen |
are there still objections at #1104? |
19:43 |
ShadowBot |
https://github.com/minetest/minetest/issues/1104 -- Prevent placing node when player would be inside new node by BlockMen |
19:43 |
BlockMen |
^ celeron55 |
19:43 |
sapier |
can someone explain why a feature as specific as circuit is supposed to be merged to master? |
19:43 |
xyz |
but what to explain here? the doc says "Each bit of value represents one face of the block (Looking towards Z+)." |
19:43 |
xyz |
so there are 6 bits, a bit per side |
19:44 |
xyz |
ShadowNinja: ^ |
19:44 |
nore |
xyz, ShadowNinja, so? |
19:44 |
xyz |
nore: dunno, I'm not into mesecons/electronics |
19:45 |
xyz |
so, for example, I don't really understand why it should work this way (with circuit_states) |
19:46 |
sapier |
node_on_activate? |
19:47 |
sapier |
that code is quite clean but I feel it's messing up nodes and entities |
19:47 |
nore |
entities? |
19:47 |
sapier |
on_activate is not something to be done for nodes |
19:48 |
nore |
on_activate in the meaning "activate a lamp"... |
19:48 |
sapier |
then it's at least a name collision |
19:49 |
xyz |
nore: http://dsh4olp6fevhu.cloudfront.net/media/W1siZiIsIjIwMTQvMDEvMDYvMTgvMTIvMzgvMjk0L2lzc3VlX3NoaWZ0LnBuZyJdXQ/issue_shift.png |
19:50 |
xyz |
wait, it seems I actually read your message wrong, so nevermind |
19:50 |
xyz |
nore: can you explain what you meant? |
19:51 |
xyz |
nore: because how is that different from what it does? |
19:52 |
ShadowNinja |
Ah, I think I understand now. But this table seems awfully complex and hard to write yourself for all but the simplest devices. |
19:52 |
xyz |
well shit |
19:53 |
sapier |
on_activate/on_deactivate are already taken names using them for something different will result in confusion |
19:53 |
|
nore joined #minetest-dev |
19:54 |
xyz |
then what's your suggestion? |
19:55 |
ShadowNinja |
on_power_on on_power_off or similar. |
19:56 |
celeron55 |
BlockMen: you can push it, but before that wrap the infinitely long line somehow sanely |
19:57 |
celeron55 |
oh also, why is it that proller said "current submodule systems useless"? does anyone think anything similar or is this just proller being proller? |
19:57 |
sapier |
I'm against merging it ... this is what mods are supposed to do it's not a generic engine feature but a very very specific enhancement |
19:58 |
celeron55 |
sapier: note that it has to be done on the client side in order to not be annoying |
19:58 |
celeron55 |
BlockMen: probably consider what sapier has to say |
19:59 |
sapier |
in any case it has to be separated from core as good as possible, maybe a subfodler for it? and as clean interface as possible |
19:59 |
celeron55 |
i'd really like to hear PilzAdam first too |
19:59 |
ShadowNinja |
Not being able to place solid nodes at your position makes sense. Unless you're a ghost of something like that, but then you should have noclip. |
19:59 |
sapier |
and if this one should be merged I'm for reverting the force block loading, there's no reason for having both |
19:59 |
BlockMen |
sapier, i have done it lua before and its kinda laggy |
20:00 |
sapier |
yes but we plan to add client side lua which would solve this issue in a way more generic way |
20:00 |
VargaD |
current git can't connect to multiplayer games because of lua error: MAINMENU ERROR: ...est/minetest_install/share/minetest/builtin/mainmenu.lua:562: attempt to compare number with nil |
20:00 |
|
EvergreenTree joined #minetest-dev |
20:00 |
|
EvergreenTree joined #minetest-dev |
20:00 |
celeron55 |
sapier: it's not going to happen anytime soon |
20:00 |
BlockMen |
AFAIK the client side lua is a "soon tm" project |
20:01 |
ShadowNinja |
sapier: Oh, you mean circuit. It doesn't load blocks, and there are cases where you want to load a block without putting a circuit in it. |
20:01 |
xyz |
which means exactly what celeron55 said |
20:01 |
sapier |
most likely but it'd be sure this feature is a interim solution to be removed |
20:01 |
celeron55 |
maybe it should be written as a comment in there |
20:02 |
sapier |
the reason why we added force block loading was to enable large machines ... isn't this what that circuit change is about too? |
20:02 |
celeron55 |
like // NOTE: This is to be eventually implemented by a mod as client-side Lua |
20:02 |
BlockMen |
ok, im confused. what are we talking about now. circuit or place node prediction |
20:02 |
sapier |
circuit |
20:02 |
ShadowNinja |
nodePlacementPrediction should be handled by client-side Lua. |
20:02 |
nore |
xyz, I meant a table of allowed connections |
20:02 |
ShadowNinja |
Then you can just predict that it wasn't placed and not place it server-side. |
20:03 |
celeron55 |
ShadowNinja: there are a million things that should be hnadled by it, so maybe it doesn't make sense to tag all them with comments... |
20:03 |
celeron55 |
handled* |
20:03 |
nore |
and instead of connecting to nodes only along different sides, connect along those connections |
20:03 |
sapier |
maybe we should do the basics prior spending large amount of work for hacks? |
20:03 |
sapier |
I know the basics are a lot of work without visible effect |
20:03 |
celeron55 |
(oh also, i just noticed there are two slightly similar discussions going on) |
20:04 |
xyz |
nore: I still am not following |
20:04 |
sapier |
hmm guess we're all talking about different things :-) |
20:04 |
nore |
I mean: now wires connect to wires above/below/next to them |
20:04 |
ShadowNinja |
circuit doesn't allow for dynamic connections, so mesecons won't use it. And I don't know of any other mods that it could be usefull for. |
20:04 |
xyz |
nore: are you talking about stuff like http://mesecons.net/items/crossing_insulated.php |
20:04 |
nore |
xyz, that's the second point |
20:05 |
sapier |
so what is curcuit good for? |
20:05 |
xyz |
nore: but it should be possible with the circuit_states system |
20:05 |
nore |
the first is about being able to make basic insulated wires |
20:05 |
celeron55 |
anyway for clarification: i have thus far only talked about blockmen's pull request and general client-side lua |
20:06 |
BlockMen |
celeron55, https://github.com/BlockMen/minetest/commit/de4627775e01425fabe229adcbb3ecb5d3453d25 |
20:06 |
nore |
xyz, circuit_states has a main problem (which was why the first version of insulated wire was removed from mesecons): |
20:06 |
nore |
it will make the wire power itself if there is a loop |
20:06 |
ShadowNinja |
And digilines needs to send tables, not just bools, and technic has to send packets of variable power. |
20:06 |
sapier |
celeron #1104? |
20:06 |
ShadowBot |
https://github.com/minetest/minetest/issues/1104 -- Prevent placing node when player would be inside new node by BlockMen |
20:07 |
BlockMen |
sapier, excactly that |
20:08 |
sapier |
does this block building a node tower below you? |
20:08 |
BlockMen |
sapier, no, ofc not |
20:08 |
celeron55 |
my standing on #1096 stays what i commented in it; i.e. if it is actually very good for mesecons while still being generic (and not needing infinite extensions in the future), it's fine to me |
20:08 |
ShadowBot |
celeron55: Error: ProcessTimeoutError: Process #189 (for String.re) aborted due to timeout. |
20:08 |
xyz |
nore: ah, I see |
20:09 |
celeron55 |
^ the bot died |
20:10 |
sapier |
ok #1104 isn't as big as it can't be removed without major issues once client side lua is implemented |
20:10 |
ShadowBot |
https://github.com/minetest/minetest/issues/1104 -- Prevent placing node when player would be inside new node by BlockMen |
20:10 |
ShadowNinja |
s/'t//? |
20:10 |
celeron55 |
sapier slipped his intentions of sabotaging minetest development! |
20:11 |
celeron55 |
he is probably working for mojang |
20:12 |
sapier |
what? |
20:12 |
sapier |
are you kidding? I just don't want hacks to be added as big as blocking major improvements |
20:13 |
celeron55 |
lol, gotta love badly written and understood english |
20:13 |
BlockMen |
obviously he is kidding |
20:13 |
sapier |
I think so too ;-) |
20:14 |
sapier |
Actually I don't want to encourage people to write hacks bigger then the final solution |
20:15 |
BlockMen |
well, yes or no? #1104 |
20:15 |
ShadowBot |
https://github.com/minetest/minetest/issues/1104 -- Prevent placing node when player would be inside new node by BlockMen |
20:15 |
sapier |
I'm fine with 1104 merge it |
20:15 |
|
tomasbrod left #minetest-dev |
20:16 |
ShadowNinja |
Such a simple change really shouldn't need so much discussion. This may not be the final version, but it doesn't have to, it will do until someone designs client-side Lua that can do this. |
20:16 |
ShadowNinja |
It shouldn't be that hard to port it too Lua. |
20:17 |
xyz |
I don't even have any idea of what this magical lua client-side api will be capable of |
20:17 |
sapier |
ShadowNinja: I don't se anyone blocking that one |
20:18 |
sapier |
client side lua api will be able to do >>temporary<< modifications to all nodes and most likely entities too |
20:19 |
|
us_0gb joined #minetest-dev |
20:19 |
sfan5 |
temporary = until mapblock re-received, right? |
20:19 |
sapier |
yes but I guess we need some timeout to revert it too |
20:20 |
sapier |
so a change is either confirmed/denied by later message from server or reverted by some timeout |
20:20 |
sapier |
at least that's the current idea |
20:20 |
ShadowNinja |
BlockMen: I see two lines that are long. They should be <90 characters. |
20:21 |
BlockMen |
ShadowNinja, still? |
20:21 |
ShadowNinja |
And if conditional block continuations shouldn't be indented the same as the code block. |
20:21 |
xyz |
sapier: can't we just utilize the api we already have? |
20:22 |
sapier |
L913 |
20:22 |
sapier |
L2830 |
20:22 |
us_0gb |
BlockMen: I don't know about the text editor you use, but in Gedit, you can set a line length and a line will be drawn to show you which lines exceed it. |
20:22 |
sapier |
no we can't because client side code is received from server, we need to have a way more safe api on client side |
20:22 |
BlockMen |
ok. sapier, thx |
20:22 |
sapier |
-safe +save |
20:23 |
xyz |
no, safe is a better word |
20:23 |
sapier |
we can't allow a server sending lua code to client transmitting users disk to some arbitrary server |
20:23 |
xyz |
still, ignoring this aspect, isn't it possible to reuse? |
20:23 |
xyz |
say, we implement proper safety |
20:23 |
sapier |
I hope to reuse a lot |
20:24 |
sapier |
client side lua would be quite similar to async environments |
20:24 |
xyz |
why? |
20:25 |
sapier |
async env is already receiving code from another lua stack this is basicaly what needs to be done for client lua too |
20:25 |
xyz |
well, it's pointless to talk about this anyway since there's no code |
20:25 |
sapier |
and no I will not even discuss about adding security to client lua later |
20:26 |
sapier |
client side lua beeing able to harm client is a absolute no-go |
20:27 |
sapier |
it isn't pointless the more opinions are considered on implementation the less needs to be fixed later |
20:27 |
BlockMen |
gonna push now |
20:28 |
xyz |
as usual, you're nitpicking and ignoring the actual message |
20:28 |
ShadowNinja |
Agreed. Basic server-side limits would be good too. |
20:28 |
xyz |
well, I really don't care so long as you provide the code |
20:29 |
BlockMen |
xyz, me? |
20:29 |
xyz |
no, I was talking to sapier |
20:29 |
BlockMen |
k |
20:30 |
sapier |
once I fixed server code ... unless there is someone who is interested in doing background improvements? |
20:32 |
ShadowNinja |
sapier: What was unsafe about get/setmetatable? The lua-users wiki entry on sandboxes notes that it can by used to modify the string metatable, which could mess up things outside the sandbox. But mods can already mess with other mods on other ways, like minetest = nil. |
20:33 |
ShadowNinja |
(This isn't really a sandbox, but a lot of that seems relevant to security) |
20:33 |
sapier |
we can't make current api save without breaking mods |
20:34 |
ShadowNinja |
s/save/safe/ !! |
20:34 |
sapier |
ok safe :-) |
20:36 |
sapier |
problem with sand boxes is you only need a single way to breakout to make em useless |
20:36 |
|
proller joined #minetest-dev |
20:37 |
xyz |
mediawiki has Lua scripting support in Scribunto extension |
20:38 |
sapier |
never heare about scribunto |
20:38 |
xyz |
http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Differences_from_standard_Lua |
20:39 |
sapier |
good point to start for client side lua |
20:41 |
sapier |
quite similar to what I suggested for security hardening ... and even more then my suggestions |
20:41 |
sapier |
but as you see this is not an option for scriptapi |
20:43 |
ShadowNinja |
It looks like most thinks are safe, with the notable exception of os.execute. Anything that touches the filesystem will also be unsafe on a client, and unsafe outside minetest directories on a server. |
20:44 |
ShadowNinja |
Oh, and load*. bytecode can get arround the limitation it seems. |
20:44 |
|
sapier1 joined #minetest-dev |
20:46 |
VargaD |
What does engine.get_textlist_index("favourites") do? |
20:46 |
sapier1 |
it reads current selection from textlist named favourites |
20:46 |
VargaD |
hmm, nothing selected that's why it fails |
20:47 |
VargaD |
thanks sapier |
20:47 |
sapier1 |
it's only available in mainmenu! |
20:48 |
VargaD |
sapier1: I'm just using current git and I can't connect to my server because of it |
20:48 |
VargaD |
AINMENU ERROR: ...est/minetest_install/share/minetest/builtin/mainmenu.lua:562: attempt to compare number with nil |
20:49 |
VargaD |
great I managed to connect but is is still a bug |
20:49 |
VargaD |
seems trivial to fix |
20:49 |
sapier1 |
why does this happen now? |
20:50 |
VargaD |
I'm using uncahnged current git |
20:50 |
VargaD |
can someone reproduce the problem |
20:50 |
BlockMen |
sapier1, its caused by 8966c16ad2 i guess |
20:50 |
VargaD |
pls try to connect to some server without selecting any server |
20:51 |
sapier1 |
quite possible true so textlist should return correct values |
20:57 |
VargaD |
addig "fav_idx ~= nil and " fixes the problem |
21:00 |
sapier1 |
ok if it's that simple make shadow push it |
21:01 |
VargaD |
https://github.com/vargad/minetest/commit/1232f72d71718bc18b82e58aa576142126c339de |
21:03 |
BlockMen |
same issue at singleplayer when no world selected |
21:03 |
BlockMen |
so you can add that for too |
21:04 |
VargaD |
ok |
21:04 |
BlockMen |
L766 |
21:04 |
VargaD |
a moment |
21:05 |
ShadowNinja |
VargaD: "engine.get_textlist_index returns nil instead of 0 when nothing is selected. (Also, added: engine.get_table_index)" -- formspec_table description. You can remove the > 0 check. |
21:05 |
VargaD |
ok, thanks ShadowNinja |
21:10 |
ShadowNinja |
proller: The server step is always at least 0.1 by default, so the "lag" won't be lower than 100. Can you fix your step length measurement to account for that? |
21:11 |
proller |
not always. |
21:13 |
Sokomine |
it would be good if that bug vargad would be fixed soon. i pulled latest git a few minutes ago and had the same problem. if it is such an easy fix, it ought to be fixed fast |
21:16 |
PilzAdam |
celeron55, I agree to sapier1 regarding #1096 |
21:16 |
VargaD |
I sent a pull request |
21:16 |
ShadowBot |
https://github.com/minetest/minetest/issues/1096 -- Add circuit simulator. by Selat |
21:17 |
VargaD |
https://github.com/minetest/minetest/pull/1105 |
21:21 |
VargaD |
Sokomine: workaround: just select something |
21:25 |
iqualfragile |
why werent sapiers security hardening patches integrated? |
21:25 |
iqualfragile |
i did not quite get the reasoning? they would have broken one single mod and thats it |
21:25 |
sapier1 |
because they break mod compatibility |
21:25 |
iqualfragile |
(or maybe they would have broken multiple but just the irc bot would have been unfixable broken) |
21:25 |
iqualfragile |
well, not even that |
21:26 |
iqualfragile |
you could have an exeption list in your minetest.conf or something |
21:26 |
sapier1 |
no if you grant a single mod extended rights your grant it to all |
21:27 |
sapier1 |
you can't really isolate mods from each other while running in same lua environment |
21:29 |
Sokomine |
and sometimes they do need to interact and even provide interfaces for other mods because that's needed |
21:30 |
Sokomine |
the security hardening would be very fine. i'd feel safer if mods would not be able to do any damage. right now it means checking each mod manually or hoping that someone else checked it before |
21:30 |
sapier1 |
in theory everything is possible but implementing a compatible safe environment is that much work it's not worth it |
21:31 |
Sokomine |
VargaD: thanks. selecting an entry really allowed me to connect |
22:06 |
|
BlockMen left #minetest-dev |
22:32 |
|
zat1 joined #minetest-dev |
22:33 |
iqualfragile |
http://sebsauvage.net/paste/?0347fcc20aa806af#kZc6lw1jtZinJzgqjfyrUn+0dY11z7RmQVyrN1fiF1E= minetest crashed when i tried to open a chest |
23:38 |
|
john_minetest left #minetest-dev |