Times are UTC Toggle Colours
2022-04-09T14:4310:27:17 *** Gustavo6046 has quit IRC 10:35:35 *** tokai has joined #openttd 10:35:35 *** ChanServ sets mode: +v tokai 10:57:16 *** Speedy` has joined #openttd 11:14:03 *** WormnestAndroid has joined #openttd 12:06:31 *** frosch123 has joined #openttd 12:21:49 <andythenorth> anybody understand railtype stuff? :P 12:22:03 * andythenorth merging Termite into Horse, dunno what all this compatibility things are 12:54:28 *** andythenorth has quit IRC 12:58:55 *** WormnestAndroid has quit IRC 12:58:57 *** Tirili has joined #openttd 13:01:58 *** Tirili has quit IRC 13:02:04 *** Tirili has joined #openttd 13:11:32 *** Tirili has quit IRC 13:19:48 *** WormnestAndroid has joined #openttd 15:13:39 *** D-HUND is now known as debdog 15:15:01 *** Cthulhux has joined #openttd 15:50:42 *** Gustavo6046 has joined #openttd 15:51:40 *** Gustavo6046 has quit IRC 15:52:17 *** Gustavo6046 has joined #openttd 16:14:46 *** andythenorth has joined #openttd 16:32:33 <DorpsGek> [OpenTTD/OpenTTD] same-f commented on issue #9847: [Feature]: Disable terraforming until X years passed for a company. https://github.com/OpenTTD/OpenTTD/issues/9847 17:06:28 <andythenorth> so should I set compatible and powered the same for railtypes? 17:15:56 *** glx has joined #openttd 17:15:56 *** ChanServ sets mode: +v glx 17:27:43 * andythenorth copies whatever Termite does, leaves it alone :P 17:28:45 <andythenorth> no clue what all this means :D https://github.com/andythenorth/iron-horse/blob/master/src/railtypes/metro.py#L12 17:35:47 <andythenorth> why is metro compatible with RAIL and ELRL? 17:36:15 <andythenorth> it's broken anyway 17:36:21 <andythenorth> I can't build metro in RAIL depots 17:36:38 <andythenorth> I can't build normal RAIL vehicles in metro depots 17:37:07 <andythenorth> or does compatible mean something else? 17:37:47 <frosch123> it's from the train's POV 17:39:16 <andythenorth> I am reading the spec as "I can build RAIL vehicles in metro depots if I set this" 17:39:21 <andythenorth> https://newgrf-specs.tt-wiki.net/wiki/Action0/Railtypes#Compatible_rail_type_list_.280E.29 17:40:39 <frosch123> it doesn't even mention depots :) 17:40:56 <andythenorth> no 17:41:00 <andythenorth> exactly 17:41:02 <andythenorth> depots are just track 17:41:14 <andythenorth> so if a train can run on the track, it should be buildable in the depot 17:41:29 * andythenorth might be wrong 17:41:30 <frosch123> that would be "powered", not "compatible" 17:41:35 <andythenorth> oof 17:41:41 <glx> isn't there also a "can run on it" and "can run on it by iself" factor ? 17:41:45 <andythenorth> but wagons? 17:42:12 <andythenorth> hmm also extra lolz 17:42:25 <andythenorth> Horse metro railtype table is 17:42:26 <andythenorth> METRO: [MTRO, "3RDR", ELRL], 17:42:38 <andythenorth> but metro track type lable is SAA3 17:42:41 <andythenorth> label * 17:43:03 <andythenorth> I guess that relies on the alternative_railtype_list falling through 17:43:33 <andythenorth> conclusion so far: don't change the existing values, they're magic! 17:43:39 <frosch123> the [..] are not "AND" 17:44:22 <frosch123> the line you quoted means: metro trains run on MTRO. but if that type is not defined by any grf, try 3RDR or ELRL 17:44:38 <andythenorth> so if I disable metro tracks, metro trains are then buildable on ELRL 17:44:41 <frosch123> the latter ensuring that the metro trains will run on default railtypes, if no railtype newgrf is loaded 17:44:50 <frosch123> yes 17:44:58 <andythenorth> but don't the railtypes define the compatibility? 17:45:09 <andythenorth> I guess both sides have to specify fallbacks? 17:45:14 <andythenorth> and then there's some negotiation? 17:45:22 <andythenorth> is this rock-paper-scissors? 17:45:23 <frosch123> this is neither compatibilty, nor powerdness, this is a third thing :) 17:45:35 <andythenorth> is this not alternative_railtype_list? 17:45:55 <frosch123> no 17:45:59 <andythenorth> oh :) 17:46:00 <andythenorth> lol 17:46:08 <andythenorth> I'm trying to work out the fallback order 17:46:14 <andythenorth> Horse sets METRO as above 17:46:18 <frosch123> railtype-table is a vehicle-grf-thing 17:46:31 <frosch123> compatility/powerness/alternativeness is a tracktype-grf-thing 17:46:43 <glx> vehicle grf declare which type they expect, then use them in vehicle info 17:47:13 <andythenorth> then Termite has metro track with label SAA3, and alternative_railtype_list=["3RDR","MTRO","SAA3","SAB3","SAC3","SAD3","SAE3",] 17:47:31 <andythenorth> so I think Horse relies on MTRO as the actual label? 17:47:36 <andythenorth> or 3RDR? 17:47:44 <frosch123> yes, that means termite defines all those labels, and map them to the same railtype 17:47:45 <andythenorth> (when Termite is used) 17:47:54 <frosch123> horse will then find 3RDR 17:48:12 <andythenorth> or "3RDR" 17:48:16 <andythenorth> because reasons 17:48:20 <glx> track grf provide tracks and some "magic"/logic matches vehicle expectation to actual available tracks 17:48:25 <frosch123> ah, wait, MTRO is also in the list 17:48:28 <frosch123> i missed that 17:48:31 <andythenorth> yes :) 17:48:54 <andythenorth> I didn't make Termite, Foobar adapted it from OGFX tracks or Dutch tracks or something 17:49:04 <andythenorth> I could ask Foobar, but sands of time... 17:49:16 <andythenorth> "probably fine" 17:49:25 <frosch123> just read SAD3 as SAD³ 17:49:28 <andythenorth> it all seems to work, I just don't like weird cargo-culting 17:49:31 <andythenorth> lol 17:49:43 <andythenorth> I read it as SADE leet nonsense 17:51:04 <frosch123> you could run an ottd quiz on discord :p 17:51:16 <frosch123> crowd coding 17:59:23 <andythenorth> I wonder if the metro label could just be MTRO 17:59:25 <andythenorth> and done 17:59:36 <andythenorth> is that too sensible? 18:02:07 <frosch123> but axle weight! 18:02:25 <andythenorth> do I even want to ask? :) 18:02:26 <frosch123> speed limits! 18:02:33 <frosch123> gauges! 18:02:55 <frosch123> voltages AC and DC! 18:03:04 <frosch123> how could it be just "metro"? 18:03:19 <andythenorth> hmm 18:03:49 <andythenorth> I remember when we thought cargo labels were complicated :P 18:03:56 <andythenorth> "more innocent times" 18:06:11 <andythenorth> I want to make a high speed railtype that bans freight 18:06:25 <andythenorth> but sadly railtypes don't seem to have a mapping to cargo labels in the vehicle 18:16:44 <andythenorth> hmm 18:17:01 <andythenorth> so TGV type trains get a dedicated railtype 18:17:08 <andythenorth> but they also need to run on e.g. ELRL 18:17:18 <andythenorth> that's set by the railtype? 18:17:29 <andythenorth> but I don't know what the railtype does? 18:25:45 <andythenorth> https://newgrf-specs.tt-wiki.net/wiki/TracktypeLabels 18:25:56 <andythenorth> maybe I need EHIG 18:25:59 <andythenorth> or HSTR 18:26:31 <andythenorth> oh there's this https://newgrf-specs.tt-wiki.net/wiki/Standardized_Railtype_Scheme 18:27:11 <andythenorth> well that doesn't account for track which is super-elevated, with steeper gradients than usual, and has specific signalling system for high speed operation 18:27:30 <frosch123> it doesn't even have triple-gauge rail 18:27:32 <andythenorth> no 18:27:39 <andythenorth> maybe a new standard is needed? 18:27:48 <andythenorth> I just want a track that excludes freight trains 18:27:53 <andythenorth> or is that programmable waypoints? 18:28:01 <frosch123> probably 18:28:16 <andythenorth> this model railway simulator might need redesigned :P 18:28:27 <frosch123> tracktypes have max speed, but not min speed :) 18:28:31 <andythenorth> lol 18:29:02 <andythenorth> it's easy to poke fun at, harder to design better :) 18:29:18 <andythenorth> I don't have any alternative better solutions 18:29:47 <frosch123> how about tracktypes that forbid breakdowns? 18:29:58 <andythenorth> that's just silly... 18:30:12 <andythenorth> tracktype that requires 100% reliability on the engine? 18:30:42 <andythenorth> so I should be able to use that exciting new hidden railtype flag? 18:30:51 <andythenorth> I make a TGV that uses LOLZ label or something 18:31:14 <andythenorth> then LOLZ is compatible (and powered? (and alternate for??)) ELRL *and* TGV_ ? 18:31:24 <andythenorth> then my TGV can go on ELRL or LOLZ 18:31:30 <andythenorth> oops 18:31:33 <andythenorth> ELRL or TGV_ 18:31:39 <andythenorth> but ELRL can't go on TGV? 18:32:14 <andythenorth> https://newgrf-specs.tt-wiki.net/wiki/Action0/Railtypes#Rail_type_flags_.2810.29 bit 2 18:34:11 <andythenorth> maybe testing is faster than talking :D 18:41:08 <andythenorth> how does the train set the axle load property? 18:41:12 <andythenorth> I can't see one 18:41:20 <andythenorth> for this standardised railtype thing 18:41:45 <andythenorth> oh it's composed in the label? 18:42:21 <andythenorth> oh I've done Iron Horse wrong 18:42:29 <andythenorth> I've set all the normal trains to RAIL or ELRL 18:42:36 <andythenorth> I'm supposed to set them to some axle load crap 18:42:38 <andythenorth> oof 18:42:55 <frosch123> i have no idea whether any real newgrf ever used the axle load stuff :) 18:43:19 <frosch123> or just vaporware 18:43:30 <frosch123> though is is vaporware if you do not even start? 18:43:38 <andythenorth> dunno, I've never seen any :) 18:43:42 <andythenorth> might have sold some once 18:44:07 <andythenorth> I think I will just use LOLZ as the label 18:44:11 <andythenorth> and CATS 18:44:28 <andythenorth> if I need more, I could maybe use GOAT 18:44:38 <frosch123> are you sure V didn't already use them? 18:44:44 <michi_cc> frosch123: The new DBSetXL and DBRails are supposed to use them (but of course the question of vaporware isn't settled yet :) 18:44:44 <andythenorth> PURR 18:45:03 <andythenorth> "In case you're not convinced by this scheme" 18:45:09 <andythenorth> "Still not convinced? Feel free to use railtype labels of your own, but know that you will likely come to regret that at some point in the future." 18:45:16 <andythenorth> I regret everything already 18:45:18 <frosch123> michi_cc: i am not sure whether "new" is correct there 18:45:20 <andythenorth> why mention the future? 18:45:29 <michi_cc> Okay, fair, unreleased. 18:45:33 <andythenorth> I might edit the wiki 18:45:40 <andythenorth> no, that would be childish 18:45:44 <frosch123> more than half as old as ottd 18:46:00 <frosch123> probably 3/4 as old as newgrf 18:46:08 <andythenorth> but grf is always new 18:46:29 <frosch123> newergrf :) 18:47:11 <frosch123> the only thing worse than calling things "new", is calling them "intelligent" 18:47:40 <TrueBrain> a fresh (read: new) and intelligent remark you made there frosch123 ! :P 18:47:53 <frosch123> at work there was a setting called "intel_xxx" 18:47:53 *** Flygon has quit IRC 18:48:05 <michi_cc> "premium", because if it was premium, you wouldn't need to stress it. 18:48:07 <frosch123> i though it was some weird encoding/byte order magic or similar 18:48:40 <frosch123> but when i looked what it does, it did some trivial compute Y from X thing 18:49:01 <DorpsGek> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://github.com/OpenTTD/OpenTTD/commit/385c2f13816c6c246f5eea7e7c100cb2f85f9585 18:49:02 <DorpsGek> - Update: Translations from eints (by translators) 18:49:18 <TrueBrain> the person who wrote it is still proud at it! 18:49:22 <andythenorth> intel_786 18:49:40 <andythenorth> I really can't railtypes scheme standardised 18:49:45 <andythenorth> even though foobar is a good egg 18:49:51 <andythenorth> 'mistakes were made' 18:50:08 <frosch123> TrueBrain: oof... like the guy who wrote a comment in the code, that they made the checksum computation 10x as fast by moving the division out of a loop 18:50:19 <frosch123> which resulted in the checksum only depending on the last 8 bytes... 18:50:29 <TrueBrain> so he was right! 18:50:34 <TrueBrain> so much faster! 18:50:41 <TrueBrain> also: unit-test failures? :P 18:51:12 <frosch123> unfortunately the guy left the company before i joined 18:52:41 <frosch123> i heard another story about a funny code comment: apparently it started with "we need to be careful here, and consider exactly what to do", followed by a screen of blank lines 19:08:43 <andythenorth> ugh this didn't work as expected 19:09:17 <andythenorth> https://github.com/andythenorth/iron-horse/commit/94a7c891b4b357ac3895e66cf370802dd79105da 19:09:23 <andythenorth> the CATZ type doesn't appear in the menu 19:09:55 <andythenorth> there are no vehicles setting CATZ, but there are vehicles setting LOLZ 19:11:48 <andythenorth> hmm makes no sense to me at all 19:13:51 *** tokai|noir has joined #openttd 19:13:51 *** ChanServ sets mode: +v tokai|noir 19:16:18 *** tokai has quit IRC 19:18:57 <andythenorth> might be author error 19:18:59 <andythenorth> let's see 19:21:02 <andythenorth> that works 19:21:05 <andythenorth> succcess! 19:21:14 * andythenorth My First Railtype! 19:26:00 <andythenorth> hmm 19:26:05 <andythenorth> no this still makes no sense 19:26:45 <andythenorth> oof 19:26:51 <andythenorth> what does compatible do? 19:27:20 <frosch123> quiz: what makes the least sense? (a) railtype compatibility (b) vehicle capacity (c) vehicle movement around corners (d) tile distance scale 19:28:25 <andythenorth> yes 19:29:17 <andythenorth> https://github.com/andythenorth/iron-horse/blob/master/src/railtypes/catz.py 19:29:36 <andythenorth> vehicles with the track_type CATZ can be built in CATZ or ELRL depots 19:29:44 <andythenorth> and will run on both railtypes 19:29:59 <andythenorth> ELRL or RAIL vehicles will not build in CATZ depots 19:30:05 <andythenorth> nor run on CATZ railtype 19:30:10 <andythenorth> which is the desired outcome 19:30:15 <andythenorth> but the implementation makes zero sense 19:30:26 <andythenorth> why does this happen? 19:31:11 <andythenorth> oh it's what michi explained in discord 19:31:11 <andythenorth> ok 19:31:53 <andythenorth> nothing to see here 19:33:21 <andythenorth> so to try to explain 19:33:41 <andythenorth> the compatible_railtype_list is defined on a railtype 19:33:52 <andythenorth> but it sets which other railtypes a vehicle is compatible with 19:33:59 <andythenorth> not the railtype 19:34:00 <andythenorth> the vehicle 19:34:51 <andythenorth> so if I want to allow ELRL vehicles on this type 19:34:55 <andythenorth> I have to redefine ELRL 19:35:06 <andythenorth> [repeat] 19:36:38 <andythenorth> ok nice to understand finally :D 19:37:59 *** Gustavo6046 has quit IRC 19:38:24 *** Gustavo6046 has joined #openttd 19:47:40 <glx> the way it works you can tell TGV_ is compatible with ELRL while ELRL is not compatible with TGV_ 19:49:19 <andythenorth> ok that means I understand 19:49:32 <andythenorth> it's only what the spec says TBH 19:49:35 <andythenorth> just confusing 20:24:17 <andythenorth> it all works! 20:24:21 <andythenorth> thanks :) 20:41:39 *** frosch123 has quit IRC 20:44:23 *** nielsm has quit IRC 21:14:45 *** andythenorth has quit IRC 22:16:15 *** sla_ro|master has quit IRC 22:46:43 *** Gustavo6046_ has joined #openttd 22:52:19 *** Gustavo6046 has quit IRC 23:54:28 *** iSoSyS has joined #openttd