Minetest logo

IRC log for #minetest, 2022-08-22

| Channels | #minetest index | Today | | Google Search | Plaintext

All times shown according to UTC.

Time Nick Message
00:15 YuGiOhJCJ joined #minetest
00:49 wolfshappen joined #minetest
00:55 diceLibrarian joined #minetest
00:58 nekobit joined #minetest
01:01 fluxionary joined #minetest
01:01 olliy joined #minetest
01:13 smk joined #minetest
01:22 ball I feel like it's going to take me a while to tunnel back from -7000 at -32 but it's better than trying to hack my way through the jungle trees.
01:47 Trifton joined #minetest
02:17 Zambyte joined #minetest
02:26 fling joined #minetest
02:34 ball join #bikes
02:34 ball oops
02:42 gff joined #minetest
02:50 fling joined #minetest
02:51 Verticen joined #minetest
03:31 Icalasari joined #minetest
03:33 Icalasari Hey. Been told my indenting sucks and it's hiding errors from me. Issue is... I can't figure out what is wrong with my indenting and I can't find any good guides on indenting. Could somebody please either look at my indenting and help explain to me so I can avoid such mistakes, or point me to a good guide on how to properly indent since my Google
03:33 Icalasari skills are failing me on this?
03:37 ball Icalasari: I don't code for Minetest but I'm willing to have a look at some code if you have an example handy.
03:37 Icalasari Self teaching Lua by modding for SRB2 was a mistake I swear to god XD  I probably have SO many bad practices
03:37 Icalasari Thanks Ball
03:37 ball brb
03:37 Icalasari I need to go find the snippet anyways so that'll take a minute or two
03:39 Icalasari https://pastebin.com/JDhCLVWv
03:45 ball I don't know lua but I'm willing to have a look.
03:46 Icalasari Thanks
03:46 Icalasari Posted the pastebin there
03:47 ball Trying to match up some brackets, now...
03:54 Icalasari I hope it isn't too horrendous
03:55 ball It might be awesome.  Like I said, I don't know lua.  I used to code, years ago though, so I'm having a crack at it.
04:00 MTDiscord joined #minetest
04:00 ball I seem to have two or three stray 'ends" and a couple of stray closing braces at the end.
04:01 ball Ah wait, I probably misnested your elseifs.
04:01 Icalasari Ah crap over copied, the }) and end right after that map to an earlier snippet of the code
04:02 ball Hang on, I'll paste what I have...
04:02 Icalasari Thanks again
04:03 ball Not sure whether those elseifs are supposed to be staircased...
04:04 ball http://grex.org/~ball/Icalasari.lua
04:05 ball ...and I used spaces where lua people probably use tabs, just to keep my editor sane.
04:05 ball How does it look?
04:07 Icalasari It looks great, I'm going to compare to my code to see what I can glean from how you indented it and learn from it so I can catch errors myself better in the future and indent better
04:07 Icalasari Thank you SO much
04:08 ball Like I said, I don't know lua so my assumptions may be off and that'll be reflected in my indenting.
04:08 ball Hope it helps though.
04:10 Icalasari Lua can be coded all on one line. The indenting is meant to help people organize it, so it will help a lot
04:10 Icalasari Also I still question the sanity of whoever made a language that can code a program all on one line
04:13 ball That's partly historical.  When your source code comes in on a spool of paper tape, lines are for human convenience.
04:14 Icalasari Ah, so not so much sanity based as "Oh dear god I hate these limitations of the time" based
04:14 ball ...and carriage returns etc. used to get stripped out as whitespace (by the preprocessor?) as a first step towards making it digestable to the compiler
04:15 ball I think I prefer languages where whitespace (outside of quotes) has no meaning.  It means I can arrange things for readability.
04:15 ball ...since it's not going to impact the object code in any case.
04:15 ball I think lua's interpreted, so perhaps that doesn't apply.
04:16 ball Thinking about some BASIC interpreters I used in the 8-bit era, only the really good ones let us indent code.
04:16 ball Some of the more constrained machines didn't.
04:22 Icalasari Still can't spot the error that I've been told was buried in the indenting, but it did finally click how to properly indent, so thank you again for that
04:26 ball You may have just learned how to indent like an old man. ;-)
04:27 Icalasari XD
04:27 Icalasari Hey, I'm 30 myself so I'm not a spring chicken anymore either
04:33 hedae[m] For most programming languages I recommend just using automatic formatters since it saves time trying to get everything formatted.
04:33 ball Good luck with your project, anyway.  I'll sit in the comfy chair now and listen to the radiogram for a bit.
04:33 ball hedae[m]: That sounds like a good idea.  I'm guessing there's one for lua?
04:35 hedae[m] ball: For Lua I use https://github.com/Tencent/LuaHelper
04:37 ball Thanks.  I might feed it Icalasari's code to see what it thinks.
04:38 hedae[m] Icalasari:  The main issues I've noticed in your code are that you've forgotten to close some blocks with end, and your if statements use "=" (assignment) instead of "==" (equality comparison)
04:39 ball Oooh, that'd break things.
04:41 Icalasari I'm not spotting which blocks I forgot to close (might be my newbiness in that regard). As for the ==, I was actually told I needed to use == for it (which... I did think a bit weird as they said it spits out a true/false statement but also can be used to make the variables the same, but they've been the closest thing I've have to a teacher on this
04:41 Icalasari so figured it was some other weird function)
04:42 ball o/ Goodnight
04:42 ball left #minetest
04:44 Icalasari Ciao, Ball, even though you can't see this XD
04:44 hedae[m] There's one missing end, which I assume would be inserted after line 30 to close the if statement on line 28. As for ==, it doesn't do assignment (that would just be =). What it does is it checks if the left and right hand sides are equal, that is, a == b checks if a and b are equal.
04:47 Icalasari ...Whelp, it WAS newbieness - Guess the people on the forum never considered that I may be misunderstanding how Return works and thinking it *could not have an end before it without breaking things* XD
04:47 Icalasari Goes to show, a newbie will always find a way to baffle an expert
04:48 Icalasari Gah, still having the unexpected symbol near local error
04:50 hedae[m] Could you share your updated file?
04:50 calcul0n joined #minetest
04:52 Icalasari https://pastebin.com/JDhCLVWv
04:52 Icalasari Error currently is 'then' expected near '=' on line 34. As for my use of tabs, it's easier on my own eyes ^^;
04:55 hedae[m] You need the double equals to do comparisons in if statements
05:01 Icalasari kk
05:03 Icalasari Now I'm confused. So I do need the == after all?
05:04 hedae[m] Yes. Essentially, you get a boolean by comparing two values with ==, then you can use that boolean as the condition of an if statement (for example, you probably want to check if melrot is 0, so you'd use if melrot == 0)
05:06 Icalasari Oh you are ki-_I mixed up where to put the == and somehow it didn't click once_
05:15 Icalasari I really hope that's due to my insomnia else I have a feeling my coding adventures are going to be... Something
05:16 Icalasari Now it's not growing when it did before but I can look at an earlier version to likely deduce what I broke there. Thanks again for all the help
05:19 Icalasari ...Or like an idiot I forgot to save iterations between major changes
05:22 Icalasari Speaking of insomnia, should probably get some sleep. Night
06:23 mrkubax10 joined #minetest
06:24 Flabb joined #minetest
06:54 specing joined #minetest
06:56 wikifurry-12 joined #minetest
07:04 wikifurry-12 left #minetest
07:04 harry-wood joined #minetest
07:11 harry-wood joined #minetest
07:18 harry-wood joined #minetest
07:57 ___nick___ joined #minetest
08:02 Fleckenstein joined #minetest
08:25 appguru joined #minetest
08:28 lemonzest joined #minetest
08:47 Fixer joined #minetest
08:48 Sven_vB joined #minetest
09:32 wallabra joined #minetest
09:46 YuGiOhJCJ joined #minetest
09:59 proller joined #minetest
10:14 YuGiOhJCJ joined #minetest
10:34 Soni joined #minetest
10:40 ghoti BuckarooBanzai: I figured it out, I just had my luacontroller time test in the wrong place. :/  Should I submit my change as a PR, do you think? Might others want to proteect themselves from fast interrupts on luacontrollers too?
11:02 ghoti BuckarooBanzai: and while I'm at it, could you tell me if there is any standard way of documenting knobs that can be added to world.mt or a config file? I'm coming up short.
11:06 sfan5 settingtypes.txt is the standard way
11:37 ghoti Ah, I hadn't come across that yet! Thanks.
11:45 ghoti So .. when specifying "fload default/min/max", what if there is no real upper limit to be applied? Is that why I see 1000000 there in a few places?
11:57 ghoti What is limited when luacontroller_lightweight_interrupts==false?
12:03 ghoti I see that it uses a node timer instead of the "global action queue", I just don't know how that is significant. :)
12:05 definitelya joined #minetest
12:09 BuckarooBanzai ghoti: node timers only run when a player is near or the area is forceloaded, the "global action queue" always runs (_everywhere_)
12:21 ghoti Does that mean that a luacontroller with interrupts functions as if it is near a world anchor, and never goes to sleep?
12:39 ghoti There we go, https://github.com/minetest-mods/mesecons/pull/621
12:40 proller joined #minetest
12:40 ghoti My first minetest PR. :)
12:44 ghoti Oh bother, it even includes a typo. Fixed.
12:46 ghoti Meh, I will close and resubmit.
12:47 MTDiscord <Bla> lol yeah just commented a few secs after you closed it
12:48 ghoti sorry about that. :/
12:48 ghoti Other than the typo, did it look reasonable?
12:51 MTDiscord <Bla> I just skimmed over it and you should probably wait for someone that knows Lua ?
12:55 calcul0n ghoti, i guess it should just emit a warning and adjust the time value instead of an error
12:55 calcul0n there's a send_warning function passed as param to get_interrupt for that
12:56 ghoti calcul0n: would a warning actually stop people from specifying low interrupt times though?
12:58 calcul0n no, but you can just adjust it yourself to themin value
12:58 calcul0n error would certainly stop them as it would crash the game :)
12:59 ghoti I think I'm not getting what you're saying.. my goal here is to stop the fast cycling on luacontrollers. How does a warning do that?
12:59 ghoti Where I placed the error, it shows up when the player presses "Execute" in the luacontroller.
13:00 ghoti Would a warning stop the code from being executed as well?
13:00 calcul0n a warning doesn't, modifying time yourself if necessary will
13:01 calcul0n ie if time < minvalue then send_warning(...) time = minvalue end
13:01 ghoti The line right before my edit was: `if type(time) ~= "number" then error("Delay must be a number") end`
13:01 ghoti Ah, I see. Yes, that would let existing luacontrollers continue functioning, though slower.
13:01 calcul0n yes
13:24 Desour joined #minetest
13:24 proller joined #minetest
13:41 mrkubax10 joined #minetest
13:46 Sammy62 joined #minetest
14:24 fling joined #minetest
14:30 ___nick___ joined #minetest
14:34 ___nick___ joined #minetest
15:32 Fleckenstein joined #minetest
15:55 fling joined #minetest
16:05 Alias joined #minetest
16:10 fling joined #minetest
16:10 appguru joined #minetest
16:22 fling joined #minetest
16:40 Talkless joined #minetest
16:47 Sven_vB joined #minetest
17:18 Sven_vB joined #minetest
17:19 fling joined #minetest
17:48 fling joined #minetest
17:52 Fixer joined #minetest
18:19 hmmmm joined #minetest
18:25 debiankaios joined #minetest
18:34 FreeFull joined #minetest
18:51 specing_ joined #minetest
18:56 Sven_vB joined #minetest
19:00 Rafi59 joined #minetest
19:05 MTDiscord <PrairieWind> howdy ghoti
19:16 Sven_vB joined #minetest
19:20 ghoti hi PrairieWind
19:26 mrkubax10 joined #minetest
19:27 ghoti Hey, could anyone help me learn from Desour's comment on https://github.com/minetest-mods/mesecons/pull/622 ?  This works for the case I wrote it for, but presumably there are other ways luacontrollers can be exploited as high speed switches. How?
19:56 Desour joined #minetest
20:04 calcul0n_ joined #minetest
20:25 Verticen joined #minetest
20:29 YuGiOhJCJ joined #minetest
20:36 proller joined #minetest
21:13 calcul0n_ ghoti, imho a comment saying "useless" with no explanation is just... useless :)
21:14 calcul0n_ even if there are other possible exploits your change would probably remove 99% of the abusive uses
21:32 Desour ghoti: I just saw your message in the logs. to answer your question: you can easily for example make a loop with diode gates from one luacontroller port to another one to get shorter delays
21:33 Desour or build some fast oscillator and connect it with a luacontroller
21:34 Desour if you want to avoid circuits oscillating with a high frequence, you can change the mesecons heat settings
21:35 Desour of course, this doesn't mean that one can not build lag machines with mesecons then
21:35 Desour (as one can still place many effectors next to each other and power all at once)
21:36 Desour mesecons should maybe try at some point to run its actionqueue steps over more than one server step each
22:00 Sven_vB joined #minetest
22:02 Sven_vB joined #minetest
22:08 Desour_ joined #minetest
22:31 YuGiOhJCJ joined #minetest
22:32 panwolfram joined #minetest
22:44 YuGiOhJCJ joined #minetest
22:55 YuGiOhJCJ joined #minetest
23:26 AliasAlreadyTake joined #minetest
23:36 Jovan joined #minetest

| Channels | #minetest index | Today | | Google Search | Plaintext