IRC logs for #openttd on OFTC at 2025-06-04
β΄ go to previous day
00:37:33 *** WormnestAndroid has quit IRC (Remote host closed the connection)
00:37:36 *** WormnestAndroid has joined #openttd
00:39:11 *** ipravd_ has joined #openttd
00:47:37 *** WormnestAndroid has quit IRC (Remote host closed the connection)
00:47:48 *** WormnestAndroid has joined #openttd
01:24:44 *** Wormnest has joined #openttd
01:41:55 *** Flygon has quit IRC (Read error: Connection reset by peer)
02:01:51 *** Wormnest has quit IRC (Quit: Leaving)
02:49:26 *** gnu_jj_ has quit IRC (Ping timeout: 480 seconds)
03:21:01 *** debdog has quit IRC (Ping timeout: 480 seconds)
03:27:34 *** D-HUND is now known as debdog
04:43:07 <DorpsGek> - Update: Translations from eints (by translators)
05:36:14 *** ipravd_ has quit IRC (Ping timeout: 480 seconds)
05:51:53 <andythenorth> silly idea, an (optional, grf-action 0 prop controlled) button on industry windows that opens the object window, pre-filtered to a class
06:32:42 <reldred> andythenorth: We need a way to expand the industry with more actual industry tiles π
06:33:01 <reldred> Weβve got house picker now
06:33:13 <reldred> Need more functional tiles not fake ones.
06:34:20 <reldred> Put a cost on them per tile, industry build cost/number of tiles in an industry tile layout
06:37:07 <andythenorth> what about the whining though? π
06:37:55 <reldred> I will feast on their delicious salty tears
06:38:10 *** toktik has quit IRC (Remote host closed the connection)
06:38:29 <andythenorth> it's not as trivial as it sounds π
06:38:50 <andythenorth> the industry layout is traversable by grf
06:39:02 <andythenorth> and that's quite heavily relied on
06:39:11 <reldred> which is why you need to elect me for Haver of Correct Opinions and Benevolent Dictator for Life
06:39:11 <andythenorth> so if the new tiles are added to the layout, grf will break
06:39:25 <andythenorth> and if the grf can't traverse the new tiles, some authors will complain
06:39:43 <andythenorth> wait hang on, I did Information Science π
06:39:53 <andythenorth> ~~and if the grf can't traverse the new tiles,~~ some authors will complain
06:40:07 <andythenorth> ok so that's a constant factor, and we can drop it from the equation
06:41:12 <reldred> I thought all the complainy authors had disappeared into obscurity?
06:48:36 <andythenorth> ? Iβm still here?
06:54:26 <reldred> nah I meant the wobbly-chuckers
06:54:45 <reldred> the 'i must have an entire /8 of grfids'
06:55:14 *** Extrems has quit IRC (Ping timeout: 480 seconds)
07:00:23 *** Extrems has joined #openttd
07:27:53 <peter1138[d]> I can chuck wobblies.
07:34:40 <andythenorth> I can pull wheelies
07:44:50 <peter1138[d]> Weirdos who pronounce SNES as "Ess En Ee Ess" instead of just "Snes"...
07:48:42 <andythenorth> "imported japanese cartridge"
07:50:04 <andythenorth> peter1138[d]: adapter board isn't it
07:50:21 <andythenorth> LordAro: level 40+
07:50:49 <andythenorth> not to the same extent
07:51:14 <andythenorth> although I have children older than some of the people in the discord (I think)
07:51:20 <mnhebi> Here I thought he was some 50 year old wizard.
07:54:03 <LordAro> i turned 30 last month
07:55:12 *** emperorjake has joined #openttd
07:55:12 <emperorjake> mnhebi: Same here, it turns out I'm older π
07:55:30 <mnhebi> Aro is younger than me!?
07:56:06 <mnhebi> the world is truely strange.
07:56:15 <peter1138[d]> Don't worry, he can still be a bitter old man at times π
07:56:24 <peter1138[d]> And those knees...
07:57:02 <mnhebi> did you start coding when you were 12 or something?
07:57:19 <LordAro> more like 15 or so, but yeah
07:58:20 <peter1138[d]> Is that weird? Seems late to me.
07:59:03 <mnhebi> No, its just weird I thought a 15 year old was a 35 year old cranky senior dev
08:00:18 <LordAro> mnhebi: don't look at some of my earlier forum posts
08:01:59 <mnhebi> I'm only just picking up C++ today after coding for like 20 years X_X
08:02:27 <mnhebi> ..and only cause nobody has made a nice inline hook library for C
08:07:37 <LordAro> what does a nice inline hook library for C++ look like?
08:14:20 <peter1138[d]> My snack partition is empty π¦
08:15:49 <mnhebi> as opposed to the usual C++ shenanigans where you wonder if the coder made a deal with Cthulhu for their code.
08:28:05 <reldred> level 37 later this year
08:28:38 <reldred> but, being able to say I'm 37 with a 20yr career has been neat, it's opened a few doors
08:59:11 <mnhebi> reldred: yeah, I should totes apply to Rovio and say I got 20 years of pixel art, 3d modelling, and coding experience xD
08:59:52 <mnhebi> its not just the experience, but the skill too..
09:02:58 <reldred> mnhebi: I've brought up hobby stuff in job interviews multiple times to great success.
09:03:21 <reldred> that said in this instance I was talking about IRL real reals experience.
09:03:55 <peter1138[d]> Hobby stuff is real, and shows you have personal motivation beyond just being paid...
09:04:24 <peter1138[d]> Swings and roundabouts though, i.e. they will take advantage of you...
09:05:17 <peter1138[d]> The people who try to "learn coding" in 3 months with a course, so they can get a job... Well.
09:05:45 <peter1138[d]> They'll be doing the bullshit "Vibe Coding" thing.
09:05:57 <peter1138[d]> At some point we might run out of coders who know what they are doing.
09:06:06 <peter1138[d]> (Or rather, who know they don't know what they are doing)
09:06:46 <reldred> yeah, knowing what you don't know is almost becoming a superpower.
09:06:48 <peter1138[d]> I keep hearing that coding is a dead-end job now that "AI" can do it all.
09:08:30 <mnhebi> reldred: I mean, I got real reals coding etc experience, its just I haven't done it continiously through these 20 years so my skill level isn't quite what people expect
09:08:52 <mnhebi> except randomly understand wtf shit does just by looking at the asm ._.
09:09:59 <reldred> yeah I wasn't talking about coding at all, I've literally worked in the telecommunications/networking/IT wider industry since I was 16 or 17.
09:10:32 <mnhebi> damn, you were the chold labor
09:10:46 <reldred> for the first few years, yes
09:11:01 <reldred> school based traineeship, then into an apprenticeship (with a years credit).
09:11:37 <reldred> but i went into the apprenticeship already having my trade license from the traineeship so I was an 18yr old 'leading hand' on building sites taking legal responsibility for the work being done by adults
09:12:34 <reldred> but now the new big moneybags job I'm starting in july is drawing all the way back to that experience as well.
09:12:36 <mnhebi> yeah my bro kinda did that...started his own company 15..
09:12:50 <mnhebi> that he sold a few years ago and now works there as a employee.
09:17:36 <LordAro> that must be a bit weird
09:17:58 <reldred> happened at my last place, one of the owners sold the business but stayed on as their top sales rep
09:40:10 <andythenorth> peter1138[d]: PHP part of the industry suggests that's entirely survivable
09:40:19 <andythenorth> vibe coding is hardly new π
09:40:45 <andythenorth> we just used to call it 'send me the codez'
09:41:24 <peter1138[d]> Copy & paste from ExpertSexchange.
09:45:50 <xarick> why can't i do anything with vargv
09:47:48 <jfkuayue> peter1138[d]: I can't learn coding with a course?
09:53:09 <andythenorth> "you can't learn software engineering with a 3 month course"
09:55:32 <peter1138[d]> (Video course, at that.)
09:55:54 <peter1138[d]> Warning: opinions-detected.
09:59:59 <mnhebi> andythenorth: but you can learn to code with Stack Exchange!
10:07:30 <xarick> I can't understand these useless examples
10:07:44 <xarick> terrible documentatino
10:09:40 <andythenorth> is that the squirrel 2 docs?
10:09:50 <andythenorth> squirrel is known to be an unfortunate outcome
10:09:56 <andythenorth> unsurprising at this point π
10:14:01 <xarick> `Your script made an error: the index '_this' does not exist` I'm too dumb for this
10:38:21 <_glx_> xarick: `_this` is the arg name, you need to pass what will be ` this` for the called function
10:39:12 <peter1138[d]> Can anyone explain this sequence to me. I have 24 slots, filled with integers from 1 to 24. I quantise that to 3, so have 8 slots. The values are 6, 15, 24, 33, 42, 51, 60, and 69. Nice. This seems to be the 9 (3 * 3) times table - 3. I quantise that to 4 (or 12 of the original sequence), so i have 2 slots. The values are 78, 222. It's the 144 (12 * 12) times table - 66. I ... want to be able to
10:39:12 <peter1138[d]> explain this, but stuck.
10:39:20 <peter1138[d]> pickpacket: Bottom of the main viewport.
10:43:49 <_glx_> When you do `my_function(a, b)` squirrel actually does `my_function.call(<root table>, a, b)` and `my_object.my_function(a, b)` is `class(my_object).my_function(my_object, a, b)`
10:45:11 <_glx_> It's also in window title
10:45:35 <peter1138[d]> Some people play fullscreen. Weirdos π
10:45:41 <_glx_> But visibility might depend on OS
10:55:07 <andythenorth> peter1138[d]: was that a prompt to an LLM? π
10:55:59 <peter1138[d]> `CHECK(GetHistory(history, 2, j) == 78 + 12 * 12 * j);`
10:56:10 *** squirejames has joined #openttd
10:56:10 <squirejames> Seems realistic to be fair
10:56:22 <peter1138[d]> This is a bit too magical for my liking, so I want to be able to explain it.
10:57:56 <_jgr_> Your bin size and the delta of each item in the bin with respect to the previous bin are the same, so it makes sense that the bin total delta is that value squared
10:59:01 <peter1138[d]> 78 = (12*12+12)/2
11:00:14 <peter1138[d]> Factorial but addition. Apparently is a search people do, and it's a "triangle number"
11:10:26 <talltyler> _jgr_: Are you, by chance, planning up upstream your tile picker (eyedropper) tool in the future? I am thinking of taking a look today if not. π
11:11:32 <_jgr_> I didn't think that there would be any upstream interest in that, so hadn't made any plans along those lines
11:11:57 *** WormnestAndroid has quit IRC (Remote host closed the connection)
11:12:22 *** WormnestAndroid has joined #openttd
11:12:25 <talltyler> Consider me interested π
11:13:59 <talltyler> My other option for the day is yellow signals, but that's even harder to get into π
11:15:35 <_jgr_> I think that would be fairly uphill work, yes
11:16:22 <_jgr_> Feel free to take a look at and/or PR the picker tool, happy to help if needed
11:24:46 <andythenorth> if no-one else can help you
11:24:50 <andythenorth> you need to call
11:26:31 <peter1138[d]> talltyler: Signals, long reserve, etc...
11:26:55 <peter1138[d]> That's a mammoth task though. I have a branch which doesn't go very far.
11:29:28 <peter1138[d]> My granola packet fell over π¦
11:30:02 <xarick> can you find out why I am getting a string out of `valuator_function_return`
11:30:03 <andythenorth> realistic braking
11:30:12 <andythenorth> would destroy my current play style
11:30:14 <andythenorth> which might be fun
11:30:20 <xarick> I don't understand why it considers it a string
11:31:11 <_jgr_> Stuff like that does seem in opposition to the current push to simplify signal types, etc
11:31:14 <peter1138[d]> "valuator_function_return" in quotes?
11:31:56 <andythenorth> yellow signals though π
11:32:20 <andythenorth> I don't play games with JGRPP, but I do try features, I though realistic braking was very appealing
11:32:30 <reldred> I love realistic braking
11:32:50 <reldred> But, I'm not sure if the rest of the regular openttd player base is going to wrap their heads around it
11:34:02 <peter1138[d]> _jgr_: I don't think that my two PRs to hide non-path-signals, based on comments from regular Discord users trying to support newbie users who absolutely think they need to use non-path-signals, which have not gain any traction from any other developer, should be considered a "current push".
11:35:12 <peter1138[d]> (In fact, one of the comments on the first was that we shouldn't do it yet because we don't yet have actually advanced signals)
11:37:48 <andythenorth> routing rules π
11:38:04 <andythenorth> predicates first, signals later π
11:39:08 <talltyler> I have mixed feelings on signals, there's a conflict between "make OpenTTD a better game for beginners" and "make OpenTTD a better game for myself" π
11:40:14 <talltyler> I am all-in on routing restrictions, slot management, etc., when I play JGRPP, but also feel bad watching new players struggle with simple signaling
11:40:27 <peter1138[d]> I want default signals to be super simple and easy to use, other than having to learn about safe-waiting-points.
11:40:36 <reldred> Yeah, people drastically overuse signals
11:41:10 <talltyler> I have not touched your "anti-block signals" PRs for political reasons, not because I disagree with you, btw
11:41:27 <talltyler> It doesn't bother me enough to paint a target on my back (again) π
11:41:57 <reldred> I think a lot of it comes down to people learning about the game from youtubers, and a lot of the youtubers put out co-op style content
11:42:11 <reldred> or come from factorio style schools of thought
11:42:32 <andythenorth> or like to share the joy they personally feel in mastering esoteric knowledge
11:43:01 <reldred> Yeah I mean I don't think there's anything wrong with that but it's resulting in some new players just making an absolute goddamn mess of things for themselves
11:43:20 <andythenorth> learning journey π
11:43:21 <reldred> should start my own yt letsplay series
11:43:30 <reldred> and a lot LESS signals
11:43:43 <peter1138[d]> Would it be "First, remove 900 vehicles from Iron Horse" "Second, refactor the build system"
11:45:26 <talltyler> I started a letsplay series in 2020, only recorded one episode but it was a lot of fun
11:45:50 <talltyler> It was a response to Timberwolf's series, which was actually a series and was more fun than my response, but eh
11:49:54 <talltyler> Anyway, if you did a letsplay challenge I could be talked into recording a couple episodes, maybe trying my hand at the same starting savegame or something
11:52:38 <pickpacket> What would yellow signals do?
11:55:12 <pickpacket> I only recently switched from mainly using block signals to exclusively using path signals. For me the most confusing part has always been the semaphore signals. I don't know why I would ever use them
11:56:32 <andythenorth> and for the sake of being confused
11:56:56 <andythenorth> in terms of simplification though
11:57:31 <andythenorth> seems I can't hide them
11:59:48 <pickpacket> andythenorth: for realism I would in that case suggest that only semaphores were available until some year we can assume that electricity was common enough and then only electrical signals would be available, with the option of upgrading sempahores
12:00:05 <reldred> Should honestly just be date bound by default, only one type visible based on date.
12:00:25 <pickpacket> or maybe it would be semaphores on old rails and electric on electric rails
12:00:32 <andythenorth> Semaphores βneverβ
12:00:53 <andythenorth> Predict the pitchfork bingo card?
12:01:02 <LordAro> andythenorth: what about mutexes?
12:01:03 <andythenorth> βDumbing downβ
12:01:12 <andythenorth> βRuins the gameβ
12:01:46 <andythenorth> LordAro: Well played
12:07:46 * LordAro goes back to trying to construct a parser
12:08:02 <pickpacket> andythenorth: forgot about that setting
12:08:17 <pickpacket> andythenorth: but back to yellow signals. What would they do?
12:08:25 <andythenorth> it doesn't have a 'never' option though π
12:08:43 <andythenorth> yellow signals are in JGRPP already, you can try them
12:08:55 <andythenorth> you need 'realistic braking' and 'multi-aspect signals' grf
12:09:16 <andythenorth> it requires a rethink of how networks are built
12:10:31 <pickpacket> I don't really have time to try them :(
12:16:29 *** WormnestAndroid has quit IRC (Remote host closed the connection)
12:16:43 <xarick> oh no!!! I implemented safety measures
12:28:02 <talltyler> You know how fast trains catch up to slow trains and have to stop at a red signal, causing cascading traffic jam stops to following trains?
12:28:02 <talltyler> Yellow signals would slow trains down so fast trains donβt catch up to slower trains, effectively absorbing the shockwaves. The effect would increase traffic capacity on lines with trains of multiple speeds, like a mixed passenger/freight line.
12:28:19 <talltyler> They also look cool π
12:31:22 <squirejames> pickpacket: Varies wildly depending on location, and there are still semaphores in operation today on some routes in Britain (despite the first colour lights being introduced in the 1930s I believe)
12:32:02 <andythenorth> signal subtypes eh
12:32:17 <squirejames> talltyler: I am assuming, perhaps wrongly, that the varied aspect signals work even when they're semaphores? I ask as I am using Timberwolfs tracks and I am not entirely sure if they are compatible with multi aspect signals
12:33:58 <talltyler> I donβt know. I always use a signal GRF which provides more styles and signal aspects.
12:34:32 <squirejames> (the colour lights seem to work as multi aspect so thats good. Seeing yellow and double yellows. It's 1925 so I can get away with some lights on my electric routes at least π )
12:35:44 *** fairyflossy has quit IRC (Quit: User went offline on Discord a while ago)
12:36:32 <_jgr_> The signal graphics are cosmetic, the driving model doesn't require them, so you'd get the same driving behaviour with semaphores
12:37:49 <andythenorth> home and distant semaphores
12:38:23 <talltyler> I still want to simulate absolute block operation with semaphores, with separate distant and home signals. I havenβt found a signal GRF that provides semaphore distants although I know theyβre possible.
12:39:08 <talltyler> Oh you posted first π
12:40:52 <squirejames> Ah I am using the multi aspect signals GRF anyway π deeerp on my part
12:41:19 <squirejames> _jgr_: This was my thinking but, I couldn't be sure
12:46:37 <talltyler> I forgot how non-fun it is to upstream things. It's just merge conflicts and trying to figure out where vanilla and patchpack have diverged. π¦
12:46:57 <talltyler> Maybe I will leave this for someone more inspired than me, and write original code today. π
12:49:51 <_jgr_> If you're looking at the window stuff, the divergence should be reduced at some point this year when I get to the new string stuff
12:53:59 <talltyler> I was starting with your first commit and going one at a time
12:57:23 <_jgr_> That's probably not the best strategy, the first commit is about two years old now
12:57:28 <peter1138[d]> Personally I find it easier to just rewrite things with JGRPP as as a reference.
12:58:03 <peter1138[d]> That also means you gain understanding how it works.
12:58:40 <peter1138[d]> That kinda precludes cherry-picking 5 year old commits, so just looking at current and figuring out which bits are relevant is part of the challenge.
13:01:08 <peter1138[d]> Also allows splitting it in a more logical way for adding a new feature.
13:02:27 <peter1138[d]> JGRPP commit messages usually aren't useful for vanilla anyway.
14:28:20 *** WormnestAndroid has joined #openttd
14:40:39 <_zephyris> Move semaphore signals to advanced/extended signal selection?
14:50:22 *** Wormnest has joined #openttd
14:52:17 <peter1138[d]> Does the choice of semaphore / light signals cause problems?
14:52:31 <peter1138[d]> I suppose there's the "what's the difference" question. None.
15:01:54 <xarick> a list was missing! GSVehicleList_Waypoint.Valuate <-
15:02:02 <xarick> it's relatively recent
15:19:52 <xarick> are deity signs always uneditable?
16:05:13 <jfkuayue> I ate the first TimTam in my life
16:18:58 *** gelignite has joined #openttd
16:26:06 <peter1138[d]> I would assume that is far too sweet for you.
16:48:18 <squirejames> _zephyris: Semaphores vs Lights is as complex (or not complex) as "choose different aesthetic station tiles"
16:51:17 <_zephyris> In an important way no: Different signal types have different functions, which is reflected in the graphics. Except for the confusing case of visually distinct but identical function semaphores.
16:52:02 <_zephyris> That's different to station tiles which all work the same way. If it's a station tile then it works as a station title. And, aesthetic variants are only available by newgrf.
17:03:35 *** Flygon has quit IRC (Read error: Connection reset by peer)
17:13:41 *** chickenwings has joined #openttd
17:17:58 *** chickenwings has quit IRC ()
18:01:41 <xarick> why is Clang always faster
18:40:19 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
18:55:56 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
18:58:31 *** WormnestAndroid has joined #openttd
19:02:29 <xarick> Optional parameter got in the way π
19:05:33 <xarick> ScriptVehicleList_Waypoint doesn't take vehicle type but outgoing ScriptVehicleList_Station tests for vehicle type, even for waypoints π¦
19:05:55 <xarick> how ugly will the compat 14 be?
19:23:06 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
19:24:30 *** WormnestAndroid has joined #openttd
19:26:10 <andythenorth> deeleted 1900 trains from Horse
19:26:41 <andythenorth> only saves about 4 seconds of compile
19:27:28 <pickpacket> andythenorth: is the compile linear with regards to the number of trains?
19:27:31 <xarick> my ai might be able to decide now
19:27:38 <andythenorth> pickpacket: hard to tell
19:27:54 <pickpacket> andythenorth: how long is it?
19:28:02 <andythenorth> about 21 seconds currently
19:28:22 <andythenorth> I haven't tested explicitly for relationship between number of trains and compile time
19:28:31 <pickpacket> If we assume linear and 1900 trains saved 4 seconds...
19:28:37 <andythenorth> it could be made more complex by e.g. nmlc resolving varact 2 IDs
19:28:49 <andythenorth> there might be non-linearity in some of that
19:29:29 <pickpacket> If you remove another 9975 trains it should be zero
19:31:00 <andythenorth> there are 8672 currently
19:34:31 <_glx_> the way squirrel handles class inheritance is annoying
19:34:52 <_glx_> it copies everything from base class
19:35:13 <andythenorth> `~~the way~~ squirrel ~~handles class inheritance~~ is annoying`
19:35:36 <andythenorth> 'everything is just a table entry'
19:36:08 <andythenorth> there's no mro or anything afaict
19:41:37 <andythenorth> I do like the squirrel though, it's a language where it never feels like you're doing it the wrong way π
20:11:42 <xarick> but no one uses waypoints
20:13:25 <xarick> the waypoint part is 90% sure wrong
20:22:24 <xarick> it is a Valuate with a function that temporarily creates an AIVehicleList_Station.
20:22:56 <xarick> but can't run through the Compat14 version, because constructors not allowed
20:24:04 <_glx_> constructors are allowed, commands are not
20:24:57 <xarick> it's a bit of a rabbit hole
20:27:14 <xarick> oh, Helper is also on a library
20:27:23 <xarick> it's never easy to debug
20:30:31 <xarick> function _SuperLib_Helper::GetPAXCargo()
20:34:43 <xarick> heh, both parameter 1 and parameter 2 on that Valuate use Valuate
20:34:56 <xarick> so, list.Valuate(Valuate, Valuate)
20:38:44 <xarick> why does the error log feel incomplete
20:39:28 <xarick> this is a very deep nested Valuate
20:39:44 <xarick> but it only logs the error for the Valuate at the top
20:42:57 <_glx_> the PR explain how to get the extra error dumps
20:43:53 <xarick> 9af3a2b7de49.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NDkwNzAwNTQsIm5iZiI6MTc0OTA2OTc1NCwicGF0aCI6Ii8yOTUyMTkyLzQ0NzM3NDkzMS1jM2JjZmQxMC0xNDU5LTQxODctOTQ3ZS05YWYzYTJiN2RlNDkucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDYwNCUyRnVzLW
20:43:53 <xarick> Vhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTA2MDRUMjA0MjM0WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZWQ4NmUyZTI5ODAwZjc2MjAyZjM5N2ZmZTllZDJhODBmYmQ3NTFkZmNlMGIzZGQyZTBiMDBkZDhmODIzYjg5NiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.xGWB53QYLPqCklS52kZ-A843hVe-ZaXPT7utzdw7n-Y
20:48:27 <peter1138[d]> Funny, because the only item in the list is in the PR π
20:52:03 <xarick> reverting 14303, just so I can get the error
20:54:57 <xarick> uh.... well... that didn't work either
20:55:35 <xarick> is AIController.Break a DoCommand?
21:04:12 <_glx_> self-inflicted issue π
21:06:02 <xarick> what if i don't print messages
21:07:00 <xarick> but now I have no idea what's doing π
21:08:57 <_glx_> you can print messages, just be careful with breakpoint
21:09:50 <_glx_> and yes your printing eats opcodes
21:10:02 <xarick> cpu valuator was a bad idea
21:10:28 <_glx_> it's there to prevent abuses
21:11:10 <xarick> problem is these compats run through valuates, eating extra ops
21:22:59 <xarick> it's neither a station or waypoint, what should it do
21:25:23 <xarick> local stationsNotUsed = AIVehicleList_Station(firstStationId).Count() == 0 &&
21:26:15 <xarick> oh, it has to return a list
21:26:44 <xarick> but this is a constructor, how would I do that
21:27:30 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:28:40 <_glx_> list is empty by default
21:38:44 <xarick> duplicated code though
21:50:24 <xarick> case 1 is not triggering
21:54:50 <_glx_> how is the else case even possible ?
21:57:18 <xarick> local firstStationId = AIStation.GetStationID(townInfo.firstStation);
21:57:18 <xarick> local secondStationId = AIStation.GetStationID(townInfo.secondStation);
21:57:18 <xarick> CoronaAI trying to get stuff already demolished
22:01:08 *** tokai|noir has joined #openttd
22:01:08 *** ChanServ sets mode: +v tokai|noir
22:02:49 <xarick> dang, I need to create cases
22:03:03 <xarick> there's no AIs using waypoints and on version 14
22:03:52 <xarick> I'd argue making the compat function not necessary, ...
22:04:49 <xarick> I looked into ChooChoo
22:05:22 <xarick> this seems too much work to get it right
22:06:30 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:07:13 <_glx_> you don't need to care about optional arg for compat14
22:07:44 <_glx_> it exists only for API 15
22:08:01 *** tokai has quit IRC (Ping timeout: 480 seconds)
22:09:55 <_glx_> like I didn't add Valuate compat for ScriptVehicleList_Waypoint in my cpu "friendly" stuff
22:10:57 <xarick> btw, something I found
22:11:29 <_glx_> AIs are not supposed to use things not existing in the API version they are using
22:12:36 <_glx_> yeah stupid VS and auto format on paste
22:14:39 <xarick> maybe it can be more simpler yet
22:15:15 <_glx_> if waypoint call waypoint else call original
22:15:58 <xarick> i haven't tested it, need to create a test script
22:16:58 <_glx_> and test behaviour in plain 14, then check in compat14 mode
22:16:58 <xarick> seems it's going to construct for AIVehicleList_Waypoint
22:17:16 *** goddess_ishtar has joined #openttd
22:17:16 <goddess_ishtar> oh wow, I didn't realise that all features can take badges
22:17:17 <xarick> how would it inherit ?
22:17:42 <_glx_> doesn't matter, they are all AIList in disguise
22:21:01 <_glx_> other option is to create a temporary AIVehicleList_Waypoint() and add it to 'this'
22:22:19 <_glx_> and call the original constructor first
22:23:30 <_glx_> ```this.constructorCompat14(station_id);
22:23:30 <_glx_> this.AddList(AIVehicleList_Waypoint(station_id);
22:43:04 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
22:43:53 *** WormnestAndroid has joined #openttd
23:13:41 <xarick> are you sure it shouldn't care about the extra parameter
23:16:35 <xarick> testing regression with API set to 14
23:17:42 <xarick> AIVehicleList_Station(3, AIVehicle.VT_ROAD); but it's listing a train
23:18:11 <xarick> doesn't feel right to me
23:21:47 <xarick> I'll take a better look tomorrow
23:31:35 <_glx_> regression is meant for API 15
23:37:12 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
23:39:14 *** WormnestAndroid has joined #openttd
continue to next day β΅