IRC logs for #openttd on OFTC at 2024-03-13
β΄ go to previous day
02:18:44 *** Wormnest has quit IRC (Quit: Leaving)
03:07:49 *** gnu_jj_ has joined #openttd
03:10:57 *** gnu_jj has quit IRC (Ping timeout: 480 seconds)
03:39:01 *** debdog has quit IRC (Ping timeout: 480 seconds)
04:13:37 *** D-HUND is now known as debdog
04:41:30 <DorpsGek> - Update: Translations from eints (by translators)
07:40:36 *** ChanServ sets mode: +v tokai
10:01:57 <merni> openttd-deployments[: oops
10:12:47 <peter1138> ``` CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
10:12:47 <peter1138> CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage```
10:13:12 <peter1138> Workflows are like magic to me, I've no idea how it works (or doesn't in this case)
10:13:24 <LordAro> it's not the clearest thing in the world
10:13:31 <LordAro> but it does look a bit like it's missing make and/or g++
10:26:38 <peter1138> Urgh, I think I need to crack open Windows for this π¦
11:22:12 <xarick> hmm... how would I return just the trackdir
11:49:14 <reldred> there peter, i finally thought of something.
11:51:38 <peter1138> Wasn't me asking :p
11:52:07 <merni> reldredviaGitHub: > Optionally, I'd like to be able to specify whether it's allowed to knock down other 'protected' buildings.
11:52:07 <merni> This sounds like it might degenerate into a refitting-like level of complexity
11:52:59 <LordAro> that was my thought too
11:53:26 <LordAro> "i want a thing to stop my building from being knocked down by buildings that can knock down protected buildings"
11:54:31 <merni> perhaps something like a numerical "priority level"? things with higher can demolish things with lower
11:57:00 <merni> alternatively, just have bigger cities so things can spawn :p
11:59:48 <peter1138> Larger maps (c|sh)ould've been "same quantity but spread out and larger".
12:01:59 <merni> peter1138: Well, you can play that way
12:02:22 <merni> At least as far as distance between cities is concerned
12:02:50 <xarick> oh uh... pair I forgot
12:07:49 <xarick> brackets looks ugly though
12:08:03 <xarick> feels like an entirely different code style
12:14:46 <kuhnovic> It's actually fairly common since C++ 11, when it was introduced. Saves you a lot of hassle if you want to quickly initializate struct members. Or initialize arrays / vectors.
12:21:51 <xarick> std::get<1>(GetRandomFollowUpTileTrackdir(v, src_tile, trackdir, true))
12:22:14 <xarick> GetRandomFollowUpTileTrackdir(v, src_tile, trackdir, true).second
12:22:44 <xarick> they're both ugly, because I don't know how to use pointers references
12:23:36 <kuhnovic> I sent you a PM xarick
12:29:56 <xarick> oh, I'll try that again, now lunch time
12:40:20 *** tramrider has joined #openttd
12:42:19 <reldred> peter1138: Duh, youβre right π€£.
13:25:44 <_glx_> peter1138: I can help, the 2 minute timeout would be an assert or similar
13:26:55 <peter1138> Yes I know that much. If only it would report that instead of just telling me it timed out.
13:29:54 <_glx_> we disable gui reports, but that disabling seems to not work when it comes from API/std
13:30:58 <_glx_> of course I have to clear cache because I updated MSVC
13:34:16 <peter1138> I wonder which vector π
13:35:00 <_glx_> return &_house_specs[house_id];
13:35:59 <_glx_> house_id is 110, and size is 110
13:36:08 <peter1138> Yes I can see I used > instead of >=
13:36:27 <peter1138> Incorrect manual copy & paste.
13:37:32 <_glx_> at least a platform prevented OOB π
13:38:29 <_glx_> but runtime asserts opening a window are annoying
13:39:35 <peter1138> Yeah, we need to use `.at()` more to be safer, but...
13:58:04 <peter1138> Yay, it didn't crash π
14:02:58 <_glx_> I may have a way to prevent the window
14:17:30 <kuhnovic> xarick: go for the double kill! #12285 π
14:23:57 <orudge> truebrain: Azure Code Signing seems to be working, on my own machine at least. Let's see if it works on GitHub. (Turns out the validation failed because the e-mail went to spam and I didn't notice it, d'oh.)
14:31:14 <peter1138> And afaict, without changing NewGRFs, the only place that out-of-bounds vector access occurred is... during validation of HouseSpecs. D'oh.
14:42:49 <talltyler> βidempotentβ is quite a fun word Iβve never seen before π
14:44:00 <_jgr_> talltyler: Really, seemed to be a pretty standard computer science term to me?
14:44:17 <_jgr_> (Not that I ever studied computer science formally)
14:44:42 <truebrain> orudge: Nice! Running also gives no annoying popup?
14:45:34 <orudge> No, no different to the normal signed builds
14:46:29 <_glx_> updated description of #12291 with example output
14:46:36 <talltyler> _jgr_: Maybe, but I never studied computer science either π
14:47:34 <talltyler> (And Iβve never worked with another software developer β only solo)
14:54:20 <peter1138> Hmm, I hope I still have my NewGRF docks test GRF source. I need to change it as the feature is used by NewGRF roadstops now π
15:03:58 *** tramrider has quit IRC (Quit: Page closed)
15:10:59 <kuhnovic> That was a good lunch then
15:11:16 <xarick> what do I do know with 12286? seems to be approved
15:11:38 <merni> Wait for omeone to merge it
15:12:34 <xarick> okay, and 12285 needs something? seems ready
15:12:45 <xarick> will conflict once 12286 is merged
15:23:51 <xarick> nice, conflicts to solve now
15:27:16 <talltyler> __karma: If you touch the function, go for it, otherwise it would be a separate PR
15:29:14 <peter1138> Nice, I set up cmake to build for Android.
15:29:26 <peter1138> It carefully built a settingsgen for Android. Perfect.
15:29:48 <peter1138> `EI_HAVE_NO_IDEA_WHAT_IM_DOING`
15:30:09 <LordAro> iirc there are ways to force to build for host rather than target
15:32:49 <peter1138> `if (NOT HOST_BINARY_DIR)`
15:33:42 <peter1138> So it's already done. Nice.
15:36:26 <peter1138> Thwarted by std::bit_cast.
15:36:39 <peter1138> I already stubbed out `std::source_location`
15:39:14 *** Wormnest has joined #openttd
15:55:07 <_glx_> peter1138: yeah we kinda had to support host stuff for macos, emscripten and windows arm64
16:03:03 <talltyler> __karma: Does it work in wallclock mode?
16:04:26 <talltyler> Assuming it does, it could be `Fix #11345: Use correct default button value for vehicle service interval setting`
16:06:02 <talltyler> Ah, it does not π
16:06:07 <talltyler> Looking at your commit
16:07:35 <talltyler> Look at `UpdateAllServiceInterval()` in `settings_table.cpp`
16:07:37 <LordAro> i'm sensing someone not getting bridged correctly
16:08:13 <peter1138> Discord username starts with _
16:08:13 <talltyler> Oh, I replied to the GitHub bot π
16:08:48 <talltyler> Er, never mind, not sure what bridge issue you see
16:09:04 <LordAro> well i don't see any messages from '__karma' at all
16:09:22 <talltyler> Their discord name starts with two underscores
16:09:33 <talltyler> Maybe the bridge doesnβt like that
16:11:51 <_glx_> peter1138: should no matter, mine also starts with _
16:14:48 *** dwfreed[d] has joined #openttd
16:15:09 <dwfreed> Okay, so that's not broken
16:17:55 <_glx_> looks like I'll need to dive in docker to debug nightly failure
16:27:22 *** gelignite has joined #openttd
16:38:55 <peter1138> Well, it built. But it's not an android app yet ;D
16:46:21 <_glx_> oh nice it fails sooner in my docker
16:51:14 <_glx_> /vcpkg/buildtrees/breakpad/src/2023.01.27-5f635e6695.clean/src/common/linux/dump_symbols.cc:286:31: error: βSHF_COMPRESSEDβ was not declared in this scope
16:51:14 <_glx_> 286 | return (section->sh_flags & SHF_COMPRESSED) != 0;
16:52:25 <_glx_> oh stupid me, wrong image
16:53:02 <LordAro> how old is your image? :p
16:53:18 <_glx_> I used the 2014 one by mistake
17:08:49 <_glx_> it's better with the correct image
17:09:08 <_glx_> fails on the same place as nightly
17:09:50 <peter1138> Is it due to our changed, or is that just a coincidence?
17:11:16 <_glx_> ```../src/2.14.2-7f52ee670b.clean/meson.build:1:0: ERROR: Value "plain" (of type "string") for combo option "Optimization level" is not one of the choices. Possible choices are (as string): "0", "g", "1", "2", "3", "s".```
17:15:31 <_glx_> I like how their CI is fast "Failing after 931m β Build #20240312.28 had test failures "
17:15:59 <peter1138> Building everything?
17:16:02 <michi_cc> What can you do if it is test 9999/10000 π
17:16:27 <michi_cc> (Besides less testing π )
17:17:39 <andythenorth> talltyler: doesn't it mean "goes wrong reliably and repeatably"?
17:23:23 *** HerzogDeXtEr has joined #openttd
17:37:28 <rutoks> LordAro: _glx_ I believe I got everything done in my PR. Could you please take another look? Thanks
17:42:07 <rutoks> LordAroviaGitHub: Yeaaaah
17:42:35 <rutoks> What next? Do I just click merge?
17:42:54 <LordAro> i think you'll find that difficult :p
17:43:13 <LordAro> i'd like someone else to confirm it, they'll click merge
17:44:36 <rutoks> LordAro: I see. Thanks. But brace yourself, I also want to add more stuff like completing parameters for set command and stuff
17:45:19 <LordAro> i doubt it'll take too long, so if you want to get started in a separate PR, go ahead
17:45:24 <LordAro> make a branch on top of your existing one
18:33:25 <truebrain> `52 IRC connections, 47 connected` .. either we reached a max-IRC-limit, or something else is funky, but 5 puppets are not connected π
18:33:45 <truebrain> dwfreed: is this IPv6 block limited to N connections?
18:41:48 *** gelignite has quit IRC (Quit: Stay safe!)
19:08:48 <truebrain> only one mistake? I am shocked π
19:09:03 <Rubidium> only one I've noticed so far
19:30:40 <michi_cc> There's pobably no point doing RC2 while vcpkg is failing in build, right?
19:31:05 <truebrain> from the link _glx_ send, it should be working again; but maybe better wait to see if the nightly works tomorrow morning π
19:31:57 <michi_cc> There's a fix PR, but the state as of right now is still "open".
19:32:15 <truebrain> owh, you are right; I misread the merged entries in there π
19:32:22 <truebrain> so yeah .. releasing will be pointless π
19:32:27 <michi_cc> So yeah, wait for successfull nightly first.
19:34:18 <truebrain> just a bit sad how often vcpkg breaks stuff, honestly. I would expect there to be a bit higher QA standard π
19:34:44 <truebrain> either way, I have been trying to benchmark on GitHub Actions, and .. it is tricky. the runs tend to vary by a decent amount
19:34:53 <truebrain> been using CPU time (instead of instruction-count)
19:35:33 <truebrain> I also still think it is funny it is pretty difficult to get an accurate number for "memory usage"
19:35:46 <truebrain> this game I am testing is "somewhere between 188MB and 194MB" π
19:35:58 <truebrain> like ... our game is deterministic enough that this shouldn't be the case π
19:41:47 *** gelignite has joined #openttd
19:49:09 <truebrain> CPU time: between 31s and 36s
19:49:12 <truebrain> well, that is pointless π
20:12:37 <truebrain> okay, so MacOS has a kperf framework, and although private, does give better performance indicators .. issue? It requires implementing yourself π
20:24:15 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
20:38:12 <truebrain> owh, wait, I didn't load my special config, so autosave was enabled ... now timing and memory are much closer together π
20:38:35 <truebrain> 30.7m as highest, 30.4m as lowest .. that is 1% difference .. which is fine
20:39:12 <truebrain> and memory is between 198mb and 202mb, also rather close
20:39:21 <truebrain> okay .. so that means we could use the M1s for benchmarking π
20:40:01 <_glx_> autosave default is 10m, I don't think it should be visible
20:40:25 <truebrain> yet always when I don't disable it, my performance measurements are all over the place π
20:41:00 <_glx_> ah yes, before the timer it was each month
20:42:13 <truebrain> the other one that has a huge impact, is linkgraph
20:42:40 <truebrain> so cargodist games, like title game of 1.4, are just impossible to benchmark
20:53:30 <truebrain> still amazing how fast MacOS can produce a binary π Makes testing a lot easier π
20:56:20 <truebrain> ``` Run 3: 176560;0.41;9.29
20:56:20 <truebrain> Run 4: 177440;0.39;7.91```
20:56:38 <truebrain> (mem;not-used;cpu time in seconds)
20:57:40 <truebrain> I also really need a way to automatically download bananas content π
21:00:15 <andythenorth> truebrain: was it 4 mins?
21:04:08 *** gelignite has quit IRC (Quit: Stay safe!)
21:20:12 *** Leopold has quit IRC (Remote host closed the connection)
21:24:51 <xarick> overbuilding depots for AIs
21:25:10 <xarick> the automatic rail pieces/road piece don't happen
21:25:37 <xarick> the AI manually places those
21:26:10 <kuhnovic> What is your point :P?
21:26:36 <xarick> not sure how's it gonna work after that PR
21:26:49 *** Leopold_ has joined #openttd
21:27:29 <xarick> then again road bridges automatically build a road piece at the start and end
21:28:32 <kuhnovic> The difference would be that you don't get a ERR_ALREADY_BUILT if the depot is already in the desired orientation. I wonder how that would affect AIs, I guess it depends on their implementation...
21:29:47 <xarick> it's a bool. If the command succeeds it returns true, but there is no post callback (no additional tracks connect to the line in front
21:30:01 *** Leopold_ has quit IRC (Remote host closed the connection)
21:30:14 *** Leopold has joined #openttd
21:30:29 <kuhnovic> Yeah but the AIs connection-rail-creation-logic likely depends on the result of that command
21:32:46 <xarick> hmm, maybe some AIs might be affected, not sure, would have to run them
21:33:33 <xarick> my AI probably, need to check
21:35:12 <xarick> yeah... mine will be affected, confirmed
21:35:14 <xarick> if(!TestBuildRoad().TryBuild(depotTile, depotFrontTile) && AIError.GetLastErrorString() != "ERR_ALREADY_BUILT") {
21:35:26 <xarick> I am counting on that error to still exist
21:36:04 <kuhnovic> Well you'd then try to build rail and that will fail because it's already there. But it's not the nicest.
21:36:12 <_glx_> but why would AI explicitely try to build a depot without checking there isn't already one ?
21:36:47 <kuhnovic> I could say something really mean about Xarick's AI now, but I'm not going to π
21:36:48 <xarick> (!TestBuildRoadDepot().TryBuild(depotTile, depotFrontTile)) {
21:37:03 <xarick> so now the command passes
21:37:26 <xarick> eh, the worst that's going to happen is me overbuilding a depot that belongs to another route
21:37:56 <xarick> if the route goes extint, I am now demolishing a depot that belongs to 2 routes... things go wrong from there on
21:38:44 <kuhnovic> YOu already have that issue I think, because auto rotation already exists when depot is in a different orientation
21:39:26 <_glx_> yeah you can already build over
21:40:22 *** nielsm has quit IRC (Ping timeout: 480 seconds)
21:41:29 <xarick> gonna run my road vehs more to see it
21:41:47 <xarick> I've been focusing too much on ships
21:41:56 <kuhnovic> But it seems that a lot of such user convenience is not available for AIs. Is station overbuilding available for AIs to do for example?
21:42:21 <_glx_> AIs just issue commands
21:42:23 <kuhnovic> xarick: Which I'm very thankful for, you found quite a number of issues
21:43:11 <kuhnovic> Yeah but the callbacks are ignored, and I've seen some "if AI don't to this" cases
21:46:30 <xarick> need to add some assert somewhere
21:49:05 <rau117> KuhnovicviaGitHub: The citymania client has a solution for this, where it is implemented more stably, plus it has is a very important option to disable automatic direction
21:54:52 <kuhnovic> It's was not just that it wasn't finished, people were also not entirely on board with the idea
22:01:37 *** keikoz has quit IRC (Ping timeout: 480 seconds)
22:07:14 <kuhnovic> Hey Xarick, can you look at 12285 one more time? I think it would be very nice to have that one in, also backported
22:10:33 <kuhnovic> I left a comment π
22:11:21 <kuhnovic> I think we should just remove the include_90 option. Just always include them as a last resort, but only that.
22:12:15 <xarick> I can't see any comment, are you sure it's 12285
22:13:03 <kuhnovic> Sorry, not used to my new powers yet I guess
22:19:32 <xarick> 489 files needing rebuild for reasons
22:22:13 <kuhnovic> xarick: You do know about CTRL-F7 (at least that's my hotkey), which compiles only the current cpp file in visual studio?
22:23:12 <kuhnovic> You'll still have to build everything to run openttd, but I just that often to see if any in-between changes compile.
22:23:36 <xarick> it was autocompletion merge probably
22:27:49 <xarick> I regret not buying a 2560 monitor π¦
22:29:17 <xarick> but that would cost the double of this one
22:30:22 <xarick> the assert is in place, now waiting for disaster
22:41:26 <xarick> 12274 vs 12285, whichever gets merged first will result in conflicts in the other (probably)
23:20:40 <xarick> I'm doing a AITile.IsBuildable(adjacentTile) check, if a depot is there, I don't think this passes as true
23:23:03 <xarick> can't speak for other AIs though
continue to next day β΅