| # | Time | User | Message |
| 1 | 08:32:22 | 1F616EMO@MT_TWI | ❱ Joined the game |
| 2 | 09:08:55 | Maverick2797@MT_TWI | ❱ Joined the game |
| 3 | 09:09:06 | Maverick2797@MT_TWI | heyo o/ |
| 4 | 09:09:17 | 1F616EMO~nya @TG | Hi |
| 5 | 09:09:19 | 1F616EMO~nya @TG | !status |
| 6 | 09:09:19 | SYSTEM@MT_RPLACE | # Server: version: 5.12.0-1f616emo | game: rPlace | uptime: 27d 17h 32min 37s | max lag: 0.0914s | clients: |
| 7 | 09:09:19 | SYSTEM@MT_RPLACE | # Server: Rules at https://github.com/C-C-Minetest-Server/documents/blob/main/rplace/RULES.md . Contact [email protected] for any questions or reports. |
| 8 | 09:09:20 | SYSTEM@MT_TWI | # Server: version: 5.16.0-1f616emo | game: Minetest Game | uptime: 23h 29min 27s | max lag: 0.427s | clients: 1F616EMO, Maverick2797 |
| 9 | 09:09:20 | SYSTEM@MT_TWI | # Server: Welcome to 1F616EMO Server! Type /spawn to visit the spawnpoint. |
| 10 | 09:09:21 | SYSTEM@MT_SANDBOX | # Server: version: 5.16.0-1f616emo | game: Minetest Game | uptime: 22h 59min 23s | max lag: 0.0932s | clients: |
| 11 | 09:09:21 | SYSTEM@MT_SANDBOX | # Server: This is the 1F616EMO Sandbox Server. This server tests new mods and features. |
| 12 | 09:09:29 | 1F616EMO@MT_TWI | Forgot that I am in game |
| 13 | 09:09:36 | Maverick2797@MT_TWI | lol |
| 14 | 09:09:48 | 1F616EMO@MT_TWI | After reading il_timetable I got inspiration on how to write stn_v3 |
| 15 | 09:10:17 | 1F616EMO@MT_TWI | I plan to do some timetabling on trains going through eGRO so they don't jam |
| 16 | 09:10:27 | Maverick2797@MT_TWI | that would make sense |
| 17 | 09:10:47 | Maverick2797@MT_TWI | hopefully they stay spaced out |
| 18 | 09:11:11 | 1F616EMO@MT_TWI | depint = trip_time / number_of_rolling_stocks |
| 19 | 09:15:44 | 1F616EMO@MT_TWI | Maverick2797: Where will your new train stop? |
| 20 | 09:16:14 | Maverick2797@MT_TWI | that's what I'm trying to work out... nowhere at this station works well enough to make a runaround |
| 21 | 09:16:42 | 1F616EMO@MT_TWI | Would adding one more track and platform sound crazy? |
| 22 | 09:16:59 | 1F616EMO@MT_TWI | I believe you're trying to avoid that |
| 23 | 09:17:23 | Maverick2797@MT_TWI | yeah trying to avoid that if possible, I like not having a platform that backs onto nothing at the moment |
| 24 | 09:18:10 | Maverick2797@MT_TWI | plus if I did that I might as well make the RHT on this side the platform, but I'd lose the bypass track in the process |
| 25 | 09:18:45 | 1F616EMO@MT_TWI | Isn't these multi-tracked segments the bypass? |
| 26 | 09:18:49 | Maverick2797@MT_TWI | I suppose I could link the current end of the mainline back around as a baloon loop |
| 27 | 09:18:50 | 1F616EMO@MT_TWI | *Aren't |
| 28 | 09:19:20 | 1F616EMO@MT_TWI | Yeah, a baloon is good |
| 29 | 09:19:30 | 1F616EMO@MT_TWI | and you mentioned if there's an extention, it would be to the north |
| 30 | 09:19:33 | Maverick2797@MT_TWI | this is more the freight yard, but I suppose it could be, depending on where the mainline was routed to next |
| 31 | 09:20:00 | 1F616EMO@MT_TWI | If it heads north, the yard track can be transformed into a decent Y-junction |
| 32 | 09:20:05 | Maverick2797@MT_TWI | I don't currently have plans to expand to the north, but someone else could |
| 33 | 09:20:39 | Maverick2797@MT_TWI | that's true |
| 34 | 09:21:02 | Maverick2797@MT_TWI | it wouldn't be that tight of a curve to turn north from the yard tracks |
| 35 | 09:21:25 | 1F616EMO@MT_TWI | Best if express train can pass without decelerating |
| 36 | 09:21:34 | 1F616EMO@MT_TWI | and there's plenty of room to do that |
| 37 | 09:22:12 | 1F616EMO@MT_TWI | I have no solid plan to extend NX/S21 yet, but if I ever do, it makes no sense to extend into the ocean of emptiness on the east |
| 38 | 09:22:57 | Maverick2797@MT_TWI | agreed, and the terrain directly east from the station goes nowhere useful |
| 39 | 09:23:50 | Maverick2797@MT_TWI | yeah, I'm just gonna make the balloon loop for now, diverging off to the north can be a later project |
| 40 | 09:58:41 | 1F616EMO@MT_TWI | Maverick2797: Bug (?) report: A new env whose /env_setup have not been run will have F = nil (probably S = nil too, not tested) |
| 41 | 09:59:31 | Maverick2797@MT_TWI | are F and S not init'd as {} ? |
| 42 | 09:59:54 | 1F616EMO@MT_TWI | S is, but F isn't |
| 43 | 09:59:59 | 1F616EMO@MT_TWI | BEfore /env_setup is run |
| 44 | 10:00:25 | 1F616EMO@MT_TWI | This is a case on the very edge though |
| 45 | 10:00:43 | Maverick2797@MT_TWI | interesting |
| 46 | 10:00:45 | 1F616EMO@MT_TWI | Nobody would punch a control panel before the first /env_setup.lua run |
| 47 | 10:00:58 | Maverick2797@MT_TWI | not intentionally |
| 48 | 10:02:15 | 1F616EMO@MT_TWI | I did that for *science* |
| 49 | 10:03:30 | Maverick2797@MT_TWI | [offline testing] just created a new env, saved an ops panel with no code to the new inv, punched it |
| 50 | 10:03:37 | Maverick2797@MT_TWI | just the standard warning |
| 51 | 10:03:53 | 1F616EMO@MT_TWI | Did you run /env_setup on that env? |
| 52 | 10:04:05 | Maverick2797@MT_TWI | nope |
| 53 | 10:04:10 | Maverick2797@MT_TWI | env_create only |
| 54 | 10:04:12 | 1F616EMO@MT_TWI | And di you try to reference a function in the F table? |
| 55 | 10:04:17 | 1F616EMO@MT_TWI | My code is F.fx() |
| 56 | 10:04:35 | 1F616EMO@MT_TWI | or print(type(F)) |
| 57 | 10:06:35 | Maverick2797@MT_TWI | F.notafunction() -> LUA Error: (load):1: attempt to index global 'F' (a nil value) |
| 58 | 10:06:44 | 1F616EMO~nya @TG | Yeah this is what I'm talking about |
| 59 | 10:06:53 | Maverick2797@MT_TWI | it doesn't crash the server, I don't see that as too bad |
| 60 | 10:06:58 | 1F616EMO~nya @TG | It should show attempt ot call nil instead of F is nil |
| 61 | 10:07:06 | 1F616EMO~nya @TG | It's a low priority bug yeah |
| 62 | 10:07:44 | Maverick2797@MT_TWI | wonder how/why that was overlooked in the atc.env_new() function? |
| 63 | 10:08:15 | 1F616EMO@MT_TWI | Cuz they "F"-in forgot? |
| 64 | 10:08:28 | 1F616EMO@MT_TWI | Hmm |
| 65 | 10:08:32 | 1F616EMO@MT_TWI | Cuz they "F"orgot |
| 66 | 10:08:42 | Maverick2797@MT_TWI | can't be F-in, there's no F-in it to start with |
| 67 | 10:17:25 | Maverick2797@MT_TWI | were you intending to ext_int a stone tile? |
| 68 | 10:17:43 | 1F616EMO@MT_TWI | Nah, a panel that apprantly didn't get registered |
| 69 | 10:17:53 | 1F616EMO@MT_TWI | Probably due to the lack of F? |
| 70 | 10:17:55 | 1F616EMO@MT_TWI | IDK |
| 71 | 10:19:16 | 1F616EMO@MT_TWI | Doing the first STN_v3 route |
| 72 | 10:19:31 | 1F616EMO@MT_TWI | Sadly upgrading requires halting all trains |
| 73 | 10:22:33 | 1F616EMO@MT_TWI | prays for no error bombs |
| 74 | 10:22:47 | 1F616EMO@MT_TWI | Testing on a very short shuttle |
| 75 | 10:22:56 | 1F616EMO@MT_TWI | huh |
| 76 | 10:23:00 | 1F616EMO@MT_TWI | forgot to change env |
| 77 | 10:23:06 | 1F616EMO@MT_TWI | The most silly error |
| 78 | 10:23:19 | Maverick2797@MT_TWI | if event.int then interrupt(atc_pos) interrupt_pos(atc_pos) end |
| 79 | 10:23:35 | 1F616EMO@MT_TWI | ANOTHER |
| 80 | 10:25:22 | 1F616EMO@MT_TWI | damnit |
| 81 | 10:25:26 | 1F616EMO@MT_TWI | I pasted code into the wrong env |
| 82 | 10:25:36 | 1F616EMO@MT_TWI | done |
| 83 | 10:25:40 | 1F616EMO@MT_TWI | sry Maverick2797 if that flooded ui |
| 84 | 10:25:42 | 1F616EMO@MT_TWI | I pasted code into the wrong env |
| 85 | 10:25:49 | 1F616EMO@MT_TWI | It finally happened... |
| 86 | 10:26:02 | 1F616EMO@MT_TWI | It was going to STN_v3 but I pasted it into PIS_v3 |
| 87 | 10:26:07 | Maverick2797@MT_TWI | i saw nothing, not sub'd to those envs yet' |
| 88 | 10:29:51 | 1F616EMO@MT_TWI | I hate it when I receive an error from railwaytime.lua instead of my env_setup |
| 89 | 10:31:01 | 1F616EMO@MT_TWI | What could possibly go wrong... |
| 90 | 10:31:33 | 1F616EMO~nya @TG | local rwtime = rwt.now() |
| 91 | 10:31:33 | 1F616EMO~nya @TG | local rwnext |
| 92 | 10:31:33 | 1F616EMO~nya @TG | if station_def.depoff and line_def.base_depint then |
| 93 | 10:31:33 | 1F616EMO~nya @TG | local door_time = line_def.delay or 5 |
| 94 | 10:31:33 | 1F616EMO~nya @TG | local next_door_close = rwt.next_rpt( |
| 95 | 10:31:33 | 1F616EMO~nya @TG | rwt.add(rwtime, door_time), |
| 96 | 10:31:33 | 1F616EMO~nya @TG | line_def.base_depint, |
| 97 | 10:31:33 | 1F616EMO~nya @TG | rwt.add(line_def.base_depoff or rwt.new(), station_def.depoff) |
| 98 | 10:31:33 | 1F616EMO~nya @TG | ) |
| 99 | 10:31:33 | 1F616EMO~nya @TG | |
| 100 | 10:31:33 | 1F616EMO~nya @TG | rwnext = next_door_close |
| 101 | 10:31:33 | 1F616EMO~nya @TG | else |
| 102 | 10:31:33 | 1F616EMO~nya @TG | local door_time = line_def.delay or 10 |
| 103 | 10:31:33 | 1F616EMO~nya @TG | rwnext = rwt.add(rwtime, door_time) |
| 104 | 10:31:33 | 1F616EMO~nya @TG | end |
| 105 | 10:32:09 | 1F616EMO@MT_TWI | And advtra__ is complaining about the first param of rwt.sub() is nil |
| 106 | 10:32:28 | 1F616EMO@MT_TWI | Um nat its rwt.add |
| 107 | 10:33:41 | y5nw@MT_TWI | ❱ Joined the game |
| 108 | 10:33:53 | Maverick2797@MT_TWI | hi |
| 109 | 10:33:58 | 1F616EMO@MT_TWI | Apparantly rwt.parse_t(str) can only accept "00;00;00;00" but no "00;00;00" |
| 110 | 10:34:19 | 1F616EMO@MT_TWI | Also ";00;00;" seems to be good |
| 111 | 10:34:29 | 1F616EMO@MT_TWI | ;_; |
| 112 | 10:34:41 | y5nw@MT_TWI | since when are there four components in RWT? |
| 113 | 10:34:49 | 1F616EMO@MT_TWI | A recent patch |
| 114 | 10:34:56 | 1F616EMO@MT_TWI | That added additional percision to RWT |
| 115 | 10:35:05 | y5nw@MT_TWI | sub-second? |
| 116 | 10:35:15 | 1F616EMO@MT_TWI | Nah, hours |
| 117 | 10:35:26 | Maverick2797@MT_TWI | c;hh;mm;ss |
| 118 | 10:35:45 | y5nw@MT_TWI | weren't cycles previously used to indicate hours? |
| 119 | 10:35:48 | 1F616EMO@MT_TWI | Nice, another error now, we're making progress |
| 120 | 10:35:59 | Maverick2797@MT_TWI | yeah |
| 121 | 10:37:13 | 1F616EMO@MT_TWI | Damnit, this time it's advtra__ core error |
| 122 | 10:37:30 | 1F616EMO@MT_TWI | rwt.i_sec is broken due to wrong reference to res instead of rwint |
| 123 | 10:38:50 | 1F616EMO@MT_TWI | orwell's fault |
| 124 | 10:39:35 | 1F616EMO@MT_TWI | Or maybe, the fault of lack of Luacheck |
| 125 | 10:40:10 | y5nw@MT_TWI | that's the "patches are welcome" part unfortunately |
| 126 | 10:40:27 | 1F616EMO@MT_TWI | I'm not even sure if what I will do is correct |
| 127 | 10:40:36 | 1F616EMO@MT_TWI | Anyways gotta submit a patch and apply a in-game hotfix |
| 128 | 10:40:51 | y5nw@MT_TWI | otherwise consider adding unittests. IIRC RWT is somewhat well self-contained |
| 129 | 10:41:06 | 1F616EMO@MT_TWI | did git stash on the wrong repo |
| 130 | 10:41:39 | dibbo@MT_TWI | ❱ Joined the game (new player) |
| 131 | 10:41:43 | Maverick2797@MT_TWI | hi dibbo |
| 132 | 10:41:48 | 1F616EMO@MT_TWI | Hi dibbo |
| 133 | 10:41:52 | 1F616EMO@MT_TWI | Busy working on a mod patch |
| 134 | 10:42:17 | 1F616EMO@MT_TWI | I was wondering "how can my worktree be clean" and realized I forgot to pop my stash |
| 135 | 10:42:29 | y5nw@MT_TWI | (unittests for Advtrains in general is harder though. I tried to do that when I worked on the interlocking system, but the dependencies between modules made things ... non-trivial) |
| 136 | 10:42:33 | dibbo@MT_TWI | hi |
| 137 | 10:42:51 | dibbo@MT_TWI | this is so fucking nice |
| 138 | 10:43:01 | 1F616EMO@MT_TWI | y5nw: Hence we call it advtra__ |
| 139 | 10:43:11 | y5nw@MT_TWI | 1F616EMO: for me it's more like "how can my git stash stack be empty" |
| 140 | 10:43:17 | dibbo@MT_TWI | bro i am new here |
| 141 | 10:43:24 | y5nw@MT_TWI | dibbo: welcome |
| 142 | 10:43:45 | 1F616EMO@MT_TWI | tbh advtrains is not up to my standard of code quality; I installed it cuz it's one-of-a-kind and well-maintained |
| 143 | 10:44:36 | 1F616EMO@MT_TWI | a well-maintained mod will eventually reach good code quality, or at least implement safety measures to not put the server into a halt |
| 144 | 10:45:19 | 1F616EMO@MT_TWI | Maverick2797, y5nw: https://lists.sr.ht/~gpcf/advtrains-devel/patches/67502 |
| 145 | 10:45:41 | y5nw@MT_TWI | I'm not sure about the latter part tbh. A well-maintained mod should avoid crashes to begin with |
| 146 | 10:45:54 | 1F616EMO@MT_TWI | y5nw: True |
| 147 | 10:46:34 | 1F616EMO@MT_TWI | And to prevent others from deliberatly crashing the server - advtra__ is a bit weak on preventing fork bombs and infinite loops from halting the server though |
| 148 | 10:46:34 | y5nw@MT_TWI | consider that Advtrains used to have its globalstep wrapped in pcall |
| 149 | 10:46:40 | 1F616EMO@MT_TWI | y5nw: Lol |
| 150 | 10:47:03 | 1F616EMO@MT_TWI | ^ That's embarassing for a mod |
| 151 | 10:47:14 | y5nw@MT_TWI | that's partly also a limitations of the Lua sandbox tbh |
| 152 | 10:47:40 | 1F616EMO@MT_TWI | luacontrollers can detect long-running and recource-hungry codes and interrupt it |
| 153 | 10:47:44 | 1F616EMO@MT_TWI | IIRC |
| 154 | 10:48:21 | y5nw@MT_TWI | (partly of mathematics - you cannot solve the halting problem so the next best solution would be a timeout; except afaik in Lua it depends on hooking into the debug library where the overhead is probably greater than that of less-performing code) |
| 155 | 10:49:11 | 1F616EMO@MT_TWI | Would "writing Advtrains in C" help that, for the part that monitors the execution of a Lua eval? |
| 156 | 10:49:37 | y5nw@MT_TWI | orwell had the idea of creating a more powerful DSL for ATC (-> xATC on the wiki); the hard part is basically how to make it powerful but not Turing-complete |
| 157 | 10:49:39 | dibbo@MT_TWI | ❰ Left the game |
| 158 | 10:49:45 | 1F616EMO@MT_TWI | (Almost forgot I still got a hot fix patch to write) |
| 159 | 10:50:43 | 1F616EMO@MT_TWI | Can we set hard walls to a turing-complete xATC so that e.g. when it want to assign more memory then it can then boom, segfault |
| 160 | 10:51:00 | y5nw@MT_TWI | 1F616EMO: not really |
| 161 | 10:51:08 | 1F616EMO@MT_TWI | Like having only 100KB of RAM for a turing-complete Windows 11 computer |
| 162 | 10:51:14 | y5nw@MT_TWI | 1F616EMO: you can e.g. create infinite loops with tail-call recursion |
| 163 | 10:51:48 | 1F616EMO@MT_TWI | y5nw: That's bad, given that we'd almost certainly optimize tail calls... |
| 164 | 10:51:57 | 1F616EMO@MT_TWI | So we can't tackle that with a stack overflow |
| 165 | 10:52:37 | 1F616EMO@MT_TWI | It feels like xATC can be written into a university research paper for the amount of brainstorming and researching it requires |
| 166 | 10:52:38 | y5nw@MT_TWI | there is also e.g. the iterator for loop where you can do e.g. for _ in math.sin, 0 do ... end |
| 167 | 10:53:01 | 1F616EMO@MT_TWI | Meh |
| 168 | 10:53:22 | y5nw@MT_TWI | (remember that iterators do not have to be based on real data structures ...) |
| 169 | 10:54:06 | 1F616EMO@MT_TWI | Can we just limit the number of instructions it is allowed to make, where doing a loop again counts as at least one? |
| 170 | 10:54:25 | 1F616EMO@MT_TWI | (But would that again put us into the debug library?) |
| 171 | 10:54:56 | 1F616EMO@MT_TWI | again forgets to write the hot fix |
| 172 | 10:55:35 | y5nw@MT_TWI | realistically though iterator for loops also have usecases beyond iterating through data structures - you can use it to lazily generate infinite data structures (see e.g. iota function) and iterate through those |
| 173 | 10:56:21 | y5nw@MT_TWI | (although that tends to be more interesting for mathematical computations than train operation) |
| 174 | 10:56:26 | 1F616EMO@MT_TWI | for i in range(math.huge): |
| 175 | 10:56:48 | 1F616EMO@MT_TWI | Turing-complete means that someone can calculate the fib sequence with xATC |
| 176 | 10:57:11 | 1F616EMO@MT_TWI | Which is hell |
| 177 | 10:58:00 | SYSTEM@MT_SANDBOX | ✖ Minetest shutting down! |
| 178 | 10:58:07 | SYSTEM@MT_SANDBOX | ✔ Minetest started! |
| 179 | 10:58:15 | 1F616EMO@MT_TWI | real fix now up on sandbox, hotfix on twi |
| 180 | 10:58:34 | y5nw@MT_TWI | (also consider something like yes | head. The former generates an infinite sequence while the latter limits the output -> the actual computation time is limited) |
| 181 | 10:58:47 | 1F616EMO@MT_TWI | Hmm no that's not the correct fix |
| 182 | 10:58:59 | y5nw@MT_TWI | Turing-completeness also means that you have the halting problem |
| 183 | 10:59:03 | 1F616EMO@MT_TWI | There does not exist a thing called sign in intervals |
| 184 | 11:02:38 | 1F616EMO@MT_TWI | It seems all good after adding default fallback for rwint.sign |
| 185 | 11:02:48 | 1F616EMO@MT_TWI | Will re-submit patch after this STN_v3 run |
| 186 | 11:03:28 | y5nw@MT_TWI | also: can we potentially have metamethods on RWT objects? |
| 187 | 11:03:52 | 1F616EMO@MT_TWI | y5nw: Out of my scope, but theorically very easy to do as all rw functions are `this`-friendly |
| 188 | 11:04:07 | 1F616EMO@MT_TWI | Waiting 2 min 30 sec before my train departs |
| 189 | 11:04:41 | y5nw@MT_TWI | ❰ Left the game |
| 190 | 11:26:55 | Maverick2797@MT_TWI | derp, still haven't added that atc parser yet |
| 191 | 11:54:32 | AW@MT_TWI | ❱ Joined the game (new player) |
| 192 | 11:54:35 | 1F616EMO@MT_TWI | hi AW |
| 193 | 11:54:59 | Maverick2797@MT_TWI | hi AW |
| 194 | 11:55:02 | AW@MT_TWI | hi |
| 195 | 11:56:32 | 1F616EMO@MT_TWI | Maverick2797: I declare STN_v3 as ready to use in prod, yet mid-scale tests are needed |
| 196 | 11:56:41 | Maverick2797@MT_TWI | cool |
| 197 | 11:56:53 | 1F616EMO@MT_TWI | ? wait |
| 198 | 11:57:06 | 1F616EMO@MT_TWI | It triggered approach message on Groma when it approaches Bledarhood |
| 199 | 11:58:20 | AW@MT_TWI | ❰ Left the game |
| 200 | 11:59:09 | 1F616EMO@MT_TWI | I, again, pasted code into the wrong env |
| 201 | 12:00:13 | Maverick2797@MT_TWI | too many envs? |
| 202 | 12:49:20 | Maverick2797@MT_TWI | later o/ |
| 203 | 12:49:23 | Maverick2797@MT_TWI | ❰ Left the game |
| 204 | 13:27:36 | 1F616EMO@MT_TWI | ❰ Left the game |
| 205 | 13:27:47 | 1F616EMO@MT_TWI | ❱ Joined the game |
| 206 | 13:30:57 | SYSTEM@MT_SANDBOX | ✖ Minetest shutting down! |
| 207 | 13:30:59 | SYSTEM@MT_SANDBOX | ✔ Minetest started! |
| 208 | 13:46:23 | 1F616EMO@MT_TWI | ping |
| 209 | 16:06:08 | VinAdmin@MT_TWI | ❱ Joined the game |
| 210 | 16:08:17 | 1F616EMO@MT_TWI | hi VinAdmin |
| 211 | 16:08:22 | VinAdmin@MT_TWI | hi |
| 212 | 17:26:34 | 1F616EMO@MT_TWI | ❰ Left the game |
| 213 | 17:38:25 | Ginger41@MT_TWI | ❱ Joined the game |
| 214 | 17:38:37 | Ginger41@MT_TWI | hi |
| 215 | 17:38:52 | VinAdmin@MT_TWI | привет |
| 216 | 17:57:45 | Ginger41@MT_TWI | ❰ Left the game (timed out) |
| 217 | 18:40:35 | 45305_altPIXEL@MT_TWI | ❱ Joined the game (new player) |
| 218 | 18:58:26 | 45305_altPIXEL@MT_TWI | ❰ Left the game (timed out) |
| 219 | 19:50:00 | 07142015@MT_TWI | ❱ Joined the game |
| 220 | 19:54:16 | 07142015@MT_TWI | ❰ Left the game |
| 221 | 20:05:50 | VinAdmin@MT_TWI | ❰ Left the game |