IRC logs for #openttd on OFTC at 2023-04-24
            
00:07:42 <petern> Good ol' DBSetXL
00:21:04 *** Wormnest has quit IRC (Quit: Leaving)
02:15:17 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
02:38:34 *** D-HUND has joined #openttd
02:41:56 *** debdog has quit IRC (Ping timeout: 480 seconds)
02:43:07 *** D-HUND is now known as debdog
03:00:21 *** _aD has quit IRC (Quit: leaving)
04:01:54 *** HerzogDeXtEr has joined #openttd
04:07:42 *** HerzogDeXtEr1 has quit IRC (Ping timeout: 480 seconds)
05:04:54 *** keikoz has joined #openttd
05:29:00 <andythenorth> goes it wake up?
05:29:05 <andythenorth> hmm
05:43:17 <petern> Nah
05:44:15 <petern> Ok maybe
05:46:59 <andythenorth> probably
05:52:30 <andythenorth> random trains eh
05:56:07 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1099936792867778600/image.png
05:56:07 <andythenorth> sometimes randomising to the 2nd CC isn't so good πŸ˜›
05:57:09 <andythenorth> I could automagic something so it choose a different but matching colour instead
05:57:18 <andythenorth> or I could just use 1CC
05:57:25 <andythenorth> or we could add 3CC
05:58:00 <andythenorth> or I could set that colour with a parameter
05:59:21 <petern> Sprite-stack based multiple-CC?
06:00:50 <andythenorth> why not
06:02:08 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10701: Change: Increase available vehicle random bits https://github.com/OpenTTD/OpenTTD/pull/10701#issuecomment-1519429214
06:02:39 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1099938435738914816/image.png
06:02:39 <andythenorth> or I just set them all to only use 1CC
06:04:50 <petern> Weird that we have to provide industries with a random seed in the command.
06:05:12 <petern> I know it solves and issue, but it's still weird πŸ˜„
06:08:02 <andythenorth> maybe I remove the remaining ctrl-flip colour changing crap
06:08:22 <andythenorth> goes it less crappy
06:09:25 <andythenorth> maybe I add more 'random wagon from list x, y, z' things
06:09:33 <andythenorth> so there can be more or less random choices
06:09:41 <andythenorth> I should used nested variants or something πŸ˜›
06:09:50 <petern> Drop #10701 otherwise andy gets too many options?
06:11:59 <petern> Hmm, industries don't get rerandomizations triggers.
06:16:53 <andythenorth> "16 would be plenty"
06:24:23 <andythenorth> hmm the problem I have is realism
06:24:24 <andythenorth> πŸ˜›
06:30:02 <andythenorth> I need some complicated randomising πŸ˜›
06:33:10 <petern> Nice, back in the day vehicle random data was different per client.
06:34:38 <petern> And that was TrueBrain's attempt to fix something πŸ˜„
06:35:12 <petern> <https://github.com/OpenTTD/OpenTTD/commit/40121d60cd3b0054fdf0927c8363fe2f74fd4d97> If only he knew πŸ˜„
06:35:43 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #10701: Change: Increase available vehicle random bits https://github.com/OpenTTD/OpenTTD/pull/10701
06:37:28 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10701: Change: Increase available vehicle random bits https://github.com/OpenTTD/OpenTTD/pull/10701#issuecomment-1519470729
06:38:29 <petern> Is it breakfast?
06:41:38 <LordAro> petern: that's a very early commit
06:41:46 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #9289: Change: Shortcut varaction chains for callbacks. https://github.com/OpenTTD/OpenTTD/pull/9289
06:43:19 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #9289: Change: Shortcut varaction chains for callbacks. https://github.com/OpenTTD/OpenTTD/pull/9289#issuecomment-1519476667
06:45:28 <andythenorth> it's breakfast
06:45:30 <andythenorth> good idea
06:48:31 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #9289: Change: Shortcut varaction chains for callbacks and triggers. https://github.com/OpenTTD/OpenTTD/pull/9289
06:48:57 <petern> Such typos.
06:53:43 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #10703: Codechange: _t type suffix is reserved by POSIX. https://github.com/OpenTTD/OpenTTD/pull/10703
06:54:33 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #10703: Codechange: _t type suffix is reserved by POSIX. https://github.com/OpenTTD/OpenTTD/pull/10703#pullrequestreview-1397299478
07:04:06 <petern> Oops, I missed a bit on this one.
07:05:12 <petern> Well, it's not actually a type, just a macro parameter.
07:06:38 <LordAro> isn't that... worse?
07:08:46 <petern> `Town *t = nullptr, *last_t = nullptr;` Well...
07:08:57 <petern> Just a variable name πŸ˜„
07:09:02 <LordAro> :D
07:09:06 <petern> There's a few `_t` as well as ab abbreviation for tile.
07:09:26 <LordAro> an extra 3 characters wouldn't be the worst thing in the world
07:09:34 <petern> Indeed.
07:09:48 <DorpsGek> [OpenTTD/OpenTTD] PeterN dismissed a review for pull request #10703: Codechange: _t type suffix is reserved by POSIX. https://github.com/OpenTTD/OpenTTD/pull/10703#pullrequestreview-1397299478
07:09:51 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #10703: Codechange: _t type suffix is reserved by POSIX. https://github.com/OpenTTD/OpenTTD/pull/10703
07:09:56 <petern> Sorry!
07:10:34 <petern> I think anything else beyond those can be another PR.
07:10:50 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #10703: Codechange: _t type suffix is reserved by POSIX. https://github.com/OpenTTD/OpenTTD/pull/10703#pullrequestreview-1397320373
07:11:56 <LordAro> dunno what that check annotations failure is doing
07:20:14 <andythenorth> ok, goes it throw out more Horse things
07:20:35 <andythenorth> workarounds for 'no variants'
07:22:30 <petern> Also CCountedPtr looks like a recipe for std::shared_ptr replacement but I'm not sure how it works...
07:23:59 <petern> Hmm, not the same at all.
07:37:52 <petern> It all looks very manual though.
07:49:38 *** Elysianthekitsunesheher[m] has quit IRC ()
07:53:11 <petern> The link <https://ootips.org/yonat/4dev/smart-pointers.html> it mentions is from 1999, so slightly old.
08:01:16 <petern> Eddi|zuHause, 123 over 73.
08:03:12 <Eddi|zuHause> no.
08:03:27 <petern> Yes.
08:03:37 <Eddi|zuHause> you know we have DorpsGek for that? :p
08:04:19 <petern> Haha. The blood pressure monitor arrived, which was on order coincidentally.
08:04:20 <Eddi|zuHause> @calc 123/73
08:04:20 <DorpsGek> Eddi|zuHause: 1.6849315068493151
08:04:50 <Eddi|zuHause> @calc (1+sqrt(5))/2
08:04:50 <DorpsGek> Eddi|zuHause: 1.618033988749895
08:05:22 <LordAro> petern: i've looked at that one before too
08:07:18 <petern> https://cdn.discordapp.com/attachments/1008473233844097104/1099969807467679805/image.png
08:07:18 <petern> I don't think "implicit" means what you think it means...
08:12:59 <TrueBrain> petern: A simpler time ... πŸ˜„
08:17:42 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #10703: Codechange: _t type suffix is reserved by POSIX. https://github.com/OpenTTD/OpenTTD/pull/10703
08:20:22 <LordAro> Before the dark times
08:21:29 <TrueBrain> Before insanity hit :d
08:22:02 <DorpsGek> [OpenTTD/OpenTTD] JGRennison commented on pull request #10699: Cleanup: Fix and add comments to date cheat callback https://github.com/OpenTTD/OpenTTD/pull/10699#pullrequestreview-1397431899
08:25:16 <petern> What is SmallArray even? It seems to be anything but small.
08:25:29 <TrueBrain> It is in core/ right?
08:25:38 <petern> misc/
08:25:45 <LordAro> petern: it was useful "once" "probably"
08:25:49 <TrueBrain> Owh, that folder
08:26:03 <TrueBrain> We got many of those things introduced once ..
08:26:14 <LordAro> only used by YAPF
08:26:28 <petern> Yeah, before we got on board with STL.
08:26:32 <LordAro> looks like it could be trivially replaced with a vector
08:26:53 <JGR> I'm not sure
08:27:13 <JGR> Presumably it's done that way so that items don't change pointers when thigns are added
08:29:08 <TrueBrain> So similar to std::list?
08:30:27 <JGR> ConnectNodeToCachedData seems to keep a pointer to cache items
08:30:36 <JGR> std::list doesn't have random access
08:31:20 <petern> Does it need random access if you're only using the pointer?
08:32:40 <JGR> PfNodeCacheFetch seems like it's doing a random access lookup
08:33:29 <TrueBrain> so it is a vector of (pre-allocated) vectors πŸ™‚
08:35:56 <JGR> You could probably replace it with std::deque
08:36:57 <JGR> As that uses basically the same memory layout
08:39:43 <petern> Haha Twitter are also verifying fake accounts as official...
08:40:40 <TrueBrain> again?!
08:40:46 <TrueBrain> will they ever learn ...
08:42:00 <Eddi|zuHause> at the current trajectory? i don't think so
08:44:46 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10655: Change: base autosaves intervals on real time (instead of game time) https://github.com/OpenTTD/OpenTTD/pull/10655
08:45:13 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10655: Change: base autosaves intervals on real time (instead of game time) https://github.com/OpenTTD/OpenTTD/pull/10655#issuecomment-1519641630
09:21:17 <DorpsGek> [OpenTTD/OpenTTD] troilus opened issue #10704: [Bug]: Server does not apply the changes of openttd.cfg. https://github.com/OpenTTD/OpenTTD/issues/10704
09:24:16 *** TROILUS has joined #openttd
09:24:24 <TROILUS> Hi
09:24:51 <TROILUS> I changed some settings in openttd.cfg
09:25:09 <TROILUS> but the server doesn't apply the changes.
09:25:35 <LordAro> obvious questions - are you sure you're modifying the right file?
09:25:37 <TROILUS> It's a Linux server , I use ./opentyd -D -c ./openttd.cfg
09:25:48 <andythenorth> signal aspect stuff https://youtu.be/OqwiAkf89qo?t=389
09:25:50 <andythenorth> such PBS
09:25:52 <LordAro> (i.e. introduce something invalid, see if it errors)
09:26:01 <TROILUS> I modify ./openttd.cfg
09:26:02 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on issue #10704: [Bug]: Server does not apply the changes of openttd.cfg. https://github.com/OpenTTD/OpenTTD/issues/10704
09:27:23 <petern> andythenorth: Default red is realistic, you see.
09:27:36 <andythenorth> turn them off πŸ˜›
09:27:43 <petern> Add blank signals? πŸ˜„
09:27:46 <andythenorth> yes πŸ˜›
09:28:19 <andythenorth> I think it's the 'no green until the signal is reached' that's weird
09:28:26 <andythenorth> although JGRPP fixes it
09:28:34 <petern> Fixes
09:28:56 *** Wolf01 has joined #openttd
09:29:51 <petern> Half-ten, maybe breakfast.
09:30:04 <petern> /me merges some stuff instead.
09:30:44 <andythenorth> 'changes it'
09:32:54 <petern> My favourite commit log is "dunno".
09:33:25 <LordAro> "Minor"
09:35:11 <andythenorth> "Change"
09:35:21 <andythenorth> "WIP"
09:35:25 <DorpsGek> [OpenTTD/OpenTTD] troilus commented on issue #10704: [Bug]: Server does not apply the changes of openttd.cfg. https://github.com/OpenTTD/OpenTTD/issues/10704
09:35:42 <andythenorth> "Proof of concept (partially working)" is my best and most regular one
09:39:59 <petern> Hmm, 18kcal per 100ml probably doesn't count as breakfast.
09:41:32 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on issue #10704: [Bug]: Server does not apply the changes of openttd.cfg. https://github.com/OpenTTD/OpenTTD/issues/10704
09:41:48 <petern> `This list is cached till 2023-04-24 09:45:04 UTC.``
09:42:14 <petern> But no since. Is it 5 minutes, 15 minutes? Arbitrary?
09:43:49 <TrueBrain> 5 minutes πŸ™‚ PRs are welcome πŸ˜‰
09:45:31 <andythenorth> too early for lunch eh
09:52:41 <LordAro> alas
09:57:07 <DorpsGek> [OpenTTD/OpenTTD] troilus commented on issue #10704: [Bug]: Server does not apply the changes of openttd.cfg. https://github.com/OpenTTD/OpenTTD/issues/10704
09:59:39 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on issue #10704: [Bug]: Server does not apply the changes of openttd.cfg. https://github.com/OpenTTD/OpenTTD/issues/10704
10:05:52 <DorpsGek> [OpenTTD/OpenTTD] troilus commented on issue #10704: [Bug]: Server does not apply the changes of openttd.cfg. https://github.com/OpenTTD/OpenTTD/issues/10704
10:10:34 <LordAro> documentation on such things does seem limited
10:18:12 <TrueBrain> also not actually meant to be changed by humans πŸ™‚
10:18:57 <LordAro> doesn't really work for dedicated servers...
10:19:05 <TrueBrain> having a CLI argument to override certain settings might be a better solution honestly
10:19:17 <TrueBrain> or a file you can give, with the format similar to the console
10:19:29 <LordAro> the CLI options for config files are already too complex :D
10:19:33 <TrueBrain> having a completely different format in the ini versus all the other places you can influence a setting is not helping πŸ™‚
10:25:11 <petern> environment variables πŸ˜‰
10:37:41 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10655: Change: base autosaves intervals on real time (instead of game time) https://github.com/OpenTTD/OpenTTD/pull/10655#issuecomment-1519879039
10:41:45 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10655: Change: base autosaves intervals on real time (instead of game time) https://github.com/OpenTTD/OpenTTD/pull/10655#issuecomment-1519884494
10:49:48 <JohnFranklin> Hello JGR. Has my crash (described in Discord channel #jgr-patch-pack) been solved yet?
10:49:53 *** virtualrandomnumber has joined #openttd
10:50:25 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #10655: Change: base autosaves intervals on real time (instead of game time) https://github.com/OpenTTD/OpenTTD/pull/10655#pullrequestreview-1397692702
10:51:19 *** virtualrandomnumber has quit IRC ()
10:57:19 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10655: Change: base autosaves intervals on real time (instead of game time) https://github.com/OpenTTD/OpenTTD/pull/10655#pullrequestreview-1397703175
11:02:15 *** virtualrandomnumber has joined #openttd
11:02:20 *** virtualrandomnumber has quit IRC ()
11:07:56 <DorpsGek> [OpenTTD/OpenTTD] FilmBoy84 opened issue #10705: [Bug]: Assertion failed at line 4739 of D:\a\OpenTTD\OpenTTD\src\station_cmd.cpp: runtime > 0 https://github.com/OpenTTD/OpenTTD/issues/10705
11:07:58 <TrueBrain> petern: ideally I would like to do something like https://github.com/OpenTTD/OpenTTD/commit/a485e5d5123fcae6f69302d6e5989b3470bd0b8a, but it is mostly unused code, so *shrug*
11:10:06 <JGR> JohnFranklin: If you can post the logs I can take a look at it later
11:10:16 <petern> Yes, being generic was mainly my point, but the play time while paused thing does throw a spanner in the works.
11:10:41 <TrueBrain> yeah, so that commit resolves that issue, similar to how GameCalendar solves it
11:11:20 <TrueBrain> so up to you .. do we want that? πŸ˜„
11:11:40 <TrueBrain> it might never get used .. and we know how OpenTTD feels about that πŸ˜›
11:16:55 <petern> "PlayedGametime" seems both "probably useful" and yet also "very specific" at the same time.
11:17:19 <petern> Maybe it could be used to show a "You've played too long, take a break" warning πŸ˜‰
11:17:26 <petern> Ooh!
11:17:34 <TrueBrain> yeah .. that is why I called it "Realtime" now, as that is what it is
11:17:36 <TrueBrain> less specific πŸ˜›
11:17:46 <petern> "You've played for 30 minutes, to continue please leave feedback on the Store"
11:18:03 <LordAro> :D
11:18:17 <Eddi|zuHause> "wait 10 minutes or upgrade to a premium account"
11:18:52 <LordAro> "purchase this box for a chance at winning a new train"
11:20:32 <TrueBrain> fuck it, it is just better to have it more generic
11:20:33 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10655: Change: base autosaves intervals on real time (instead of game time) https://github.com/OpenTTD/OpenTTD/pull/10655
11:21:42 <Eddi|zuHause> anyway, i've got both too many and too few trains on this line...
11:22:16 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10655: Change: base autosaves intervals on real time (instead of game time) https://github.com/OpenTTD/OpenTTD/pull/10655
11:24:16 <TrueBrain> regarding #10700, and as petern made a similar comment, would it improve the readability if we move more of those variables inside the TimerGameCalendar? So that you get TimerGameCalendar::year, or something?
11:24:34 <TrueBrain> instead of a `_date` which is changed by TimerGameCalendar, but stored in its own variable πŸ™‚
11:25:05 <TallTyler> I’d support that
11:25:36 <petern> You could make a struct and then make those timers inherit that... if the data is the same in both
11:26:23 <TrueBrain> yeah, there is actually no need to have two full implementations of TimerGameCalendar and TimerGameEconomy .. they just need two instances πŸ™‚
11:26:47 <petern> `TimerGameCalendar::year` is (nicely) more verbose than `_cur_year` or `_cur_economy_year`
11:26:52 <petern> Ah even better
11:27:55 <TrueBrain> guess I am bored enough to grep the code for `_cur_year` and friends, and see what that looks like πŸ™‚
11:31:15 <TallTyler> I don’t know how to make just a separate instance, but the behavior will be different once I add real-time mode. Economy will either match Calendar or do its own thing, depending on the mode.
11:32:09 <TrueBrain> yeah, so it is only the function that processes a tick that differs πŸ™‚
11:32:19 <TallTyler> They would both have the same fields though if they inherited from the same strict, as Peter suggested πŸ™‚
11:33:39 <petern> Also if they have the same fields, you could start splitting code between calendar and economy without actually changing anything by sneaking a `using TimerGameEconomy = TimerGameCalendar;` in there. I think.
11:34:02 <petern> Then when actually splitting the two you remove that.
11:34:04 <petern> I think.
11:34:57 <petern> I dunno, depends how the commits are organised.
11:35:44 <TrueBrain> yeah, something like that should be doable
11:36:20 <TrueBrain> okay, replacing `_cur_year` seems to work out fine .. just a bit of work πŸ˜›
11:36:36 <petern> Global search & replace is easy πŸ™‚
11:36:43 <TrueBrain> yeah, but it doesn't take care of includes 😦
11:36:48 <TrueBrain> and `_date` is an annoying name πŸ˜„
11:36:51 <petern> Even easier if you remember to tick the case-sensitive and full-sentence flags.
11:40:16 *** SpComb has quit IRC (Ping timeout: 480 seconds)
11:41:44 <TrueBrain> it even changed the changelog!
11:41:46 <TallTyler> Breakfast first though πŸ™‚
11:41:51 <TrueBrain> (as for some reason there are things like _date in there)
11:44:52 *** SpComb has joined #openttd
11:46:56 <TrueBrain> adding includes is boring πŸ˜›
11:47:31 <petern> TrueBrain: Hah, yes, I had to exclude that before πŸ™‚
11:52:42 <petern> Hmm, hiding variants based on parent hidden status is more awkward than I thought.
11:53:23 * petern tries again
12:07:04 <TrueBrain> pff, checking if `date_func.h` was needed took the longest .. recompile .. recompile .. recompile ...... πŸ˜›
12:11:52 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706
12:12:10 <TrueBrain> I think I fixed all alignment issues even πŸ˜›
12:13:04 <TrueBrain> guess things like SetDate should also move to the class
12:14:15 <petern> This is much easier to suggest when it's someone else's PR πŸ˜‰
12:14:30 <petern> But it does seem to be a nice tidy up.
12:15:41 <petern> I had envisioned 2TallTyler doing it all in his PR which would avoid doubly changing things but separate works too.
12:16:32 <TrueBrain> I like small PRs πŸ™‚ Makes his PR more readable in the end πŸ™‚
12:16:38 <TrueBrain> so I might finally discover what it actually does πŸ˜›
12:17:25 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706
12:17:30 <TrueBrain> moved `SetDate` too .. now it should all be contained πŸ™‚
12:18:35 <TrueBrain> and I think the ShiftDate stuff should also be moved inside the SetDate function ..
12:18:57 <TrueBrain> but that would be another PR πŸ™‚
12:19:14 <TrueBrain> ideally it would be an event: date-changed
12:19:14 <TrueBrain> πŸ˜„
12:20:35 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10700: Codechange: Split dates and timers into Economy and Calendar time https://github.com/OpenTTD/OpenTTD/pull/10700#pullrequestreview-1397861442
12:24:22 <TrueBrain> that PR totally destroys TallTyler 's PR, but it will be so much more readable πŸ˜„
12:24:52 <TallTyler> Eh, I’d have to redo it all anyway, so I’m happy for you to help πŸ˜„
12:25:07 <TrueBrain> why does `date_of_last_service` and `economy_date_of_last_service` exist?
12:25:34 <TrueBrain> owh, NewGRFs
12:25:37 <TrueBrain> I could have read your description
12:25:43 <TrueBrain> that is ..... do we really need to? πŸ˜›
12:25:49 <TallTyler> Silly GRF authors be getting into mischief
12:26:52 <TrueBrain> and why similar with `inaugurated_year`?
12:27:16 <TallTyler> I’ve thought a lot about that, and the only better solution was to eliminate interval based servicing entirely and use percentage only. That RFC PR earned me quite a bit of Zorg wrath but JGR pointed out that percentage setting is awfully confusing and probably shouldn’t be the default
12:27:43 <TallTyler> Inaugurated year is because the calendar year is shown in the company window, and the economy year is used for share trading protections
12:27:47 <TrueBrain> percentage based servicing is the worst .. I don't know who thought up that mechanism, but it is just bad gameplay
12:28:13 <TrueBrain> TallTyler: not sure I like things that are in both timers .. feels weird πŸ˜›
12:28:15 <TallTyler> Surprise surprise, OpenTTD has calendar dates baked in all over the place
12:29:28 <andythenorth> maybe I should make a Zorg honeypot
12:29:41 <andythenorth> reignite the debate about Horse restaurant cars or something
12:30:03 <TrueBrain> hmm, share protection .. that is just a weird mechanism
12:30:20 <TrueBrain> but one can argue that the current setting is based on calendar πŸ˜›
12:31:05 <DorpsGek> [OpenTTD/OpenTTD] JGRennison opened issue #10707: [Bug]: days_in_transit type in struct CargoPacket constructor is too small since PR #10596 https://github.com/OpenTTD/OpenTTD/issues/10707
12:31:58 <TrueBrain> yeah, I don't really see the reason why the share protection should be based on the economy?
12:32:29 <petern> TallTyler: Just remove share trading, it's broken anyway πŸ˜‰
12:32:31 <TallTyler> Isn’t it to give the company time to start making money, so you can’t just buy it for Β£1 right after launch?
12:32:51 <TrueBrain> but why would that be based on economy? Sounds more correct to do that on calendar
12:33:06 <petern> I think it should stay calendar,.
12:33:08 <TrueBrain> I think we really have to do our best to avoid things being in both timers
12:33:17 <TrueBrain> it will be very confusing to the player otherwise
12:34:59 <TallTyler> Share trading protection would be expressed in periods or minutes, not years
12:35:28 <TallTyler> So I don’t buy the confusion argument per se, although it could be confusing to future developers
12:35:32 <TallTyler> (Us)
12:36:08 <TallTyler> If you have frozen calendar time and use calendar for share trading, it will never be possible
12:36:19 <TrueBrain> exactly right!
12:36:33 <TrueBrain> I get what you mean, it is just blegh how-ever you look at it
12:37:53 <TallTyler> Oh yeah, a lot of old features are blegh πŸ˜‰
12:38:04 <TallTyler> But we have to keep supporting them I guess
12:38:16 <TallTyler> Was share trading in TTD?
12:38:23 <petern> Oh yeah πŸ˜„
12:38:46 <TrueBrain> I really never seen anything good come out of shares ...
12:38:55 <TrueBrain> the idea is nice, but ....... it is so poorly implemented πŸ˜›
12:39:02 <petern> TallTyler: Although... maybe that's desirable... it's kinda understandable at least.
12:39:19 <JGR> It's one of those things that sort of stuck after it was thrown at the wall
12:39:51 <TrueBrain> except for the usual suspects, would anyone really care if we just remove it all together?
12:40:52 <petern> Reimplement with as proper trading
12:41:04 <TallTyler> If we can do persistent clients in network games, we could replace it with player characters buying stock instead of companies buying stock
12:41:10 <JGR> `economy.allow_shares` is already false by default
12:41:12 <TrueBrain> TallTyler: this class-based variable approach also solves your `days_in_year` btw, as it will just be `TimerGameEconomy::days_in_year` πŸ™‚
12:42:01 *** Flygon has joined #openttd
12:42:17 <TallTyler> TallTyler: This would also make intentional company mergers and buyouts interesting, as the owner(s) could get the purchase price and use it to start their next company πŸ™‚
12:42:49 <petern> FFS I committed to master again :p
12:42:51 <petern> Noob
12:42:57 <TrueBrain> enable protection!
12:43:17 <TrueBrain> I am really tempted to just make a PR to remove shares, and leave it to another PR to introduce a new, better, mechanism πŸ˜›
12:43:34 <petern> That's quite a lot of UI work.
12:43:42 <JGR> I don't really see that they need to be replaced with anything at all
12:43:53 <TrueBrain> JGR: that can be a result πŸ˜›
12:45:51 <TallTyler> TrueBrain: Go for it!
12:45:57 <TallTyler> I’d approve it πŸ˜›
12:46:31 <andythenorth> shared trading, but in a whole other platform
12:46:45 <petern> You could close #7691 with it.
12:46:48 <andythenorth> so you can trade across all live MP games
12:46:56 <andythenorth> and we do our own currency
12:47:01 <andythenorth> proof of work?
12:47:10 <ag> Wasn't there a chinese patch some years back with share trading and so on
12:47:23 <andythenorth> shares in ottd are quite LOL
12:47:35 <andythenorth> especially compared to Railroad Tycoon 3
12:47:54 <andythenorth> the stock market was the main meta in RT3, the trains were the 3rd or 4th most important thing
12:48:19 <andythenorth> almost all scenarios involved stock market manipulation, apart from the cargo delivery challenges
12:48:26 <JGR> I don't really think that we want to replicate that kind of thing
12:48:40 <petern> Usual rules, create a game-script to do it? :p
12:49:02 <ag> Interesting
12:49:03 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on issue #10705: [Bug]: Assertion failed at line 4739 of D:\a\OpenTTD\OpenTTD\src\station_cmd.cpp: runtime > 0 https://github.com/OpenTTD/OpenTTD/issues/10705
12:49:10 <andythenorth> petern: yes!
12:49:18 <andythenorth> GS stock market via story book and buttons
12:49:29 <andythenorth> just needs a few architectural improvements πŸ˜›
12:51:10 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #10708: Change: Hide all variants from UI when (display) parent is hidden. https://github.com/OpenTTD/OpenTTD/pull/10708
12:51:12 <TrueBrain> owh, this doesn't even impact bankruptcy .. lol
12:51:45 <FLHerne> I don't see how the share trading delay being a calendar thing could make sense
12:51:53 <FLHerne> it's fundamentally an economy mechanic
12:52:06 <FLHerne> (I also think just removing the whole feature would be fine :p)
12:52:14 <andythenorth> I put some emoji responses on 10708
12:52:27 <TrueBrain> only 4?
12:52:28 <TrueBrain> pff
12:52:28 <andythenorth> I sometimes hide vehicles during grf dev, to make screenshots, or compare sprites
12:52:31 <FLHerne> more options to voluntarily merge companies would be nice though
12:52:35 <andythenorth> variant hiding
12:52:37 <andythenorth> is good
12:52:38 <FLHerne> or indeed split :D
12:52:57 <andythenorth> flherne, with realistic due diligence?
12:53:01 <andythenorth> and regulatory oversight?
12:53:26 <FLHerne> andythenorth: all companies have audited public accounts already
12:53:42 <andythenorth> 'audited'
12:53:45 <petern> Gamescript: Fiddle the books.
12:53:48 <andythenorth> yes
12:53:52 <andythenorth> took the words out of my mouth
12:54:00 <FLHerne> well, you can't falsify the numbers, although that might be fun
12:54:02 <andythenorth> every year, a review of the accounting narrative
12:54:15 <andythenorth> you can move things like capex, opex, depreciation around
12:54:25 <LordAro> are 10705 & 10707 duplicates?
12:54:30 <andythenorth> revenue and cost recognition policies
12:54:38 <andythenorth> write downs of goodwill
12:54:40 <FLHerne> yeah, my brother is an auditor, I've heard all the tricks :p
12:54:54 <andythenorth> ideal
12:54:57 <andythenorth> make a GS
12:55:16 <andythenorth> multiplayer: the new metagame is accounting policy, to make your charts look good
12:55:21 <JGR> Being able to trigger the "company is up for sale" dialog at times other than at bankruptcy can be useful for clearing up company slots and things like that
12:55:55 <JGR> I have a console command for that, mainly for server admins to use
12:56:32 <TrueBrain> that is a nice idea πŸ™‚
12:57:20 <TrueBrain> so weird that I can just remove settings and saveload entries .. πŸ˜„
12:57:20 <andythenorth> GS story book πŸ˜›
12:57:28 <TrueBrain> table-based savegames are easy! πŸ˜›
12:57:31 <andythenorth> storybook for everything
12:59:06 <petern> #10705 has a suspicious non-vanilla UI colour.
13:00:03 <glx[d]> the log is vanilla
13:01:35 <TrueBrain> hmm ... NOT_REACHED after I removed shares ..... wwwhhhhyyyy???!!!!! πŸ˜›
13:01:48 <TrueBrain> CompanyWindow::OnPaint
13:01:56 <TrueBrain> all the info I am getting .. hmm
13:02:01 <glx[d]> most likely 32bpp colors
13:02:02 <petern> Widget tree not terminated properly.
13:02:43 <TrueBrain> hmm, it should
13:04:04 <TrueBrain> owh, ofc, there are no buttons anymore for "other" companies
13:04:07 <TrueBrain> which it tries to render now πŸ˜„
13:08:12 <petern> andythenorth: I added pics. The "after" pic is really, er, useful?
13:09:26 <andythenorth> winner
13:10:33 <TrueBrain> that company window ..
13:10:36 <TrueBrain> so full of random buttons πŸ˜„
13:12:59 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706
13:13:03 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100046750384914442/image.png
13:13:03 <andythenorth> this one?
13:13:21 <TrueBrain> yeah ... and now check what happens when you open the one of another company
13:13:24 <TrueBrain> this `Give money` button appears
13:13:26 <TrueBrain> somewhere
13:13:27 <TrueBrain> πŸ˜„
13:13:46 <andythenorth> stuff and things
13:14:11 <andythenorth> I enjoy that some of it lines up vertically, some of it doesn't
13:14:24 <andythenorth> it's very...hand-crafted
13:14:32 <petern> I think that is coincidence.
13:14:40 <andythenorth> probably varies with translations
13:22:55 <TrueBrain> ` We can not buy out a real company (temporarily). TODO: well, enable it obviously.`
13:23:00 <TrueBrain> do you want to know how old that TODO is?
13:24:00 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #10709: Remove: remove company shares from the game https://github.com/OpenTTD/OpenTTD/pull/10709
13:24:08 <TrueBrain> right, that solves that discussion TallTyler πŸ˜„
13:25:53 <TallTyler> I want to know how old that is πŸ˜›
13:26:04 <TrueBrain> it wouldn't surprise me if I wrote that line πŸ˜›
13:26:09 <TallTyler> Please give me a number as percentage of how many Discord users are younger than that comment πŸ˜›
13:26:10 <TrueBrain> which would date it 2007 somewhere
13:28:35 <TrueBrain> awh, no, it was DV
13:28:49 <TrueBrain> 2005 πŸ˜›
13:30:27 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10709: Remove: remove company shares from the game https://github.com/OpenTTD/OpenTTD/pull/10709
13:30:54 <LordAro> TrueBrain: oho.
13:30:58 <TrueBrain> so yeah .. 60% TallTyler πŸ˜›
13:32:13 <TrueBrain> the script that I made to scan for unused strings found an issue! I am shocked! πŸ˜„
13:35:03 <FLHerne> TrueBrain: neat
13:35:10 <FLHerne> I await the very long Zorgpost
13:35:31 <TrueBrain> in the meantime, I will count how many fucks I am going to give πŸ™‚
13:36:35 *** nielsm has joined #openttd
13:36:58 <TallTyler> Hope you have enough fingers πŸ˜›
13:37:24 <JohnFranklin> JGR: I have posted in GitHub
13:37:50 <JohnFranklin> Okay, I have seen the solution
13:39:39 <andythenorth> I will buy you a fire suit TrueBrain
13:39:46 <andythenorth> I applaud this courage
13:40:57 <andythenorth> see also: my phone doesn't have a 3.5mm headphone jack port, imagine the horror
13:41:34 <TrueBrain> hmm, I broke regression .. oops
13:41:41 <TrueBrain> saveload .. what did I do wrong .. this should work πŸ˜›
13:42:26 <andythenorth> I will miss share dealing next time I start the game with multiple AIs accidentally configured
13:42:34 <andythenorth> intending to not share the map πŸ˜›
13:42:46 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #10709: Remove: remove company shares from the game https://github.com/OpenTTD/OpenTTD/pull/10709#pullrequestreview-1398009898
13:43:08 <andythenorth> ah but...cheat...switch company, delete everything in the AI company, max loan, bulldoze the sea
13:43:09 <andythenorth> profit
13:48:24 <TrueBrain> owh, I am a peanut .. forgot the min-version .. lol
13:49:03 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10709: Remove: remove company shares from the game https://github.com/OpenTTD/OpenTTD/pull/10709
13:49:19 <glx[d]> andythenorth: I think they sell some kind of adapter for that πŸ˜‰
13:51:33 <TrueBrain> so I guess that leaves `date_of_last_service` TallTyler .. really no way around avoiding having that in both timers? πŸ™‚
13:52:02 <TrueBrain> at the very least I guess we should rename `date_of_last_service` to `calendar_date_of_last_service`, for visibility
13:54:12 <TrueBrain> hmm .. I think my PR (#10706) needs a bit more work .. maybe instead of `TimerGameCalendar::date` we could do `TimerGameCalendar()::date`
13:54:49 <TrueBrain> as that would make it a singleton, which we can change. This would make switching between realtime economy and calendar-based economy vastly easier
13:55:27 <TrueBrain> hmm, no, doesn't actually matter
13:57:58 <TallTyler> I'm halfway through a review, should I continue or do you want to change things?
13:58:06 <TallTyler> (of #10706)
13:58:09 <TrueBrain> no, continue on πŸ˜›
13:58:21 <TrueBrain> but when we get closer to your actual PR, it might change slightly again
13:58:22 <TrueBrain> that is fine πŸ™‚
13:58:46 <TallTyler> For sure, I'll definitely need some help implementing the two timers when I get to that
13:58:50 <TallTyler> Later today or Wednesday, maybe
13:59:31 <TrueBrain> okay, I did move `tick_counter` wrong .. that really should go to `TimerGameTick` instead
13:59:44 <TrueBrain> but that will be another PR
14:00:21 <TallTyler> Yes, tick counter should not be confused with calendar at all
14:00:29 <TrueBrain> yeah, and your PR moves it to economy
14:00:37 <TrueBrain> but most instance are not economy related
14:00:39 <TrueBrain> like animation
14:00:43 <TallTyler> Which is more correct, but still wrong πŸ˜›
14:00:58 <TrueBrain> most cases really should be `TimerGameTick` πŸ™‚
14:02:04 <TrueBrain> but that will be much more readable after my current PR πŸ™‚
14:02:43 <petern> Run ticks client side, it won't matter if visual things aren't in sync πŸ˜‰
14:03:00 <TrueBrain> you ... you ........ πŸ˜›
14:03:00 <petern> I'm gonna get banned...
14:03:07 <TrueBrain> πŸ˜„ πŸ˜„
14:03:31 <TrueBrain> honestly, it is a really funny comment πŸ˜„
14:05:42 <TrueBrain> okay, 3 places where `_tick_counter` is used, I would consider economy .. rest is all animation
14:06:06 <TrueBrain> of those 3, I could argue they shouldn't use `_tick_counter`, but `_date` / `_date_frac`
14:06:18 <TrueBrain> for example, "travel time"
14:06:43 <TrueBrain> or the town algorithm when to send goods to stations
14:06:58 <TrueBrain> or when to call the BigTick on a station
14:07:46 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706#issuecomment-1520229595
14:08:32 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706#issuecomment-1520231079
14:08:43 <TrueBrain> usage of `_tick_counter` really is a bit of a mess πŸ™‚
14:15:28 <TallTyler> Does `SaveLoad _date_desc[]` in misc_sl.cpp handle conversion of `_date` to `TimerGameCalendar::date` and such? Reading it directly from the save file?
14:16:11 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706#issuecomment-1520245614
14:16:44 <TrueBrain> TallTyler: yes, why not?
14:16:50 <TrueBrain> petern: stop giving me more work πŸ˜›
14:16:53 <petern> 😦
14:17:02 <TallTyler> Thanks, I didn't know how that worked πŸ™‚
14:17:09 <TrueBrain> I really didn't want to revert that part of the PR πŸ˜›
14:17:30 <TrueBrain> TallTyler: `TimerGameCalenader::date` is just a global variable .. so nothing actually changed
14:17:34 <TrueBrain> just the syntax πŸ™‚
14:17:51 <TallTyler> I agree with Peter, sorry πŸ™‚
14:18:00 <petern> You sometimes need to be careful with changing the names of variables, but for globals I think that's explicit anyway.
14:18:03 <TrueBrain> well, you change that then! Ffs ... πŸ˜›
14:19:06 <TrueBrain> the main BLEGH about reverting `_tick_counter`, is that I have to recheck the `date_func.h` include ...
14:19:09 <TrueBrain> so much work ..
14:19:42 <petern> :/
14:20:11 <TallTyler> Do you have a script that did that? My only two pending review comments are about `date_func.h` includes that get removed as the only change to that file
14:20:28 <TrueBrain> no, I manually checked every instance
14:20:35 <TrueBrain> as `date_func.h` was .. misused πŸ™‚
14:21:42 <TrueBrain> so be happy I did it for all files, not just for what I changed πŸ˜›
14:21:53 <TrueBrain> and no, I am not going to make a new PR to remove some includes; so you have to deal with it in this PR πŸ˜„
14:22:34 <TallTyler> Fine by me, just making sure it wasn't a mistake πŸ™‚
14:22:56 <TrueBrain> nope; it was painful though
14:23:07 <TallTyler> I bet
14:23:34 <TrueBrain> same as this bullshit tick counter πŸ˜›
14:26:08 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706
14:26:38 <TrueBrain> btw, TallTyler , you saw the comment of JGR on the change with switching SetDate? Seems wrong now πŸ™‚
14:27:30 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706#issuecomment-1520271764
14:28:15 <TallTyler> Yes, I’m going to fix that today
14:28:36 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706
14:30:57 <TrueBrain> okay, I think I did that correctly ... if not .... euh ... talk to XarothBrook πŸ˜›
14:38:30 <TrueBrain> petern: yeah, that is the thing that saved me here .. for global, the name of the entry is explicit πŸ™‚ For other fields it is deduced from the member name, so that is a bit more tricky πŸ™‚
14:39:15 <petern> And because we haven't had any renames yet, there's no macros in place for it.
14:40:05 <TrueBrain> hihi, one can argue that animation should be bound to the calendar timer πŸ˜„
14:40:08 <TrueBrain> but that is just silly πŸ˜›
14:41:24 <petern> I wonder if any animation affects game-state.
14:41:35 <petern> Probably yes if randomness if involved.
14:41:58 *** XarothBrook has joined #openttd
14:41:58 <XarothBrook> TrueBrain: Yes, blame the victim.
14:41:59 <TrueBrain> I am going to point to myself in 2004 ....... it shouldn't, but often it clearly does πŸ˜›
14:42:01 <TallTyler> Snow line will always be calendar timer, of course πŸ™‚
14:42:09 <TrueBrain> XarothBrook: since when have you been a victim? πŸ˜›
14:42:17 <XarothBrook> When did we meet again? πŸ˜›
14:42:30 <TrueBrain> and who is suffering from that moment in time? πŸ˜„
14:42:54 <XarothBrook> The one time I invited you, I even invited you for dinner, and you skipped out on dinner! πŸ˜›
14:43:15 <TrueBrain> who plans their wedding on a weekend I am out with my real friends!
14:43:50 <TrueBrain> people are like: should we leave ... or stay ... or what is going on here? πŸ˜›
14:43:52 <XarothBrook> It was a Friday!
14:46:23 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler approved pull request #10709: Remove: remove company shares from the game https://github.com/OpenTTD/OpenTTD/pull/10709#pullrequestreview-1398193584
14:46:40 <petern> Oh dear.
14:47:49 <TrueBrain> `if (GB(_tick_counter, 8, 2) == GB(tile, 0, 2)) {`
14:47:58 <TrueBrain> Towns use that to distribute their goods to stations
14:48:04 <TrueBrain> when TCGM_BITCOUNT is used
14:48:23 <TrueBrain> is that a calendar timer? That makes no sense .. economy? I guess?
14:48:27 <TrueBrain> it is just weird πŸ˜›
14:49:32 <TrueBrain> did you do anything with that part in any of your PRs TallTyler ?
14:50:57 <TallTyler> I didn't touch `_tick_counter`. It doesn't change speed at all
14:51:07 <TrueBrain> no, but `TCGM_BITCOUNT`
14:51:11 <TallTyler> I don't think I touched it, anyway
14:51:13 <TrueBrain> as it is clearly under the influence of economy speed
14:51:35 <TallTyler> What's `TCGM_BITCOUNT`? I don't recognize that
14:52:01 <TrueBrain> okay, so something to look into; but basically Town Goods -> Stations
14:53:01 <TrueBrain> owh, lovely, travel-time parameter is fully undocumented in the link graph πŸ˜„
14:53:06 <TrueBrain> guess it got added after-the-fact
14:54:26 <TrueBrain> what does it do? What does it mean? I don't knnnnnooooowwwww
14:56:07 <TrueBrain> or more specifically, should it be under the influence of any speed-up/slow-down (of either calendar or economy)
14:56:41 <TrueBrain> if I am guessing, as long as the speed isn't changing during the measuring, it doesn't actually matter
14:57:00 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706#pullrequestreview-1398212006
14:57:34 <TallTyler> Calendar speed doesn't affect production
14:58:06 <TallTyler> My economy/cargo scaling PR scales the amount of town cargo, not the frequency with which it's produced/moved
14:58:29 <TrueBrain> but it is being moved on a timer, so we need to identify which timer πŸ˜„
14:58:36 <glx[d]> https://github.com/OpenTTD/OpenTTD/compare/master...glx22:OpenTTD:nml <-- that will be an annoyingly long process πŸ™‚
14:58:44 <TrueBrain> this link-graph travel-time is weird .. it seems to be write-only ..
14:59:10 <TrueBrain> glx[d]: oof
14:59:47 <glx[d]> 3 files converted for now
15:00:06 <glx[d]> and not really testable until done
15:00:18 <TallTyler> TrueBrain: Oh gotcha. That should be either economy or animation tick, neither of which ever change timer speed
15:00:28 <TrueBrain> owh, finally found `TravelTime()` .. that was hiding πŸ˜„
15:00:45 <TrueBrain> TallTyler: animation tick is a bit weird, I would say πŸ™‚
15:01:05 <TrueBrain> and isn't the economy ticker you change the speed of in one of your PRs?
15:01:28 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler closed pull request #10702: Feature: Vanilla processing industries warn when at risk of closure https://github.com/OpenTTD/OpenTTD/pull/10702
15:03:03 <TallTyler> TrueBrain: Nope. #10606 changes the interval for how often we call the "every 256 ticks" industry callback, but not the timer itself
15:03:16 <TrueBrain> ah, I see. Good.
15:03:41 <TallTyler> That PR probably needs other things to settle down before I revisit it πŸ™‚
15:03:48 <TallTyler> Lower priority than other things
15:04:11 <TrueBrain> just a few weird usages of tick_counter that needs a bit of consideration
15:05:19 *** WormnestAndroid has quit IRC (Remote host closed the connection)
15:06:01 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706
15:08:34 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler approved pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706#pullrequestreview-1398252085
15:09:36 <TrueBrain> okay, after some overthinking of this tick_counter stuff in those 3 places, if indeed we only scale the amount, not how often, we should be fine
15:10:56 *** WormnestAndroid has joined #openttd
15:14:05 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler opened pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710
15:17:18 <TrueBrain> I now have an issue with the `byte` vs `uint8`
15:17:21 <TrueBrain> my OCD can't handle that
15:17:27 <TrueBrain> what are we going to do about that TallTyler ? πŸ˜„
15:17:56 <TallTyler> Could just make the const a byte?
15:17:58 <TrueBrain> for sure you will have a merge-conflict with #10706, so you will have to push then again anyway .. so yeah, I dare asking this of you πŸ˜„
15:18:14 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710#pullrequestreview-1398272187
15:18:40 <TrueBrain> no clue why that cast is there btw
15:18:42 <TrueBrain> seems weird πŸ˜›
15:18:56 <TrueBrain> can't you define the const as `Year`?
15:19:06 <TrueBrain> might be even better!
15:20:20 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710
15:20:23 <TallTyler> Yeah, leaving both as Year seems best
15:20:52 <petern> TrueBrain: Same!
15:20:52 <TrueBrain> could do away with the `()` too I guess, but that is getting rather pedantic πŸ™‚
15:21:02 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710#pullrequestreview-1398277600
15:21:03 <petern> I was seriously contemplating s/byte/uint8/g
15:21:09 <TrueBrain> please do
15:21:15 <TrueBrain> enough patch-killers in 14.0 anyway πŸ˜›
15:21:48 <petern> Apparently switching to the actual standard _t versions is a little more problematic.
15:22:04 <TrueBrain> too bad
15:22:13 <TrueBrain> would make so much more sense, to follow .. well .. standards πŸ˜›
15:22:16 <petern> Bloody Windows πŸ™‚
15:22:37 <petern> <https://github.com/OpenTTD/OpenTTD/pull/10651> did not go well lol
15:22:39 <LordAro> petern: butbut std::byte in C++20 !
15:23:12 <petern> std::byte doesn't allow any arithemtic.
15:23:30 <petern> So good for data, bad for constrainted values.
15:23:48 <TrueBrain> petern: just one error left! πŸ™‚
15:24:40 <LordAro> petern: we use data sometimes!
15:24:48 <petern> I guess I broke some format stuff too, but Rubidium fixed that elsewhere.
15:25:21 <petern> LordAro, yes, we could use std::byte in places where it should be a byte. But when we freely mixed byte and uint8, even for the same values, it bugs me πŸ˜„
15:25:32 <TrueBrain> +1
15:25:47 <petern> You do need to refactor that one though, a global search & replace messes things up.
15:26:04 <petern> e.g. comments like "Network uint8 order" is a bit garbage.
15:26:13 <TrueBrain> haha πŸ˜„
15:26:14 <petern> I mean, not like I've had a go... honest.
15:26:34 <TrueBrain> okay, `_tick_counter` commit is done, just waiting for #10706 to be merged .. piece by piece, step by step
15:28:11 <Rubidium_> petern: just approve some of my format patches and lets revisit #10651
15:28:24 <petern> πŸ™‚
15:29:02 <Rubidium_> and once all the manual changes are done, maybe see what a run of a formatter does? :D
15:30:44 <TrueBrain> TallTyler: does it make sense to have the "max year reached, wrap around" for economy?
15:31:22 <TrueBrain> owh, nevermind, that piece of code is to avoid overflows
15:32:21 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler opened pull request #10711: Fix 7c6bf97: Don't change date and shift dates in the wrong order https://github.com/OpenTTD/OpenTTD/pull/10711
15:32:42 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #10711: Fix 7c6bf97: Don't change date and shift dates in the wrong order https://github.com/OpenTTD/OpenTTD/pull/10711#pullrequestreview-1398304576
15:33:22 <TallTyler> Remind me never to challenge you to a Wild West duel...that was quick
15:34:22 <petern> `r = (*this).mtime` nice avoiding -> there...
15:34:30 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #10699: Cleanup: Fix and add comments to date cheat callback https://github.com/OpenTTD/OpenTTD/pull/10699#pullrequestreview-1398307962
15:34:59 <TrueBrain> petern: lol; I know of codebases that never use `->`
15:35:04 <TrueBrain> as "it can be overloaded" or some crap
15:36:03 <LordAro> well it's not wrong
15:36:06 <TrueBrain> ugh, who made mingw required again? Waiting for CI takes for-ever! πŸ˜›
15:36:24 <TrueBrain> LordAro: if you are overloading `->` for `this`, you have other problems
15:38:30 <DorpsGek> [OpenTTD/OpenTTD] PeterN approved pull request #10675: Codechange: use string/fmt instead of printf for ShowInfo(F) https://github.com/OpenTTD/OpenTTD/pull/10675#pullrequestreview-1398315882
15:38:33 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #10680: Fix #10600: 'Replace Vehicles' shows numbers >999 https://github.com/OpenTTD/OpenTTD/pull/10680#issuecomment-1520407370
15:41:20 <TallTyler> Hmm, time for lunch while I wait for #10706 to run actions and auto-merge, then it's time to redo #10700 πŸ˜„
15:41:37 <TallTyler> Should be a thrilling afternoon πŸ˜›
15:42:25 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10678: Codechange: use std::string for base media filename/warning storage https://github.com/OpenTTD/OpenTTD/pull/10678#pullrequestreview-1398323140
15:43:40 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10679: Codechange: replace printf-like functions with fmt in Squirrel https://github.com/OpenTTD/OpenTTD/pull/10679#pullrequestreview-1398325618
15:44:53 <DorpsGek> [OpenTTD/OpenTTD] PeterN approved pull request #10679: Codechange: replace printf-like functions with fmt in Squirrel https://github.com/OpenTTD/OpenTTD/pull/10679#pullrequestreview-1398327967
15:45:23 <petern> (No, I'm not just ticking through)
15:51:15 <petern> Urgh, because .net doesn't support multiple inheritance I need to create an interface and then reimplement things every time :/
15:51:20 <TrueBrain> hmm, dinner, now there is an idea! Waiting for 10706 is annoying πŸ˜„
15:51:30 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 merged pull request #10679: Codechange: replace printf-like functions with fmt in Squirrel https://github.com/OpenTTD/OpenTTD/pull/10679
15:51:59 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 merged pull request #10675: Codechange: use string/fmt instead of printf for ShowInfo(F) https://github.com/OpenTTD/OpenTTD/pull/10675
15:52:10 <TrueBrain> our Squirrel is so different from vanilla πŸ˜„
15:56:06 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #10706: Codechange: move all date-related variables inside the timer https://github.com/OpenTTD/OpenTTD/pull/10706
15:57:39 <petern> Yeah, I think all the attempts to even look at the feasibility of upgrading result in "it'll break all existing scripts"
15:58:59 <FLHerne> and if it's going to do that, why upgrade to Squirrel :p
15:59:21 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #10678: Codechange: use std::string for base media filename/warning storage https://github.com/OpenTTD/OpenTTD/pull/10678#pullrequestreview-1398355124
15:59:48 <petern> FLHerne, maintenance.
16:00:31 <LordAro> petern: afaik, only those that use slots
16:00:37 <LordAro> which iirc were removed from squirrel3
16:00:57 <LordAro> but i think that includes Zuu's superlib stuff
16:01:13 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10678: Codechange: use std::string for base media filename/warning storage https://github.com/OpenTTD/OpenTTD/pull/10678#pullrequestreview-1398358448
16:01:21 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #10712: Codechange: move tick-counter into TimerGameTick https://github.com/OpenTTD/OpenTTD/pull/10712
16:01:54 <petern> And well, lots has changed now πŸ™‚
16:02:14 <FLHerne> my point was if you're breaking all the bastardised-Squirrel-2 scripts, why upgrade to Squirrel 3 and not, say, Lua
16:02:35 <FLHerne> I guess easier for any still-maintained AIs to be updated
16:03:23 <LordAro> agreed, switching to lua makes more sense than squirrel3, imo
16:03:35 <LordAro> also comes with the possibility of writing some sort of compatibility layer
16:04:01 <Rubidium_> wasn't wasm the way to go?!?
16:04:42 <FLHerne> or that
16:05:25 <JGR> A compatibility layer would end up much the same as keeping the existing squirrel 2 code around, and putting the new script interpreter in a new directory
16:05:56 <FLHerne> well, with wasm you could compile the squirrel 2 interpreter to wasm :p
16:06:13 <FLHerne> and run it directly inside the new wasm interpreter
16:06:29 <FLHerne> might be a bit silly though
16:06:40 <JGR> Good luck trying to debug that when it doesn't work πŸ˜›
16:06:50 <FLHerne> and need a lot of boilerplate to passthrough all the APIs
16:07:26 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #10712: Codechange: move tick-counter into TimerGameTick https://github.com/OpenTTD/OpenTTD/pull/10712#pullrequestreview-1398366095
16:15:33 *** Wormnest has joined #openttd
16:18:31 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10709: Remove: remove company shares from the game https://github.com/OpenTTD/OpenTTD/pull/10709#issuecomment-1520471701
16:18:56 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #10709: Remove: remove company shares from the game https://github.com/OpenTTD/OpenTTD/pull/10709#issuecomment-1520472247
16:19:09 <glx[d]> LordAro: it's not slots, it's argc/argv
16:20:16 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #10684: Codechange: replace error/usererror printf variant with fmt variant and rename https://github.com/OpenTTD/OpenTTD/pull/10684#pullrequestreview-1398394678
16:22:58 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10712: Codechange: move tick-counter into TimerGameTick https://github.com/OpenTTD/OpenTTD/pull/10712#pullrequestreview-1398398922
16:30:36 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler approved pull request #10712: Codechange: move tick-counter into TimerGameTick https://github.com/OpenTTD/OpenTTD/pull/10712#pullrequestreview-1398410919
16:31:42 <andythenorth> petern: probably not horrifically, but eh, WASM
16:32:34 <andythenorth> glx[d]: yes, slots are pretty much the most iconic squirrel design pattern πŸ™‚
16:32:42 <andythenorth> ~everything is slots
16:32:56 <glx[d]> well everything is a table
16:33:30 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #10684: Codechange: replace error/usererror printf variant with fmt variant and rename https://github.com/OpenTTD/OpenTTD/pull/10684#pullrequestreview-1398415526
16:34:37 <andythenorth> glx[d]: in philosophy of science one of the big questions: "is space a thing, or is space what's between things?" πŸ˜›
16:34:41 <andythenorth> seems to apply there
16:35:46 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 updated pull request #10684: Codechange: replace error/usererror printf variant with fmt variant and rename https://github.com/OpenTTD/OpenTTD/pull/10684
16:50:28 *** SpComb^ has joined #openttd
16:50:33 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler dismissed a review for pull request #10711: Fix 7c6bf97: Don't change date and shift dates in the wrong order https://github.com/OpenTTD/OpenTTD/pull/10711#pullrequestreview-1398304576
16:50:36 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #10711: Fix 7c6bf97: Don't change date and shift dates in the wrong order https://github.com/OpenTTD/OpenTTD/pull/10711
16:50:37 *** SpComb^ has quit IRC ()
16:52:23 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #10711: Fix 7c6bf97: Don't change date and shift dates in the wrong order https://github.com/OpenTTD/OpenTTD/pull/10711#pullrequestreview-1398445834
16:52:57 <TrueBrain> petern: is your comment a suggestion to wire the money back, or are we okay if we just throw it in a black hole? πŸ˜›
16:53:22 <TallTyler> Afterload could just return that to the company bank account, right?
16:53:29 <TrueBrain> not that easy
16:53:32 <TrueBrain> you need to load the information first
16:53:52 <TallTyler> I personally don't care if the money disappears, but 🀷
16:54:45 <petern> No I don't really care, but I bet someone will complain πŸ™‚
16:54:58 <TallTyler> More than if the feature is fully removed?
16:55:46 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #10712: Codechange: move tick-counter into TimerGameTick https://github.com/OpenTTD/OpenTTD/pull/10712
16:57:08 <andythenorth> sometimes it would be nice to have data
16:57:14 <TrueBrain> right, time to look at #10700 again .. TallTyler : will you rebase, or do you want me to?
16:57:27 <andythenorth> ratio of high-octane performative complaining
16:57:29 <andythenorth> vs.
16:57:31 <andythenorth> playing of the game
16:57:46 <TallTyler> Nah, I'll work on it this afternoon
16:57:51 <TallTyler> Gotta keep myself busy somehow πŸ™‚
16:58:21 <andythenorth> what's the main downside of enraging parts of the playerbase?
16:58:32 <TrueBrain> I am wondering if we should have a `TimerGameCalendar::Date`, so you know what kind of `Date` we are talking about .. but that might be for another day πŸ™‚
16:58:43 <andythenorth> net time played goes down? we sell fewer banner ads? MRR subscription value decreases?
16:58:52 <andythenorth> new account activations decrease?
16:59:08 <andythenorth> average account lifetime / lifetime value decline?
16:59:17 <andythenorth> returning log-ins dip?
16:59:23 <FLHerne> so far no-one seems to have complained yet?
16:59:57 <TallTyler> Mostly just dealing with complaints on that and other unrelated PRs, plus reddit, but I'm happy for you to read reddit and tell us if we need to care about anything there πŸ˜›
17:00:08 <andythenorth> flherne they haven't seen the share removal show up yet? πŸ˜›
17:00:19 <FLHerne> maybe
17:00:25 <andythenorth> if JGR integrates it soon, we'll find out
17:00:50 <petern> FLHerne, the usual route is to wait for it to hit release, then complain that nobody told anyone πŸ™‚
17:01:41 <TallTyler> TrueBrain: As in, a more specific data type than just `Date`? Not a bad idea for Intellisense and CI to go "hey, are you sure you want to do that?"
17:01:59 <TrueBrain> yeah, now it is just a bit unclear what type of `Date` a variable reflects
17:02:37 <TallTyler> Outside real-time mode, they are synchronized so economy date does need to work as a date, but it would be nice to split them
17:03:24 <TrueBrain> might be worth its own PR, to just drag Date into TimerGameCalendar, see how that looks&feel
17:03:57 <TrueBrain> for example, `_last_clean_month` currently is a `byte` .. totally unclear what kind of month it refers to πŸ™‚ (with your PR)
17:05:11 <TallTyler> We have a data type for `Month`, using a `byte` is probably wrong no matter what
17:06:20 <TrueBrain> `ShiftDates` also really has to be dragged in the Timer πŸ™‚
17:06:34 <TrueBrain> I already mentioned that earlier, but reading your PR, that becomes very clear .. and you made a boo-boo there πŸ˜„
17:07:55 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10700: Codechange: Split dates and timers into Economy and Calendar time https://github.com/OpenTTD/OpenTTD/pull/10700#pullrequestreview-1398454363
17:09:53 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain dismissed a review for pull request #10709: Remove: buying/selling/owning company shares https://github.com/OpenTTD/OpenTTD/pull/10709#pullrequestreview-1398193584
17:09:56 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #10709: Remove: buying/selling/owning company shares https://github.com/OpenTTD/OpenTTD/pull/10709
17:10:00 <TrueBrain> I had to resolve a conflict
17:11:23 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler approved pull request #10709: Remove: buying/selling/owning company shares https://github.com/OpenTTD/OpenTTD/pull/10709#pullrequestreview-1398474218
17:15:02 <TrueBrain> right, so with that all done .. what was on my agenda next?
17:16:07 <andythenorth> timers πŸ˜›
17:16:56 <TallTyler> TrueBrain: Are you suggesting that I do that, or that you plan to? Would be nice to know before I update #10700 just for it to get outdated immediately πŸ˜›
17:17:23 <TrueBrain> TallTyler: I am not doing anything atm; so feel free πŸ™‚
17:17:44 <TrueBrain> I don't even know if it is actually a good idea πŸ™‚ But these kind of things are more: type it, look at it, does it improve the situation? πŸ™‚
17:18:23 <TrueBrain> Date is used 237 times .. so it might be a bit much πŸ˜›
17:18:36 <TrueBrain> ConvertDateToYMD would need to be templated .. yeah, a rabbithole πŸ˜„
17:18:44 <TallTyler> Most likely, yes
17:18:51 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #10713: Codechange: Use vector instead of mallloc/free for Action 6 data. https://github.com/OpenTTD/OpenTTD/pull/10713
17:19:08 <TrueBrain> still, would be much more clear what is happening with your PR πŸ™‚ But, Rome isn't build in a single day πŸ™‚
17:19:27 <petern> The best PRs are either really simple, or get rewritten tons.
17:19:37 <petern> (Some of the worse PRs are too...)
17:19:58 <TrueBrain> πŸ˜„ Well, you see that with 10700 .. it just takes a bit more untangling than you would expect at first sight πŸ™‚
17:21:09 <TallTyler> I have a hunch that splitting Date into CalendarDate and EconomyDate may be a good idea
17:21:25 <TrueBrain> well, TimerGameCalendar::Date, but yes πŸ˜›
17:21:31 <TallTyler> Ah right
17:21:55 <TrueBrain> slowly you see that TimerGameCalendar is becoming an entity that is on its own πŸ™‚
17:21:58 <TallTyler> I suspect it would be easier before I resolve #10700
17:22:04 <TrueBrain> it will
17:22:11 <TrueBrain> same with Month and Year btw
17:22:20 <TallTyler> Yes
17:22:27 <TrueBrain> just nice to know what Year we are talking about πŸ˜„ πŸ™‚
17:22:45 <petern> Hmm, do I need all these stashes.
17:22:52 <andythenorth> hmm, remove support for something I won't use, or just use the built-in configuration setting to turn it off
17:22:53 <andythenorth> πŸ˜›
17:23:12 <andythenorth> petern: is 'stash' the new 'hacked in prod'?
17:24:19 <petern> Well
17:24:50 <petern> Hmm, adding more SlErrorCorrupt()... useful?
17:25:23 <petern> Things that the big red "unpause if you dare" can't even work on.
17:26:17 <TrueBrain> lol
17:26:19 <TrueBrain> why not? πŸ™‚
17:26:37 <TallTyler> Hmm, do I need a struct to define these?
17:26:46 <TallTyler> I've never touched typedefs before
17:26:55 <petern> Don't use typedefs now.
17:27:02 <petern> using is the C++ way πŸ™‚
17:27:08 <TrueBrain> lol @ std::min: `This does what you think it does. `
17:27:11 <TrueBrain> helpful ....
17:27:45 <TrueBrain> TallTyler: : `using Date = uint32`, or what-ever the type is, I think
17:27:59 <TrueBrain> plenty of examples in that very same class πŸ™‚
17:28:35 <TallTyler> Uh, not like that
17:28:37 <TallTyler> `Year TimerGameCalendar::year = {};` ?
17:28:47 <TrueBrain> that is in the cpp file .. look in the header πŸ™‚
17:29:04 *** gelignite has joined #openttd
17:29:04 <TrueBrain> that is a static variable πŸ™‚
17:29:04 <TallTyler> Oh, I see now πŸ™‚
17:32:51 <petern> Hmm, does any of this stuff warrant unit tests now that we can unit test? πŸ˜„
17:33:07 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler merged pull request #10711: Fix 7c6bf97: Don't change date and shift dates in the wrong order https://github.com/OpenTTD/OpenTTD/pull/10711
17:33:12 <Rubidium_> TrueBrain: for fun... static_assert(std::min(0.0, std::numeric_limits<double>::min()) == std::numeric_limits<double>::min());
17:34:12 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10680: Fix #10600: 'Replace Vehicles' shows numbers >999 https://github.com/OpenTTD/OpenTTD/pull/10680#issuecomment-1520569239
17:34:26 <Rubidium_> that'll fail your build as 0.0 is returned by std::min
17:34:41 <TrueBrain> I have no clue what I just read πŸ˜›
17:36:23 <TrueBrain> `STR_TINY_BLACK_COMA` <- why is tiny black and in a coma?
17:36:25 <TrueBrain> I don't follow
17:39:33 <glx[d]> missing a M at least
17:39:38 <TrueBrain> really? πŸ˜›
17:40:13 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #10714: Codechange: revive STR_TINY_BLACK_COMMA from its coma https://github.com/OpenTTD/OpenTTD/pull/10714
17:40:59 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #10714: Codechange: revive STR_TINY_BLACK_COMMA from its coma https://github.com/OpenTTD/OpenTTD/pull/10714#pullrequestreview-1398517253
17:41:02 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler approved pull request #10714: Codechange: revive STR_TINY_BLACK_COMMA from its coma https://github.com/OpenTTD/OpenTTD/pull/10714#pullrequestreview-1398517289
17:41:11 <LordAro> TallTyler: too slow
17:41:17 <TallTyler> 😦
17:41:25 <TrueBrain> all helping in the revival πŸ™‚
17:41:49 <glx[d]> looks like many of these strings could benefit using {COLOUR}
17:42:50 <TallTyler> TrueBrain: How have you been renaming these things? I.e. `Year` to `TimerGameCalendar::Year`, without just searching plain text and catching comments too?
17:43:16 <glx[d]> so many duplicated string with only a different colour tag
17:43:21 <TrueBrain> I haven't. It is why many comments renamed too. But what petern said, in VSCode, whole-words-only, case-sensitive, and go-go-go πŸ™‚
17:43:29 <DorpsGek> [OpenTTD/OpenTTD] tpetazzoni commented on issue #10232: [Crash]: Black screen on startup and crash (flatpak build) https://github.com/OpenTTD/OpenTTD/issues/10232
17:44:13 <glx[d]> works in VS too
17:44:42 <TallTyler> Ooh, now I get to play "fix the missing #includes" too 😬
17:44:43 <petern> If it has too many clashes you can also use refactor to rename it to something unique, then do global search & replace on that.
17:45:25 <TrueBrain> petern: https://github.com/OpenTTD/OpenTTD/pull/10674 fix the warnings and go go? πŸ˜„
17:45:32 <petern> Maybe even just refector to the long name-spaced version πŸ™‚
17:45:41 <glx[d]> finding references already has issues to match the correct class
17:45:50 <petern> Heh, that's what I was looking back on, counting my stashes πŸ™‚
17:46:01 <glx[d]> like finding references for "name" member is a pain
17:46:14 <TallTyler> petern: Tried that, it wouldn't let me
17:46:16 <petern> Refactor also excludes things that are ifdeffed out.
17:46:31 <petern> Sometimes anyway
17:47:16 <TrueBrain> Game Options looks so weird with 10674 πŸ˜„ I like it πŸ™‚
17:47:58 <TallTyler> Wow, this breaks so much of our arbitrary formatting to align comments
17:48:11 <TrueBrain> so stop doing that!
17:48:19 <TrueBrain> it is so pointless πŸ™‚
17:48:34 <TrueBrain> (personal opinion there ^^ :D)
17:50:50 <petern> There's still misaligned stuff since the NULL to nullptr switch a few years ago.
17:51:28 <TrueBrain> hmm, we don't have a JSON library in our code-base yet, do we?
17:51:36 <TallTyler> Nope
17:51:36 <TrueBrain> seems we load it into Squirrel, but that doesn't count
17:51:58 <petern> 2TallTyler has a PR that adds one...
17:52:02 <TallTyler> I started working with JSON in #10409, but didn't choose a good library
17:52:32 <TrueBrain> for some reason I am expecting boost πŸ˜›
17:52:58 <TrueBrain> https://github.com/nlohmann/json is a bit the standard if you don't go for boost
17:53:09 <TrueBrain> I don't like that JSON library, as it is a fanboy of "STRICT JSON ONLY"
17:53:12 <TrueBrain> it is not useful
17:53:39 <TallTyler> If you add a library I would happily use it, but choosing one is probably out of my league for now
17:54:05 <TallTyler> That PR is on hold indefinitely waiting on a library solution πŸ™‚
17:54:07 <glx[d]> please not boost, grfcodec using it is enough
17:55:15 <dwfreed> boost is not bad if used sparingly
17:55:31 <TrueBrain> https://github.com/nlohmann/json is in vcpkg, so that would work fine
17:55:35 <glx[d]> the footprint just for a feature is huge
17:56:13 <TrueBrain> although you can also just use the single-header version, and vendor it in our code πŸ˜›
17:56:29 <glx[d]> (was talking about boost)
17:56:43 <TrueBrain> if you install boost properly, it is fine; you can cherry-pick the components
17:56:53 <TrueBrain> just most people don't know how, so yeah ... πŸ˜›
17:57:07 <TrueBrain> (including many package managers)
17:57:47 <petern> Using vcpkg is nice because then we don't have to maintain it.
17:57:52 <TrueBrain> I agree
17:58:10 <petern> And avoids customizing it and ending up completely different...
17:58:14 <andythenorth> JSON for GS - grf comms? πŸ˜›
17:58:19 <TrueBrain> looking at Squirrel now? πŸ˜„
17:58:19 <andythenorth> oh wait, no
17:58:33 <andythenorth> TOML anyone? πŸ˜›
17:58:46 <TrueBrain> I really need to talk to TallTyler to get kick rights on this Discord ...
17:58:55 <TrueBrain> 2 in one day ... this is getting worth the effort ... πŸ˜›
17:58:56 <glx[d]> https://gist.github.com/glx22/4a5156ea4dea82256bf67a4b37f8cd91 <-- and I just asked for bimap and assert
17:59:11 <TrueBrain> glx[d]: I rest my case πŸ™‚
17:59:27 <TrueBrain> there really is no need for that, in boost's world
17:59:32 <DorpsGek> [OpenTTD/OpenTTD] JGRennison opened pull request #10715: Fix #10707: Incorrect type of days_in_transit in CargoPacket constructor https://github.com/OpenTTD/OpenTTD/pull/10715
17:59:32 <andythenorth> you can't kick people for liking Boost
18:00:12 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #10715: Fix #10707: Incorrect type of days_in_transit in CargoPacket constructor https://github.com/OpenTTD/OpenTTD/pull/10715#pullrequestreview-1398544763
18:00:19 <TrueBrain> too bad no compiler complained about ^^
18:10:15 <TallTyler> Hmm, does ScriptDate:: just inherit all the OpenTTD data types? Is `ScriptDate::TimerGameCalendar::Date` a valid data type now?
18:12:21 <andythenorth> when train.py is 6148 lines...is that a god object? πŸ˜›
18:13:42 <andythenorth> on the other hand....it generates 223568 lines of nml
18:13:47 <andythenorth> so it's probably appropriate size
18:13:56 <andythenorth> one does not bring a knife to a gun fight
18:17:25 <TrueBrain> TallTyler: no, please don't πŸ˜›
18:17:28 <TrueBrain> but they remap, yes πŸ™‚
18:27:37 <TallTyler> How should I handle it instead?
18:29:08 <TrueBrain> keep the current ScriptDate::Date
18:29:09 <TrueBrain> that is fine
18:29:23 <TrueBrain> only replace the `::Date` πŸ™‚
18:29:52 <TrueBrain> the whole API creates his own namespace, which is used in all API functions
18:30:01 <TrueBrain> to make sure there is a good separation between scripts and the rest of the game
18:30:09 <TrueBrain> the implementation maps them back to internal structs
18:30:12 <TrueBrain> (or types)
18:30:39 <TrueBrain> so `ScriptDate::Date` is just fine πŸ™‚
18:33:43 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #10714: Codechange: revive STR_TINY_BLACK_COMMA from its coma https://github.com/OpenTTD/OpenTTD/pull/10714
18:35:26 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #10716: Change: Set baseset description & video driver info size after initial sizing. https://github.com/OpenTTD/OpenTTD/pull/10716
18:40:35 <DorpsGek> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://github.com/OpenTTD/OpenTTD/commit/27e9a799886171b7e360cde52a2c680995e2713a
18:40:36 <DorpsGek> - Update: Translations from eints (by translators)
18:40:56 <petern> Conflicts everywhere πŸ˜„
18:41:10 <TrueBrain> like a bossss
18:43:02 <TallTyler> Ugh, won't compile
18:43:36 <TallTyler> `'TimerGameCalendar': is not a class or namespace name` in `date_type.h`. It has the right #include, not sure what's going on...
18:44:16 <TallTyler> Those two header files #include each other, could that be a problem?
18:46:35 <TrueBrain> it generally is πŸ™‚
18:46:43 <TrueBrain> why would date_type need to use TimerGameCalendar?
18:47:01 <TrueBrain> owh, I get why
18:47:06 <TrueBrain> so the reverse question holds πŸ˜„
18:47:09 <TallTyler> It defines a bunch of consts
18:47:11 <TrueBrain> which might require moving one or two more things πŸ™‚
18:47:12 <TallTyler> The reverse is not needed
18:48:09 <TallTyler> There's some goofy shit going on here
18:55:21 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler merged pull request #10715: Fix #10707: Incorrect type of days_in_transit in CargoPacket constructor https://github.com/OpenTTD/OpenTTD/pull/10715
18:55:24 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler closed issue #10707: [Bug]: days_in_transit type in struct CargoPacket constructor is too small since PR #10596 https://github.com/OpenTTD/OpenTTD/issues/10707
18:56:11 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler opened pull request #10717: Codechange: Define Date/Year/Month/Day within TimerGameCalendar class https://github.com/OpenTTD/OpenTTD/pull/10717
18:56:26 <TallTyler> Now it's time for TrueBrain to tell me everything I did wrong πŸ˜›
18:58:04 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #10717: Codechange: Define Date/Year/Month/Day within TimerGameCalendar class https://github.com/OpenTTD/OpenTTD/pull/10717#pullrequestreview-1398624046
18:58:06 <TrueBrain> you did trigger my OCD, that is for sure
19:03:38 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler dismissed a review for pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710#pullrequestreview-1398277600
19:03:41 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710
19:05:00 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #10717: Codechange: Define Date/Year/Month/Day within TimerGameCalendar class https://github.com/OpenTTD/OpenTTD/pull/10717#pullrequestreview-1398633595
19:06:08 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710#issuecomment-1520682758
19:07:40 *** gelignite has quit IRC (Quit: Stay safe!)
19:15:26 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710#pullrequestreview-1398647548
19:31:45 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100142053083598848/image.png
19:31:45 <andythenorth> maybe I can drop the size suffix in the variants
19:31:48 <andythenorth> quite noisy
19:32:49 <petern> > WID_GO_DISTANCE_DROPDOWN, ///< Measuring unit dropdown.
19:33:00 <petern> Funny how that still exists but it doesn't exist πŸ˜„
19:33:43 <petern> andythenorth: Imagine if you had to find them under cargo subtype livery refitting shenanigans...
19:35:26 <andythenorth> triggered 😦
19:35:29 <andythenorth> now I won't sleep
19:36:18 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100143196610252850/image.png
19:36:18 <andythenorth> do we even need names?
19:41:33 <petern> Well
19:41:54 <petern> https://cdn.discordapp.com/attachments/1008473233844097104/1100144606496174101/image.png
19:41:54 <petern> That's quite smalle rnow.
19:42:16 * petern ponders losing some more things
19:43:32 <petern> https://cdn.discordapp.com/attachments/1008473233844097104/1100145021031829504/image.png
19:43:32 <petern> Surround-less tabs
19:43:55 <andythenorth> can it have a resize drag handle, or does that not work here?
19:44:14 <andythenorth> probably doesn't reflow?
19:44:25 <petern> Is it not big enough? :p
19:45:29 <petern> https://cdn.discordapp.com/attachments/1008473233844097104/1100145509466919043/image.png
19:45:29 <petern> "White" widgets, thats new.
19:46:11 <petern> Anyway, the resize drag handle doesn't really fit when you don't have a scrollbar or row of widgets along the bottom.
19:47:27 <petern> Look at it, just tacked there on the NewGRF settings and multiplayer window...
19:48:31 <andythenorth> petern: on small screens, it's possible to put interface size large enough that the window is mostly off screen
19:48:41 <andythenorth> but drag handle does not prevent that, silly idea
19:49:30 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100146520591966249/image.png
19:49:30 <andythenorth> this is probably an improvement
19:49:36 <petern> ...
19:49:42 <petern> What do you think the point of the tabs is?
19:49:44 <petern> https://cdn.discordapp.com/attachments/1008473233844097104/1100146578280431676/image.png
19:50:09 <andythenorth> I feel like I already went around this silly journey once πŸ˜›
19:50:17 <petern> You can of course put interface already up to 5x but then nothing fits ever.
19:50:18 <andythenorth> pls send help
19:50:22 <petern> Unless you have an 8K screen.
19:50:31 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100146776167694417/image.png
19:50:31 <andythenorth> meanwhile
19:50:36 <andythenorth> less parentheses
19:51:00 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100146898251300884/image.png
19:51:39 <petern> Doesn't that get annoying when you start buying them?
19:55:06 <andythenorth> callback innit πŸ™‚
19:55:34 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100148046337155202/image.png
19:55:42 <petern> No I mean, you buy the dual-head part, and fill it with coaches, and now the engine part has moved away...
19:57:51 <petern> Okay, traditional small-buttons-at-the-bottom style tabs work but are definitely too small for game options tabs.
19:57:54 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100148632767959070/image.png
19:57:54 <andythenorth> well yes
19:58:01 <andythenorth> TBH, I had not tested this πŸ˜„
19:58:07 <andythenorth> these are the things
19:58:36 <andythenorth> going to live with that for now
19:58:50 <andythenorth> at some point maybe we extend a var for the context, like string
19:58:53 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler merged pull request #10710: Cleanup: Don't use a magic number when closing processing industries https://github.com/OpenTTD/OpenTTD/pull/10710
19:59:27 <petern> I don't think a variable for "which engine should be bought" makes much sense.
19:59:51 <andythenorth> something else was proposed, a flag to not change to 'last built' or something?
19:59:52 <andythenorth> dunno
19:59:57 <andythenorth> it's a nice adventure
20:00:14 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100149220054401064/image.png
20:00:14 <andythenorth> I think this is also an improvement
20:00:33 <petern> I'm not sure "proposed" so much as "mumbles that it doesn't do that and then nothing else"
20:01:14 <andythenorth> flying the plane while rebuilding the plane...
20:04:16 <petern> Can you edit hotkeys in game? I'm assuming no :p
20:04:22 <andythenorth> I never found a way πŸ˜›
20:05:03 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100150432338292786/image.png
20:05:03 <andythenorth> randomised is getting clipped less now
20:05:17 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100150493046648832/image.png
20:05:17 <andythenorth> previously they were all like this
20:06:38 <andythenorth> some renaming to do also
20:17:07 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100153471224786944/image.png
20:17:07 <andythenorth> yellow ones? πŸ˜›
20:17:19 <petern> Frogs.
20:17:55 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100153671360204951/p301162476-3.png
20:18:06 <andythenorth> they are quite froggy
20:18:30 <petern> Frog Wagons (Small)
20:18:38 <petern> Silo Frogs (Small)
20:18:42 <petern> Frog Frogs (Frog)
20:18:42 <andythenorth> Frogger
20:18:50 <andythenorth> GS?
20:25:52 <andythenorth> maybe I should nest everything 2 levels deep πŸ˜›
20:25:53 <andythenorth> nah
20:26:15 <petern> I think up to 10 may "work"
20:26:23 <petern> Dunno why you would...
20:26:29 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100155828679487519/image.png
20:26:29 <andythenorth> is 'mixed' better than 'randomised'?
20:28:09 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100156247359099011/image.png
20:28:09 <andythenorth> also maybe we don't need to know about 'Curtain Side Van'
20:29:16 <petern> It's shorter.
20:29:19 <andythenorth> wonder if my code supports chaining randomised to randomised
20:29:29 <andythenorth> currently it's a flat list of random candidates
20:29:50 <andythenorth> and the graphics action 2 chain branches to the chain for the selected candidate
20:30:13 <andythenorth> maybe the candidates could also be randomised wagons
20:30:37 <petern> 255 (concurrent) varactions is enough for anyone
20:31:08 <andythenorth> I had a stupid idea, a vehicle which is just a virtual shell, with a pointer to another real vehicle
20:31:14 <andythenorth> and the pointer can be randomised on build πŸ˜›
20:43:19 *** nielsm has quit IRC (Ping timeout: 480 seconds)
20:48:03 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100161253978153081/image.png
20:48:03 <andythenorth> not sure the blue wagons add much
20:48:06 <andythenorth> might be disruptive
20:50:23 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1100161843550486558/21061020HELJAN205027_11.png
20:50:23 <andythenorth> such realism though
20:54:22 <petern> Looks nice
20:54:32 <petern> Much variety
20:58:59 *** _aD has joined #openttd
21:19:23 <andythenorth> sleep
21:25:43 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:00:57 *** keikoz has quit IRC (Ping timeout: 480 seconds)
22:10:22 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
22:20:11 <dP> is 10709 a reaction to Spiff's tournament? 😜
22:22:20 <dP> ah, no announcement was a bit later
22:23:31 <dP> anyway removing shares the same day it's announced that 100-player tournament will be centered on buying shares is totally awkward...
22:28:35 <Rubidium_> maybe it's a farewell game for the shares
22:32:25 <dP> I guess I'll try to abuse the heck out of shares so they won't be missed xD
22:33:06 <dP> they changed some mechanics though so who knows, maybe it'll actually be good
23:15:29 *** TROILUS has quit IRC (Quit: Ping timeout (120 seconds))
23:20:44 *** TROILUS has joined #openttd
23:41:41 <glx[d]> https://github.com/OpenTTD/OpenTTD/compare/master...glx22:OpenTTD:nml <-- still a lot to do, but nmlc happily compiles the converted parts (after some `cpp -E` and encoding fixing in editor)
23:51:03 <DorpsGek> [OpenTTD/OpenTTD] vituscze commented on pull request #10623: Remove: Settings for NPF & YAPF https://github.com/OpenTTD/OpenTTD/pull/10623#issuecomment-1520960067