IRC logs for #openttd on OFTC at 2022-12-10
β΄ go to previous day
00:00:37 *** wallabra has joined #openttd
00:13:57 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
00:40:57 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
01:18:35 *** Wormnest has joined #openttd
02:11:17 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
02:49:00 *** Wormnest has joined #openttd
03:32:10 *** wallabra has quit IRC (Ping timeout: 480 seconds)
03:38:26 *** Wormnest has quit IRC (Quit: Leaving)
03:52:13 *** wallabra has joined #openttd
03:52:54 *** Lord_Scruby has joined #openttd
04:00:50 *** debdog has quit IRC (Ping timeout: 480 seconds)
04:04:30 *** D-HUND is now known as debdog
04:45:57 *** WormnestAndroid has joined #openttd
05:33:02 <Eddi|zuHause> i imagine we'll have to answer that question a lot more frequently in the near future
06:18:02 *** wallabra_ has joined #openttd
06:22:58 *** wallabra has quit IRC (Ping timeout: 480 seconds)
06:22:58 *** wallabra_ is now known as wallabra
07:00:33 *** Tirili has quit IRC (Quit: Leaving)
08:39:49 <andythenorth> probably want to not be needlessly repeating action 1
08:40:27 *** HerzogDeXtEr has joined #openttd
09:13:53 <andythenorth> internal to my compile
09:14:30 <andythenorth> lot of complaints about how much Horse repeats action 1s
09:16:30 * andythenorth trying to work out how to variants for steam engines that run backwards
09:16:38 <andythenorth> same sprites, but different order
09:17:12 <Pruple> definitely not same sprites, newgrf-speaking
09:17:37 <andythenorth> but they show up as duplicate action 1s
09:17:40 <andythenorth> and people complain
09:18:00 <andythenorth> those people yes
09:19:28 <andythenorth> last time I ran the script there were at least 92000 duplicates in Horse
09:19:56 <andythenorth> trying to not make it worse π
09:22:54 *** sla_ro|master has joined #openttd
09:24:45 <andythenorth> related unrelated
09:25:16 <andythenorth> for articulated vehicles with variants, do I consolidate the trailing units to the same IDs and switch graphics on lead unit ID
09:25:23 <andythenorth> saves action 0 and action 3
09:25:26 <andythenorth> increases varact 2
09:25:36 <andythenorth> "does any of this matter?"
09:26:35 <Pruple> probably, and not really
09:27:46 <petern> Hmm, well, action 0 and 3 are just instructions, other allocating the engine, they basically don't use resources.
09:29:08 *** Wolf01 is now known as Guest1577
09:29:23 <petern> Conversely varact2 requires run-time evaluation every time there's a callback or graphics lookup.
09:31:12 <andythenorth> can't remember what effect action 0 has on nml compile times
09:31:16 <andythenorth> think it's probably linear
09:31:32 <andythenorth> probably not going to gain much by saving action 0
09:31:55 <petern> What's better, less time to compile or less time to run?
09:32:05 <andythenorth> selfishly, compile time
09:34:14 *** Guest1577 has quit IRC (Ping timeout: 480 seconds)
09:34:29 <andythenorth> this comes to articulated variants defined as
09:34:29 <andythenorth> {variant_1: [unit_1, unit_2, unit_3], variant_2: [unit_4, unit_5, unit_6]} with action 0 / 3
09:34:29 <andythenorth> {variant_1: [unit_1, unit_2, unit_3], variant_2: [unit_4, unit_2, unit_3]} with a varact 2 for trailing units to switch sprites on lead ID
09:34:39 <andythenorth> I prefer the first one π
09:37:37 <andythenorth> can I used livery override?
09:37:50 <andythenorth> I never used it, is it a cool story?
09:41:17 <petern> Livery override says "use act2 chain X if the lead engine is Y"
09:43:58 <andythenorth> wonder if it works for articulated trailing parts
09:44:05 <andythenorth> nah, not gonna find out
09:45:12 <andythenorth> we like 'variants' as the name for this?
09:45:28 <andythenorth> /me about to write a bunch of stuff in nml / python
09:45:38 <andythenorth> oh, find-and-replace exists π
09:46:52 <andythenorth> lol 'variant' is used 663 times already in Horse
09:47:04 <andythenorth> livery variants, random variants, reverse variants, weathered variants
09:47:12 <andythenorth> "I heard you like variants"
09:55:41 *** TrueBrain has joined #openttd
09:55:41 <TrueBrain> hmmm .. someone found a bug in bananas-api .. which made bananas-server go: BOOOOOO
09:57:12 * petern continues doom-scrolling the fediverse instead of Twitter
09:59:15 <TrueBrain> indeed there is no code that actually validates if a condition itself is a valid version; awesome π
10:00:18 <petern> Windows 3.1 ... 4bpp Extra Zoom version
10:01:44 <andythenorth> petern: I like variants TBH
10:02:19 <petern> Good, because that is what it is called in the code.
10:34:23 <TrueBrain> could use a second pair of eyes on ^^ π
10:37:59 <LordAro> iirc AIAI has versions that are greek letters (beta, gamma, etc). is that just a nice friendly string, or were those sort of versions previously allowed?
10:38:14 <TrueBrain> I think you have to read carefully π
10:39:11 <LordAro> perhaps worth adding an additional test for the "new" 12.0 version type ?
10:39:21 <TrueBrain> yeah, sure, why not
10:43:50 <andythenorth> it's TrueBrain !
10:44:14 <TrueBrain> the question is .. was I ever gone?
10:44:42 <andythenorth> is the cat alive or dead?
10:46:05 <LordAro> TrueBrain: how about mixed >=1.8.0 <12.0 ? :p
10:46:15 * LordAro has, apparently, got his QA hat on this morning
10:46:21 <TrueBrain> feel free to make a PR for that; feels out of scope for this PR π
10:46:50 <TrueBrain> and we are looking for a QAer at work; interested? π
10:47:17 <TrueBrain> π Not at any time π
10:47:30 <TrueBrain> I can't believe how QAers are wired ... they are truly a world on their own π
10:50:58 <TrueBrain> right, bananas-server could now reload the database just fine
10:51:08 <TrueBrain> was a while ago since there was a bug in that part of the software; which is nice π
11:15:54 <petern> The .social TLD is not cheap, they're probably making a fortune with all the fediverse stuff going on.
11:21:05 <andythenorth> steam engines going backwards, as variants
11:21:12 <andythenorth> is this just stupid?
11:21:25 <petern> Oh, tender probably prevents that.
11:21:43 <andythenorth> yeah, can't reverse articulated vehicles
11:21:47 <andythenorth> needs a state machine
11:21:59 <andythenorth> I mean...it could just be done in grf
11:22:19 <andythenorth> imagine if cb36 existed
11:22:27 <petern> If articulated, just set the flag eh?
11:24:14 <petern> Hmm, what does it toggle...
11:25:25 <petern> VRF_REVERSE_DIRECTION is toggled when reversing anyway. Hmm.
11:25:58 <petern> And you can't/shouldn't CB36 vehicle length off of that.
11:26:17 <petern> Although as it's being reversed and shuffling wagons about, it may be possible.
11:26:31 <petern> Ensure the total length is the same though π
11:26:46 <petern> Scope for errors is big.
11:32:59 <petern> Did my "NewGRF railtype provides all the junction sprites" patch ever make the light of day?
11:34:35 <petern> Ah yes `RTSG_GROUND_COMPLETE, ///< Complete ground images`
11:35:13 <petern> This looks a bit messy see :/
11:43:58 *** WormnestAndroid has quit IRC (Remote host closed the connection)
11:45:18 <andythenorth> ok let's just do variants for liveries for now
11:45:32 * andythenorth spent about a day pissing around with sillier ideas
11:45:52 * LordAro has spent most of the morning rewriting his AdventofCode makefile
11:46:13 <andythenorth> make a makefile that makes your makefile
11:46:37 <LordAro> makefiles that do text processing are not fun
11:46:39 <petern> Variants for liveries is kinda the point π
11:48:39 <Pruple> active WIP, not public knowledge yet, that version was put on banana for a multiplayer game a couple of weeks ago π
11:49:54 <Pruple> a couple of months even, how time flies
12:39:26 <petern> Test Chamber 18 was a bit harder, hmm.
12:46:09 <andythenorth> dicts are ordered in python since 3.6
12:46:13 <andythenorth> do we think we can trust that?
12:49:17 <dwfreed> andythenorth: since 3.7, it is part of standard
12:49:33 <dwfreed> in 3.6, it was only considered an implementation detail of CPython
12:49:55 <dwfreed> but 3.7 requires it of all python impls (so eg a pypy compatible with 3.7 would have it too)
12:51:56 <dwfreed> note that, for whatever reason, item/key/value views were not reversible until 3.8
12:52:57 <petern> Hmm, nice, raytraced light goes through portals too.
12:53:23 <dwfreed> petern: playing Portal RTX ?
12:55:02 <petern> Just until andy throws more variant-bugs at me.
12:55:49 <andythenorth> oof such Horse conversion
12:55:51 <petern> Hmm, I guess AI don't need to know about variants, as they're just separate engines.
12:57:12 <andythenorth> such a small patch, such a lot of thinking about which route to take π
12:59:21 <petern> Does that then let you "easily" define variants?
12:59:41 <petern> If only that were so π
13:00:21 <petern> dwfreed, 2080ti running it at 1080p, 1440p is a bit much, even with DLSS on.
13:00:50 *** Smedles has joined #openttd
13:01:47 <andythenorth> Horse brake vans use specific liveries depending on engine
13:01:53 <andythenorth> could do that per variant π
13:04:30 *** gregdek_ has joined #openttd
13:04:33 *** rightnut_ has joined #openttd
13:04:53 <Pruple> just do brake van variants? π
13:06:04 *** wallabra_ has joined #openttd
13:07:17 *** wallabra has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** dale has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** nnyby has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** gregdek has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** rightnut has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** twpol has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** greeter has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** dwfreed has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** Ttech has quit IRC (resistance.oftc.net larich.oftc.net)
13:07:17 *** wallabra_ is now known as wallabra
13:07:17 *** gregdek_ is now known as gregdek
13:07:17 *** twpol_ is now known as twpol
13:07:18 *** rightnut_ is now known as rightnut
13:08:17 *** dwfreed has joined #openttd
13:08:24 <andythenorth> /me tests what happens if variant_group ID is self
13:08:46 <andythenorth> no trains in buy menu π
13:09:59 *** greeter has joined #openttd
13:16:36 <petern> Hm, I can probably make it ignore that
13:23:42 <petern> Or not; forces the NewGRF to be correct π
13:30:49 <andythenorth> I think the grf should be correct
13:31:32 <andythenorth> life admin keeps derailing progress π
14:03:23 *** WormnestAndroid has joined #openttd
14:05:57 *** virtualrandomnumber has joined #openttd
14:06:55 *** virtualrandomnumber has quit IRC ()
15:19:55 <LordAro> petern: ^ found an issue you can close :)
15:20:25 <LordAro> wait, it's already closed
15:59:51 <andythenorth> I should have branched more π
16:07:35 <andythenorth> might have to actually design this
16:07:38 <andythenorth> there's a lot of Horse π
16:07:53 <andythenorth> and it's got some baked in assumptions about engines π
16:08:21 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
16:12:19 <petern> Hmm, would it be useful to expose the variant to varact2?
16:17:06 <andythenorth> do they have an index or something?
16:17:48 <petern> No, it's the engine ID innit
16:20:31 <petern> Hmm, not even sure if you can check the engine ID
16:20:53 <andythenorth> pretty sure I do it a lot
16:21:11 <petern> Must be able to yes, otherwise the only way for different things to happen based on engine would be wagon/livery overrides
16:21:33 <andythenorth> vehicle_type_id in nml I think
16:22:19 <petern> NML specs carefully don't show it :/
16:23:49 <petern> case 0x46: return v->GetEngine()->grf_prop.local_id;
16:23:49 <petern> case 0x47: return GB(v->GetEngine()->grf_prop.local_id, 8, 8);
16:23:53 <petern> What a waste of variables π
16:24:32 <petern> Not sure if makes sense either.
16:24:58 <petern> That would be backwards compatibility with TTD's memory structure, but vehicle type was never 16 bits.
16:25:47 <petern> And if it was 16 bit, getting the upper 8 bits wouldn't be useful.
16:39:50 <petern> typedef uint16 EngineID; //! All enginenumbers should be of this type
16:43:57 *** WormnestAndroid has joined #openttd
16:52:38 * andythenorth tries third approach to variants :P
16:52:43 <andythenorth> so many assumptions in Horse
16:53:11 <frosch> actually weird. the ttd engines were so maxed to exactly 255, and then it's actually an uint16?
17:05:10 <petern> andythenorth: what's breaking? π
17:05:54 <andythenorth> there are 3 ways I could handle variants
17:06:29 <andythenorth> I could organise them in the compile with more python objects, more nml IDs, or more numeric IDs
17:06:38 <andythenorth> all 3 options are assumed to be significant by other conditional code π
17:06:46 <andythenorth> so anything I touch breaks lots of other things π
17:10:16 <pickpacket> The Generic Trams NewGRF doesnβt have any late game trams. It starts out with goods, mail, and passenger trams but after ~1970 or something thereβs only the passenger tram left
17:10:53 <petern> Hmm, Portal RTX does just about run at 1440p.
17:11:09 <pickpacket> andythenorth: the thing youβre working on or the Generic Trams thing?
18:09:48 <andythenorth> having to work bottom up, not top down π
18:14:37 <petern> Such fun, disentangling those.
18:15:24 <petern> It should end up being a lot simpler
18:25:39 <andythenorth> lot of tightly bound docs generation crap currently
19:19:11 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
20:42:52 <petern> Why is ffwd touched when saving?
20:43:29 <andythenorth> you mean, we could save whilst ffwd-ing?
21:00:17 <glx[d]> to not store FFWD state in the save
21:01:08 <glx[d]> oups accepted suggestions of course fail commit checker
21:01:17 <petern> ffwd state is... saved? o_O
21:01:39 <glx[d]> well I didn't really checked
21:02:41 <petern> > "Also turn off fast-forward cause with that saving takes Aaaaages"
21:03:16 <petern> Comment from 18 years ago huh.
21:03:51 <glx[d]> from the time writing to disk was not threaded
21:16:06 <petern> I made a joke about CGA the other day, and then had to explain what CGA is... was... π¦
21:17:11 *** gelignite has joined #openttd
21:41:45 <Timberwolf> That's one of those explanations which can get quite complex, especially if you get into the artifact colour stuff it could do over composite into an NTSC display :D
22:27:06 *** gelignite has quit IRC (Quit: Stay safe!)
22:30:47 *** supermop_Home has joined #openttd
22:35:18 <petern> There's a lot of dog variants, yes.
22:36:00 <Eddi|zuHause> most dog variants aren't much older than steam trains
22:45:15 <andythenorth> dare I click the + ?
22:45:19 <andythenorth> didn't try it yet π
22:45:32 <petern> It would be rude not to.
22:45:45 <andythenorth> ok it doesn't actually find the right sprites yet
22:45:52 <andythenorth> but the rest is nearly done I think
22:46:32 <andythenorth> ok, this is the liveries we were waiting for π
22:46:44 <andythenorth> so much easier to click on nice trains
22:47:07 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
22:47:20 *** WormnestAndroid has joined #openttd
22:47:21 *** reldred has joined #openttd
22:47:56 <reldred> Finally, a Good Feature.
22:49:07 <Pruple> I'm sure someone will find a way to use it BADly π
22:49:40 <reldred> NARS remake with liveries plz
22:49:46 <reldred> Or just America horse
22:51:10 <andythenorth> drawing UK liveries forever now π
22:51:16 <andythenorth> no time for Mooses
22:53:13 <andythenorth> lost some recolour sprites somewhere along the way
22:53:22 <andythenorth> stuff and things
23:02:52 <andythenorth> working in purchase list now
23:03:07 <andythenorth> some issues in depot π
23:06:30 <andythenorth> no way to inspect vehicle ID in game :x
23:06:40 <andythenorth> not sure it's building the correct trailing part
23:06:49 <andythenorth> guess I read the source
23:07:01 <petern> I may have mentioned it. Hmm.
23:07:25 <petern> I have now had my lie cake.
23:08:54 <andythenorth> ok the articulated switch needs to not be same for all variants π
23:09:00 *** Tirili has quit IRC (Remote host closed the connection)
23:09:27 <petern> Unless you use livery overrides π
23:15:11 *** keikoz has quit IRC (Ping timeout: 480 seconds)
23:16:09 <andythenorth> how long until someone makes 'separator vehicles' then?
23:16:19 <andythenorth> can variants still nest?
23:17:15 <andythenorth> but people will need stuff like "+ all the british trains"
23:17:25 <andythenorth> and "vacuum braked wagons
23:17:56 <petern> Hmm, I wonder if you can make an engine that can't be built, and use that as a variant parent?
23:18:21 <petern> The UI doesn't really lend itself to that π
23:18:43 <andythenorth> all the good stuff is around 1985 ish onwards
23:19:08 <andythenorth> oops too many resilients now
23:19:12 <andythenorth> I'll delete some
23:19:55 <petern> Damn, got to compile variants now.
23:28:40 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
23:32:38 <petern> Damn, my level crossings are not gud π
23:33:37 <petern> Ah yes, a lot of resilients.
23:33:50 <andythenorth> I fixed that here
23:34:00 <andythenorth> ok sleeping time π
23:34:31 <andythenorth> tomorrow I try to find all the old crap that needs refactored out
23:34:39 <andythenorth> got a lot of it, but there will be more
23:35:09 <petern> Cos this change could be rejected yet
23:35:13 <andythenorth> there is an error here, it is lolz
23:35:38 <reldred> petern: Iβll fight them if they do
23:35:49 <Pruple> cabbage is a good colour
23:36:03 <andythenorth> there is one bit of company colour detection left π
23:36:09 <andythenorth> can be seen in first column
23:38:20 <petern> Fold/unfold all button?
23:40:18 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
23:41:03 *** WormnestAndroid has joined #openttd
23:51:46 *** Tirili has quit IRC (Ping timeout: 480 seconds)
continue to next day β΅