IRC logs for #openttd on OFTC at 2025-04-08
            
00:01:14 *** WormnestAndroid has quit IRC (Remote host closed the connection)
00:01:18 *** WormnestAndroid has joined #openttd
00:55:46 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
00:57:09 *** WormnestAndroid has joined #openttd
01:44:32 *** Wormnest has quit IRC (Quit: Leaving)
02:41:46 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
02:41:48 *** WormnestAndroid has joined #openttd
02:42:22 *** gnu_jj has joined #openttd
02:45:07 *** geizeskrank has quit IRC (Ping timeout: 480 seconds)
02:45:57 *** gnu_jj_ has quit IRC (Ping timeout: 480 seconds)
02:48:41 *** geizeskrank has joined #openttd
03:50:36 *** D-HUND has joined #openttd
03:53:58 *** debdog has quit IRC (Ping timeout: 480 seconds)
04:09:03 *** keikoz has joined #openttd
05:09:08 *** keikoz has quit IRC (Ping timeout: 480 seconds)
05:53:20 *** toktik is now known as Guest13138
05:53:24 *** toktik has joined #openttd
05:56:12 *** Guest13138 has quit IRC (Remote host closed the connection)
07:11:34 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #13979: Change: Block signals are legacy rather than advanced. https://github.com/OpenTTD/OpenTTD/pull/13979
07:20:10 <reldred> pitchforks
07:24:51 <andythenorth> and torches
07:24:59 <LordAro> goodness
07:25:37 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #13974: Codechange: Use EnumBitSet for StringValidationSettings. https://github.com/OpenTTD/OpenTTD/pull/13974
07:26:00 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #13979: Change: Block signals are legacy rather than advanced. https://github.com/OpenTTD/OpenTTD/pull/13979#issuecomment-2785493952
07:26:09 <peter1138> My other patch just removes that button... :p
07:33:08 <FLHerne> how about adding the programmable signals as found in jgrpp
07:33:29 <FLHerne> then there really will be no reason to use block signals and you can call them 'legacy' ;-)
07:34:46 <FLHerne> at the moment I'm with LordAro, there are useful things you can only do with block signals in trunk, not only mad openttdcoop setups but a simple priority merge
07:35:33 <FLHerne> they're an unintuitive and awkward way to achieve that but currently the only one
07:36:30 <andythenorth> what is a prio merge?
07:36:36 <andythenorth> I never figured any of this stuff out
07:36:57 <andythenorth> I liked the multi-aspect signals in JGRPP though πŸ˜›
07:37:02 <LordAro> https://wiki.openttd.org/en/Community/Junctionary/Priority%20Merge ;)
07:37:16 *** locosage has joined #openttd
07:37:16 <locosage> useful things include just signalling a straight track with no junctions whatsoever
07:37:21 <locosage> block signals just work better for that
07:37:34 <LordAro> didn't that get fixed?
07:37:39 <andythenorth> no
07:37:50 <andythenorth> we made them green not red, but block is faster than PBS
07:37:52 <andythenorth> I tested it
07:37:55 <LordAro> ah yes
07:37:55 <andythenorth> got a video somewhere
07:38:11 <andythenorth> plain line block **is ** faster than PBS under certain conditions
07:39:35 <peter1138> I missed the bit where my PR makes any functional changes.
07:39:37 <locosage> also, pbs bug that clogs stations still haven't been fixed afaik
07:39:56 <peter1138> But ok.
07:40:02 *** tokai has quit IRC (Quit: c('~' )o)
07:40:37 <LordAro> locosage: has it been reported?
07:40:44 <locosage> yes
07:40:48 <locosage> 7000-smth...
07:41:58 <locosage> https://github.com/OpenTTD/OpenTTD/issues/7941
07:48:11 <peter1138> Potentially leave the platform and path reserved until the signal is cleared, but probably that's too naive and breakable.
07:54:49 <peter1138> Path reservations reserve up to the signal. Maybe they need to include the signal...
07:55:04 <peter1138> But then...
08:54:52 <peter1138> FLHerne, last time I asked if anyone fancied doing so there were no takers.
08:55:05 <peter1138> (Programmable signals)
09:25:58 <DorpsGek> [OpenTTD/OpenTTD] planetmaker commented on pull request #13979: Change: Block signals are legacy rather than advanced. https://github.com/OpenTTD/OpenTTD/pull/13979#issuecomment-2785807331
09:34:46 <andythenorth> 'confusing signals'
10:17:03 <xarick> "Signals devs don't want you to use"
10:18:22 *** emperorjake has joined #openttd
10:18:22 <emperorjake> Can we also get rid of that button again while we're at it
10:19:34 <xarick> let's try clone a class
10:26:37 *** peter1138[d] has quit IRC (Quit: User went offline on Discord a while ago)
10:33:39 <pickpacket> xarick: SIG_INTERRUPT and SIG_KILL? ;)
10:34:34 <pickpacket> I think I've asked before, but is there a difference in infrastructure cost between the different signals?
10:44:20 *** Smedles has quit IRC (Read error: Connection reset by peer)
10:45:06 *** Smedles has joined #openttd
10:47:45 * peter1138 trying to optimise a database query: goes from 6 seconds to 10 seconds. Damn it.
10:54:43 <pickpacket> lol
11:44:28 <DorpsGek> [OpenTTD/OpenTTD] zephyris commented on pull request #13979: Change: Block signals are legacy rather than advanced. https://github.com/OpenTTD/OpenTTD/pull/13979#issuecomment-2786164740
11:53:01 *** tokai has joined #openttd
11:53:01 *** ChanServ sets mode: +v tokai
11:55:54 <frosch123> pickpacket: Two way signals count as 2 signals. Otherwise they are all the same
11:56:42 <pickpacket> frosch123: πŸ‘ ty
12:05:24 <peter1138> This query is much quicker without the filter applied :(
12:06:12 <peter1138> Timing: Generation 26.976 ms, Inlining 0.000 ms, Optimization 16.201 ms, Emission 331.811 ms, Total 374.988 ms
12:06:15 <peter1138> vs
12:06:23 <peter1138> Timing: Generation 26.666 ms, Inlining 32.967 ms, Optimization 3695.869 ms, Emission 3390.808 ms, Total 7146.309 ms
12:06:26 <peter1138> :o
12:06:36 <pickpacket> peter1138: I guess applying the filter in the query would be about as efficient as making the query and then filtering the result in the calling code
12:08:15 <pickpacket> orudge: nice that we could get rid of ads on the forum!
12:09:30 <peter1138> It feels like it should be possible to just do the query as is, and then filter that. But alas not :(
12:12:40 <pickpacket> not possible? :(
12:32:42 <peter1138> Not that I can see.
12:54:13 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
12:54:16 *** WormnestAndroid has joined #openttd
12:54:19 <talltyler> peter1138: I missed your last request but I quite like programmable signals and would love to see them in vanilla. πŸ™‚
12:54:19 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
12:54:20 *** WormnestAndroid has joined #openttd
12:54:23 *** WormnestAndroid has quit IRC (Remote host closed the connection)
12:54:24 *** WormnestAndroid has joined #openttd
12:55:09 <talltyler> They can be quite a footgun, although not too unlike signals in general
13:27:53 <DorpsGek> [OpenTTD/OpenTTD] DrewJenn commented on issue #12980: [Bug]: Vehicles incorrectly enable timetables due bad heuristic in UpdateVehicleTimetable() https://github.com/OpenTTD/OpenTTD/issues/12980
13:33:22 <DorpsGek> [OpenTTD/OpenTTD] DrewJenn updated pull request #13978: Fix #12980: [Timetable] Ctrl+Clear Time does not reset timetable state https://github.com/OpenTTD/OpenTTD/pull/13978
13:35:39 <DorpsGek> [OpenTTD/OpenTTD] DrewJenn updated pull request #13978: Fix #12980: [Timetable] Ctrl+Clear Time does not reset timetable state https://github.com/OpenTTD/OpenTTD/pull/13978
13:46:20 *** Flygon has quit IRC (Read error: Connection reset by peer)
14:12:03 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359168923416924210/image.png?ex=67f68033&is=67f52eb3&hm=170dcb85a660aca91dcbd3fbea0ee0566b83aa775e8b908d2f61368b5cf3b5f8&
14:12:03 <xarick> how to make this logic more efficient
14:13:45 <xarick> for every station outside spread_rectangle, remove it from the station_list
14:16:49 <zanooda2000> planetmakerviaGitHub: Well big thanks that old players still can use it.
14:16:49 <zanooda2000> But this is really strange change.
14:16:49 <zanooda2000> Can you really do "advanced" train management with path signals only? Like the same, basic but still "advanced" priority merge?
14:31:34 <zanooda2000> Can you please unban me on Rau117 on GitHub so I'll white here way less
14:32:48 <zanooda2000> So for now I can suggest raneming Path signals to just "Signals" and keeping block signal as is.
14:34:35 *** nielsm has joined #openttd
14:34:50 <zanooda2000> So path signals will be way easier to recognize – "Signal" vs "One Way PBS" / "Path Signal"
14:38:46 *** belajalilija has joined #openttd
14:38:46 <belajalilija> Renaming path signals to just signals might actually be a good idea
14:39:06 <belajalilija> But having block and pre signals be called legacy is good too
14:43:22 <zanooda2000> The point is, PBS still not That advanced as blocks. You just cannot make, for example, long priority merge with it.
14:43:22 <zanooda2000> _this is not about "do you really need priority" (yes, I need)_
14:47:10 <zanooda2000> Blocks... are both at the same time. Legacy and, well, I admit, pretty outdated for their *intended* usage, but just nessecary f you wanna push the train limits - for advanced gameplay.
14:50:06 <peter1138> Hmm, removing the recursive view from the query dramatically improves it.
14:51:42 <peter1138> I wonder if I should look at materialised views.
14:55:47 <_glx_> xarick: try using foreach instead of Begin, IsEnd, Next
14:57:48 <DorpsGek> [OpenTTD/OpenTTD] Rau771 commented on pull request #13979: Change: Block signals are legacy rather than advanced. https://github.com/OpenTTD/OpenTTD/pull/13979#issuecomment-2786738853
15:07:53 <xarick> is foreach safe to use with RemoveItem?
15:08:38 <peter1138> Oh, right, you can't create-or-replace a materialized view :/
15:21:34 <peter1138> Well anyway, not having this recursive view in the query makes it take ~70ms instead of 6-10seconds.
15:22:10 <andythenorth> πŸ‘€
15:22:11 <peter1138> Some combination of query optimising and filtering gets it into a state, I guess.
15:22:30 <xarick> before: 1 ticks, 482 ops, after: 1 ticks, 491 ops
15:22:34 <xarick> ooops 😦
15:22:53 <andythenorth> performance eh
15:22:57 <andythenorth> all chat
15:23:17 <peter1138> 10 seconds is crazy time for a user to wait.
15:24:07 <peter1138> Materialised views may be in the future, but in this case I don't 100% need it.
15:24:31 <peter1138> However, basically this is all I've done today :S
15:24:40 <peter1138> (That and go back to bed due to being ill)
15:26:33 <DorpsGek> [OpenTTD/OpenTTD] Rau771 commented on pull request #13979: Change: Block signals are legacy rather than advanced. https://github.com/OpenTTD/OpenTTD/pull/13979#issuecomment-2786831049
15:46:57 <zanooda2000> talltyler: Hmm... I really-really hope that even with programmable signals, old-school blocks will remain in game.
15:46:57 <zanooda2000> With power of bunch of super-smart signals and tons of pretty-dumb signals, that "advanced" (unrealistic) gameplay will be grown to the next level!
15:50:04 <belajalilija> I don’t think there’s any chance of block/pre signals being removed
15:51:01 <andythenorth> zero chance of current developers approving and shipping removal
15:51:07 *** keikoz has joined #openttd
15:51:09 <belajalilija> ^^
15:52:15 <andythenorth> it's so useful that buy menu text searches badges
15:52:21 <andythenorth> and I unbroke search with Horse
15:54:05 <belajalilija> Are badgers released?
15:54:26 <belajalilija> Or are you on some pre release build?
15:58:20 <andythenorth> I built my own
15:58:34 <andythenorth> not sure if it's in sync with badgers in git
15:58:45 <talltyler> Badges are in nightly
15:58:54 <locosage> PBS - Permanently Bugged Signals 🀭
16:00:01 <peter1138> Badges were merged about 2 months ago.
16:00:08 *** brickblock19280 has joined #openttd
16:00:08 <brickblock19280> Path *Based* signals
16:00:27 <peter1138> Default badges not yet, but that doesn't prevent the feature being tested and ironed out.
16:00:53 <_glx_> they perfectly balance if all tracks between signal and platforms have the same penalty
16:01:50 <peter1138> (The badges inside the default badges PR can be downloaded from bananas)
16:13:18 <belajalilija> https://tenor.com/view/badger-gif-25490247
16:16:26 <xarick> before: 1 ticks, 482 ops / after: 0 ticks, 3859 ticks
16:16:36 <xarick> finally some progress
16:18:00 <xarick> this OrthogonalTileArea is finally paying off
16:20:09 *** Wormnest has joined #openttd
16:22:08 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359201658671861780/image.png?ex=67f69eb0&is=67f54d30&hm=f8fdd0f1c158b6098ab9b392a1eecee4d8c14eaf39cd4d03af725c5d5891b5aa&
16:23:40 <xarick> a bit on the high side for finding none
16:23:55 <xarick> but still better
16:24:19 <xarick> let's try a station spread of 64
16:25:04 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359202397448306871/image.png?ex=67f69f60&is=67f54de0&hm=469cf1f3b8717ef839226843a50daa1040ca812a890fd03ef678bd8d553db85f&
16:25:04 <xarick> ughh
16:29:25 *** izhirahider has quit IRC (Read error: Connection reset by peer)
16:29:38 *** rightnut has quit IRC (Read error: No route to host)
16:30:19 *** rightnut has joined #openttd
16:30:55 *** izhirahider has joined #openttd
16:32:38 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359204302765293679/image.png?ex=67f6a126&is=67f54fa6&hm=6c449a402be90ed577a13f72e3955e538fa6714bf3099173f7894581e9844224&
16:33:18 <xarick> so it can only be... AITileList
16:33:21 <xarick> slowing stuff
16:33:28 <xarick> let's try foreach
16:40:58 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359206397002252349/image.png?ex=67f6a319&is=67f55199&hm=497a84269154ed846470184af5f99fa2a12dc8a68517a30f3b6f8d9310801480&
16:40:58 <xarick> hmmm
16:42:17 <xarick> found the culprit πŸ™‚
17:01:16 <xarick> wow, foreach is fast, but does it work with RemoveItem?
17:01:28 <xarick> help me mr senpai glx
17:19:01 <xarick> how can I use `ScriptList::_set` ?
17:19:04 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
17:31:42 <_glx_> foreach uses Begin, IsEnd and Next internally
17:31:53 <_glx_> so RemoveItem should work
17:32:19 <_glx_> foreach usest _nexti metamethod
17:35:40 <_glx_> _set is for list[item]
17:41:34 <xarick> oh, interesting
17:43:02 <xarick> i need to sort list by item
17:43:26 <xarick> SetValue is doing... stuff probably
17:43:27 <_glx_> oh and list[item] = null to remove it
17:44:10 <_glx_> sorting is not affected
17:44:33 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #13974: Codechange: Use EnumBitSet for StringValidationSettings. https://github.com/OpenTTD/OpenTTD/pull/13974#pullrequestreview-2750902172
17:45:05 <DorpsGek> [OpenTTD/OpenTTD] Rau771 opened issue #13980: [Bug]: Missing diagonal selection with CTRL on road conversion tool https://github.com/OpenTTD/OpenTTD/issues/13980
17:47:59 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
17:51:03 *** WormnestAndroid has joined #openttd
17:53:29 <xarick> all these new methods are just faster
17:54:16 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #13964: Codechange: Use fmt::format instead of stringstream with iomanip flags. https://github.com/OpenTTD/OpenTTD/pull/13964#pullrequestreview-2750927808
17:54:18 <yiffgirl> LC-ZorgviaGitHub: i do wonder how many people actually care about vehicle exclusivity.
17:54:18 <yiffgirl> if you're in single player, you definitely don't care because there's nobody else for new vehicles to be excluded from
17:56:15 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #13958: Codechange: Manage window viewport with std::unique_ptr. https://github.com/OpenTTD/OpenTTD/pull/13958#pullrequestreview-2750932691
17:58:03 <yiffgirl> i think a client setting to automatically say no would go a fair way. it shouldn't automatically say yes because that implies the extra work to not get blacklisted for however many years
18:02:16 <yiffgirl> perhaps a new window would be a good idea, to show all the offers at once. a little bit like the financials window in how it pops up at the beginning of the year
18:02:16 <yiffgirl> and then you can toggle the automatic denial there
18:04:13 *** SigHunter has quit IRC ()
18:05:04 *** Wolf01 has joined #openttd
18:06:53 *** SigHunter has joined #openttd
18:17:16 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #13965: Replace Utf8Encode and other C-style string construction with bounds checking StringBuilder class https://github.com/OpenTTD/OpenTTD/pull/13965#pullrequestreview-2750997644
18:27:58 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
18:29:12 <xarick> isn't vehicle exclusivity giving a bonus to station rating if the vehicle visits the station?
18:30:28 *** WormnestAndroid has joined #openttd
18:33:09 *** Wormnest has joined #openttd
18:40:34 <DorpsGek> [OpenTTD/OpenGFX2] zephyris opened pull request #169: Sharper gridlines https://github.com/OpenTTD/OpenGFX2/pull/169
18:41:35 <DorpsGek> [OpenTTD/OpenGFX2] zephyris commented on pull request #169: Sharper gridlines https://github.com/OpenTTD/OpenGFX2/pull/169#issuecomment-2787362635
18:42:48 *** tokai|noir has joined #openttd
18:42:48 *** ChanServ sets mode: +v tokai|noir
18:49:55 *** tokai has quit IRC (Ping timeout: 480 seconds)
18:54:01 *** Wormnest has quit IRC (Quit: Leaving)
19:02:54 *** kuka_lie has joined #openttd
19:22:33 <xarick> i want an option to... actually, nevermind
19:22:34 *** gelignite has joined #openttd
19:25:42 <xarick> how to add an item to a list using that funny method?
19:26:00 <xarick> list[item_that_doesn't_exist] = value ?
19:28:35 <xarick> ```station_list.AddItem(tile_list.GetValue(tile), airport_rectangle.DistanceManhattan(tile));
19:28:35 <xarick> station_list[tile_list[tile]] = airport_rectangle.DistanceManhattan(tile);```
19:28:35 <xarick> are these equivalent actions?
19:30:44 <peter1138> Maybe. Often "tile_list[tile
19:30:59 <peter1138> Often "tile_list[tile]" will create the element if it doesn't exist, and give it a value of zero.
19:31:05 <peter1138> (Well, the default value)
19:31:09 <peter1138> Not sure if that's the case here.
19:33:34 <_glx_> looks equivalent to me
19:34:21 <_glx_> default value is 0 if item doesn't exist
19:34:50 <_glx_> ah no _get will error out
19:35:38 <_glx_> GetValue() returns 0 if not found
19:35:56 <_glx_> [] errors (ie crash the script)
19:35:58 <xarick> tile exists in tile_list
19:36:04 <xarick> that's made sure
19:36:40 <_glx_> [] seems saner
19:47:01 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359253221440491761/image.png?ex=67f6ceb5&is=67f57d35&hm=fb714764dff3bc80c2b28936a866e023f88395a6b0ce3326417e09172e80e4fe&
19:47:01 <xarick> fantastic gains!
19:47:43 <xarick> wait, need to print adjacentStation
19:48:19 <xarick> 1921 ops
19:51:43 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359254400794759329/image.png?ex=67f6cfce&is=67f57e4e&hm=eeab09ccbb070122ade0c1fb1db11c19458a0c3d5d069093d9da8f199e14e5cf&
19:51:43 <xarick> with 250k ops
19:57:14 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
19:59:40 *** WormnestAndroid has joined #openttd
20:15:49 <DorpsGek> [OpenTTD/OpenTTD] frosch123 updated pull request #13964: Codechange: Use fmt::format instead of stringstream with iomanip flags. https://github.com/OpenTTD/OpenTTD/pull/13964
20:16:23 <DorpsGek> [OpenTTD/OpenTTD] frosch123 commented on pull request #13964: Codechange: Use fmt::format instead of stringstream with iomanip flags. https://github.com/OpenTTD/OpenTTD/pull/13964#pullrequestreview-2751280454
20:19:09 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #13964: Codechange: Use fmt::format instead of stringstream with iomanip flags. https://github.com/OpenTTD/OpenTTD/pull/13964#pullrequestreview-2751286015
20:19:21 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #13974: Codechange: Use EnumBitSet for StringValidationSettings. https://github.com/OpenTTD/OpenTTD/pull/13974
20:21:53 <andythenorth> naptime?
20:22:57 <xarick> `TownAirportRadRect` is the last one needing OrthogonalTileArea treatment
20:23:02 *** kuka_lie has quit IRC (Quit: Lost terminal)
20:23:55 <xarick> oh, it is not
20:24:11 <xarick> `EstimateTownRectangle` is the more complicated one
20:24:35 <DorpsGek> [OpenTTD/OpenTTD] frosch123 updated pull request #13965: Replace Utf8Encode and other C-style string construction with bounds checking StringBuilder class https://github.com/OpenTTD/OpenTTD/pull/13965
20:24:46 <DorpsGek> [OpenTTD/OpenTTD] frosch123 commented on pull request #13965: Replace Utf8Encode and other C-style string construction with bounds checking StringBuilder class https://github.com/OpenTTD/OpenTTD/pull/13965#pullrequestreview-2751300286
20:30:07 <DorpsGek> [OpenTTD/OpenTTD] frosch123 updated pull request #13965: Replace Utf8Encode and other C-style string construction with bounds checking StringBuilder class https://github.com/OpenTTD/OpenTTD/pull/13965
20:35:30 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #13965: Replace Utf8Encode and other C-style string construction with bounds checking StringBuilder class https://github.com/OpenTTD/OpenTTD/pull/13965#pullrequestreview-2751324091
20:39:50 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359266512023847228/image.png?ex=67f6db16&is=67f58996&hm=152473f7c2bd4dea1d72d55b6be8629fa9765be7a8f0f74df6b7916d1958dca3&
20:39:50 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359266512317317331/image.png?ex=67f6db16&is=67f58996&hm=f89844530ee7c237a974f8c853f7d3a065d2517883a529816a92129cb180fae7&
20:39:50 <xarick> before vs after
20:48:32 *** gelignite has quit IRC (Quit: Stay safe!)
20:55:19 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
20:55:20 *** WormnestAndroid has joined #openttd
20:57:53 <DorpsGek> [OpenTTD/OpenTTD] frosch123 merged pull request #13964: Codechange: Use fmt::format instead of stringstream with iomanip flags. https://github.com/OpenTTD/OpenTTD/pull/13964
21:11:03 <DorpsGek> [OpenTTD/OpenTTD] frosch123 merged pull request #13965: Replace Utf8Encode and other C-style string construction with bounds checking StringBuilder class https://github.com/OpenTTD/OpenTTD/pull/13965
21:16:40 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359275779531346291/image.png?ex=67f6e3b7&is=67f59237&hm=5933edbe247d8d2e6c6073b0e13d94e9b8f623cfaf60d8a3f6b2803b4ff7e992&
21:16:40 <xarick> trying to make sense of this code
21:17:40 <xarick> estimate town rectangle is that inner square. the estimation is okayish
21:18:11 <xarick> the outer rectangle is somewhat confusing to explain
21:19:25 <xarick> each tile of the outer square is the top tile position of an airport of size 4x3 so that at least one of the tiles of its coverage area is inside the inner rectangle
21:21:40 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359277037495259156/image.png?ex=67f6e4e3&is=67f59363&hm=faa7f701007db0673eec3db6d6d3d2b36a24a53bd5ac74bf4eee53c8993f76e1&
21:21:40 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359277038191509587/image.png?ex=67f6e4e4&is=67f59364&hm=ba430be810c7e799ea3314e929d17cf94e7a85944d93b3a95e2fbdd2edb84322&
21:21:40 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359277038480920738/image.png?ex=67f6e4e4&is=67f59364&hm=8de1142a496cb4fe858954a755cd41d2b07a99a899db2ecaf6f5cee5e4da5646&
21:21:40 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359277038745157673/image.png?ex=67f6e4e4&is=67f59364&hm=e354515cbeda11f55f7b3e7d70da8e06275b4d9f899cf46c849be4e4591500c9&
21:22:12 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:22:14 <xarick> perfect!
21:22:24 <xarick> but the code is not
21:27:47 <DorpsGek> [OpenTTD/OpenTTD] frosch123 updated pull request #13966: Remove several C-string functions https://github.com/OpenTTD/OpenTTD/pull/13966
21:53:41 <peter1138> Meh at StrongTypes again...
21:53:47 *** nielsm has quit IRC (Ping timeout: 480 seconds)
22:13:17 *** Flygon has joined #openttd
22:17:17 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:32:26 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1359294846766022877/image.png?ex=67f6f579&is=67f5a3f9&hm=434f45db7aa0723d50d5a17908c85558259530ad5f1f7c26e95e779bd69901c9&
22:32:26 <xarick> meh gain
22:32:55 <xarick> EstimateTownRectangle is the slowest one
22:33:07 <xarick> but a gain is a gain
22:33:24 <xarick> TownAirportRadRect calls EstimateTownRectangle