IRC logs for #openttd on OFTC at 2024-04-18
            
00:00:21 <peter1138> You know...
00:00:42 <peter1138> This is wrong still ๐Ÿ™‚
00:01:54 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #12524: Codechange: Use std::filesystem::directory_iterator instead of opendir. https://github.com/OpenTTD/OpenTTD/pull/12524
00:01:57 <peter1138> Let's get it right.
00:01:58 <DorpsGek> [OpenTTD/OpenTTD] PeterN dismissed a review for pull request #12524: Codechange: Use std::filesystem::directory_iterator instead of opendir. https://github.com/OpenTTD/OpenTTD/pull/12524#pullrequestreview-2007566200
00:02:15 <peter1138> <https://en.cppreference.com/w/cpp/filesystem/path/native>
00:02:15 <_glx_> indeed
00:02:24 <peter1138> Just c_str() does the right thing.
00:03:11 <_glx_> yeah no need to copy
00:03:23 <_glx_> _NODISCARD _STD wstring wstring() const { // copy the native path from this instance into a wstring
00:03:23 <_glx_> return _Text;
00:03:23 <_glx_> }
00:03:43 <_glx_> ``` _NODISCARD const value_type* c_str() const noexcept {
00:03:43 <_glx_> // return a NTCTS to the internally stored path in the native format
00:03:43 <_glx_> return _Text.c_str();
00:03:43 <_glx_> }
00:04:09 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #12524: Codechange: Use std::filesystem::directory_iterator instead of opendir. https://github.com/OpenTTD/OpenTTD/pull/12524#pullrequestreview-2007572955
00:04:16 <peter1138> Yeah. All my headers are Linux versions ๐Ÿ˜„
00:06:38 <peter1138> Now, does it actually work on Windows, or is it just at the compiling stage?
00:07:39 <_glx_> the 3 versions were visually correct in load game window
00:08:07 <_glx_> and in newgrf config, and content download
00:08:17 <peter1138> Nice.
00:08:38 <_glx_> I think that tests all cases
00:09:54 <_glx_> removing OS specific stuff is always good
00:15:41 <_glx_> (mingw is happy too)
00:22:09 <peter1138> Nice, just CodeQL, which will probably work out it's doing path operations on user input... ๐Ÿ™‚
00:27:36 <_glx_> if it find a code path from `-c` ๐Ÿ™‚
00:41:18 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #12524: Codechange: Use std::filesystem::directory_iterator instead of opendir. https://github.com/OpenTTD/OpenTTD/pull/12524
00:41:32 <DorpsGek> [OpenTTD/OpenTTD] PeterN closed pull request #12493: Codechange: Simplify FioCreateDirectory. https://github.com/OpenTTD/OpenTTD/pull/12493
00:53:40 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #12507: Fix: Use modern comparisons instead of memcmp in cache check. https://github.com/OpenTTD/OpenTTD/pull/12507
00:54:16 <peter1138> Incorporates latest changes but doesn't address the emscripten issue ๐Ÿ˜ฆ
01:45:52 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
01:48:43 *** Wormnest has joined #openttd
02:02:42 *** herms has quit IRC (Quit: bye)
02:03:38 *** herms has joined #openttd
02:10:44 *** Wormnest has quit IRC (Quit: Leaving)
02:35:51 *** gnu_jj_ has joined #openttd
02:39:22 *** gnu_jj has quit IRC (Ping timeout: 480 seconds)
02:41:51 *** debdog has joined #openttd
02:42:25 *** keikoz has joined #openttd
02:45:11 *** D-HUND has quit IRC (Ping timeout: 480 seconds)
02:57:21 *** Flygon has joined #openttd
04:36:24 *** Compu has joined #openttd
04:40:32 <DorpsGek> [OpenTTD/OpenTTD] eints-sync[bot] pushed 1 commits to master https://github.com/OpenTTD/OpenTTD/commit/c355e98c5899a12648e38e7fdeebbdfd2621ef52
04:40:33 <DorpsGek> - Update: Translations from eints (by translators)
04:43:16 <DorpsGek> [OpenTTD/team] anmatngu opened issue #549: [vi_VN] Translator access request https://github.com/OpenTTD/team/issues/549
06:33:29 *** reldred has quit IRC (Quit: User went offline on Discord a while ago)
06:53:31 *** Ox7C5 has quit IRC ()
07:57:05 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1230426867975061534/image.png?ex=66334751&is=6620d251&hm=3b128fa883319b26b0d4d2dbeb45fa03f63c3aa63c729d607d285cfc8c10c44a&
07:57:05 <andythenorth> such flag shapes on the minimap
07:58:19 *** SigHunter has quit IRC ()
08:01:15 *** SigHunter has joined #openttd
08:17:46 *** orudge changes topic to "14.0 | Website: *.openttd.org (source: github, translator: translator, server list: servers, wiki: wiki) | Don't ask to ask, just ask | 'Latest' is not a valid version, 'Most recent' neither | English only"
08:42:03 <peter1138> I guess variants eh?
08:42:59 *** Compu has quit IRC (Quit: https://www.youtube.com/watch?v=5FjWe31S_0g)
08:43:37 <merni> https://cdn.discordapp.com/attachments/1008473233844097104/1230438576152645643/well.webp?ex=66335238&is=6620dd38&hm=587488cad609b0e0b0c838d87541d56c301d01909b5af2ca23a01e853d042e5f&
08:44:45 <peter1138> Does NML let you reuse action 2 chains between vehicles?
08:49:47 <andythenorth> yes
08:50:03 <andythenorth> this is how I run out of varact 2 IDs
08:58:13 <ahyangyi> andythenorth: I can imagine two adjacent wharfs get really angry ๐Ÿ’ข
09:01:31 <andythenorth> having to be careful not to accidentally make swastiks
09:01:48 <andythenorth> much as they're fine in India, not so much in Europe
09:22:58 *** Smedles has quit IRC (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
09:23:02 *** Smedles has joined #openttd
09:23:06 <merni> I can imagine so
09:34:12 <peter1138> andythenorth: But you only need to keep one action 2 chain for the shared parts (callbacks etc) for an engine, and then that ID can be reused for the next shared engine type...
09:35:04 <andythenorth> I ran out of simultaneous ๐Ÿ˜›
09:35:34 <andythenorth> I did โ€œfixโ€ it by rearranging the vehicles order several times
09:41:29 <andythenorth> Most authors should not encounter this issue ๐Ÿ˜›
09:53:08 <ahyangyi> Admittedly when you construct complexy switches with python loops, running into the limit is quite common
09:53:45 <ahyangyi> like when I do my station, I said
09:53:45 <ahyangyi> for r in range(16):
09:53:45 <ahyangyi> for c in range(16):
09:53:45 <ahyangyi> and wham
09:57:16 <peter1138> What even was the intention with that.
10:12:11 <ahyangyi> A 16x16 station layout
10:20:53 <peter1138> What does that have to do with action 2 ID limits?
10:22:25 <ahyangyi> I wrote a switch that points to 256 other switches
10:23:23 <ahyangyi> Because that seemed the most straightforward thing to do
10:24:33 <peter1138> I see. So not property 0E which lets you define a static layout (but only with tiles 00-07 & 1)
10:25:16 <ahyangyi> callback 14
10:27:13 <peter1138> Honestly we should just remove the 00-07 limit from property 0E.
10:28:43 <andythenorth> is that NotStations?
10:29:12 <peter1138> In SLV_72 we removed the global station gfx numbers in favour of per station type.
10:29:25 <peter1138> afterload.cpp:864 does the conversion.
10:29:40 <peter1138> That means that actually the whole byte is available, not just 00-07.
10:30:47 <peter1138> Then you can define a static layout much more easily, and it doesn't need to evaluate such complex callbacks for every render.
10:31:39 <ahyangyi> peter1138: And also callback 0x24?
10:32:00 <ahyangyi> I would much prefer static layouts to dynamic ones
10:32:25 <ahyangyi> Because the former is much more predictable to the user
10:33:53 <ahyangyi> (I do consider cb24 part of the "static layout" thing though)
10:34:53 <ahyangyi> coming up with switches to work with cb14 that works however the user modifies the station is very hard
10:34:56 <peter1138> Yes that creates a static layout.
10:35:13 <ahyangyi> not to mention that cb14 has no power over traversability
10:35:13 <andythenorth> anything I try to add here will only reveal how little I understand the station spec ๐Ÿ˜›
10:35:39 <peter1138> Hmm, good point, traversability is limited to 8 bits.
10:38:40 <peter1138> I guess that needs an extra property to define for up to 0-255 instead of just 0-7
10:42:44 <ahyangyi> Yeah, 0-255 instead of 0-7 would have made things much easier.
10:45:15 <andythenorth> forgive my ignorance, but what is a station 'layout'?
10:45:41 <peter1138> Which tile to use for each position in the station.
10:46:27 <peter1138> There are 4 layouts in the default station, bare platform, small station building, and then the two-part large canopy.
10:46:45 <peter1138> The station layout defines which tiles are placed where.
10:47:15 <peter1138> This is what makes for building nice stations easily, instead of having to pick each component and place individually, Which is a pain in the arse.
10:51:36 *** Ox7C5 has joined #openttd
10:52:26 *** woobilicious has joined #openttd
10:52:26 <woobilicious> Umm, `src/window.cpp#L2780` & `src/main_gui.cpp#L437` don't seem to match, probably explains why I'm having a hard to getting in sane settings on a trackpad working lol
11:01:37 <_glx_> peter1138: And the property to define the layouts is not implemented in nml, only the callback for tile type
11:04:42 <peter1138> Joy.
11:10:02 <peter1138> Though it is a complex one.
11:12:03 <_glx_> Yeah I decided the CB was simpler
11:12:32 <peter1138> I think one "issue" with NML is that it hides the fact that everything is numbers.
11:12:48 <peter1138> So authors forget/don't-realise that they can do calculations on anything.
11:13:16 <peter1138> Like trying to make a switch block to pick random colours when the calculation is super simple.
11:14:19 <peter1138> e.g. default station layouts are generated with a small algorithm for the selected station size.
11:14:36 <peter1138> No predefined selection of layouts for every single combination is needed.
11:17:02 <peter1138> Conversely, with NFO you are painfully aware that everything is a number ๐Ÿ˜„
11:22:25 <peter1138> Prop 0A actually allows more than 256 layouts. Hmm.
11:23:16 <peter1138> Oops, that was the wrong thing.
11:23:44 <peter1138> Prop 09. Ok.
11:24:23 <peter1138> So anything > 255 would need CB 24, but who uses that many layouts in a single station?
11:28:20 <peter1138> <https://github.com/OpenTTD/OpenTTD/commit/ff8223150aa28b1dfec8d1697d27d6aa96c18f93#diff-5a720b3947dc7599bdea2544662d10c7dac6123a67a57ad6427cbe4627a251d2> that's an old change ๐Ÿ˜„
11:33:59 <peter1138> `std::vector<std::vector<std::vector<uint8_t>>> layouts;` always lol ๐Ÿ™‚
11:42:51 <woobilicious> does openttd not use sdl2 on OSX/Windows? just Linux?
11:44:16 <peter1138> Anything non-OSX/Windows will be Allegro, SDL or SDL2.
11:44:25 <_glx_> No need for an extra lib on windows
11:45:22 <peter1138> Hmm, this ETS2 experimental update is very different. Wonder why they are still developing a 10+ year old game...
11:45:24 <woobilicious> Well 2d scrollwheel is only currently supported on MacOSX...so that would be a good case to use SDL2 on all platfroms.. lol
11:45:57 <peter1138> So that no platform supports it?
11:46:23 <woobilicious> SDL2 supports 2d scrolling, the SDL2 code just never acesses the .x coord lol
11:46:53 <_glx_> All OS should support it I think
11:47:39 <_glx_> Just no dev had a need for it
11:48:01 <woobilicious> No one plays on a laptop except me lol
11:48:46 <_glx_> I guess most just use a mouse because it's more practical
11:49:04 <_glx_> Even on android
11:49:54 <woobilicious> Well android is PITA for all sorts of reasons lol
11:50:32 <woobilicious> looks like it shouldn't be too hard to add tbh.
11:50:49 <_jgr_> For users who don't have a mouse scrolling using the arrow keys is likely to be much less painful than trying to use a trackpad
11:51:16 <woobilicious> preciseX/Y won't work till SDL3 though.
11:52:53 <woobilicious> _jgr_: It's basically second nature to use the trackpad for 2d scrolling in a web browser or similar, untraining that habbit was painful, and some what of a barrier to entry for newbies.
11:56:15 <woobilicious> I might add MMB if I can be bothered...
11:57:03 <woobilicious> Also blerg the cocoa code doesn't have error difusion.
11:58:51 *** tateisukannanirase has joined #openttd
11:58:52 <tateisukannanirase> Hi everyone is there a technical reason why drive through road stops can't be placed under bridges?
12:11:58 <_zephyris> Yup, the game doesn't know how tall the graphics are (especially with NewGRF road stops) so it doesn't know if there would be graphics glitches.
12:12:03 <_zephyris> lol: https://www.youtube.com/watch?v=mIZNkp4QqHY&t=516s
12:12:34 <woobilicious> 2.5D strikes again?
12:14:10 <tateisukannanirase> thanks _zephyris ! unfortunate because it would be a nice way to use the space under bridges!
12:16:43 <peter1138> Actually with NewGRF road stops the spec includes bridge height.
12:17:49 <peter1138> Could be ported from JGRPP I guess.
12:18:15 <peter1138> Depends how we feel about bridges-over-more-things in general.
12:19:01 <woobilicious> well that was an easy addition...added 2d scrolling to SDL2...
12:19:03 <truebrain> peter1138: only do it for roadstops, just because it is funny ๐Ÿ™‚
12:19:10 <peter1138> Quite.
12:19:40 <woobilicious> what is a bridges platonic nature but to bridge-over-things.
12:19:56 <peter1138> _zephyris: Honestly think we should move the font settings to let new defaults be used.
12:20:29 <peter1138> Complaining about fonts because your old config has some truetype set so you don't get to see the beautiful new built in font is... meh.
12:21:09 <peter1138> Yes, bridge-over-things, but to bridge-over-more-things? Now that's a scary prospect!
12:21:34 <_zephyris> Bridge over trees!
12:21:44 <peter1138> Also has scaled bevels off, so of course it's going to look bad.
12:22:04 <truebrain> glad to see how much Master Hellish understood the rename to Sandbox ๐Ÿ™‚
12:22:50 <_zephyris> lots of good in that vid
12:23:46 <peter1138> Nah, we should make the game we want, not what other people want ๐Ÿ˜‰
12:23:54 <truebrain> owh, shit
12:23:55 <truebrain> sorry
12:23:55 <truebrain> ๐Ÿ˜„
12:24:14 <locosage> peter1138: just don't remove the GUI plz ๐Ÿ˜œ
12:24:39 <peter1138> command-line openttd, yes.
12:26:38 <woobilicious> does scrollwheel still zoom in and out with it set to map scrolling for anyone else? it makes little sense as to why this hasn't been a bug report on MacOSX hmm, because it would zoom and scroll at the same time.
12:27:22 <peter1138> Because either 1) not many mac OS users play with these ancient settings 2) they think it's normal ๐Ÿ˜„
12:28:30 <woobilicious> well I assume I've fixed this bug then lol...now to test it on my laptop...maybe I'll add pinch zoom too.
12:29:49 <_zephyris> locosage: That's the long-term goal of gamescript, right?
12:30:46 <talltyler> peter1138: Bridges over stations is really useful ๐Ÿ™‚
12:31:52 <talltyler> Iโ€™m playing a multiplayer xUSSR game where trains are 15+ tiles long and itโ€™s a lifesaver to be able to bridge the super long stations needed
12:33:29 <woobilicious> Oh yeah I played around with using tunnels for something familiar once.
12:40:10 <emperorjake> woobilicious: On Mac, I set scrollwheel to scroll map, and then you can effortlessly flick around the map with the trackpad, and use pinch to zoom. You have to change the setting back when using a mouse though
12:41:34 <woobilicious> emperorjake: Does it not trigger a zoom even as well? if I set scroll map on my system and it still zooms.
12:42:49 <emperorjake> No, but I'm not on the latest version, lemme check
12:43:42 <merni> Scrollwheel to scroll map doesn't seem to work for me on windows
12:43:52 <woobilicious> ohh wait I think it disables zoom if the v_wheel != 0
12:44:11 <merni> just zooms
12:44:19 <woobilicious> merni: it's only supported on MacOS atm.
12:44:25 <merni> sadge
12:44:50 <merni> well I assume it working on trackpads is only supported on macos
12:44:57 <merni> probably works fine with an actual scrollwheel
12:45:03 <woobilicious> should be easy enough to add for windows, on SDL2 it's only two lines of code.
12:45:18 <merni> PR would be welcome :P
12:45:20 <emperorjake> Strange, I just connected my mouse to my Mac and the scrollwheel zoomed for a few seconds before it started scrolling the map
12:45:44 <emperorjake> but otherwise the trackpad scrollimg behaviour still works perfectly in 14.0
12:46:46 <woobilicious> This code probably needs some refactoring, the MacOSX magnify event just does a ++ on wheel...lol
12:58:28 <peter1138> Yes, it's about 20 years old.
12:59:38 <ahyangyi> which is something we celebrate for! ๐Ÿ˜›
13:02:08 <peter1138> https://cdn.discordapp.com/attachments/1008473233844097104/1230503636359057498/image.png?ex=66338ed0&is=662119d0&hm=776ab5bc7b4e17330eab78dd0b8cd23da806360f7431c3fc928f5ee3a619fb60&
13:02:08 <peter1138> Oh
13:02:56 <woobilicious> it's also a little weird that it does `wheel++` in a loop instead of just `wheel += number_of_loops`;
13:20:06 <peter1138> A good PR will sort out weird things like that in separate commits.
13:20:18 <peter1138> (Assuming the code is staying)
13:21:03 <woobilicious> hmm good point I could check the commit that added the code...I wrote my SDL2 version to do the O(1) variant for now though.
13:22:22 <woobilicious> wonder how long this will take to compile on my crappy laptop.
13:37:49 *** nielsm has joined #openttd
13:40:43 <andythenorth> _zephyris: afaik the long-term goal of gamescript is to remove gamescript ๐Ÿ˜›
13:43:18 <andythenorth> woobilicious: we what now? ๐Ÿ˜ฎ How do people scroll on non-Mac trackpads? ๐Ÿ˜ฎ
13:43:33 <andythenorth> /me yet another school day
13:43:39 <woobilicious> LMB or arrow keys. lmao
13:44:15 <woobilicious> I'm writing a patch for SDL2 right now to fix it on atleast linux.
13:44:31 <andythenorth> I have a modifier key for drag-scroll
13:44:56 <woobilicious> goddam...desktop compile time is faster than the last 1% on my laptop lmao
13:46:44 <woobilicious> 2mins compile time on my desktop, 20mins and still running on my laptop.
13:47:21 <woobilicious> or perhaps my laptop OOM'd and froze up...
13:49:56 <woobilicious> gonna love having a Ryzen 7 with 8GB of RAM...*headdesk*
13:51:51 <woobilicious> well if anyone else wants to try it: https://github.com/YellowOnion/OpenTTD-patches/tree/sdl-touchpad
13:59:32 <peter1138> andythenorth: We use mice.,
13:59:58 <peter1138> Desktop trackpads were a thing for a while.
14:00:29 <peter1138> Apple Magic Trackpad ยฃ114.99. Nah.
14:16:39 <woobilicious> peter1138: do you use mouse in bed or just not play openttd in bed? lol
14:21:22 <woobilicious> holyshit my code works...just need to flip x axis.
14:22:11 <woobilicious> well the trackpad stuff works..not the pinch zoom.
14:25:29 <_jgr_> Trying to play in bad sounds like a good way to get a bad back
14:31:10 <woobilicious> lmao it only takes 4mins to compile on my laptop if keep everything in memory.
14:46:56 <DorpsGek> [OpenTTD/team] glx22 commented on issue #549: [vi_VN] Translator access request https://github.com/OpenTTD/team/issues/549
14:56:03 <peter1138> I remember when it took about 15 seconds to compile.
15:00:39 <woobilicious> and no doubt less than 8GB of RAM too.
15:01:04 <peter1138> Yup. A while ago, before there was any C++ of course.
15:02:40 <woobilicious> and zero optimization stages in the compiler lol
15:05:55 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #12525: Doc: update release documentation with the latest https://github.com/OpenTTD/OpenTTD/pull/12525
15:06:36 <peter1138> Hmm, so if I try updating the emscripten version, is there some rules to follow, or just try latest version...
15:07:02 <truebrain> try the latest, get annoyed that the patch fails, update the patch, get more annoyed how slow it is, slap it around a few times, and done!
15:07:04 <truebrain> easy ๐Ÿ˜›
15:07:09 <peter1138> \o/
15:07:17 <truebrain> you hope a newer emscripten version fixes your problems?
15:07:26 <peter1138> Yes, all of them.
15:08:13 <peter1138> I guess not really emscripten itself but the C++ libraries. If that's different...
15:08:58 <truebrain> seems emscripten now accepts "contrib" ports, so we might be able to upstream liblzma
15:09:20 <peter1138> 2 weeks ago would've been perfect timing ๐Ÿ˜„
15:09:31 <truebrain> ghehehehe
15:10:00 <truebrain> anyway, os/emscripten has a README telling you how to locally test, in case you hadn't find that yet
15:10:55 <peter1138> docker ๐Ÿ˜ฆ
15:11:05 <truebrain> podman better?
15:11:11 <truebrain> as s/docker/podman/g works too ๐Ÿ˜›
15:11:25 <truebrain> and otherwise, I can give it a look if you like
15:13:32 <truebrain> owh, we can make liblzma patch easier now at least. That might be worth doing ..
15:13:46 <peter1138> I do have a machine that has docker running on it.
15:13:56 <peter1138> But it's not my desktop dev machine.
15:18:51 *** Ox7C5_ has joined #openttd
15:19:28 <truebrain> I will see if I can update emscripten ๐Ÿ™‚
15:19:39 <truebrain> gives me an oppurtinity to check out their new ports system for liblzma ๐Ÿ™‚
15:21:53 *** Wormnest has joined #openttd
15:27:33 <truebrain> lol, the latest emscripten comes with a fre warning, that is spamming
15:28:06 <truebrain> `src/command_func.h:304:35: warning: cast from 'void (*)(Commands ...`
15:28:13 <truebrain> `converts to incompatible function type [-Wcast-function-type-mismatch]`
15:32:55 <peter1138> Hello rabbit-hole.
15:34:07 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #12525: Doc: update release documentation with the latest https://github.com/OpenTTD/OpenTTD/pull/12525#pullrequestreview-2009218557
15:36:15 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #12525: Doc: update release documentation with the latest https://github.com/OpenTTD/OpenTTD/pull/12525#pullrequestreview-2009254058
15:36:31 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #12525: Doc: update release documentation with the latest https://github.com/OpenTTD/OpenTTD/pull/12525
15:36:59 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #12525: Doc: update release documentation with the latest https://github.com/OpenTTD/OpenTTD/pull/12525#pullrequestreview-2009255697
15:41:44 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #12526: Codechange: upgrade Emscripten to 3.1.57 https://github.com/OpenTTD/OpenTTD/pull/12526
15:42:00 <truebrain> that PR will fail because of the amount of warnings. But there you can contribute peter1138 ๐Ÿ˜›
15:42:35 <peter1138> Heh, I'm not even sure a newer version will allow my fancy stuff ๐Ÿ™‚
15:42:47 <peter1138> But updating anyway is no bad thing.
15:42:47 <truebrain> it was a good idea to upgrade emscripten anyway ๐Ÿ™‚
15:42:50 <truebrain> ๐Ÿ™‚
15:44:00 <truebrain> I wonder if the warning is a correct warning, or just one of those "clang makes a mistake" warnings
15:44:10 <peter1138> Hmm, still tries to apply the patch.
15:44:49 <truebrain> haha, doh
15:44:56 <truebrain> it uses the workflow from master
15:45:02 <truebrain> so this won't work on a PR changing that ๐Ÿ˜„
15:45:06 <truebrain> I always forget ๐Ÿ˜›
15:45:29 <truebrain> so yeah, you will just have to trust me I tested this locally, and OpenTTD actually loads ๐Ÿ™‚
15:46:15 <truebrain> (this workflow needs some secrets to publish the results; and as such, it uses the workflow from master instead of the PR, to make sure nobody can do evil shit, and take over the world etc etc)
15:46:39 <truebrain> but the CI emscripten does build; so there is that ๐Ÿ™‚
15:46:55 <peter1138> So it builds, just with 5 million warnings...
15:46:59 <truebrain> yup
15:47:04 <truebrain> which need to be fixed before I can merge ๐Ÿ™‚
15:47:09 <DorpsGek> [OpenTTD/OpenTTD] ldpl opened pull request #12527: Cleanup: Remove redundant break statement https://github.com/OpenTTD/OpenTTD/pull/12527
15:48:01 <truebrain> I am just a bit confused why it warns about a `reinterpret_cast`, as it is meant not to be compatible .. I mean .. it is a `reinterpret_cast` ffs
15:49:35 <DorpsGek> [OpenTTD/team] meskobalazs opened issue #550: [hu_HU] Translator access request https://github.com/OpenTTD/team/issues/550
15:50:09 <peter1138> He's removing my breaks ๐Ÿ˜ฆ
15:50:15 <peter1138> I just have to keep on working.
15:50:17 <truebrain> no more backdoor for you!
15:50:21 <pickpacket> humhum. Hmmm
15:50:58 <truebrain> `The function type void (*) (void) is special and matches everything, which
15:50:58 <truebrain> can be used to suppress this warning.`
15:50:59 <truebrain> lol
15:51:42 <truebrain> so newer clang versions will also trigger this warning
15:52:12 <truebrain> some can be explained that we don't use the StrongType everywhere for TileIndex
15:52:15 <truebrain> but an uint instead
15:52:19 <truebrain> which indeed can be considered a bug
15:52:27 <truebrain> but some others I am unsure of
15:56:58 <truebrain> funny, CommandCallback is also defined to have `TileIndex` as 3rd param
15:57:08 <truebrain> but many Callbacks don't use it for a TileIndex ๐Ÿ˜›
15:58:56 <truebrain> the code that executes the callback indeed keeps that into account
16:01:18 <truebrain> `reinterpret_cast<CommandCallback *>(reinterpret_cast<void(*)()>`
16:01:23 <truebrain> we already fix it in another place
16:01:24 <truebrain> funny
16:01:57 <peter1138> That's the generic "see this error? no you don't..." way
16:01:59 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler approved pull request #12525: Doc: update release documentation with the latest https://github.com/OpenTTD/OpenTTD/pull/12525#pullrequestreview-2009317583
16:02:38 <truebrain> yeah, but why is it applied in one place and not in another, I wonder
16:02:54 <truebrain> as I assume it was done with the same intentions
16:03:25 <peter1138> Probably because the compiler only complained about one place.
16:03:30 <truebrain> I guess
16:03:35 <truebrain> right, easy fix
16:06:39 <Rubidium> heh, what about "'Latest' is not a valid version,'Most recent' neither"? ;D
16:07:37 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #12528: Fix: Inconsistent space between console history and current line. https://github.com/OpenTTD/OpenTTD/pull/12528
16:07:40 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #12529: Codefix: cast to "CommandCallback *" in a way cast-function-type-mismatch doesn't mind https://github.com/OpenTTD/OpenTTD/pull/12529
16:08:38 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #12528: Fix: Inconsistent space between console history and current line. https://github.com/OpenTTD/OpenTTD/pull/12528#pullrequestreview-2009331890
16:08:53 <truebrain> with that codefix, Emscripten upgrade will work just fine. So good ๐Ÿ™‚
16:09:34 *** HerzogDeXtEr has joined #openttd
16:16:51 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #12529: Codefix: cast to "CommandCallback *" in a way cast-function-type-mismatch doesn't mind https://github.com/OpenTTD/OpenTTD/pull/12529#pullrequestreview-2009348846
16:17:27 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #12527: Cleanup: Remove redundant break statement https://github.com/OpenTTD/OpenTTD/pull/12527#pullrequestreview-2009350061
16:19:45 <DorpsGek> [OpenTTD/team] glx22 commented on issue #550: [hu_HU] Translator access request https://github.com/OpenTTD/team/issues/550
16:29:11 <talltyler> Anyone care to click buttons on 12516?
16:41:08 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #12530: Codechange: Use std::optional for town parent scope resolver. https://github.com/OpenTTD/OpenTTD/pull/12530
16:41:39 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #12529: Codefix: cast to "CommandCallback *" in a way cast-function-type-mismatch doesn't mind https://github.com/OpenTTD/OpenTTD/pull/12529
16:42:16 <peter1138> talltyler: What's in it for me? I really fancy some chocolate about now...
16:44:02 <DorpsGek> [OpenTTD/OpenTTD] PeterN approved pull request #12516: Fix: Mark vehicle status bars dirty when a vehicle leaves unbunching depot https://github.com/OpenTTD/OpenTTD/pull/12516#pullrequestreview-2009406226
16:45:03 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler merged pull request #12516: Fix: Mark vehicle status bars dirty when a vehicle leaves unbunching depot https://github.com/OpenTTD/OpenTTD/pull/12516
16:45:28 <talltyler> peter1138: Iโ€™ll send some over via WonkaVision ๐Ÿ˜„
16:45:45 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #12528: Fix: Inconsistent space between console history and current line. https://github.com/OpenTTD/OpenTTD/pull/12528
16:49:13 <peter1138> My face when my partner brings all the snacks home and I don't want any but shows me anyway: ๐Ÿ˜ญ
16:49:13 <peter1138> My face when my partner has eaten then all and left none for me: ๐Ÿ˜ญ
16:49:57 <_glx_> should we backport #12522 ?
16:51:27 <_glx_> and maybe #12528 too
16:52:02 <peter1138> Depends if we're going for bug-fix-only or not.
16:52:20 <peter1138> (But maybe you can consider it a bug...)
16:54:14 <talltyler> A true lose/lose scenario
16:57:08 <truebrain> I hope that was a reply to a bit earlier ๐Ÿ˜›
16:58:05 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #12526: Codechange: upgrade Emscripten to 3.1.57 https://github.com/OpenTTD/OpenTTD/pull/12526
17:02:01 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #12531: Codechange: Unify where rail station tile flags are set. https://github.com/OpenTTD/OpenTTD/pull/12531
17:04:39 <truebrain> There we go, happy CI
17:05:01 <_glx_> some dubious ownership, but was already the case before
17:05:20 <peter1138> Ownership of?
17:05:57 <_glx_> git
17:06:12 <peter1138> Ah, the build workflow stuff.
17:07:05 <_glx_> just means version string is `--g` but not very important for CI
17:12:55 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #12525: Doc: update release documentation with the latest https://github.com/OpenTTD/OpenTTD/pull/12525
17:23:45 <peter1138> So it all builds but we just can't test deployment until it's merged.
17:35:53 <truebrain> Yes
17:36:04 <truebrain> And I locally tested it actually works ๐Ÿ™‚
17:37:14 <DorpsGek> [OpenTTD/OpenTTD] PeterN approved pull request #12526: Codechange: upgrade Emscripten to 3.1.57 https://github.com/OpenTTD/OpenTTD/pull/12526#pullrequestreview-2009511287
17:37:36 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #12526: Codechange: upgrade Emscripten to 3.1.57 https://github.com/OpenTTD/OpenTTD/pull/12526
17:37:55 <truebrain> Now curious if it fixes your issue ๐Ÿ˜„
17:38:18 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #12507: Fix: Use modern comparisons instead of memcmp in cache check. https://github.com/OpenTTD/OpenTTD/pull/12507
17:38:21 <peter1138> Let's find out.
17:43:07 <truebrain> Success!
17:43:40 <truebrain> Testing preview too, just to be sure ๐Ÿ˜›
17:43:45 *** Wolf01 has joined #openttd
17:43:52 <_glx_> seems to build indeed
17:45:31 <_glx_> and cleanly
17:46:15 <peter1138> Interesting.
17:50:42 <_glx_> strange I can see it finds lzma in cmake log, but in build log it only mentions zlib, libpng and sdl2 ports
17:51:42 <truebrain> Not strange at all
17:52:02 <truebrain> When you see it twice, it is when you have to worry ๐Ÿ™‚
17:52:16 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler approved pull request #12531: Codechange: Unify where rail station tile flags are set. https://github.com/OpenTTD/OpenTTD/pull/12531#pullrequestreview-2009537238
17:53:51 <peter1138> It finds it a different way, right?
17:54:14 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #12531: Codechange: Unify where rail station tile flags are set. https://github.com/OpenTTD/OpenTTD/pull/12531
17:54:22 <truebrain> Cmake captures logs, so it is in one of the cmake log files (which we can't see on the CI)
17:54:32 <peter1138> Ah
17:55:20 <_glx_> in preview build I can see liblzma.a
17:56:36 <truebrain> And preview still works too, w00p
17:56:40 <truebrain> Such a happy day
17:57:28 <_glx_> and it finds the AI I seem to have downloaded some time ago
18:09:54 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #12532: Codechange: Remove some unnecessary c_str() when passing std::strings. https://github.com/OpenTTD/OpenTTD/pull/12532
18:27:42 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
19:09:03 <peter1138> Hmm
19:34:15 <DorpsGek> [OpenTTD/OpenTTD] glx22 opened pull request #12533: Backport master into release/14 https://github.com/OpenTTD/OpenTTD/pull/12533
19:34:37 <_glx_> had to fix some conflicts
19:36:24 <andythenorth> is there *anything* I can check to detect that a cleared coast tile will in fact shortly be a coast tile?
19:36:41 <andythenorth> I guess I could look at the adjacent tiles for water, and measure the slope?
19:37:11 <_glx_> I seem the remember this exact question
19:37:42 <andythenorth> I've asked it many times ๐Ÿ˜›
19:39:44 <peter1138> A coast that has been cleared is no longer a coast tile.
19:40:36 <_glx_> my guess is it's again about custom foundations ๐Ÿ™‚
19:42:53 <andythenorth> it's about locating port industries
19:43:03 <andythenorth> but I think it affected foundations too maybe
19:43:49 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1230604720264183968/image.png?ex=6633ecf4&is=662177f4&hm=98ea274e2df950deee54b85f63ddc26f602c6faced515c3725bbe15c1f6f9dd6&
19:43:49 <andythenorth> nah the foundations are a different effect, and are an edge case
19:43:54 *** Ox7C5_ has quit IRC ()
19:44:01 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1230604769974816838/image.png?ex=6622c980&is=66217800&hm=abcf9d23c3b16175d2178901980befd0fc33bd0f986534afe9466d72a93bae92&
19:44:07 <andythenorth> not expecting those to work
19:44:20 <_glx_> hehe
19:44:27 <peter1138> Foundation Variants?
19:44:50 <_glx_> foundation for water
19:45:44 <_glx_> oh you put water line on your fondation ?
19:47:31 <andythenorth> apparently
19:47:34 <andythenorth> waves
20:21:38 *** nielsm has quit IRC (Ping timeout: 480 seconds)
20:33:22 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1230617191431274596/image.png?ex=6633f892&is=66218392&hm=960f2e5612d5fc7f510e70a70cea373dfeaef5cbaddd49eb4e6e2fc5568e671b&
20:33:22 <andythenorth> the cleared coast effect is this
20:42:17 <peter1138> Okay, why are you looking for a coast tile there?
20:42:51 <peter1138> Aren't you just looking for a tile with a slope?
20:44:32 <andythenorth> possibly
20:44:37 <FLHerne> then you could build wharfs on inland areas that happened to be at level 0
20:44:42 *** gelignite has joined #openttd
20:44:49 <FLHerne> of course that can only happen if someone terraformed it
20:44:55 <FLHerne> I think?
20:44:57 <peter1138> I'm assuming the other tiles check for water, no?
20:45:01 <andythenorth> yes
20:45:38 <andythenorth> hmm
20:45:39 <andythenorth> no
20:45:48 <andythenorth> industry flag is built on water
20:46:01 * andythenorth looks up flag
20:46:26 <andythenorth> prop 1A bit 2
20:47:39 <andythenorth> let's remove the water check from this coast tile
20:48:28 <andythenorth> nah, makes no difference
20:49:14 <andythenorth> maybe because prop 1A bit 2 is set
20:49:30 <andythenorth> does that flag force all tiles to be water
20:49:33 <andythenorth> ?
20:52:18 <andythenorth> flag is INDUSTRYBEH_BUILT_ONWATER in OpenTTD?
20:57:45 <peter1138> Do tile checks override that?
20:57:57 <peter1138> Or does it just consider coast tiles as water?
20:58:59 <andythenorth> the check in industry_cmd.cpp is....not for this time of night ๐Ÿ™‚
21:02:34 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #12532: Codechange: Remove some unnecessary c_str() when passing std::strings. https://github.com/OpenTTD/OpenTTD/pull/12532#pullrequestreview-2009891805
21:03:19 <peter1138> Okay
21:03:32 <peter1138> No overrides, it's just that coast tiles are water.
21:03:47 <peter1138> Cleared tiles that used to be coast tiles are not coast tiles, so are not water.
21:03:56 <peter1138> No amount of callback checking can work around that.
21:04:41 <peter1138> Industry is either on water or not on water, no in-between.
21:05:50 <andythenorth> saves me writing checks ๐Ÿ™‚
21:05:57 <peter1138> At this point we know which layout is going to be used.
21:06:13 <andythenorth> oh I could do that sprites-overlap tiles thing? ๐Ÿ˜›
21:06:16 <peter1138> So it might be possible to extend the spec to say which tiles should be land, which should be water, and which don't care?
21:06:16 <andythenorth> that goes well
21:06:30 <peter1138> No, I'd personally ban you from OpenTTD.
21:06:55 <andythenorth> can't see the problem, it only confuses where the tiles are
21:07:10 <andythenorth> and probably doesn't sprite sort reliably
21:07:35 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #12507: Fix: Use modern comparisons instead of memcmp in cache check. https://github.com/OpenTTD/OpenTTD/pull/12507#pullrequestreview-2009904009
21:07:46 <andythenorth> there's industry tile prop 0D bit 5 as well
21:07:48 <andythenorth> do I set that?
21:08:08 <peter1138> Alternatively, and maybe simpler, maybe a flag that says "this is a water industry but at least one edge of this industry should be on land"
21:08:44 *** Smedles has quit IRC (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
21:08:51 *** Smedles has joined #openttd
21:09:02 <peter1138> And then use callbacks on the edge tiles to work out where slopes are, etc...
21:09:04 <peter1138> Dunno?
21:09:11 *** Smedles has quit IRC ()
21:09:16 *** Smedles has joined #openttd
21:09:18 <peter1138> That way seems like it's more likely to be able to build an industry.
21:09:44 <andythenorth> I remember this got changed several times already
21:09:50 <andythenorth> there were edge cases with river slopes
21:09:57 <andythenorth> which are sloped and water
21:10:21 <andythenorth> maybe I should read the commits
21:10:24 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #12530: Codechange: Use std::optional for town parent scope resolver. https://github.com/OpenTTD/OpenTTD/pull/12530#pullrequestreview-2009907638
21:10:31 <andythenorth> (FIRS commits)
21:13:16 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #12532: Codechange: Remove some unnecessary c_str() when passing std::strings. https://github.com/OpenTTD/OpenTTD/pull/12532
21:13:58 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #12507: Fix: Use modern comparisons instead of memcmp in cache check. https://github.com/OpenTTD/OpenTTD/pull/12507
21:14:20 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #12530: Codechange: Use std::optional for town parent scope resolver. https://github.com/OpenTTD/OpenTTD/pull/12530
21:14:25 <peter1138> Many spam, sorry.
21:14:42 <truebrain> pffff, all those merges
21:14:44 <truebrain> HOW DARE YOU
21:14:45 <truebrain> ๐Ÿ˜›
21:16:24 *** Smedles has quit IRC (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
21:16:28 *** Smedles has joined #openttd
21:17:18 <peter1138> But one less raw pointer ๐Ÿ˜‰
21:17:32 <truebrain> nice ๐Ÿ™‚
21:17:32 <peter1138> Code is safe now, right?
21:18:00 *** Smedles has quit IRC ()
21:19:21 *** Smedles has joined #openttd
21:20:08 <truebrain> safer
21:24:27 <andythenorth> sleep time ๐Ÿ˜›
21:25:25 *** gelignite has quit IRC (Quit: Stay safe!)
21:35:56 <_glx_> hmm I failed at conflict resolving it seems, let's redo it
21:36:47 <_glx_> or more PRs need the label
21:47:57 <peter1138> > note: 'unique_ptr' has been explicitly marked deleted here: unique_ptr(const unique_ptr&) = delete;
21:48:00 <peter1138> Well, damn.
21:52:07 <DorpsGek> [OpenTTD/OpenTTD] glx22 updated pull request #12533: Backport master into release/14 https://github.com/OpenTTD/OpenTTD/pull/12533
21:52:26 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:53:57 <peter1138> So `MyClass(MyClass &&) = default;` is enough...
21:55:26 <_glx_> solving the conflict I had in openttd.cpp makes me think about including 12129 and 12505
21:55:56 <peter1138> Dear Discord, please just make github links out of issue numbers, automatically ๐Ÿ˜‰
21:56:16 <_glx_> https://github.com/OpenTTD/OpenTTD/pull/12129 and https://github.com/OpenTTD/OpenTTD/pull/12505
21:56:19 <talltyler> Sounds like a task for a bot
21:56:56 <dwfreed> yeah, how does discord know you're referring to a github issue? and how would it know which repo issue you mean
21:57:37 <dwfreed> this is a perfect task for a bot, not discord itself
21:59:42 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
22:02:24 <peter1138> How does anything know anything? We just don't know.
22:02:47 *** reldred has joined #openttd
22:02:47 <reldred> I try not to know anything
22:02:54 <truebrain> we know
22:03:23 <dwfreed> I know nothing
22:05:09 <peter1138> You can choose to either take my throw-away joke comment as a throw-away joke comment, OR as a literal request, believing that I understand nothing about disconnected systems
22:07:22 <peter1138> I guess reserving a vector to "ensure" none of its contents ever get moved is a bad and unreliable idea...
22:08:58 <_glx_> looks like something which will probably silently break in a later change
22:09:08 <peter1138> Exactly.
22:10:08 <_glx_> like the SmallMap -> std::map unexepected desync
22:10:25 <peter1138> That? I was just testing you ๐Ÿ˜„
22:10:48 <_glx_> just needed a year to surface
22:11:02 <truebrain> yeah, you kinda failed that test, if I am being honest
22:11:24 <_glx_> and we had many beta and RC
22:11:39 <_glx_> (but nobody used them in MP it seems)
22:12:06 <truebrain> there have been plenty; but nobody reports that stuff ๐Ÿ˜›
22:14:38 <_glx_> we should crash clients on desync ๐Ÿ˜‰
22:15:37 <truebrain> without massive assistance from a server owner, we can't trace them in most cases anyway
22:15:42 <truebrain> so not really much point ๐Ÿ™‚
22:16:21 <peter1138> _glx_: And the server.
22:16:25 <_glx_> yeah, that's the main issue, big servers only use stable
22:16:32 <peter1138> Really annoy everyone ๐Ÿ˜„
22:20:44 <truebrain> We already do that sufficiently ๐Ÿ˜›
22:21:37 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:26:56 <_jgr_> Desyncs have been a bit of a problem for me in the past, so I've done some tinkering on automating some of this without needing to involve the server operator or change the server configuration
22:28:01 <_jgr_> Might be of interest for upstreaming if problems persist
22:40:05 <peter1138> JGR is just as bad as me.
22:40:09 <peter1138> "I have a patch for that"
22:57:52 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
23:10:58 <truebrain> We have access to his patches ๐Ÿ˜›
23:30:03 <DorpsGek> [OpenTTD/OpenTTD] wafehling commented on issue #12433: [Bug]: vehicle number and group name are a bit too close https://github.com/OpenTTD/OpenTTD/issues/12433
23:30:09 *** Wormnest has joined #openttd
23:41:58 *** tokai|noir has joined #openttd
23:41:58 *** ChanServ sets mode: +v tokai|noir
23:45:52 <peter1138> Hah, that's fair.
23:48:53 *** tokai has quit IRC (Ping timeout: 480 seconds)
23:53:16 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on issue #12433: [Bug]: vehicle number and group name are a bit too close https://github.com/OpenTTD/OpenTTD/issues/12433
23:55:58 <peter1138> Hmm.