IRC logs for #openttd on OFTC at 2023-02-12
            
03:06:01 *** Wormnest has quit IRC (Quit: Leaving)
03:06:08 *** tokai has joined #openttd
03:06:08 *** ChanServ sets mode: +v tokai
03:12:55 *** tokai|noir has quit IRC (Ping timeout: 480 seconds)
03:41:50 *** D-HUND has joined #openttd
03:45:10 *** debdog has quit IRC (Ping timeout: 480 seconds)
04:14:11 *** TROILUS has quit IRC (Read error: Connection reset by peer)
04:14:11 *** TROILUS4 has joined #openttd
04:14:12 *** TROILUS4 is now known as TROILUS
04:17:50 *** TROILUS4 has joined #openttd
04:23:40 *** TROILUS has quit IRC (Ping timeout: 480 seconds)
04:23:41 *** TROILUS4 is now known as TROILUS
04:54:29 *** keikoz has joined #openttd
05:50:01 *** Flygon has joined #openttd
06:30:10 *** D-HUND is now known as debdog
06:48:31 *** HerzogDeXtEr has joined #openttd
07:33:00 <GeorgeVB> A question about railtypes
07:33:00 <GeorgeVB> https://newgrf-specs.tt-wiki.net/wiki/NML:Railtypes
07:33:00 <GeorgeVB> How to check combination of track on a tile? I want to make underlay graphics to be different depending on tracks layout.
07:33:00 <GeorgeVB> Is it possible to check combination of track on a nearby tile? I would like to take it into account too.
07:35:20 <GeorgeVB> https://cdn.discordapp.com/attachments/1008473233844097104/1074232223991083028/image.png
07:36:01 <GeorgeVB> These two layouts use the same underlay.
07:37:42 <GeorgeVB> The location of the switch is the same, but it should be different.
07:38:17 <GeorgeVB> So I need to check tracks and use the right graphics
07:45:33 <Brickblock1> Could you not just do it the other way and have every combination be a sprite
07:53:52 <Gwyd> GeorgeVB: You can use callback "precombined" to define a sprite for every possible combination of tracks (63) available
07:56:18 <GeorgeVB> It is rail track graphics, but underlay graphics. It should hot become grey when a train reserves a way trough the tile
07:57:22 <Gwyd> Precombined is precombined track and underlay graphics which is the only way that I know of to do what you're describing
07:57:47 <Gwyd> I believe it still uses the track overlays to show reservation
08:00:26 <GeorgeVB> It sounds a bit strange to draw something over the precombined sprites. But in anyway it does not answer my question - How to check it in the underlay callback.
08:00:57 <Brickblock1> I doubt you can
08:02:14 *** nielsm has joined #openttd
08:04:07 <Brickblock1> There are only a few variables and that doesn't seam possible
08:35:45 <GeorgeVB> How hard would it be to provide such vars?
08:35:45 <GeorgeVB> - Tracks layout of nearby tiles
08:35:45 <GeorgeVB> - Land info of nearby tiles
08:35:45 <GeorgeVB> - Bridge info of nearby tiles (to hold the direction correctly, because on the same slope it can flat or go up)
09:19:56 <Gwyd> Provide a spriteset with 63 sprites with the switch in different locations, call that spriteset in the precombined callback - this currently isn't possible using the underlay callback, which was a problem until precombined was added
09:20:20 <Gwyd> I think you can already access land info of nearby tiles but the info you can get is limited
09:20:43 <Gwyd> Using FEAT_GLOBAL variables
09:25:08 *** Wolf01 has joined #openttd
09:34:51 <andythenorth> I think we believe getting nearby land info is expensive
09:34:57 <andythenorth> Might be wrong though
09:54:28 <GeorgeVB> Gwyd: I can't find anything like that
09:54:28 <GeorgeVB> https://newgrf-specs.tt-wiki.net/index.php?title=Special%3ASearch&search=%20FEAT_GLOBAL&fulltext=1
09:54:28 <GeorgeVB> Could you provide a link to a page, where I can read about it?
10:02:19 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #10448: Add: use https:// for content-service connections https://github.com/OpenTTD/OpenTTD/pull/10448#pullrequestreview-1294680144
10:02:46 <TrueBrain> a review after the review .. and I thought I was done πŸ˜›
10:03:54 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10448: Add: use https:// for content-service connections https://github.com/OpenTTD/OpenTTD/pull/10448#pullrequestreview-1294683791
10:03:59 <Rubidium> sorry, I just looked through the code before not the cmake/documentation stuff
10:04:15 <GeorgeVB> If you've meant this https://newgrf-specs.tt-wiki.net/wiki/NML:General#General_variables than I do not see anything about landscape here
10:05:06 <Rubidium> TrueBrain: also, does DorpsGek like you enough to do @topic set 1 13.0
10:05:18 <TrueBrain> @topic set 1 13.0
10:05:18 <DorpsGek> TrueBrain: Error: You don't have permissions to perform this action.
10:05:23 <TrueBrain> doubt it πŸ˜›
10:05:38 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10448: Add: use https:// for content-service connections https://github.com/OpenTTD/OpenTTD/pull/10448#pullrequestreview-1294684072
10:06:59 <TrueBrain> Rubidium: don't worry about it, I like reviews πŸ˜„ It just made me giggle πŸ™‚
10:09:11 <TrueBrain> meh; I could make libcurl optional .. but do we want that ..
10:09:25 <TrueBrain> all this "optional" stuff .. it becomes completely unusable
10:09:36 <TrueBrain> similar with libpng, liblzma, zlib .. sure, you can, but .. really?
10:09:59 <Rubidium> that's the philosophical question to answer, but also more generically with zlib and the likes
10:10:13 <TrueBrain> very tempted to just make them required 😦
10:10:17 <TrueBrain> but that would be for another PR
10:12:05 *** sla_ro|master has joined #openttd
10:13:51 <TrueBrain> ` CURL not found; compiling OpenTTD without CURL is strongly discouraged`
10:14:06 <TrueBrain> only shows up on Linux-targets, ofc
10:22:09 *** reldred has quit IRC (Quit: User went offline on Discord a while ago)
10:23:35 *** michi_cc[d] has joined #openttd
10:23:35 <michi_cc[d]> OpenTTD is perfectly usable without the content download, so in that sense I don't see CURL has absolutely necessary. Of course you'd never leave it out for any official/public build, but content can be gotten outside of the game.
10:23:53 <TrueBrain> and that is the endless argument we use to have everything optional, yes πŸ™‚
10:24:00 <TrueBrain> same with zlib and lzma πŸ™‚
10:24:07 <TrueBrain> I just sometimes wonder if we don't make things more complex because of that
10:24:14 <TrueBrain> instead of keeping it simple .. both for the user and for our code
10:24:50 <TrueBrain> as said, it is a philosophical question πŸ˜›
10:25:17 <TrueBrain> ` Curl: 7.81.0`
10:25:17 <TrueBrain> ` Curl SSL: OpenSSL/3.0.2`
10:25:19 <TrueBrain> pretty
10:26:28 <TrueBrain> hmm, our CI doesn't actually check if you can leave out all those libraries and that it still builds
10:26:47 <michi_cc[d]> But CURL especially is already optional if you don't use it on every target.
10:27:33 <TrueBrain> yes. And that silly enough is an argument against having it optional, as for Windows it "just works" πŸ™‚
10:28:05 <TrueBrain> but it is okay, this philosophical discussion we can have another day; for now I will comply with the establishment πŸ˜›
10:28:12 <michi_cc[d]> I wouldn't add any extra stuff just to be able to turn something off, but if you have multiple backends anyway, the infrastructure is already there.
10:28:19 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10448: Add: use https:// for content-service connections https://github.com/OpenTTD/OpenTTD/pull/10448
10:28:36 <TrueBrain> michi_cc[d]: these are all circle arguments, reinforcing the discussion made in the past πŸ™‚
10:28:48 <TrueBrain> my question is challenging that discussion of the past
10:28:55 <TrueBrain> especially for things like lzma and zlib
10:29:26 <TrueBrain> discussion -> decision, what-ever. English sucks πŸ˜›
10:30:25 <TrueBrain> Rubidium: crashlog was a nice catch, I totally forgot we printed lib-versions there πŸ™‚
10:36:08 <TrueBrain> shall we add a job to the CI that builds without all the required libs? Just to confirm everything is working as expected? Do we add an extra build for it .. or use the dedicated build for that .. hmm ..
10:36:24 <michi_cc[d]> I'm not an active Linux user, so in the end I "don't care", i.e. I'll go along with whatever Linux users decide. Philosophical I'm in the camp of maximum compatibility when the effort is reasonable, as compatibility with mostly anything was one of the things making OpenTTD successful in the first place. Of course using C++17 somewhat contradicts that, but if the benefits are good enough, that is okay.
10:36:25 *** Samu has joined #openttd
10:37:00 <TrueBrain> I can understand that reasoning; but libpng, libz and lzma also holds for Windows
10:37:15 <TrueBrain> you need to vcpkg install those
10:37:28 <TrueBrain> so you don't have to be a Linux user for this πŸ˜„
10:38:07 <TrueBrain> what annoys me a bit about this setup, that someone might go like: owh, I have a fully functional OpenTTD, but in reality, several things don't work or work crappy ..
10:38:25 <TrueBrain> so do we actually gain anything by making it optional for the shake of ... making it optional
10:38:37 <TrueBrain> as it is not benefiting the actual user, I would argue
10:38:47 <TrueBrain> it feels a lot a "because we can"
10:45:16 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #10468: Change: [Actions] also attempt a build without any (encouraged) dependencies https://github.com/OpenTTD/OpenTTD/pull/10468
10:45:25 <TrueBrain> in theory we should do the same for Windows and MacOS, but we already have so many builds .....
10:53:00 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #10448: Add: use https:// for content-service connections https://github.com/OpenTTD/OpenTTD/pull/10448#pullrequestreview-1294690374
10:56:33 <TrueBrain> okay, #10468 is pointless ... default GitHub runners have all our dependencies already installed πŸ˜„
10:56:52 <TrueBrain> so yeah .... that is not adding any value πŸ˜›
10:57:48 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10468: Change: [Actions] also attempt a build without any (encouraged) dependencies https://github.com/OpenTTD/OpenTTD/pull/10468#issuecomment-1427001267
10:57:51 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed pull request #10468: Change: [Actions] also attempt a build without any (encouraged) dependencies https://github.com/OpenTTD/OpenTTD/pull/10468
10:57:57 <TrueBrain> sad, but true
10:58:13 <TrueBrain> tnx for the reviews Rubidium .. I am scared shitless to merge this, but we will see how many people actually use nightlies πŸ˜„
10:58:37 <TrueBrain> owh, totally missed MacOS .. that is why I added it to vcpkg!
10:58:42 <TrueBrain> darn it .. I knew I had a reason ...
10:59:14 <TrueBrain> well, yes, they will have to deduce it .. I agree with you that that is .. euh .. interesting problem to tackle
10:59:32 <Rubidium> fewer optional libraries also means fewer issues, and since zlib, liblzma, libpng are basically installed on any recent computer, that doesn't seem like such a big stretch to use. If someone really wants to have a build without it, they can maintain their own fork ;)
11:01:25 <Rubidium> and it wouldn't be such a stretch to add lzo2 just to keep backward compatibility working. The rest is all not required on some platform, so keeping those optional is not as big as a burden I'd say.
11:01:39 <Rubidium> andythenorth: dinner time?
11:04:21 <andythenorth> Just had breakfast
11:07:35 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #10448: Add: use https:// for content-service connections https://github.com/OpenTTD/OpenTTD/pull/10448
11:13:17 <TrueBrain> frosch: : `BASESET_DOCKS`, shouldnt that be `BASESET_STATIONS`, for consistency? πŸ˜„
11:16:08 <michi_cc[d]> TrueBrain: Didn't andy report that curl was just there from him, i.e. part of the os install?
11:16:31 <TrueBrain> yeah, but you never know if that is a trustworthy report πŸ˜›
11:16:46 <TrueBrain> for our release builds, we install it via vcpkg
11:17:16 <michi_cc[d]> "libcurl is also installed with macOS itself and always present, and if you install the development environment XCode from Apple, you can use libcurl directly without having to install anything extra as the curl include files are bundled there."
11:18:14 <TrueBrain> how nice of them πŸ™‚
11:18:32 <TrueBrain> I wouldn't be surprised if the same holds for stuff like libz etc
11:18:36 <TrueBrain> (as libcurl depends on libz)
11:20:33 <michi_cc[d]> Okay, libcurl is shipped with macos since 10.1, so assuming it is there is probably valid (<https://daniel.haxx.se/blog/2021/09/25/curls-first-twenty-years-on-the-mac/>)
11:20:45 <TrueBrain> lolz
11:20:46 <TrueBrain> yes
11:21:05 <TrueBrain> but yeah, I think we can remove more of those entries in `vcpkg install` πŸ™‚
11:24:43 <TrueBrain> the advantage of using vcpkg is that you get a newer version for older platforms
11:24:45 <TrueBrain> so there is some benefit
11:42:26 <FLHerne> TrueBrain: compiling without liblzma was useful to me like a decade ago
11:42:47 <FLHerne> it didn't work on m68k CPUs for some reason
11:43:00 <TrueBrain> That is the correct way of phrasing it .. a decade ago πŸ˜„
11:44:00 <TrueBrain> Not disagreeing with early statement that this flexibility helped adoption of the game .. but times have changed .. our users have changed, etc πŸ™‚
11:44:28 <TrueBrain> We used to build for all these niche platforms too πŸ˜„ now we demand C++17 πŸ˜‰
11:45:39 *** frosch123 has joined #openttd
11:45:52 <frosch123> @topic set 1 13.0
11:45:52 *** DorpsGek changes topic to "13.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"
11:45:59 *** frosch123 has quit IRC ()
11:46:13 <Wolf01> Lol
11:46:27 <FLHerne> yeah, I reckon we should just drop it
11:47:06 <FLHerne> anyone compiling on a weird enough platform that the optional deps aren't available can patch them out on their own
11:47:33 <FLHerne> and in 2023 that's a very weird platform indeed
11:50:43 <frosch> TrueBrain: there is no BASESET_STATIONS? and DOCKS also includes locks etc, it's the equivalent to ROAD, RAIL, AIRPORTS. just that WATER did not sound quite right to me
11:53:43 <Xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1074297246805409852/Unnamed_1953-11-28.png
11:53:43 <Xarick> hmm something fishy here
11:57:53 <TrueBrain> frosch: I know there isn't, that was why I was asking πŸ™‚ It felt like it meant stations, but naming it WATER would have been more clear there πŸ˜› Bit hard to guess all the context here .. the game is weird πŸ˜›
11:58:43 <frosch> how about INFRA_RAIL, INFRA_ROAD, INFRA_WATER, INFRA_AIR ?
11:58:57 <TrueBrain> ha, yes, I like that πŸ™‚
11:59:17 <FLHerne> ditto
11:59:30 <TrueBrain> `RAILTYPES=12, BASESET_ROAD=12` .. do I want to know what kind of GRF that is? Lol ..
11:59:55 <frosch> it's possible that BASESET_ROAD includes level crossing sprites
12:00:12 <TrueBrain> I also have `BASESET_ROAD=119, RAILTYPES=2`
12:00:15 <TrueBrain> load of crossings πŸ™‚
12:00:33 <TrueBrain> load? Loads or lots .. pick one πŸ˜›
12:02:54 <TrueBrain> `TRAINS=116, HOUSES=110`
12:03:01 <Samu> the bug is in openttd? somehow it thinks 0 is a lower value than any negative number?
12:03:02 <TrueBrain> there will just be a few GRFs I will classify as "other" πŸ˜›
12:03:09 <DorpsGek> [OpenTTD/bananas-api] frosch123 updated pull request #325: Add: more detailed analysis of NewGRF content. https://github.com/OpenTTD/bananas-api/pull/325
12:05:41 <Samu> https://github.com/OpenTTD/OpenTTD/blob/master/src/league_base.h#L33 is uint64 influencing the sorting?=
12:05:58 <Samu> a negative number is higher than zero
12:06:05 <TrueBrain> `BASESET_COMPANY_PROPERTY`, what are the things I have to think about frosch ? πŸ™‚
12:06:34 <frosch> i even left a comment in the code about that one :p
12:06:44 <frosch> head quarters and statue
12:06:54 <frosch> i just did not know where else to put them
12:07:08 <TrueBrain> `City Tram Track] ERROR: features: BASESET_COMPANY_PROPERTY=29, ROAD_VEHICLES=9` so that is just a bit of a weird combo?
12:07:08 <frosch> and i certainly did not want a separate category for the statue sprite
12:07:38 <frosch> city tram track replaces hqs?
12:07:47 <TrueBrain> it has 29 entries in that category
12:08:14 <TrueBrain> HQs or statues, I just read πŸ˜„
12:08:36 <TrueBrain> but okay, I can write a heuristic for that, that isn't a real problem .. it still is a road-set to me πŸ™‚
12:09:05 <frosch> comfirmed, it does replace the hq sprites
12:09:12 <TrueBrain> haha πŸ™‚ Silly πŸ™‚
12:09:21 <frosch> lots of grf secretly replacing things :p
12:09:31 <TrueBrain> `Cursor / GUI Replacer] ERROR: features: BASESET_BRIDGES=8, BASESET_INFRA_WATER=1`
12:09:38 <TrueBrain> yeah ... some are not what they seem πŸ˜„
12:10:04 <frosch> well, cursors include cusors with "build bridge" and "build canal"
12:10:08 <frosch> no idea where to sort them
12:10:17 <TrueBrain> but BASESET_GUI is kinda missing πŸ˜›
12:10:20 <frosch> and not sure whether it is really possible to sort every single sprite :p
12:10:39 <TrueBrain> `BASESET_SIGNALS=239, RAILTYPES=7` .. a rail-set?
12:10:56 <TrueBrain> the signals part feels less important
12:11:00 <frosch> yes, there are different methods for replacing signals
12:11:07 <frosch> globally and railtype-specific
12:11:28 <TrueBrain> so a signal-set? Or do we just call those rail-sets too .. might be easier / better
12:11:44 <frosch> it's like industries + cargo
12:11:54 <frosch> signals alone is a signal set, signals+rail is a rail set
12:12:24 <frosch> but, yeah, may not be worth the extra category
12:12:26 <TrueBrain> `TRAINS=116, HOUSES=2` .. I just love GRFs πŸ™‚ This is fun, to look through all of them πŸ™‚
12:12:36 <frosch> i did not bother with an extra category for catenary either
12:12:50 <TrueBrain> so crossings were in `BASESET_INFRA_ROAD` you said, right?
12:12:56 <frosch> no idea :p
12:12:59 <TrueBrain> `TRAINS=116, BASESET_LANDSCAPE=16, BASESET_INFRA_ROAD=12, BASESET_BRIDGES=54`
12:13:04 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick opened issue #10469: [Bug]: League Table: zero is lower than any negative number https://github.com/OpenTTD/OpenTTD/issues/10469
12:13:14 <TrueBrain> that would explain such combo at least πŸ˜›
12:14:09 <frosch> checked, level-crossing is sprite 1371, which i put into INFRA_ROAD
12:14:21 <TrueBrain> it is neither ROAD nor RAIL, so what can we do πŸ™‚
12:16:19 *** TROILUS6 has joined #openttd
12:16:48 <glx[d]> Samu: remember (int64)-1 == (uint64)UINT64_MAX
12:16:56 *** TROILUS has quit IRC (Read error: Connection reset by peer)
12:16:57 *** TROILUS6 is now known as TROILUS
12:18:33 <TrueBrain> `BASESET_LANDSCAPE=559, CANALS=5, BASESET_INFRA_ROAD=93, BASESET_INFRA_RAIL=174, OBJECTS=5` .. hmm .. that is a bit of an annoying one ..
12:18:41 <TrueBrain> it is a Landscape GRF
12:18:53 <TrueBrain> but the canals is disrupting the heuristics I have πŸ˜›
12:19:33 <Samu> i actually use STR_SCORE : {GREEN}{CURRENCY_SHORT}{ORANGE} ({COMMA}%)
12:19:40 <Samu> for displaying the value
12:21:15 <TrueBrain> how would you classify `ECS Town vector`? πŸ™‚
12:22:13 <andythenorth> Industry
12:22:31 <TrueBrain> good .. that is also what the heuristic predicted πŸ˜› The name made me doubt the result πŸ™‚
12:25:50 <TrueBrain> `HOUSES=92, TRAINS=6, ROAD_VEHICLES=52` .. lot of those "server" mods are collections like that
12:27:23 <Samu> I uploaded game script
12:27:37 <Samu> it's not finished, but should be sufficient to test the issue
12:28:05 <frosch> maybe do not call them "other", but "random mess"? :p
12:28:06 <TrueBrain> How would you classify `BRIX`? (I just don't know GRFs well enough :P)
12:28:21 <frosch> i think it's landscape?
12:28:48 <TrueBrain> it also does a lot of rail and signals .. but yeah, that is still possible πŸ™‚
12:28:55 <TrueBrain> detecting the landscape ones is tricky
12:29:16 <TrueBrain> similar, detecting object-sets πŸ™‚
12:30:38 *** sla_ro|master has quit IRC ()
12:32:43 <frosch> that's the problem with basesets πŸ™‚ level crossing sprite contains grass + road + rail πŸ™‚
12:33:23 <TrueBrain> grf `0100403a` (`City Objects`) doesn't have a single feature .. lol .. annoying πŸ˜›
12:33:49 <TrueBrain> no, that can't be right .. must be a bug in my Python script
12:34:16 <TrueBrain> yeah, okay, it indeed is a bug in my script
12:35:09 <michi_cc[d]> BRIX is baseset-that-is-not-a-baseset.
12:35:29 <TrueBrain> that explains πŸ™‚
12:35:48 <frosch> can that be a category? baseset-that-is-not-a-baseset?
12:36:43 <TrueBrain> `City Tram Track] ERROR: no features detected; original: SPRITES=94, BASESET_COMPANY_PROPERTY=29` <- one of the older uploads of City Tram Track .. it only contained HQ πŸ˜›
12:37:02 <TrueBrain> so traced the origin or why those are in there! πŸ™‚
12:37:58 <andythenorth> Hmm
12:38:05 <frosch> sounds like they were developing a MOBA, and shortly before release switched to a open-world-battle-royal?
12:38:13 <andythenorth> What if I could write GS in the game
12:38:26 <andythenorth> Interactive interpreter
12:38:36 <frosch> switch the console to squirrel?
12:39:35 <TrueBrain> `BASESET_INFRA_RAIL=18, BASESET_FACES=25`
12:39:35 <TrueBrain> lol
12:40:50 <andythenorth> Kinda
12:40:50 <andythenorth> Gives a lot of game state inspection also
12:41:35 <andythenorth> Also epic MP griefing opportunities
12:42:30 <andythenorth> I wasn’t just trolling though πŸ™‚
12:45:22 <frosch> rubidium, lordaro: btw. if you want to change IRC topic, make a PR to https://github.com/OpenTTD/DorpsGek/blob/main/conf/users.conf
12:45:35 <TrueBrain> frosch: any way to detect those GRFs that only do basecost changes?
12:45:39 <frosch> that file does the authorization, authentication goes via nickserv
12:46:04 <frosch> TrueBrain: i thought about that, and discarded it as a maintenance hassle
12:46:12 <frosch> would have to parse too much of action0
12:46:20 <TrueBrain> k, so "no" πŸ™‚
12:46:23 <TrueBrain> good answer πŸ™‚
12:47:13 <TrueBrain> wtf are those `NML CAT` uploads ...
12:47:38 <TrueBrain> ugh ...
12:47:38 <frosch> stupid crap :p
12:47:40 <TrueBrain> reading the description
12:47:41 <TrueBrain> ugh
12:47:55 <frosch> they do nothing except show a "==== <category ===" in the newgrf config list
12:48:01 <TrueBrain> especially as there is also a "2.0" variant ..
12:48:01 <frosch> so people can use it as visual separator in the list
12:48:21 <frosch> maybe 2.0 replaces "===" with "->->->" :p
12:48:47 <TrueBrain> `Improved M Cars] ERROR: features: SHIPS=11, AIRCRAFT=43, TRAINS=37, ROAD_VEHICLES=36` THAT NAME IS A LIE
12:49:29 <TrueBrain> `Korean Signal Set` is a bit weird .. one version does have `BASESET_SIGNALS`, but all other versions have no features; only sprites
12:50:26 <frosch> it's jgrpp stuff
12:50:44 <frosch> it should have SIGNALS, not BASESET_SIGNALS
12:50:52 <TrueBrain> it doesn't
12:50:58 <TrueBrain> not based on our current detection ofc
12:52:40 <frosch> hmm, i actually do not know how jgrpp does signals. SIGNALS is the old TTDP implementation of jgr. i just assumed that jgrpp did the same, but it may as well do something else
12:55:00 <frosch> wiki says it's different, but it still uses feature E, so should still trigger the detection
12:55:36 <TrueBrain> so I have to dive into the actual GRF to see what it is doing πŸ™‚ On my TODO list πŸ™‚
12:56:48 <frosch> oh wait, i looked at north-korean signal set
12:57:01 <DorpsGek> [OpenTTD/OpenTTD] adamiaonr commented on issue #10239: Roads built on foundations at the minimum snow level height have inconsistent snowiness https://github.com/OpenTTD/OpenTTD/issues/10239
13:00:02 <frosch> the korean signal set i get from bananas (latest), says BASESET_GUI=1, BASESET_SIGNALS=208, SIGNALS=1
13:00:20 <TrueBrain> yes, that is the one version that does work properly πŸ™‚
13:00:31 <frosch> maybe the other ones were just buggy then :p
13:00:36 <TrueBrain> possibly
13:00:43 <frosch> or again rebranded grfs shortly before release for marketing reasons :p
13:01:14 <frosch> they invested 3 years into developing a tree set, but then the hype was on signals
13:01:45 <TrueBrain> `BASESET_GUI=74, BASESET_BRIDGES=2` .. hihi, those stats just make me giggle πŸ™‚
13:02:21 <JGR> frosch: Older versions tried to use ActionA, but did so in an incorrect way
13:02:38 <TrueBrain> cool, tnx πŸ™‚ Means I don't have to look into it further πŸ˜„
13:02:57 <TrueBrain> `Dutch Road Furniture] ERROR: features: BASESET_INFRA_ROAD=2, OBJECTS=42` .. road-set? object-set?
13:03:04 <TrueBrain> guess the latter
13:03:14 <frosch> yes, objects πŸ™‚
13:03:36 <TrueBrain> `CityMania Alpine Climate] ERROR: features: BASESET_LANDSCAPE=210, BASESET_INFRA_ROAD=19, BASESET_TREES=112, OBJECTS=81` .. `other`?
13:03:42 <TrueBrain> landscape?
13:03:46 <TrueBrain> trees?
13:03:46 <TrueBrain> πŸ˜„
13:04:03 <frosch> normally landscape, no idea what the objects are doing there
13:04:36 <JGR> DP was using objects for fake rivers
13:05:04 <frosch> haha, nice, good look classifying that πŸ™‚
13:14:03 <Samu> do I have to fix league_sl.cpp?
13:15:39 <Samu> what do i do here? https://github.com/OpenTTD/OpenTTD/blob/master/src/saveload/league_sl.cpp#L20
13:16:25 <TrueBrain> okay, 317 entries fail detection based on simplistic "if this feature exist, this one is not important" .. 76 entries don't have features at all. Of those 317, let's try to do some weight-based guesses .. should reduce that count by a lot
13:16:47 <TrueBrain> I mean .. `BASESET_TREES=1, BASESET_LANDSCAPE=1, HOUSES=1, TRAINS=191` .. I think it is safe to say that is a train-set πŸ˜›
13:17:20 <frosch> i wonder which tree is that :p
13:17:23 <michi_cc[d]> train-set-with-side-effects πŸ™‚
13:17:33 <frosch> i mean, exactly one, no growth states or similar
13:17:50 <TrueBrain> `434d0101`
13:17:52 <TrueBrain> enjoy πŸ˜›
13:18:13 <frosch> ah, it's a christmas tree then
13:18:38 <frosch> random christmas decorations on random objects
13:27:49 <TrueBrain> okay, so if one (major) feature is four times bigger than the rest, it picks that one. Seems like a fair balance
13:28:41 <frosch> features scale differently. BASESET_xxx are individual sprites, so always very large numbers
13:28:55 <frosch> TRAINS are medium numbers
13:28:57 <TrueBrain> yeah, hence the (major) part, BASESETS are not those πŸ™‚
13:29:12 <frosch> RAIL_TYPES are really low numbers, and CANALS is a max 1
13:29:36 <TrueBrain> CANALS is a pain in my butt
13:29:42 <TrueBrain> it doesn't actually help classifying πŸ˜›
13:29:45 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on issue #10239: Roads built on foundations at the minimum snow level height have inconsistent snowiness https://github.com/OpenTTD/OpenTTD/issues/10239
13:29:46 <frosch> what we have seen so far, OBJECTS could be anything :p
13:31:54 <andythenorth> frosch: Working as intended, no? πŸ˜›
13:32:29 <TrueBrain> 319 -> 235 with the "major" feature (so just the action0 features) .. now with balancing basesets ..
13:33:38 <TrueBrain> `BASESET_LANDSCAPE=349, CANALS=5, BASESET_INFRA_RAIL=190` .. canals can be more than 1 πŸ˜›
13:33:49 <TrueBrain> right, 192 .. that did less than I was hoping for πŸ˜›
13:34:40 <Samu> there was no savegame bump when league table was introduced?
13:34:57 <frosch> oh, true, canals can go up to 9
13:35:16 <frosch> canals can also be rivers btw :p
13:38:34 <TrueBrain> `Cow farms] ERROR: no features detected; original: SPRITES=12`
13:38:35 <TrueBrain> lol
13:39:02 <andythenorth> No cows
13:39:12 <TrueBrain> 166 unclassified entries .. I think this is "good enough" πŸ™‚
13:39:28 <andythenorth> More than good enough πŸ™‚
13:39:47 <TrueBrain> `INDUSTRIES=2, ROAD_VEHICLES=1, TRAINS=1` .. I mean .. things like this are left over
13:39:57 <TrueBrain> and BRIX fails to be classified, but that is a good thing πŸ˜„
13:40:42 <Samu> HELP! I don't know which savegame version was the "First savegame version that has the field"
13:40:53 <Samu> speaking about League Tables
13:41:45 <TrueBrain> I expected that a few "vehicle sets" would jump out
13:41:50 <TrueBrain> but most also tend to do houses or industries
13:41:56 <TrueBrain> so yeah .. no "vehicle sets" category
13:42:02 <frosch> i ignore baseset sprites replacing default industries and houses
13:42:13 <frosch> that's why cow farms is not detected
13:42:19 <TrueBrain> ah πŸ™‚
13:42:27 <frosch> i just assume that proper newgrf use the real house and industry feature
13:43:04 <TrueBrain> only 4 GRFs fail detection despite them having sprites
13:43:12 <TrueBrain> so I think that is a fine balance you picked there πŸ™‚
13:44:30 <frosch> only 4? so the other 72 of the 76 without feature have no sprites?
13:44:40 <TrueBrain> no features detected at all
13:44:40 <frosch> ah, i guess 60 of those are the stupid categories
13:44:43 <TrueBrain> not a single one πŸ™‚
13:44:44 <frosch> and the rest is basecost
13:44:45 <Samu> https://github.com/OpenTTD/OpenTTD/commit/5e14a20b3b6be26aa4e6e0a35316eb8f8950a1b8 it has no savegame bump! oh no
13:44:48 <TrueBrain> exactly
13:44:52 <TrueBrain> I can make a list in a second
13:45:02 <Samu> what do i put in the "from" field?
13:45:15 <frosch> is "featureless" a category? :p
13:45:47 <TrueBrain> an `Other` category will hopefully push authors to make it more clear what their GRF is actually about πŸ˜›
13:46:15 <frosch> yes, and stop andy duplicating all sprites into industries, stations and objects πŸ™‚
13:46:23 <frosch> imagine firs not being classified as industries :p
13:47:06 <Rubidium> Samu: looks like that rating should be int64, as all calls from GS are also int64. I wonder why that wasn't caught during review. Luckily it's a relatively easy fix, and content wise the data is the same
13:47:55 <TrueBrain> I think a `misc` category and `other` category could be good
13:48:00 <Samu> why didn't it have a savegame bump when the feature was introduced?
13:48:00 <TrueBrain> the first when there are just too many features
13:48:05 <TrueBrain> the latter when there are none
13:48:47 <Rubidium> Samu: new chunks don't need a version to introduce them, as the existence of the chunk already tells you that
13:50:13 <Samu> SLE_CONDVAR(LeagueTableElement, rating, SLE_INT64, what-version-from? ),
13:50:16 <Samu> i dunno
13:50:52 <Rubidium> Samu: no need to go through that; just change the SLE_UINT64 to SLE_INT64. That's fine in this specific case
13:51:03 <Samu> i tried, i get a corrupt savegame error
13:51:17 <Samu> unexpected type or whatever
13:51:34 <Rubidium> then you did something else that's not quite right
13:51:59 <TrueBrain> Rubidium: with SLE_FROM .. SLE_TO stuff, yes πŸ˜‰
13:52:08 <TrueBrain> SL_FROM? I forgot
13:52:29 *** WormnestAndroid has quit IRC (Remote host closed the connection)
13:52:57 <Rubidium> oh that table stuff... that might complicate things :(
13:53:20 <TrueBrain> SLE_FILE vs SLE_VAR, that were the ones πŸ™‚
13:54:20 <Samu> dbg: [sl] Game Load Failed
13:54:20 <Samu> Broken savegame - Field type is different than expected
13:56:19 <Rubidium> you could just use version 0 (or rather whatever the enum for that is)
13:57:07 <Rubidium> with SLE_FILE_UINT64 | SLE_VAR_INT64
13:58:10 <andythenorth> frosch: Might do houses also, to fix cargo acceptance πŸ™ƒ
13:59:20 <Rubidium> though adding a savegame bump for this seems kinda pointless. Maybe set the to/from to the current last version + 1 and not update the savegame version? Should be fine as the in64 can safely be stored in the uin64 and then be restored as int64
14:01:55 <TrueBrain> so how do we want to do sets ... an airport .. "air set"? Aircraft too?
14:02:04 <TrueBrain> and railtypes, trains, etc all "rail set"?
14:02:36 <TrueBrain> or do we want to be more specific .. "train set" .. "railtrack set" ?
14:05:02 <frosch> some sets call themself "railtype set"
14:05:21 <frosch> others just "rails"
14:05:28 <frosch> but "train" is always something ele
14:05:35 *** sla_ro|master has joined #openttd
14:06:01 <petern> Hi
14:06:48 <TrueBrain> ele?
14:07:05 <frosch> +s
14:07:12 <TrueBrain> eles?
14:07:15 <TrueBrain> else!
14:07:18 <TrueBrain> that too too long πŸ˜›
14:07:30 <andythenorth> petern: It is lunch
14:07:30 <frosch> +k
14:07:36 <andythenorth> Just to report
14:07:42 <frosch> longk?
14:07:52 <andythenorth> Might have chicken ceasar salad
14:08:24 <petern> Kebab is salad with bread right?
14:09:55 <TrueBrain> frosch: : so you are saying, split "railtype" from "train", and don't call it just "rail"?
14:10:09 <frosch> imo yes
14:10:16 <TrueBrain> "roadtype" vs "road"?
14:10:34 <TrueBrain> how about air .. just "air"? Or split airports from airplanes?
14:10:59 <frosch> road is no nasty because of bus/truck/tram/cargotram, which we cannot detect
14:11:26 <frosch> aircraft set is again distinct from airport set
14:11:39 <frosch> there are only like 2 airport sets, probably :p
14:12:26 <TrueBrain> what are the right words for water here? Dock vs ship?
14:12:35 <frosch> "trains", "rail infrastructure", "road vehicles", "road infrastructure", "ships", "water infrastructure", "aircraft", "airports"?
14:13:20 <TrueBrain> good enough for now
14:13:24 <TrueBrain> will need to be tuned over time anyway
14:14:18 <TrueBrain> hmm .. shouldn't airports just be stations?
14:15:05 <andythenorth> petern: Very
14:15:31 <andythenorth> Airports are airports
14:15:35 <frosch> "rail stations" are a very large category
14:15:43 <frosch> "airports" are a different thing
14:15:51 <TrueBrain> but we only have stations?
14:15:58 <frosch> no?
14:15:59 <TrueBrain> or are they always rail stations?
14:16:01 <TrueBrain> I forgot πŸ˜›
14:16:14 <frosch> you can select between 250 "rail stations"
14:16:16 <TrueBrain> and I guess the one for road never landed yet? I remember a PR about that πŸ˜›
14:16:24 <frosch> some people are working on doing the same for "road stations"
14:16:36 <andythenorth> I mean…we could have multiple mappings of keywords to features?
14:16:36 <andythenorth> But then … I never wanted to be a librarian πŸ˜›
14:16:42 <frosch> we have nothing for docks, and very limited stuff for airports
14:16:51 <TrueBrain> I was about to ask about docks πŸ˜„ Hihi, tnx, gotcha
14:16:54 <frosch> but noone suggested to merge any of them :p
14:17:10 <andythenorth> Untrue πŸ˜›
14:17:18 <andythenorth> Reldred asked a lot
14:19:12 <TrueBrain> okay ... now I have 4523 entries of classified GRFs .. and I need a second and third opinion on that πŸ˜„
14:19:19 <TrueBrain> let's see if we can make it a bit more .. understandable
14:19:45 <TrueBrain> first, let's filter out all those not marked `new-games`
14:20:35 <TallTyler> Road stations PR exists and needs review, I don’t think it’s a draft anymore. So planning ahead for that category might be wise
14:21:52 <JGR> I will probably make some more changes to it
14:22:22 <JGR> I've added/changed a few things in the version in my branch since then
14:22:28 <DorpsGek> [OpenTTD/OpenTTD] gimix311 opened issue #10470: [Bug]: Mouse click panning not working on Wayland https://github.com/OpenTTD/OpenTTD/issues/10470
14:23:43 <TrueBrain> now what would be the easiest way to view such a list .. hmm .. per category? I guess ..
14:25:39 <frosch> https://grfcrawler.tt-forums.net/ πŸ™‚
14:26:02 <TrueBrain> no, I just want a review .. I will bring it to the bananas-frontend-web after that πŸ˜›
14:26:20 <frosch> just a csv? grfid, name, category?
14:26:27 <TrueBrain> yeah, did something like that
14:26:35 <TrueBrain> just not a csv, but similar, and hopefully readable πŸ™‚
14:26:48 <TrueBrain> I added multi-process support for this analysis
14:26:51 <TrueBrain> still takes 2 minutes
14:26:52 <TrueBrain> on 12 cores
14:27:00 <XarothBrook> I would troll and say xml, but I think yaml might work.
14:27:12 <frosch> xml just turned 25 πŸ™‚
14:27:19 <TrueBrain> you are so lucky I cannot kick you from this discord XarothBrook
14:27:20 <TrueBrain> so lucky
14:27:24 <XarothBrook> πŸ˜„
14:27:27 <XarothBrook> ❀️
14:27:41 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #10470: [Bug]: Mouse click panning not working on Wayland https://github.com/OpenTTD/OpenTTD/issues/10470
14:28:08 <TrueBrain> https://gist.github.com/TrueBrain/ef9c5da22ffe1257bc67d7eb2427a8bc
14:28:08 <TrueBrain> Did not look over it myself, but let me know if anything stands out please
14:28:25 <TrueBrain> found the first one .. town != townname ..
14:29:11 <frosch> some grf names ...
14:29:30 <frosch> i do not dare to look at "better world cities"
14:29:38 <TrueBrain> `New Trains` .. such a good name for a GRF
14:30:20 <frosch> "swedish houses" is wrong
14:30:25 <TrueBrain> `FISH 1 (Ships)` .. can't believe FISH needed an explanation πŸ˜›
14:30:38 <TrueBrain> ignore the "town set" list for now
14:30:43 <TrueBrain> it is a mix of "town set" and "townname set"
14:30:47 <TrueBrain> fixing that as we speak πŸ™‚
14:31:05 <TrueBrain> updated πŸ™‚
14:31:37 <TrueBrain> `EmptyGRF` .. clearly not that empty
14:31:46 <DorpsGek> [OpenTTD/OpenTTD] gimix311 commented on issue #10470: [Bug]: Mouse click panning not working on Wayland https://github.com/OpenTTD/OpenTTD/issues/10470
14:32:02 <frosch> i like the "(country)" part in "georgian town names (country)" πŸ™‚
14:32:32 <TrueBrain> "Other" category only contains CARGO feature entries .. so that is a bit of a bad name
14:33:53 <frosch> oh, sorry for "debug vehicles" πŸ™‚
14:33:55 <TrueBrain> "OpenGFX+ Landscape" is misclassified, lol .. let's see why ...
14:34:16 <TrueBrain> owh, I know why .. but no, that is wrong πŸ˜›
14:34:23 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #10470: [Bug]: Mouse click panning not working on Wayland https://github.com/OpenTTD/OpenTTD/issues/10470
14:35:51 <TrueBrain> but overall it seems to hit the mark pretty well, from what I can tell πŸ™‚
14:36:17 <frosch> yes, so far i have only found "oof" sets, which fit nowhere πŸ™‚
14:36:56 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick opened pull request #10471: Fix #10469, 5e14a20: [Script] League Table rating element is a int64 everywhere else https://github.com/OpenTTD/OpenTTD/pull/10471
14:38:43 <TrueBrain> sorted the list, so I can diff changes better πŸ˜„
14:39:20 <TrueBrain> this classification already just feels better, than an endless list of GRFs πŸ˜„
14:41:19 <TrueBrain> lol, I fixed some of the water-infra issues, but now `CHIPS Custom Docks` is seen as a GUI set πŸ˜„
14:42:33 <TrueBrain> 1 CANAL entry and 3 GUI entries .. okay, this needs a tiny bit of tuning for CANAL specifically
14:43:50 <TrueBrain> CANAL is just a bit of everything and nothing .. which is funny πŸ™‚
14:43:59 <TrueBrain> guess it contains both docks and rivers
14:44:25 <frosch> https://github.com/frosch123/quaking/blob/main/content2.png <- i remembered i did that 10 years ago, look how useless the tags are πŸ™‚
14:44:49 <TrueBrain> yeah ... people really want apeshit on it
14:45:18 <TrueBrain> okay, CANAL indeed can contain docks
14:45:23 <TrueBrain> which is why classifying it is a bit tricky
14:45:41 <frosch> just put them all into water-infrastructure?
14:45:45 <frosch> there are not that many sets
14:45:58 <TrueBrain> that means `OpenGFX+ Landscape` is also considered a water-infrastructure
14:46:03 <TrueBrain> which feels bad πŸ˜›
14:46:52 <frosch> 4738520b - PLZ_IGNORE <- oh dear
14:47:04 <frosch> we need that "hide from download" button in the gui
14:47:14 <andythenorth> Classifying is never perfect πŸ™ƒ
14:47:40 <frosch> oh, there are more of them
14:47:44 <TrueBrain> frosch: honestly, that entry is close to griefing πŸ™‚
14:47:58 <TrueBrain> something something ragequit
14:48:26 <TrueBrain> I was tempted back then to just revert the `name` entry change
14:49:38 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick updated pull request #10471: Fix #10469, 5e14a20: [Script] League Table rating element is a int64 everywhere else https://github.com/OpenTTD/OpenTTD/pull/10471
14:49:43 <TrueBrain> pushed new update; see "Revisions" for what changed
14:49:51 <TrueBrain> basically, fixed `OpenGFX+ Landscape` πŸ™‚
14:50:33 <TrueBrain> it now makes the estimation, that if you only did CANAL, it is a dock change, but if you also did a lot of LANDSCAPE, it is a landscape πŸ™‚
14:51:04 <TrueBrain> having Docks in that same feature is just annoying πŸ˜› But what-ever .. guestimations get you far πŸ™‚
14:52:43 <frosch> should i bother implementing basecost and snowline detection?
14:52:59 <TrueBrain> I now pushed it in the Other category, not?
14:53:15 <TrueBrain> owh, Unknown
14:53:23 <TrueBrain> how about we collapse Other and Unknown in a single category?
14:53:46 <TrueBrain> "Other" currently are only those that modify CARGO stuff .. so pretty close to "base cost" mods
14:54:30 <frosch> the "mixed" category contains a lot of sets which have vehicles of many types
14:54:51 <frosch> maybe add a "vehicle" category for grfs, which have only vehicles, but can't decide betrween trains, road veihcle, ships, ...
14:55:05 <TrueBrain> there are only 2 GRFs which have purely vehicles in their set in Mixed
14:55:10 <TrueBrain> the others all have industries and/or houses too
14:55:40 <TrueBrain> (or landscape stuff)
14:55:48 <TrueBrain> I didn't want to make a category for 2 πŸ˜›
14:55:53 <DorpsGek> [OpenTTD/OpenTTD] gimix311 commented on issue #10470: [Bug]: Mouse click panning not working on Wayland https://github.com/OpenTTD/OpenTTD/issues/10470
14:56:00 <frosch> ok, i expected 5 or so πŸ™‚
14:56:51 <TrueBrain> one of them is `Original vehicle names`
14:57:08 <frosch> the other is better vehicle names?
14:57:20 <TrueBrain> let me run the exact names/count
15:01:52 <GeorgeVB> GeorgeVB: Sorry for rising the question up, would it be hard to provide such vars? I would like to make some improvements to xUSSR rails sets, like adding manual railroad switch graphics, but I need the vars to check rails and landscape to draw them correctly.
15:02:35 <TrueBrain> frosch: detail of what "Mixed" is, the features on which the final detection happens: https://gist.github.com/TrueBrain/d2573454d74491d521b1cc3cb66b92b7
15:03:12 <TrueBrain> so yeah, more than 2; but most were below threshold of 10, so I didn't see them at first πŸ˜„
15:03:51 <TrueBrain> so sure, "Vehicle set" it is
15:05:14 <frosch> how is opengfx+trees classified?
15:05:40 <TrueBrain> lol; let's see
15:06:36 <TrueBrain> the first version contained BASESET_TREES
15:06:39 <TrueBrain> but the last 4 versions do not
15:06:57 <TrueBrain> `{Feature.BASESET_GUI: {742}}`
15:07:24 <TrueBrain> yeah, only contains sprites and 1 GUI
15:08:51 <frosch> ah, it's too smart
15:09:08 <frosch> it has parameters to replace different types of trees
15:09:19 <TrueBrain> haha, yeah .. we cannot detect that stuff πŸ˜„
15:09:49 <frosch> so, yeah, bad luck, your fault for using action6 :p
15:10:05 <TrueBrain> `City Tram Track` is seen as a HQ mod .. a bit weird πŸ˜›
15:10:14 <TrueBrain> but most likely the same as the other City mod
15:10:31 <frosch> we discussed it before, and concluded it is a hq set πŸ™‚
15:11:12 <TrueBrain> you are right; I thought it was another .. but it isn't πŸ˜„
15:11:15 <TrueBrain> circles much? πŸ˜›
15:11:37 <TrueBrain> 15 vehicle sets
15:11:40 <frosch> ok, next steps: cooking, try detecting basecosts and snow-line-stuff
15:11:44 <andythenorth> My ship grfs modify building base cost πŸ™ƒ
15:11:54 <andythenorth> For canals
15:12:23 <TrueBrain> updated list
15:13:37 <TrueBrain> `Cargo set` .. does that make sense?
15:13:48 <TrueBrain> I don't know how to classify something that only changes CARGO features ..
15:13:55 <TrueBrain> most do something with payment
15:13:57 <TrueBrain> but some do not
15:14:44 <TrueBrain> `paxWorkers` for example only changes the name of pax to .. workers πŸ˜›
15:15:23 *** WormnestAndroid has joined #openttd
15:16:42 <TrueBrain> `WR Basic Industries (WRBI)` is a town-set .. feels wrong πŸ˜›
15:17:47 <TrueBrain> it does houses and industries .. and I classify that as a town-set, as that is true in most cases πŸ™‚
15:18:40 <TrueBrain> `Other features: Houses can accept Passengers, Mail, Goods, Food, Building Materials, Water.`
15:18:42 <TrueBrain> and this is why πŸ™‚
15:21:50 <TrueBrain> okay, only 3 grfs have this conflict; will move them to `mixed` instead πŸ™‚
15:29:34 <Samu> GSLeagueTable is missing a few functions imo
15:30:04 <Samu> for example, I only wanna update the score if the score changes
15:30:30 <Samu> otherwise I'm always sending DoCommands and i know these delay the whole thing
15:30:42 <Samu> should be a way to get the current score
15:35:31 *** sla_ro|master has quit IRC ()
15:39:12 *** sla_ro|master has joined #openttd
15:47:16 <glx[d]> store it in the script
15:47:49 <glx[d]> as only the script updates the score anyway
15:48:02 <glx[d]> so it should know if it changed
15:52:34 <glx[d]> I have https://github.com/OpenTTD/OpenTTD/compare/master...glx22:OpenTTD:script_text to fix https://github.com/OpenTTD/OpenTTD/blob/master/src/script/api/script_league.cpp#L35 (static buffer not copied before next call) and prevent any future similar issues
15:52:44 <DorpsGek> [OpenTTD/bananas-api] frosch123 updated pull request #325: Add: more detailed analysis of NewGRF content. https://github.com/OpenTTD/bananas-api/pull/325
15:53:02 <frosch> TrueBrain: does that improve things, or break things? πŸ™‚
15:53:31 <TrueBrain> Will check after dinner!
15:53:47 <glx[d]> I can't remember, but why didn't we allow AI to use Text ?
15:55:30 <frosch> they do not display it anywhere
15:55:41 <frosch> ai do not write in town gui, they do not trigger news, ...
15:56:17 <glx[d]> but they can set some names
15:56:42 <frosch> only gs have translation files, ai only have rawstrings
15:57:11 <frosch> gs also send the translation files to clients in savegames
15:57:30 <frosch> starting ais would send them to clients when starting?
15:57:43 <glx[d]> funny the doc mentions AIText πŸ˜‰
15:57:49 <frosch> but then, what names can ai set? are they translatable?
15:58:40 <glx[d]> station name, company name, ...
16:00:26 <glx[d]> as I see it, ScriptText is a kind fmt::format
16:00:57 <Samu> hmm i'd need to use list.swap
16:01:05 <Samu> if i wanna use Valuate
16:02:26 <DorpsGek> [OpenTTD/OpenTTD] adamiaonr commented on issue #10239: Roads built on foundations at the minimum snow level height have inconsistent snowiness https://github.com/OpenTTD/OpenTTD/issues/10239
16:04:38 <glx[d]> but yeah AI don't really need ScriptText as raw string is enough
16:05:59 <andythenorth> Feature request: detect FIRS forks as a category πŸ˜›
16:07:17 <Samu> actually just a 2nd list, no need to swap
16:07:25 <Samu> thx glx, i did it
16:13:31 <Samu> i can create stuff like "vehicle with the most profit last year per company"
16:14:03 *** TROILUS4 has joined #openttd
16:16:16 <Samu> and actually link it to the vehicle, heh
16:17:53 *** TROILUS has quit IRC (Read error: No route to host)
16:17:53 *** TROILUS4 is now known as TROILUS
16:35:54 *** Wormnest has joined #openttd
17:28:45 *** TROILUS7 has joined #openttd
17:32:59 *** TROILUS has quit IRC (Read error: No route to host)
17:33:00 *** TROILUS7 is now known as TROILUS
17:40:44 <Samu> this.tables.company_value_table.companies[3] is this long? I want to get the league table element id of company 3 on the league table named company_value_table
17:41:02 <Samu> i'm terrible with names
18:06:50 <Samu> dang it, i wanted to use Valuate so much, but the darn thing isn't saveable
18:06:56 <Samu> I mean Lists
18:07:03 <Samu> they're not saveable
18:43:58 *** Flygon has quit IRC (Read error: Connection reset by peer)
18:45:10 <DorpsGek> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://github.com/OpenTTD/OpenTTD/commit/695ce0ab095cf5653e33d1071b5e4482c6dbe616
18:45:11 <DorpsGek> - Update: Translations from eints (by translators)
18:51:45 <Samu> look at me coding smart, lol https://gist.github.com/SamuXarick/b9ebcb5eb3c541e5869c0a2f0be912ff
18:52:03 <Samu> want to have everything in tables
18:52:16 <Samu> so when i save, i just save that
19:26:50 <Samu> oh, i can't save functions?
19:33:42 *** gelignite has joined #openttd
20:00:56 <Samu> how do i get the name of a key?
20:01:55 <Samu> company_value_table is a key in this case, how do i do a comparison
20:02:47 <Samu> if (tablevariable == "company_value_table") { dostuff; }
20:03:01 <Samu> but i dunno how to get it
20:06:17 <TrueBrain> frosch: : lol, that is not getting less complicated πŸ˜„
20:06:20 <Samu> wanna extract the name of the key
20:06:45 <TrueBrain> frosch: : is line 405 a typo? 0x13 instead of 13?
20:07:14 <frosch> yes, indeed
20:07:50 <DorpsGek> [OpenTTD/bananas-api] frosch123 updated pull request #325: Add: more detailed analysis of NewGRF content. https://github.com/OpenTTD/bananas-api/pull/325
20:07:51 <TrueBrain> hmm .. do we really want to have a set with "snowline"? πŸ˜„
20:08:02 <Samu> nevermind, I did it
20:08:07 <frosch> no, put them into landscape or so
20:08:15 <TrueBrain> smart
20:08:49 <frosch> maybe cargo+basecost could become "economy"
20:09:04 <TrueBrain> I like that name
20:09:06 <frosch> though maybe that promises too much
20:14:12 <frosch> ah silly me, i coded it explicitly so it would ignore errors when parsing. that's why i did not notice the 13/0x13 thing
20:14:59 <frosch> i assumed using firs would test them, but my test was useless
20:16:08 <frosch> knowing that, it works now πŸ™‚
20:16:24 *** crem3 has joined #openttd
20:18:15 *** crem2 has quit IRC (Ping timeout: 480 seconds)
20:21:42 <TrueBrain> okay, let's see .. what changes because of these new two features ..
20:27:26 <andythenorth> BadFIRS
20:30:07 <CplBurdenR3294> I'm the baaaaadFIRS
20:30:14 <CplBurdenR3294> *Billie Ellish intensifies*
20:40:27 <dP> TrueBrain: lol, this "trainset" defines no trains 🀣
20:40:34 <dP> only disables them 😜
20:41:07 <dP> tbf I don't think it fits any particular category, it's kinda like "special" or "misc" type
20:43:15 <dP> also, what happened to industries and cargoes? cmevent defines plenty of those
20:44:28 <TrueBrain> what a strange way to talk to people ... where is that mute button?
20:44:47 <Samu> awww... dP, LinkType can't be a vehicle or a station :(
20:44:49 <Samu> https://docs.openttd.org/gs-api/classGSLeagueTable.html
20:45:10 <Samu> or a town
20:45:29 <TrueBrain> frosch: found 9 economy sets; seems to work fine πŸ˜„
20:45:40 <TrueBrain> 2 are now correctly seen as landscape
20:46:00 <TrueBrain> Unknown category is getting really empty now πŸ™‚
20:46:03 <TrueBrain> nice πŸ™‚
20:47:40 <frosch> some other sets moved, like lct vehicle set
20:47:46 <TrueBrain> yeah, made some other fixes
20:47:50 <TrueBrain> ships wasn't processed properly
20:47:56 <TrueBrain> as we don't have that many of them πŸ˜›
20:48:07 <TrueBrain> LCT Vehicle set has many more aircrafts than ships, and nothing else
20:48:15 <TrueBrain> (it has 1 ship, and 8+ aircrafts)
20:49:33 <frosch> i think cargo + economy can be merged
20:49:37 <dP> Samu: yeah, I think I just copied goals or smth
20:49:41 <dP> can be town though
20:50:18 <TrueBrain> frosch: but some cargo just rename cargo-names for example
20:50:27 <TrueBrain> well, I guess they can, it is not right, but also not really wrong
20:52:33 <frosch> most of them are payment stuff
20:53:34 <TrueBrain> most, yes, not all πŸ˜› But .. nitpicking πŸ˜„
20:56:20 <TrueBrain> updated the cargo to economy (and updated BaNaNaS on request)
20:59:16 <frosch> ship it πŸ™‚
20:59:29 <TrueBrain> rename Unknown to ... miscellaneous?
21:00:10 <frosch> yeah, or "other", but "misc" sounds more fancy
21:00:21 *** TROILUS9 has joined #openttd
21:00:57 <frosch> hq and water-infra are small categories
21:01:03 <TrueBrain> okay .. next step is to run this on upload, after that to update all YAML with the correct classification .. then to add it to the API .. the add it to the frontend-web πŸ™‚
21:01:16 <TrueBrain> after that, see if we can do this for more content πŸ™‚
21:01:17 <frosch> i guess water-infra just has to exist for symmetry
21:01:20 <frosch> but no idea about hq...
21:02:06 <TrueBrain> landscape?
21:02:08 <TrueBrain> misc?
21:02:40 <frosch> i prefer having "misc" for "bad sets" :p
21:02:45 <TrueBrain> so landscape?
21:03:01 <TrueBrain> also solves the issue that strictly seen a statue GRF would also be under HQ now πŸ˜›
21:03:27 <TrueBrain> Feature.BASESET_COLOUR_SCHEMA: Classification.GUI,
21:03:27 <TrueBrain> Feature.BASESET_COMPANY_PROPERTY: Classification.LANDSCAPE,
21:03:27 <TrueBrain> Feature.BASESET_FACES: Classification.GUI,
21:03:27 <TrueBrain> Feature.BASESET_FONT: Classification.GUI,
21:03:27 <TrueBrain> Feature.BASESET_GUI: Classification.GUI,
21:03:28 <frosch> or town set
21:03:29 <TrueBrain> is my map now
21:03:51 <TrueBrain> TOWN, works for me
21:06:12 <TrueBrain> right, let's see if I can tune this slightly for objects .. not always correct .. but that is an annoying one to tune πŸ™‚
21:06:36 <TrueBrain> updated for HQ -> Town
21:07:27 *** TROILUS has quit IRC (Ping timeout: 480 seconds)
21:07:28 *** TROILUS9 is now known as TROILUS
21:09:11 <TrueBrain> okay ... a fix for one, breaks `OpenGFX+ Landscape` .. it is such an annoying set πŸ˜› πŸ˜›
21:10:30 <frosch> doesn't ogfx+landscape do snowline?
21:10:35 <frosch> give more weight to that :p
21:12:40 <TrueBrain> nah, detection just has a bug .. ah, there we go
21:12:52 <TrueBrain> I really have to simplify this a bit, but okay πŸ™‚
21:20:58 <TrueBrain> https://cdn.discordapp.com/attachments/1008473233844097104/1074440001791721552/ft4zg0fb1sha1.png
21:20:58 <TrueBrain> silly XarothBrook just showed me this:
21:21:15 <TrueBrain> I didn't believe it .. https://godbolt.org/z/sqP7cqYrG .. IT IS TRUE
21:21:35 <TrueBrain> I am done with this world now πŸ˜› Fuck logic
21:22:03 <LordAro> i love it
21:22:51 <petern> wujt
21:22:59 <XarothBrook> https://godbolt.org/z/nPzWzbvb7
21:23:50 <frosch> wow, even at O1?
21:24:00 <FLHerne> the wonders of UB?
21:24:02 <frosch> i would have bet on O2 πŸ™‚
21:24:26 <TrueBrain> "An infinite loop? Let me just optimize that away for you! Can't possibly do anything" - Said no-one ever
21:24:46 <LordAro> undefined behaviour ;)
21:24:48 <FLHerne> presumably instead of printing "Hello, world" it can print "IΓ€! IΓ€! Cthulhu fhtagn!" before making demons fly out of your nose
21:26:22 <XarothBrook> ```An iteration statement whose controlling expression is not a constant expression, that performs no input/output operations, does not access volatile objects, and performs no synchronization or atomic operations in its body, controlling expression, or (in the case of a for statement) its expression-3, may be assumed by the implementation to terminate.```
21:26:52 <dwfreed> except the controlling expression is a constant expression
21:27:37 <frosch> one day a coworker came to me: look this fancy attribute annotates pointer parameters as non-nullptr, so the compiler can already warn you, before you trigger the runtime checks. reality was: the compiler would only warn about trivial cases, but optimise all run-time checks away because nullptr was no longer allowed.
21:27:55 <TrueBrain> frosch: : https://github.com/OpenTTD/bananas-api/compare/main...TrueBrain:categorize-newgrf <- a peek in how I classify πŸ˜› Still needs cleaning up πŸ™‚
21:29:52 <frosch> if you skip the tables, it's really short πŸ™‚
21:30:24 <TrueBrain> I like the simplicity of it all, in the end
21:30:32 <TrueBrain> just a priority table and very simple heuristics
21:31:08 <frosch> there are no "sound sets" though πŸ™‚
21:31:22 <frosch> "sounds" is an add-on to other sets
21:31:31 <frosch> "vehicle set with 32bpp sprites", "vehicle set with sound"
21:31:47 <TrueBrain> I added it to have an entry for everything, but as you noticed, nothing actually hits it πŸ™‚
21:32:09 <TrueBrain> but yeah, that needs some work .. 32bpp needs adding too πŸ™‚
21:32:22 <frosch> yes, but line 151 should be merged into line 155
21:32:44 <TrueBrain> ah, yes
21:32:47 <frosch> it's not "sound is a thing, if there is nothing else"
21:32:49 <TrueBrain> I wasn't 100% sure when I wrote that πŸ˜›
21:32:56 <TrueBrain> I am by now πŸ˜„
21:33:07 <TrueBrain> wanted to be sure I picked up on any set only defining sound πŸ™‚
21:34:06 <frosch> if there was one, it would be landscape πŸ™‚
21:34:21 <frosch> there is an "ambient sound" callback
21:34:24 <TrueBrain> well, will end up in `misc` now πŸ˜›
21:34:52 <TrueBrain> hmm, I can nitpick your PR, but .. I don't feel like it πŸ˜›
21:34:53 <TrueBrain> it works
21:34:55 <TrueBrain> let's ship it
21:35:01 <DorpsGek> [OpenTTD/bananas-api] TrueBrain approved pull request #325: Add: more detailed analysis of NewGRF content. https://github.com/OpenTTD/bananas-api/pull/325#pullrequestreview-1294787428
21:35:22 <frosch> what level of nitpicking? spelling? capitalisation?
21:35:51 <TrueBrain> `in (0x15,)` vs `== 0x01`
21:35:56 <TrueBrain> I just couldn't be arshed πŸ˜›
21:36:38 <frosch> that's intentional πŸ™‚ it's not my fault there is only one item in the tuple for nw
21:36:59 <TrueBrain> it is about the balance of things .. you can't do a `==` in one place, and an `in (A,)` in another
21:37:02 <TrueBrain> that is just wrong πŸ˜›
21:37:30 <TrueBrain> either do them both in 1 syntax, or both in the other .. this is just punishing people with OCD for no reason other than hurting them
21:38:50 <frosch> https://github.com/OpenTTD/OpenTTD/discussions/10002 <- do they allow fist fights at madurodam?
21:39:15 <TrueBrain> only really small ones
21:40:12 <dwfreed> XarothBrook: just noticed that quote appears to be from C11, not C++
21:41:47 <Xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1074445239336574986/Unnamed_1957-04-01.png
21:41:47 <Xarick> fantastic!
21:42:44 <Samu> im still not okay with percentages, but oh well
21:43:33 <LordAro> https://www.jwz.org/blog/2023/02/code-with-swearing-is-better-code/
21:43:58 <TrueBrain> okay, I am happy with this classifier .. let's see how long it takes me to integrate into the API etc πŸ˜„
21:45:50 <frosch> lordaro: it was funny that HN had an article on "code style > code quality" correlation one day, and the followed up with a "swear words > code quality" one πŸ™‚
21:46:46 <TrueBrain> I am happy you put in the effort for snowline and basecost detection frosch , it feels better now πŸ˜„ Those small things .. they are worth it πŸ™‚
21:47:03 <frosch> until they break :p
21:47:18 <TrueBrain> with 4500 test-files ... yeah, it will break at some point in time πŸ˜„
21:47:36 <frosch> https://wiki.openttd.org/en/Development/NewGRF/Specification%20Status <- that thing gained an "eints" column somewhen, next we need a "bananas" column :p
21:47:49 <TrueBrain> ghehe πŸ˜„
21:48:54 <frosch> ottd 1.10 was the last time that would have broken it
21:49:08 <LordAro> https://stackoverflow.com/questions/59925618/how-do-i-make-an-infinite-empty-loop-that-won-t-be-optimized-away
21:49:19 <LordAro> XarothBrook: dwfreed: ^
21:49:20 <frosch> https://newgrf-specs.tt-wiki.net/wiki/Action0/Global_Settings#Snow_line_height_table_.2810.29 <- we could put a note there: if you add something to this table, update bananas :p
21:49:55 <TrueBrain> go for it πŸ˜›
21:50:41 <TrueBrain> for now: zzz time πŸ™‚
21:50:47 <dwfreed> LordAro: that is about C, not C++
21:50:53 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
21:51:12 <LordAro> https://stackoverflow.com/questions/3592557/optimizing-away-a-while1-in-c0x/ then
21:51:39 <dwfreed> and the clang behavior has been fixed to comply with the C standard; if you switch the language to C, clang correctly produces the infinite loop
21:52:00 *** HerzogDeXtEr has joined #openttd
21:52:33 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:52:50 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
22:01:01 *** gelignite has quit IRC (Quit: Stay safe!)
22:05:33 *** nielsm has quit IRC (Ping timeout: 480 seconds)
22:17:30 <Samu> where do I get a list of tags like {BLACK} https://docs.openttd.org/gs-api/classGSText.html
22:23:43 <DorpsGek> [OpenTTD/bananas-api] frosch123 updated pull request #325: Add: more detailed analysis of NewGRF content. https://github.com/OpenTTD/bananas-api/pull/325
22:25:20 <frosch> not sure why merging PRs is no longer allowed when outdated
22:25:33 <TrueBrain> It should.
22:25:41 <TrueBrain> Will check tomorrow πŸ™‚
22:25:57 <frosch> there is only a setting to "always offer update button"
22:26:07 <frosch> but none to require pressing it first
22:27:05 <TrueBrain> Checked, branch protection is wrong .. but cannot fix it via mobile :p
22:27:40 <frosch> ah, found it, unchecked it, for next time :p
22:28:18 <frosch> hmm, i did not see any post on HN about gh team discussions
22:28:26 <frosch> was there any drama as you hoped for?
22:30:32 <frosch> https://github.com/orgs/community/discussions/46769 <- almost nothing
22:35:02 <DorpsGek> [OpenTTD/bananas-api] frosch123 merged pull request #325: Add: more detailed analysis of NewGRF content. https://github.com/OpenTTD/bananas-api/pull/325
22:36:38 <TrueBrain> Enterprise customers talk to their agent .. those make changes :p
22:36:50 <frosch> ah, good point
22:37:05 <frosch> who is our agent?
22:37:13 <TrueBrain> We are not enterprise
22:37:43 <TrueBrain> Sad, I know :p
22:39:25 <frosch> did you see that linux nightly failed because of missing libcurl4-openssl-dev ?
22:39:45 <frosch> is nightly using something else than the PR checks?
22:43:24 <glx[d]> Samu: https://translator.openttd.org/static/docs/string_commands.html#nonpos-gamescript-string-commands
22:44:49 <glx[d]> nightly uses a different workflow
22:45:10 <Samu> wow fantastic list
22:46:47 <glx[d]> frosch: oh might be yum vs apt
22:47:24 <frosch> huh, why yum? it says ubuntu-20.04 in both cases
22:47:44 <frosch> ah no, that's the supervisor
22:47:48 <frosch> the container is manylinux
22:50:44 <dwfreed> and manylinux is centos-based, iirc
22:50:51 <dwfreed> because lowest common denominator
22:51:00 <frosch> there is a libcurl-devel, no idea whether the "4" or "openssl" part is important
22:51:04 <Samu> i wanna print the name of a vehicle in white text, can't manage to do it, any help?
22:51:45 <Samu> I have GSText(GSText.STR_STRING, GSVehicle.GetName(total_profits.Begin()))
22:51:59 <Samu> STR_STRING : {WHITE}{RAW_STRING}
22:52:07 <Samu> doesn't work, prints blank
22:52:25 <frosch> ah, there is also libcurl-openssl-devel, so only the "4" is missing now
22:52:42 <dwfreed> frosch: the 4 is soname, which is a debian family peculiarity
22:54:00 <glx[d]> samu: I think {WHITE}{VEHICULE} should work, but pass the id as parameter not the name
22:54:39 <dwfreed> so libcurl-openssl-devel should work just fine where on debian you'd use libcurl4-openssl-dev
22:56:28 <Samu> fantastic! amazing, i love it
22:57:22 <Xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1074464261910310942/Unnamed_1954-08-21.png
22:58:15 <DorpsGek> [OpenTTD/OpenTTD] frosch123 opened pull request #10472: Fix 64523709: rpm uses different package names than deb. https://github.com/OpenTTD/OpenTTD/pull/10472
22:58:25 <frosch> thanks dwfreed
22:58:53 <frosch> tb will love me for submitting a completely untested PR again
22:59:02 <dwfreed> :D
22:59:36 <TrueBrain> frosch: It does?! I was sure I checked that...
23:00:04 <frosch> CI was happy, who would run a rpm-based system?
23:00:38 <TrueBrain> Owh, it runs in a container
23:00:40 <TrueBrain> Lol
23:00:53 <frosch> only corporations run rpm πŸ™‚
23:00:58 <TrueBrain> You can test it by starting that docker
23:01:15 <frosch> sounds like something for tomorrow πŸ™‚
23:01:38 <TrueBrain> `docker run --rm quay.io/pypa/manylinux2014_x86_64`
23:01:46 <TrueBrain> And execute those yum commands
23:02:06 <TrueBrain> Owh, `-it` needed too
23:02:24 <frosch> yeah, tomorrow, sleep now πŸ™‚
23:02:31 <TrueBrain> Cant check from mobile, but good to check before merge πŸ˜„
23:02:48 <TrueBrain> Sleep well
23:08:15 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
23:09:22 <Samu> cyas goodnight
23:09:25 *** Samu has quit IRC (Quit: Leaving)
23:26:29 *** sla_ro|master has quit IRC ()
23:45:58 <DorpsGek> [OpenTTD/OpenTTD] ldpl approved pull request #10471: Fix #10469, 5e14a20: [Script] League Table rating element is a int64 everywhere else https://github.com/OpenTTD/OpenTTD/pull/10471#pullrequestreview-1294806672
23:48:21 <dP> can minor releases bump savegame version?