IRC logs for #openttd on OFTC at 2023-11-23
00:13:34 *** SergioMassa[m] has joined #openttd
00:22:22 *** tuxayo has joined #openttd
00:28:31 *** jeremy[m]1 has joined #openttd
00:29:03 *** thelonelyellipsis[m] has joined #openttd
00:30:59 *** calbasi[m]1 has joined #openttd
00:37:49 <johnfranklin> TallTylerviaGitHub: wow
00:38:15 <johnfranklin> I didn't notice the progress for vanilla OpenTTD
00:39:20 *** belajalilija has joined #openttd
00:39:20 <belajalilija> ldplviaGitHub: this was not intended? im glad it is a bug
01:05:11 *** _aD has quit IRC (Quit: leaving)
02:22:57 *** Wormnest has quit IRC (Quit: Leaving)
02:33:34 *** tokai|noir has joined #openttd
02:33:35 *** ChanServ sets mode: +v tokai|noir
02:34:26 *** freu[m] has joined #openttd
02:39:55 *** tokai has quit IRC (Ping timeout: 480 seconds)
03:10:19 *** nolep[m] has joined #openttd
03:12:30 *** einar[m] has joined #openttd
03:12:41 *** luk3Z[m] has joined #openttd
03:12:46 *** gretel[m] has joined #openttd
03:13:24 *** rudolfs[m] has joined #openttd
03:17:57 *** debdog has joined #openttd
03:19:09 *** citronbleuv[m] has joined #openttd
03:19:19 *** joey[m] has joined #openttd
03:20:11 *** Bilb[m] has joined #openttd
03:21:05 *** D-HUND has quit IRC (Ping timeout: 480 seconds)
03:24:23 *** CornsMcGowan[m] has joined #openttd
03:26:25 *** igor[m] has joined #openttd
03:26:29 *** vista_narvas[m] has joined #openttd
03:26:34 *** andythenorth[m] has joined #openttd
03:29:11 *** keikoz has joined #openttd
05:20:13 *** herms has quit IRC (Quit: Ping timeout (120 seconds))
05:20:30 *** herms has joined #openttd
05:31:32 *** locosage has joined #openttd
05:31:32 <locosage> belajalilija: wdym? there are two ways to make groups, one by adding disabled vehicles but they are grey at start and are affected by #11470, another is using existing vehicles like we do but it's limited in what structure we can make
05:31:39 <locosage> like group can't be a first element of another group, etc.
05:34:10 <goddess_ishtar> I think they assumed "if someone hid the parent, they probably intended to hide the whole group"
05:34:24 <goddess_ishtar> and that turned out to not be the case
05:35:21 <goddess_ishtar> probably because "a hidden vehicle still displays it if it has unhidden children" is counterintutive
05:39:26 <locosage> It's probably not to late to just add some special property that would just turn vehicle into a group avoiding all the weirdness.
05:40:53 <locosage> and buildable group should show both group header and a vehicle it builds in a single entry
05:41:08 <locosage> I think I've seen some mockups somewhere...
05:42:14 <goddess_ishtar> like an abstract class?
05:44:29 <locosage> I don't see any relation
05:44:45 <locosage> like stations and waypoints, using same feature to define slightly different things
05:45:18 <goddess_ishtar> no, I mean
05:45:43 <locosage> or just add another feature I guess, they're not that similar after all...
05:45:48 <goddess_ishtar> a vehicle that cannot itself exist, but can contain other vehicles that inherit from them
05:46:32 <locosage> well, they don't inherit rn and I don't think it needs to
05:47:19 <locosage> my experience with inheriting props in newgrf is that it adds nothing but confusion
05:47:46 <locosage> like, there is substitute property for industries but is there any set that uses it properly?
05:47:55 <locosage> everyone seems to just substitute 0 or smth
06:00:15 *** keikoz has quit IRC (Ping timeout: 480 seconds)
06:36:26 *** kstar892[m] has joined #openttd
07:04:49 *** Farrokh[m] has joined #openttd
07:05:05 *** Heiki[m] has joined #openttd
07:05:22 *** patricia[m]1 has joined #openttd
07:08:24 *** gdown has joined #openttd
07:19:22 *** philip[m]123 has joined #openttd
07:19:29 *** jact[m] has joined #openttd
07:20:01 *** Gadg8eer[m] has joined #openttd
07:23:52 *** wormnest[m] has joined #openttd
07:41:55 <peter1138> Inherit would be annoying as it would mean you'd have to set the variant property first.
07:51:59 <ahyangyi> Inheritance is a high-level concept
07:52:33 <ahyangyi> And it's better to implment inheritance in python than in NewGRF 😛
08:07:37 *** tonyfinn has joined #openttd
08:07:56 *** HerzogDeXtEr has joined #openttd
08:08:37 *** alfagamma7 has joined #openttd
08:08:37 <alfagamma7> frosch123: Now you can fire and rehire?
08:08:41 <alfagamma7> coooool!!!!
08:09:08 <alfagamma7> ahyangyi: use c++ instead then
08:18:19 <LordAro> sometimes i worry that groups (and variants) have just become "add whatever is asked for" rather than any sort of considered design
08:23:17 <pickpacket> frosch123: There's some time left until April. Today is March 1363, 2020 (UTC)
08:24:01 <_pruple> the variants feature is "group these vehicles together in the buy menu", and nothing more
08:24:22 <pickpacket> is that "fire/rehire" thing true? What would the purpose be?
08:25:17 <_pruple> how it interacts with the hidden vehicle feature obviously needs resolving, but I think some grf authors need to stop trying to make it more than it is - unless, indeed, they want to go to the trouble of fully defining what they expect it to do
08:25:34 *** elliot[m] has joined #openttd
08:27:19 <ahyangyi> alfagamma7: c++ isn't really more high-level or more low-level than python though
08:29:05 <locosage> _pruple: it's not quite "groups" it's hierarchy
08:30:03 *** blikjeham[m] has joined #openttd
08:30:03 <locosage> "group" implies container-element relation
08:30:46 <ahyangyi> To be honest I wish we can have a hierarchy where the non-leaf nodes aren't vehicles themselves
08:30:55 <ahyangyi> But that's a minor problem for me
08:31:39 <ahyangyi> And yes, it's not really "groups". we don't have any entity in NewGRF corresponding to "a group of vehicle models"
08:34:38 <goddess_ishtar> ~~is this a bad time to mention that I didn't mean "inherit" in a literal sense~~
08:34:44 <locosage> well, disabled vehicles can kind of act as a group and I thought that was the plan initially but it wasn't fully designed in the end
08:36:52 <peter1138> LordAro, no, because in general people comment that it would be nice if it could do something, without actually making a proposal.
08:37:34 <peter1138> Bringing hidden vehicles into it deliberately is always a kluge.
08:37:59 <peter1138> (I mean hidden by NewGRF, not hidden by player)
08:41:16 <locosage> it's way less of a kluge than dynamically renaming vehicles in a callback based on their position in the list
08:42:22 <peter1138> That bit wasn't my doing.
08:45:57 <goddess_ishtar> it honestly sounds like "show this vehicle nested under another vehicle" and "allow the buy list to be split into categories" should be two separate features
08:47:31 <peter1138> Probably yes. Variants are "these vehicles are basically the same but has minor differences". Allowing nesting was probably a mistake.
08:49:08 <ahyangyi> "Minor differences" need a definition though
08:49:45 <locosage> it's up to grf author to decide what is minor
08:50:05 *** blikjeham[m] has quit IRC (Ping timeout: 480 seconds)
08:50:08 *** Heiki[m] has quit IRC (Ping timeout: 480 seconds)
08:50:08 *** thelonelyellipsis[m] has quit IRC (Ping timeout: 480 seconds)
08:50:09 <ahyangyi> Yeah, but then it's hard to argue that allowing nesting was a mistake
08:50:10 *** citronbleuv[m] has quit IRC (Ping timeout: 480 seconds)
08:50:13 *** Bilb[m] has quit IRC (Ping timeout: 480 seconds)
08:50:15 *** magdalena[m] has quit IRC (Ping timeout: 480 seconds)
08:50:18 *** imlostlmao[m]1 has quit IRC (Ping timeout: 480 seconds)
08:50:20 *** nolep[m] has quit IRC (Ping timeout: 480 seconds)
08:50:23 *** yubvin[m] has quit IRC (Ping timeout: 480 seconds)
08:50:24 *** CornsMcGowan[m] has quit IRC (Ping timeout: 480 seconds)
08:50:24 *** joey[m] has quit IRC (Ping timeout: 480 seconds)
08:50:24 *** menelaos[m] has quit IRC (Ping timeout: 480 seconds)
08:50:25 *** philip[m]123 has quit IRC (Ping timeout: 480 seconds)
08:50:25 *** patricia[m]1 has quit IRC (Ping timeout: 480 seconds)
08:50:25 *** rudolfs[m] has quit IRC (Ping timeout: 480 seconds)
08:50:25 *** tuxayo has quit IRC (Ping timeout: 480 seconds)
08:50:28 *** gdown has quit IRC (Ping timeout: 480 seconds)
08:50:28 *** kstar892[m] has quit IRC (Ping timeout: 480 seconds)
08:50:29 *** freu[m] has quit IRC (Ping timeout: 480 seconds)
08:50:30 *** vista_narvas[m] has quit IRC (Ping timeout: 480 seconds)
08:50:30 *** igor[m] has quit IRC (Ping timeout: 480 seconds)
08:50:33 *** jact[m] has quit IRC (Ping timeout: 480 seconds)
08:50:34 *** jeremy[m]1 has quit IRC (Ping timeout: 480 seconds)
08:50:35 *** einar[m] has quit IRC (Ping timeout: 480 seconds)
08:50:38 *** elliot[m] has quit IRC (Ping timeout: 480 seconds)
08:50:38 *** andythenorth[m] has quit IRC (Ping timeout: 480 seconds)
08:50:40 <ahyangyi> Why nesting <custom-defined-concept> inside <custom-defined-concept> is a mistake?
08:50:40 *** tonyfinn has quit IRC (Ping timeout: 480 seconds)
08:50:40 *** SergioMassa[m] has quit IRC (Ping timeout: 480 seconds)
08:50:40 *** xyii[m] has quit IRC (Ping timeout: 480 seconds)
08:50:44 *** luk3Z[m] has quit IRC (Ping timeout: 480 seconds)
08:50:50 *** gretel[m] has quit IRC (Ping timeout: 480 seconds)
08:50:53 *** Farrokh[m] has quit IRC (Ping timeout: 480 seconds)
08:50:54 *** audunm[m] has quit IRC (Ping timeout: 480 seconds)
08:50:55 *** wormnest[m] has quit IRC (Ping timeout: 480 seconds)
08:50:59 *** calbasi[m]1 has quit IRC (Ping timeout: 480 seconds)
08:51:03 *** Gadg8eer[m] has quit IRC (Ping timeout: 480 seconds)
08:51:41 <locosage> I don't necessarily think that was a mistake
08:51:55 <locosage> main issue is they look like grops/folders when they aren't
08:51:55 <ahyangyi> Yes, I know that
08:52:11 <ahyangyi> good point
08:52:53 <goddess_ishtar> clearly I should make every vehicle in my grf a variant of another vehicle
08:53:11 <goddess_ishtar> with each vehicle being nested in the previous
08:53:19 <goddess_ishtar> perfect UI design
08:53:30 <ahyangyi> goddess_ishtar: Unfortunately you can't make an Ouroboros yet 😛
08:53:38 <goddess_ishtar> opening 30 different folded tabs is so convenient
08:53:43 <peter1138> "Why add limits" "Because authors make things overly complex"
08:54:14 <goddess_ishtar> Isn't it the author's job to determine what complexity is?
08:54:22 <peter1138> "Why is that a problem, just don't use it" > "We have to support it"
08:54:28 <merni> goddess_ishtar: More convenient than scrolling through a long list of the same items
08:54:33 <ahyangyi> But the UI complexity is indeed the base game's job
08:54:41 <ahyangyi> So I undestand that argument
08:55:09 <ahyangyi> ( also, the current hierarchy spec is somewhat botched )
08:55:26 <goddess_ishtar> merni: No, it would literally just be all vehicle nested
08:55:28 <_pruple> as LordAro said, I think the problem is people keep asking for the feature to be extended - "I want to do this, I want to do that" - without clearly defining what their end goal is. If people are pulling in different directions without specifying where they're going, we end up in a situation like with the hidden vehicles, where different people expect different behaviour based on (unspecified)
08:55:28 <_pruple> different end-goals.
08:55:44 <goddess_ishtar> So if you had to get the 10th vehicle in the list, you have to expand all 9 vehicles ahead
08:55:52 <peter1138> ahyangyi, I botched it?
08:55:53 <_pruple> and very few people willing to accept the truth that if your buy menu is too long, it's because your newgrf has too many vehicles in it 😛
08:56:19 <peter1138> ahyangyi, or you expect it to be something it's not?
08:57:01 <goddess_ishtar> for "something it's not" to be a cogent concept it would be helpful to know what the intended usecssd actually is
08:58:03 <locosage> _pruple: well, for variants the end goal was supposed to be "liveries". though I guess there never was any clear view on what "liveries" should do xD
08:59:04 <peter1138> Yes, mainly: show variants of the same engine/wagon in a way that cargo subtype refitting cannot do.
08:59:23 *** karl[m]123 has joined #openttd
09:00:03 <peter1138> And also things like minor stat changes over time, which were considered different model variants in real life, but aren't really a distinct new engine.
09:03:25 <peter1138> That was the intention, but authors are free to do less/more as they like.
09:04:10 <peter1138> The name callback was... an odd addition that makes authors think it should do more.
09:07:29 <locosage> hm, maybe I can draft a proposal for proper groups...
09:07:44 <merni> _pruple: I would somewhat dispute the "too many" part. If you're trying to choose (say) a 2nd class seating carriage there is no need why you should scroll through many sleeping cars or coal wagons, even if they are available
09:13:03 <goddess_ishtar> clearly there should only be one carriage
09:13:14 <goddess_ishtar> which you then refit to any cargo in the game
09:27:25 <_pruple> merni: no further questions, m'lord.
09:31:38 *** nairda00 has joined #openttd
09:31:38 <nairda00> someone should make an ios version
09:32:18 <peter1138> Nope, iOS app store is not compatible with GPL licensed software.
09:36:08 <nairda00> what is gpl
09:39:51 <peter1138> The open source license used by OpenTTD.
09:40:00 <emperorjake> General Public License, which is what OpenTTD and many NewGRFs are licensed under.
09:40:17 <emperorjake> That said, there are rumours that the EU is going to force Apple to allow sideloading in iOS
09:40:33 <emperorjake> which could potentially lead to a proper native iOS build of OpenTTD
09:41:05 <peter1138> Unlikely.
09:43:12 <emperorjake> Or at least a semi-unofficial iOS version similar to the current Android version. Better than that completely unofficial janky web app thing that currently exists anyway
09:43:51 <peter1138> What does "semi-unofficial" mean?
09:46:42 <emperorjake> Whatever the Android version is, somewhere between the official builds and the iOS version 🤷‍♂️
09:48:24 <peter1138> Okay. The Android version is completely unofficial.
09:49:19 <ahyangyi> peter1138: Things like this are currently unsupported AFAIK
09:49:19 <ahyangyi> |
09:49:19 <ahyangyi> |-|
09:49:19 <ahyangyi> |- 1980 model, red livery
09:49:19 <ahyangyi> |- 1980 model, blue livery
09:49:20 <ahyangyi> |-|
09:49:20 <ahyangyi> |- 1981 model, red livery
09:49:22 <ahyangyi> |- 1981 model, blue livery
09:49:30 <ahyangyi> But yeah, I think it's wrong to say it's "botched"
09:50:40 <ahyangyi> As you said it's an expectation vs spec issue
09:52:32 <ahyangyi> logically, the semantics is "X is a variant of Y", so following that logic the four models above are organized thus:
09:52:32 <ahyangyi> |- 1980 model, red livery
09:52:32 <ahyangyi> |- 1980 model, blue livery
09:52:32 <ahyangyi> |- 1981 model, red livery
09:52:32 <ahyangyi> |- 1981 model, blue livery
09:52:34 <ahyangyi> But not everyone would love that `1980 model, blue livery` and `1981 model, red livery` are stuck at the same hierarchical level
09:53:23 <locosage> iirc you can't have a group as a first element of another group
09:53:31 <locosage> two groups next to each other should be fine
10:00:13 <locosage> ahyangyi: so on a top level this is supported but not nested in other groups unless there is an vehicle above on the same level
10:10:23 <ahyangyi> Yep, this is why I mentioned this problem when peter said "allowing nesting was probably a mistake" -- I don't necessarily think it's a mistake, but I do think nesting has brought complications
10:10:35 <ahyangyi> like the above example
10:15:14 <locosage> currently proper approach would probably be to just not put things that "not everyone would love at the same level" in one hierarchy at all
10:15:54 <ahyangyi> Yeah, that doesn't bother me
10:16:15 <locosage> as logically it implies that the whole tree consists of equivalent vehicles rn
10:16:46 <ahyangyi> That's why I use the model year - livery color example above
10:16:57 <ahyangyi> Both of which are "very minor variations of equivalent things"
10:17:11 <ahyangyi> And almost orthogonal to each other
10:18:31 <locosage> hm, yeah, I guess even for minor variations your example is kinda weird
10:22:37 <locosage> so it allows nesting but then vehicles just jump levels arbitrarily
10:22:44 <locosage> yeah, maybe nesting was a mistake after all
10:23:52 <locosage> allowing hierarchy for something that is logically a group of equivalent things
10:24:10 <locosage> even *logically required to be
10:27:15 <locosage>
10:27:15 <locosage> kinda works for horse though...
10:32:57 <locosage> though not quite as you can buy "More" vehicle xd
10:33:42 <peter1138> Btw, the original issue was hiding.
10:33:50 <peter1138> If you hide that "More..." does it hide everything?
10:33:58 <peter1138> If so, that's the problem.
10:34:25 <peter1138> IMHO, hiding "Tarpaulin Wagon (Large)" in this case SHOULD hide the whole tree.
10:34:32 <peter1138> But hiding the More... shouldn't.
10:34:39 <locosage> yeah, but hiding is a consequence of a larger design issue
10:34:55 <peter1138> By hiding I mean by the user, not the NewGRF.
10:35:20 <locosage> it's not clear how hiding should work without understanding what this hierarchy is supposed to represent
10:35:38 <peter1138> Well, it's made complicated by the name callback that goes on.
10:36:18 <locosage> though it seems that for both groups and liveries usecases hiding needs to work the same way
10:36:56 <peter1138> I'm just going to throw "BAD FEATURE" at andy's implementation :p
10:38:22 <locosage> peter1138[d]: what was the reason for #10708? simply that it looks weird to show vehicle that is hidden?
10:39:44 <peter1138> The reason is that you've asked for the hierarchy to be hidden, otherwise you'd have to hide every individual variant.
10:43:11 <locosage> oh, so when you click on the group "header" it hides the whole group
10:43:57 <locosage> I was initially clicking on xUSSR groups and it did nothing so it didn't make sense xD
10:44:13 <locosage> as xUSSR group hedears are disabled vehicles
10:45:30 <locosage> well, looking at hidden flag at any particular vehicle is wrong anyway because they can be hidden individually
10:45:52 <locosage> only solution I see without introducing a "group" entity is to use flags of all vehicles in the "group"
10:47:56 <locosage> but, yeah, hiding "more" is just weird
10:48:42 <peter1138> Hiding "more" logically should only hide that section, but I think it doesn't...
10:48:52 <peter1138> Not sure :)
10:49:55 <locosage>
10:49:55 <locosage> no, it hides more just fine
10:50:03 <locosage> or I don't understand what you mean
10:50:49 <locosage> I just don't think you should be able to hide "More..."
10:51:04 <locosage> as that's essentially a ui element not a vehicle
10:52:15 <peter1138> It is a vehicle.
10:52:33 <peter1138> It's not the game's fault someone decided it needed to be called "More..."
10:53:25 *** FelixActually[m] has joined #openttd
10:55:13 *** soylent_cow[m] has joined #openttd
10:56:35 *** Flygon has quit IRC (Read error: Connection reset by peer)
10:56:42 <locosage> yeah, but it's a nice usecase either way
10:56:59 <locosage> it's just that I was looking for a successful examples of nesting which this is apparently not
10:58:09 *** throwawayaccount[m] has joined #openttd
10:58:25 <peter1138> If the parent was fixed, then the idea of using hidden-vehicles as 'group' headers would make more sense.
10:59:01 <locosage> it would basically be the same as introducing a separate "group" entity
10:59:57 <peter1138> Introducing a separate "group" entity would basically be a whole separate feature and incompatible with variants. So no.
11:00:48 <peter1138> Fixing the parent breaks the concept of promoting the last built variant as the one shown to avoid clutter.
11:01:38 <peter1138> And having different behaviour depending on how the tree is set up is not ideal.
11:02:17 <peter1138> I'm not sure what method xUSSR uses to make the header engines unavailable, climate perhaps.
11:03:49 <locosage> I mean it's logically the same as it's a separate thing. Whether it's done as a new feature or as vehicle feature is implementation detail
11:04:35 <peter1138> If you comment out build_vehicle_gui.cpp:1667, does the tree-with-hidden-parents behave more coherently...?
11:04:55 *** keikoz has joined #openttd
11:08:09 <peter1138> Hmm, is the variants version of xussr on bananas?
11:09:51 <peter1138> FFS, I can't believe that Gnome broke drag & drop between the file unzip extractor and the file manager...
11:10:59 <merni> no, they are on (link taken from Discord channel #xUSSRset )
11:11:55 <locosage> peter1138: it works almost like 13.4 which is better imo but not ideal
11:12:04 <peter1138> ?
11:12:16 <locosage> > If you comment out build_vehicle_gui.cpp:1667, does the tree-with-hidden-parents behave more coherently...?
11:13:27 <locosage> For testing I'm using xUSSR Railway Electrics Set 0.8-dev.r439 that is on bananas and has some disabled vehicles as groups
11:13:51 <peter1138> Oh, did #10708 not get backported...
11:14:02 <peter1138> No label. Oops.
11:14:33 <merni>
11:14:33 <merni> locosage: That one is not on bananas...for me at least
11:15:03 <peter1138> Argh, news popups everywhere :o
11:15:59 <locosage> hm, yeah, I checked that it is no bananas before but I guess I didn't check it right 😵‍💫
11:16:04 <locosage> *on
11:16:10 <peter1138> Okay, if the parent is fixed (but only for NewGRF-hidden engines), so the last-built-variant system still works for liveries...
11:16:30 <peter1138> Eh, remove the brackets.
11:17:20 <merni> but then someone will say "what if I want the last-built shortcut for xussr-style groups too?"
11:18:04 <peter1138> Yeah, xUSSR uses hidden engines even for liveries.
11:18:19 <locosage> hiding last built variant doesn't work even for liveries and you hide it individually but it hides the whole group
11:18:59 <peter1138> That took a long time to reply :p
11:19:44 <peter1138> 10:34 <@peter1138> IMHO, hiding "Tarpaulin Wagon (Large)" in this case SHOULD hide the whole tree.
11:19:47 <peter1138> 10:33 <@peter1138> If you hide that "More..." does it hide everything?
11:20:40 <locosage> clicking on "group" should hide it whole but clicking on parent vehicle inside the group shouldn't
11:21:14 <peter1138> Agreed
11:21:27 <peter1138> Fucksake. Check the temperature in hell.
11:21:45 <merni> Did it freeze over?
11:28:48 <peter1138> Okay, so probably selection needs to be changed so that it doesn't select two rows at once.
11:29:44 <peter1138> It should also be made possible to hide the unselectable variant groups.
11:29:49 <peter1138> *headers :p
11:29:58 <peter1138> Fuck that word :D
11:33:39 <_pruple> twice
11:33:41 *** giords[m] has joined #openttd
11:38:38 <locosage> it's not as much about selection as that there is nowhere to put the hidden flag for a "selectable" group
11:39:12 <locosage> "unselectable" has a disabled vehicle for a header, but "selectable" can only hide all vehicles inside
11:48:52 <peter1138> "nowhere" :)
11:51:28 <_pruple> do you have suggestions peter1138[d]?
11:51:34 <peter1138> Never.
11:51:43 <_pruple> thought not 🙂
11:52:08 <locosage> well, not atm, but I guess nothing stops from introducing another "hidden as parent" bitmask
11:52:13 <peter1138> Add a separate "variant-tree-hidden" flag which will explcitly hide children.
11:53:08 <peter1138> IsHidden may have to traverse the parents to combine masks, but nothing too complex.
12:00:21 <peter1138> I don't think separating hidden and all-variant-child-hidden flags is too much of a feature creep either.
12:02:30 <peter1138> Next is what to display for the header if the tree is not hidden, but the last-build-variant is hidden...
12:03:18 <peter1138> Probably just reset last-built-variant to the default value if it's hidden.
12:20:20 *** JamesRoss[m] has joined #openttd
12:20:24 *** cjmonagle[m] has joined #openttd
12:21:22 *** karoline[m] has joined #openttd
13:11:35 *** virtualrandomnumber has joined #openttd
13:11:52 *** virtualrandomnumber has quit IRC ()
13:25:00 <peter1138> OpenZFS eh?
13:37:52 <alfagamma7> We are talking about file systems now?
13:38:35 <peter1138>
13:59:28 *** leward[m] has joined #openttd
14:18:10 <locosage> default vehicle can also be hidden...
14:20:44 <locosage> just showing it greyed out would probably be fine, same as header for disabled vehicle
14:30:41 *** nielsm has joined #openttd
14:34:55 *** FLHerne has quit IRC (Ping timeout: 480 seconds)
14:37:00 *** keikoz has quit IRC (Ping timeout: 480 seconds)
14:49:21 *** FLHerne has joined #openttd
15:27:23 *** EmeraldSnorlax[m] has joined #openttd
15:36:08 *** enick_554 has joined #openttd
15:46:21 <peter1138>
15:46:23 <peter1138> :o
15:56:43 <ahyangyi> lol
15:58:45 <LordAro> peter1138: woops (ZFS)
16:52:41 *** Wormnest has joined #openttd
16:56:38 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler opened issue #11485: [Bug]: Storybook duplicates some words when wrapping
16:57:07 <peter1138> 14.3?
16:57:12 <talltyler> Uh
16:57:41 <talltyler> I’m living in the future
16:57:45 <talltyler> Don’t tell anyone
17:00:21 <peter1138> talltyler, are you on Windows or Linux?
17:00:32 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on issue #11485: [Bug]: Storybook duplicates some words when wrapping
17:11:01 <talltyler> Windows
17:13:54 <peter1138> Ok. So it's not a layouter-specific thing.
17:18:30 <peter1138> L4/P1 CHR. Hmm.
17:28:31 *** keikoz has joined #openttd
18:08:07 <_glx_>
18:08:07 <_glx_> this feel weird too (RVG 9.2 in current master)
18:09:06 <_glx_> guess it's something like `{BLACK} of`
18:10:22 <peter1138> Okay that happens with ICU but not the fallback layouter.
18:10:46 <peter1138> In fact with ICU the layout is completely trash.
18:11:05 <_glx_> I'm on uniscribe I think
18:46:47 <_glx_> I think part of the issue might be colour changes are considered as a "new" font
18:56:09 <peter1138[d]>
18:56:33 <peter1138> ^ text is disappearing, mid-word.
18:58:35 <xarick> I see
18:59:05 <_glx_> using sprite font (so fallback layout) I don't get the extra space before `of`
19:12:01 <peter1138> Indeed.
19:13:55 <peter1138> Huh, weird.
19:14:34 <peter1138> The layouter performs badly when wrapping in the text file window.
19:15:19 <peter1138> Or at least with the survey results preview. Maybe it has lots of unbreakable strings.
19:22:10 <andythenorth> Well
19:22:33 <andythenorth> It’s nice only reading the channel twice a day 🙂
19:23:30 <andythenorth> “More…” eh?
19:24:00 <frosch123> what's your daylength setting?
19:24:08 <andythenorth> Yes
19:24:09 <frosch123> how often is twice a day?
19:24:36 <andythenorth> More than once and less than thrice
19:25:08 <andythenorth> It’s not necessarily valuated as “2” though
19:25:27 <truebrain> frosch123: when the clock is broken 😄
19:25:51 <andythenorth> Stopped clock is correct twice a day…
19:26:05 <truebrain> YOU UNDERSTOOD THE REFERENCE \o/
19:26:08 <truebrain> I am so proud 🙂
19:26:25 <andythenorth> The fucking kettle is on fire
19:26:40 <truebrain> well Mike, it is AMAZING
19:26:44 <frosch123> my stopped clock is a 24 hour clock though
19:26:54 <andythenorth> Well
19:27:08 <andythenorth> It could still be correct twice
19:27:20 <andythenorth> Situationally
19:27:46 <frosch123> so i should set it to 02:30 ?
19:28:00 <andythenorth> Possibly
19:28:10 <andythenorth> Or Variants of that value
19:28:21 <andythenorth> Or nested values
19:28:44 <andythenorth> Is 02:31 a Variant of 02:30?
19:29:38 <frosch123> i think variants are more like timezones
19:30:20 <andythenorth> Hmm
19:30:37 <andythenorth> You mean they’re confusing?
19:30:54 <frosch123> does the 24-hour-timetabling patch support timezones and daylight-saving-time?
19:30:55 <andythenorth> And operationally challenging?
19:31:23 <pickpacket> <- anyone wants to chime in? :) I wonder what kind of fedi server brotka runs
19:33:22 <peter1138> That's Akkoma.
19:34:34 <andythenorth> Try this: you want to notify a customer that a train is going go be 30 mins late arriving late in Brisbane, the customer is in Canberra, it’s December, your SLA is 20 mins. What do you do? Your operations server is in WA
19:34:38 *** temeo[m] has joined #openttd
19:34:43 *** hamstonkid[m] has joined #openttd
19:34:58 *** zzy2357[m] has joined #openttd
19:39:25 <andythenorth> Nobody wants to play 😛
19:39:43 <andythenorth> Variants then?
19:39:50 <peter1138> Hello
19:40:08 <andythenorth> The python for the Horse Variants is mad
19:40:20 <andythenorth> Not sure how or why it works
19:40:33 <andythenorth> Never want to see it again 🙂
19:40:43 <peter1138> Did you write it with line numbers?
19:41:00 <LordAro> i understood that reference
19:41:02 <frosch123> andythenorth: are you at least sure about the "whether"?
19:42:22 <andythenorth>
19:42:44 <andythenorth> frosch123: No
19:43:13 <frosch123> are there non-buyable variants?
19:43:21 <andythenorth> Not in Horse
19:43:28 <frosch123> but in the spec?
19:43:34 <andythenorth> No
19:43:37 <andythenorth> Maybe
19:43:43 <andythenorth> Don’t know
19:43:48 <frosch123> i expected something like the weird hidden tracktypes :p
19:43:58 <peter1138> "Yes"
19:44:03 <andythenorth> But there were variants in Horse somewhere already
19:44:16 <peter1138> It's possible to set a parent as an engine that is not available, e.g. in the current climate.
19:44:29 <andythenorth> That’s a bit lol 🙂
19:44:37 <andythenorth> I like lol
19:44:38 <peter1138> This is known as a BAD FEATURE, which Horse doesn't use, but xUssr does.
19:45:00 <andythenorth> I like lol until people take it seriously 😛
19:45:14 <frosch123> will it still show up in the buy menu for labelling or something?
19:45:48 <peter1138> It will show up in the buy menu but you can't select it, so with the engine name callback it can be labelled however you like.
19:45:55 <frosch123> andythenorth: clearly you need "category grfs" to structure big vehicle purchase lists
19:46:05 <andythenorth> Yes
19:46:33 <peter1138> I've actually got a patch that does let you select it, with the intention of letting you hide it (and its children)
19:46:34 <andythenorth> Horse got out of hand, it was the randomised wagons that did it
19:46:45 <peter1138> However, the hiding doesn't work because you can't hide unbuyable engines either.
19:47:01 <andythenorth> Oh there’s all the action 2 ID optimising in Horse lol
19:47:25 <frosch123> does the engine info say something like "you do not exist, go away"?
19:47:58 <peter1138> Basically.
19:48:07 <andythenorth> I know grf can do it, and I have explored that in depth, but really, “buy a random vehicle from candidate list” would be a nice buy menu feature
19:48:15 <Eddi|zuHause> <frosch123> so i should set it to 02:30 ? <-- asymptotically, that doesn't help you, as there are equally many days where it's correct twice, and days where it's never correct.
19:48:18 <andythenorth> The Horse way is mad
19:49:08 <frosch123> Eddi|zuHause: are you trying to extrapolate future politics?
19:49:39 <Eddi|zuHause> as far as i know, the question which time zone will be chosen has not been settled. i'm extrapolating the current system.
19:49:58 <andythenorth> How does Horse do randomised? I’ve forgotten
19:50:05 <Eddi|zuHause> i've seen no impulses to settle that question.
19:50:11 <andythenorth> I’m on my phone RN
19:50:18 <locosage> I think I managed to find a pretty good way to define variant groups in python
19:50:34 <locosage> <>
19:56:11 <andythenorth> I don’t get having unbuyable vehicles in the buy menu
19:56:35 <andythenorth> Is it intended, or an unitended artefact?
19:57:35 *** emilyd[m] has joined #openttd
19:57:40 *** shedidthedog[m] has joined #openttd
19:57:51 *** fiddeldibu[m] has joined #openttd
19:58:01 <frosch123> 13 minutes ago it was considered a BAD FEATURE
19:58:20 *** brickblock19280 has joined #openttd
19:58:20 <brickblock19280> Both?
19:58:39 <locosage> it's understandable for a group to be unbuyable
19:59:02 <locosage> as it's not clear what you're buying without some extra ui
19:59:42 <locosage> by group I mean group header
20:00:50 <andythenorth> “Group header”
20:00:50 <locosage> well, I mean buyable "more" doesn't make much sense to me :p
20:01:15 <andythenorth> No the “More…” in Horse is stupid
20:01:27 <andythenorth> It’s a sign of overkill
20:02:42 <andythenorth> If we had a way to “build random from candidates” it wouldn’t exist
20:03:05 <andythenorth> Like an optiom to turn on multi-select for vehicles
20:03:19 <andythenorth> Or grf defined
20:04:48 <locosage> well, so far there are usecases for 3 group header behaviors: buy last, unbuyable, and by random
20:05:00 <locosage> question is how to make a sane ui for them all
20:05:11 <andythenorth> That’s quite inconsistent for players
20:05:38 *** Eddi|zuHause has quit IRC (Remote host closed the connection)
20:06:05 <andythenorth> I think buy random almost needs a buy menu mode switch
20:06:16 <andythenorth> It’s like switching tools
20:06:37 <locosage> should it be global or for each group separately?
20:06:43 <andythenorth> Dunno
20:07:05 <frosch123> for wagons some people want "random for every wagon", other want "random, but all wagons the same"
20:07:07 <andythenorth> I am too imprinted by the Horse implementation details
20:07:22 <frosch123> maybe you want a "select random item" instead of "buy random item"
20:08:05 <andythenorth> Random is visualmy definitely worth the effort IMHO
20:08:07 *** thomas[m]123456789 has joined #openttd
20:08:11 <locosage> button to randomize buyable vehicle and ctrl-click it to randomize and buy? xD
20:08:15 <frosch123> you can use "unbuyable headers" to group "eyecandy crawlers" and other stuff
20:08:32 <frosch123> groups are like railtypes, but without the label mess
20:09:00 <frosch123> how a about a button "hide random engine" :p
20:09:12 <andythenorth> Also valid 😛
20:09:12 *** Eddi|zuHause has joined #openttd
20:09:23 <frosch123> click as often until list feels manageable
20:10:19 <andythenorth> So I think Horse random vehicles chain in their varact 2 to the varact 2 of a non-random vehicle
20:10:52 <andythenorth> And there’s a thing to pick bits so that often 2-3 similar vehicles are adjacent
20:11:23 <andythenorth> But I think it also can chain random gestalt to random color to final vehicle
20:12:11 <andythenorth> “Brrrr”
20:13:51 <andythenorth> I want randomised engine liveries as well, but I couldn’t face crowbarring that into the existing python compile
20:14:26 <andythenorth> It is very close to
20:15:17 <andythenorth> Mode switch between “single vehicle” and “randomised candidates”
20:16:11 <andythenorth> And OpenTTD just selects an actual ID at random, no stupid varact 2 randomising
20:26:44 <peter1138> Are you designing more bad features? :D
20:27:14 <_glx_> "design"
20:27:21 *** jeremy[m]1 has joined #openttd
20:27:27 <andythenorth> “Grow”
20:27:47 <peter1138[d]>
20:27:47 <peter1138[d]> Such bad feature
20:28:04 <andythenorth> “Accrete”
20:28:13 <peter1138> Evolve?
20:29:08 <_glx_> hey another use of cargo icons is not bad
20:35:20 *** elliot[m] has joined #openttd
20:49:16 *** kstar892[m] has joined #openttd
20:55:56 <andythenorth> When did we last design a feature? 😛
20:56:13 <andythenorth> Multiplayer redesign?
20:59:27 <peter1138> Redesign to use websockets?
21:00:40 <peter1138> Doom. Suddenly two Archviles.
21:02:27 <andythenorth> Suddenly a orange
21:05:13 <andythenorth> The old man the boat
21:05:14 <andythenorth>
21:11:04 <andythenorth> /me might play OpenTTD
21:13:35 *** sinas128 has joined #openttd
21:13:35 <sinas128> LETTSSS GOO ANDY
21:13:40 <sinas128> Play some openttdd
21:13:54 <peter1138> OpenTTD Deluxe
21:16:21 <andythenorth> OpenTTD Deluxe 2
21:17:32 <peter1138> Hmm.
21:17:33 <andythenorth> hmm
21:17:40 <andythenorth> might try and connect all the towns on the map for pax
21:17:47 <andythenorth>
21:17:49 <andythenorth> with cargodist on
21:17:57 <andythenorth> we didn't YACDist did we?
21:21:00 *** _aD has joined #openttd
21:28:32 *** Flygon has joined #openttd
21:33:40 *** luk3Z[m] has joined #openttd
21:43:14 <andythenorth> Chrome is lolz
21:43:20 <andythenorth> how does one webpage need 1.19GB?
21:43:40 <andythenorth> we run complex OpenTTD maps in much less RAM
21:48:30 <peter1138> Thunderbird doesn't use your normal GPG keyring. "useful.
21:50:09 <peter1138> PBI Brick Chain?
21:51:36 <_pruple> Random vehicle selection D:
21:51:36 <_pruple> I really feel like someone should put their foot down and insist that if the player isn't making a choice, then it's either
21:51:37 <peter1138> "YEIT Extended Towns & Industrie"
21:51:42 <peter1138> Where's the s?
21:52:12 <_pruple> A) the same vehicle
21:52:12 <_pruple> Or
21:52:12 <_pruple> B) a job for gamescript 🙂
21:53:14 <_pruple> PIRS now has a brick non-chain... Stone produced by coal mines because I didn't draw the quarry yet.
21:53:27 <peter1138[d]>
21:53:27 <peter1138[d]> Icon reuse 😄
21:55:55 <_pruple> Such bad features
21:56:27 <_pruple> I think pbi used the Toyland plastic icon at one point
21:56:48 <andythenorth> _pruple: Gamescript you say?
21:56:52 <andythenorth> pls send newsletter
21:57:50 <peter1138> Oops, found a bug.
21:58:18 <peter1138> The build engine window remembers the selected cargo filter.
21:58:19 <_pruple> isn't "a job for gamescript' the new "bad feature"?
21:58:45 <_pruple> Is that a bug? I thought it was intended
21:59:00 <_pruple> It does sometimes make me wonder where all my vehicles went
21:59:12 <peter1138> It's a bug if you load a game with a set of cargos, choose a filter, then start a game with a different set of cargos, and it says "(undefined string)"
21:59:24 <peter1138> At least it doesn't crash.
22:03:00 *** SergioMassa[m] has joined #openttd
22:07:35 <andythenorth> hmm we lost the cost / income animations didn't we
22:07:36 <andythenorth> nvm
22:07:48 <peter1138> You probably hid them.
22:08:44 <andythenorth> I hid the train icon
22:08:48 <andythenorth>
22:09:31 <peter1138> Perfect icon.
22:09:43 <peter1138> Why is it a train icon?
22:09:50 <andythenorth> because reasons
22:10:10 <peter1138> Company finances icon might be better, but also not ideal.
22:10:34 <peter1138> The subsidies icon, even?
22:11:11 <andythenorth> well
22:11:14 <andythenorth> maybe 🙂
22:11:20 <andythenorth> but it's also the loading indicator icon
22:13:42 <peter1138> Ah yes, the cargo filter used to be an index into an array, and on init it would loop to find the same item.
22:13:58 <peter1138> But since my change it directly points to the cargo ID instead, so it doesn't bother looping.
22:14:05 <peter1138> So, er, I broke it.
22:14:14 <_pruple> Typical
22:14:49 <_pruple> So, time for stations
22:15:12 <andythenorth> indeed
22:16:03 <_pruple> Yesterday I got to 128 different sprite layouts, for a station that's just an empty concrete tile...
22:16:54 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #11486: Fix 7cfcf65: Check if last-remembered build vehicle cargo filter is valid.
22:17:00 <_pruple> Wot larks
22:17:06 <peter1138> Is it an eyecandy empty tile?
22:18:21 <_pruple> Well, it has 4 random groundtile textures and a brick wall around the outside, if that's your idea of a good time.
22:18:42 <peter1138> Seems like a bit too much detail for eyecandy.
22:19:05 *** keikoz has quit IRC (Ping timeout: 480 seconds)
22:19:14 <_pruple> Oh
22:19:30 <peter1138> I heard 4 blank signs is all it needs.
22:20:22 <_pruple> yes, I forgot whether eyecandy means "pretty" or "useless" 🙂
22:23:48 <_pruple>
22:25:05 <andythenorth> is it airport?
22:25:25 <_pruple> in the screenshot, the bit that's a heliport is a heliport
22:25:56 <_pruple> it's there to demonstrate that the station walls go away if the adjacent tile is some other kind of station (or industry, or object)
22:27:53 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #11487: Feature: Show cargo icon on cargo filter lists.
22:28:03 <peter1138> (Let's see which compilers break on that)
22:28:46 <andythenorth> why is cargodist so silly?
22:28:53 <andythenorth> it routes things bizarrely
22:29:00 <peter1138> Becuase you think it's routing things, but it isn't.
22:29:10 <andythenorth> oh yes
22:29:10 <andythenorth> that
22:29:14 *** wormnest[m] has joined #openttd
22:29:15 <andythenorth> statistical distribution
22:29:25 <andythenorth> I have A-B-C-D-E pax network
22:29:45 <andythenorth> so it's transporting pax D-E but assigning them to A as destination from E
22:30:01 <peter1138> Death by one Cyberdemon rocket.
22:30:03 <andythenorth> so now they're all stuck at one end of this linear line
22:30:13 <andythenorth> choking all the outbound capacity E-A
22:30:17 <andythenorth> "linear line"
22:30:23 <andythenorth> unlike non-linear lines
22:31:05 <andythenorth> every time I try cargodist I remember why _pruple convinced me to stop using it
22:32:34 <andythenorth> it's literally just nonsense eh 🙂
22:32:51 <andythenorth>
22:32:51 <andythenorth> train goes to Elstree
22:33:00 <andythenorth> has just left Ivy Bridge
22:33:05 <andythenorth> does it load mail for Elstree?
22:33:06 <andythenorth> does it fuck
22:33:09 <andythenorth> just runs empty
22:33:17 <andythenorth> silly 🙂
22:34:13 <andythenorth> goes it throw out cargodist?
22:34:16 <_pruple> very
22:34:40 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #11486: Fix 7cfcf65: Check if last-remembered build vehicle cargo filter is valid.
22:34:59 <andythenorth> ok sleep time
22:35:05 <andythenorth> GG WP
22:35:10 <_pruple> goondight
22:36:20 <peter1138> Cheese time, I think you mean.
22:36:42 <_pruple> any time is tiffin time
22:36:50 <peter1138> Tiffin!?
22:36:56 <peter1138> THat's
22:37:04 <peter1138> Well.
22:40:21 <_pruple> indeed
22:40:35 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
22:46:26 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #11486: Fix 7cfcf65: Check if last-remembered build vehicle cargo filter is valid.
22:52:40 *** nielsm has quit IRC (Ping timeout: 480 seconds)
23:01:58 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #11487: Feature: Show cargo icon on cargo filter lists.
23:14:34 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #11487: Feature: Show cargo icon on cargo filter lists.
23:17:20 <peter1138> Okay, doing it explicitly is also not that hard now.
23:18:41 <peter1138> In that case I'm tempted to remove the handling of string.empty() in DropDownString.
23:28:52 *** Farrokh[m] has joined #openttd
23:49:08 <peter1138> Oops.
23:58:49 *** _zephyris has joined #openttd
23:58:49 <_zephyris> peter1138: Quite a good idea...