Config
Log for #openttd on 26th June 2023:
Times are UTC Toggle Colours
01:14:47  *** Soni has quit IRC
01:42:14  *** Wormnest has quit IRC
01:56:40  *** Kitrana has quit IRC
01:57:12  *** Kitrana has joined #openttd
01:58:25  *** Kitrana has quit IRC
02:01:13  *** Kitrana has joined #openttd
02:34:47  *** D-HUND has joined #openttd
02:38:10  *** debdog has quit IRC
02:57:43  *** Soni has joined #openttd
03:34:40  *** Flygon has joined #openttd
03:47:26  *** pixel_snjy has joined #openttd
03:48:56  *** pixel_snjy has left #openttd
04:07:13  *** keoz has joined #openttd
04:15:48  *** tokai|noir has joined #openttd
04:15:48  *** ChanServ sets mode: +v tokai|noir
04:22:47  *** tokai has quit IRC
05:32:38  <andythenorth> usually I can find an example in an existing GS
05:33:10  <andythenorth> these flags are too new for that πŸ˜›
05:48:21  <pickpacket> dP: is it even possible to run a deficit low enough to underflow without going bankrupt?
05:50:17  *** keoz has quit IRC
06:02:56  *** D-HUND is now known as debdog
07:08:52  <peter1138> Hmm. Selecting fallback font by "family, style" is gives me a sans-serif font for Chinese Simplified and a serif font for Chinese Traditional. Oy...
07:22:04  <peter1138> Searching for the heaviest weight is not ideal, as that may be bolder than bold...
07:22:55  *** keoz has joined #openttd
07:37:54  <dP> pickpacket: well, idk, they were for sure running deficit for 20 years
07:38:07  <dP> but it was not that big until it wasn't
07:38:21  <dP> missed the time yesterday, will start replay again
07:38:37  <dP> hopefully it'll show something
07:40:32  *** keoz has quit IRC
08:00:57  <pickpacket> I thought you went bankrupt after a few months of deficit
08:01:15  <pickpacket> how do get a replay of the game?
08:15:00  <peter1138> Save every issued network command
08:16:00  <peter1138> (And make sure you play it back in exactly the same version)
08:19:45  <pickpacket> oh! didn't know it was a multiplayer game
08:20:34  <peter1138> Well, you can remove the word "network" and it's the same principle.
08:20:55  <peter1138> Commands are issued at specific points, so if you record them, you can replay them.
08:21:51  *** shoter has joined #openttd
08:21:51  <shoter> I am a developer of admin port library for OpenTTD and I am wondering if there is any workflow to know in advance that admin port network version is going to change.
08:21:51  <shoter> For example I've just found by accident that this PR - https://github.com/OpenTTD/OpenTTD/pull/10709 changes structure of some packets and makes protocol backwards incompatible.
08:21:51  <shoter> Is there a way to know in advance when NETWORK_GAME_ADMIN_VERSION changes?
08:22:21  <pickpacket> peter1138: how do you record those commands?
08:25:47  <LordAro> pickpacket: desync debug mode is the vanilla way of doing it
08:26:00  <LordAro> i believe dP has some sort of custom implementation though
08:30:42  <LordAro> shoter: as far as i know, the answer is "no". admin port format is strongly linked to the command format... which is very version specific
08:30:46  <LordAro> we're aware this isn't great
08:35:16  <pickpacket> follow PR discussions on github, maybe?
08:35:48  <LordAro> that's a terrible answer
08:36:12  <pickpacket> it is
08:36:26  <pickpacket> but based on what you said I assume it's the best way
08:36:37  <m3henry> jank but improved answer, pull the commit history and grep the log for changes to that line
08:38:45  <LordAro> m3henry: NETWORK_GAME_ADMIN_VERSION isn't the only indicator of compatibility though
08:38:55  <LordAro> that just defines the format version
08:38:58  <LordAro> iirc
08:39:21  <m3henry> what are the other ones?
08:39:32  <LordAro> well there isn't one
08:39:49  <LordAro> it's just "does the function signature of any of these functions change"
08:40:47  <dP> yeah, technically any change to any command parameters affects admin protocol in some way
08:40:58  <dP> though I think there was a warning somewhere that they're not stable
08:41:09  <shoter> I did not need any particular change on my end usually if packets remain the same. It is first time in few years when I am forced to make a change to accomodate new version of admin port
08:44:26  <dP> oh, 10709 changed command enum, yeah, that's kind of annoying...
08:49:36  <truebrain> shoter: honestly, we should have changed the admin-version; seems nobody realised that at the time πŸ™‚
08:49:54  <truebrain> owh, we did
08:49:57  <truebrain> w00p, we did realise \o/
08:50:00  <shoter> Yeah it was changed
08:50:04  <shoter> so at least that's good πŸ˜„
08:50:04  <truebrain> sometimes I am amazed ....
08:50:11  <peter1138> Huh, why is this if condition not working :/
08:50:42  <truebrain> we once tried a maillist to inform people, but as we change things so rarely, it never really worked
08:50:48  <peter1138> `if (href) { console.log(!href); }` is logging `false`
08:51:12  <truebrain> be more explicit in your if-statement! πŸ™‚
08:51:19  <peter1138> Yeah it would log false...
08:51:45  <truebrain> like `if (!!href)` πŸ˜›
08:51:50  <truebrain> (which is terribly Javascript btw)
08:52:06  <peter1138> Okay!
08:52:20  <truebrain> `if (1) console.log(!1) ` logs false too btw πŸ™‚
08:52:22  <peter1138> It seems the value is "undefined" instead of being actually undefined.
08:53:44  <peter1138> Yeah, but test of the if was wrong, and yet I noticed that just after posting it...
08:54:04  <truebrain> we are awesome rubber duckies πŸ™‚
08:54:16  <peter1138> So it's "undefined" but not undefined. Great, javascript...
08:54:57  <truebrain> be be explicit, be explicit! πŸ˜› It is more common to do things like `if (href === undefined)` or `if (href !== undefined)` .. the `if (href)` is just not that common to use, honestly πŸ™‚
08:55:24  <truebrain> I only know of Python that has `if href:` strongly defined .. most other languages have weird edgecases πŸ˜›
08:56:50  <peter1138> That's what I mean. `if (href === undefined)` isn't matching, but `if (href == 'undefined')` is
08:57:36  <truebrain> lol .. that is just .. annoying πŸ˜„
08:57:44  <shoter> truebrain: Btw why are people doing in OpenTTD code `!!boolean_value`?
08:57:44  <shoter> Is it to ensure that `!!boolean_value` has either `0` or `1`? Because `true` can be anything else than `0`
08:58:06  <shoter> I was just so suprised by such if statement that I tried to understand why is it being done in such way
08:58:08  <pickpacket> Yes
08:58:23  <pickpacket> it’s a common thing in C as well
08:58:33  <truebrain> it is old C in most cases; these days we tend to be more explicit
08:58:44  <truebrain> as changing "some integer" to a boolean is rarely a good idea πŸ™‚
08:58:56  <truebrain> (there are exceptions; but back in the C-day it was much more common)
08:59:36  <m3henry> A colleague of mine had never seen it before last week, which I found rather suprising
09:00:01  <m3henry> He's not a greybeard, but definitely a fair few years my senior
09:00:14  <shoter> In my field of work (C#) I've never seen such statement
09:01:22  <truebrain> shoter: and keep it that way πŸ˜›
09:01:33  <andythenorth> lol if only I'd cargo-culted my own test code πŸ˜› https://github.com/andythenorth/firs/blob/gs-is-real/src/gs/gs_templates/temp_prototyping.pynut#L12
09:04:38  <pickpacket> ”pynut”?
09:04:52  <peter1138> And of course, it's because I stored undefined in a place (dataset) that only understands strings.
09:06:14  <pickpacket> m3henry, shoter: I saw it a few times in old C projects some 15 years ago. It’s not something you do in modern languages like C#, or modern projects in any language for that matter
09:11:30  *** m3henry has quit IRC
09:18:59  <andythenorth> pickpacket: python that generates squirrel
09:20:44  <truebrain> nuts man
09:43:07  <peter1138> "Oh cool, this nearly works now" "Oh crap, keyboard input..."
09:43:48  <peter1138> Fuck browsers, I shouldn't have to implement nice UI myself 😭
09:46:41  * pickpacket pats peter1138 
09:47:08  <pickpacket> https://floss.social/@tinyrabbit/110606541593748309
09:47:39  <pickpacket> my friends keep telling me I should get a new computer. I don't understand why.
09:49:48  <peter1138> Being able to use a good development environment simplifies 1, 2 and 3 in one go.
09:54:47  <pickpacket> of course it does :D
09:55:02  <peter1138> Ah yes, and `<optgroup>` doesn't support nesting.
10:33:50  <Eddi|zuHause> ask andy about compile times
10:34:23  <andythenorth> cycle times are one of the highest impact items for development
10:34:51  <andythenorth> some programmers are able to hold all the state in their head, and only need to compile once an hour
10:35:10  <andythenorth> so a 10 minute compile is fine, coffee break, eye rest, thinking time
10:35:57  <andythenorth> but for anything with interfaces, e.g. network code, remote data fetch/store, and above all UI
10:36:05  <andythenorth> rapid cycles are essential
10:36:42  <andythenorth> oops, I did serious, sorry 😦
10:36:58  <andythenorth> peter1138: selects are horrific, but at least they're simple πŸ˜›
10:37:12  <peter1138> They're too simple, that's the problem.
10:38:17  <peter1138> Well, not long til breaklunchfast.
10:38:35  <andythenorth> I had cheese and a orange
10:53:58  <Eddi|zuHause> could be worse, could be fastlunchbreak
11:31:54  <peter1138> Normally :/
11:32:08  *** keoz has joined #openttd
11:33:22  <peter1138> Alright, I have sausage roll and... a salad.
11:46:47  <DorpsGek> [OpenTTD/OpenTTD] Notts90 commented on issue #10832: Licensing issue - GPL violation by chinese on Apple Store https://github.com/OpenTTD/OpenTTD/issues/10832
12:17:28  <pickpacket> what do you guys do for a living?
12:18:10  <pickpacket> I'm a devops engineer, whatever that means. Today it means that I'm trying to stay awake watching Azure classes. And they use *powershell*... eeeewwwww...
12:24:37  <peter1138> I wish I knew
12:34:49  <pickpacket> lol
12:35:09  <pickpacket> peter1138: full time OpenTTD dev? ;)
12:36:58  <Eddi|zuHause> what exactly is the definition of "a salad"? a mix of foods that isn't cooked?
12:37:14  <truebrain> something that suggests healthy
12:37:54  <Eddi|zuHause> i know plenty of "salads" that are probably not "healthy"
12:38:11  <peter1138> For me it's something that has lettuce of some variety as its basis.
12:38:20  <peter1138> But, yeah "pasta salad" is anything but.
12:40:29  <Eddi|zuHause> uhm, the pasta better be cooked before being mixed in :p
12:42:57  <peter1138> One would hope.
12:52:12  <shoter> pickpacket: C# Dev
13:00:15  <andythenorth> ham salad
13:21:07  <Eddi|zuHause> well, we have this "meat salad": https://www.chefkoch.de/rezepte/989911204216460/Fleischsalat-wie-vom-Metzger.html
13:29:21  <peter1138> Looks similar (but not the same) to carbonara
13:31:16  <Rubidium_> there 2023-06-26T22:43:01  <truebrain> funny, it works when I test it locally πŸ˜„
22:45:34  <truebrain> I see zero reason why this wouldn't work on production .. lol
22:47:15  *** kamnet has joined #openttd
22:47:15  <kamnet> _jgr_: I was as well. I was surprised nobody else snagged kamnet - in Asia it's a hugely popular name.
22:47:21  <truebrain> now I am a bit afraid what kind of Discord weirdness this is ...
22:47:39  <truebrain> hmm ... can I get my test-bot in here for a bit .. I guess I can ..
22:49:28  <truebrain> right ...
22:49:31  <truebrain> that failed πŸ˜„
22:50:52  <truebrain> you can't have two bots with the same identifier active at the same time, ofc πŸ™‚
22:53:46  *** Soni has quit IRC
22:54:49  *** Soni has joined #openttd
22:56:08  *** m3henry has joined #openttd
22:58:37  <truebrain> meh; in general this username has been a bit of an issue ofc ... let me try to make a change, and we can see if we like it or not
23:00:19  <truebrain> owh, I am a peanut .. I was testing the wrong thing.. haha; owh well, nevertheless ..
23:00:54  <truebrain> indeed, I cannot join IRC with a `_` as start of my nickname
23:03:48  <truebrain> dwfreed: turns out, it is not allowed in the ident
23:04:39  <truebrain> `(Invalid username [~_test])`
23:04:43  <truebrain> you get when you try πŸ™‚
23:05:23  *** glx has joined #openttd
23:05:23  *** ChanServ sets mode: +v glx
23:05:25  <truebrain> and this IRC library uses your nickname as username, which seems like a sane thing to do
23:05:29  <truebrain> but ... yeah ... you can't πŸ˜„
23:05:46  <truebrain> luckily for me, there is another bug in my code, which prevents these connections from retrying
23:06:29  *** glx is now known as _glx
23:07:20  <_glx> ah yeah even with this alternate nick I still use glx as username
23:07:22  <truebrain> so basically, in `USER`, it cannot start with a `_` .. I wonder if there are other rules ..
23:09:56  *** _glx has quit IRC
23:12:10  <truebrain> from what I can read in the RFC, it should be allowed, to have a username start with a `_`
23:12:16  <truebrain> seems usernames are more relaxed than nicknames even
23:13:45  <truebrain> hmm, no, seems the specs are just a bit ambigious, and they don't actually define the limitations of `username` (or `user`, depending on which RFC you look at)
23:13:50  <truebrain> great! So I don't know what to filter for πŸ™‚
23:14:07  <truebrain> dwfreed: would you happen to have an idea what is allowed and what is not?
23:14:30  <truebrain> is stripping out `_` alone enough?
23:19:15  <truebrain> I think you can have more than one user with the same username on IRC
23:19:43  <truebrain> yeah, DorpsGek exists 3 times with the same username
23:20:50  <DorpsGek> [OpenTTD/dibridge] TrueBrain opened pull request #194: fix(irc): usernames are not allowed to start with _ https://github.com/OpenTTD/dibridge/pull/194
23:21:57  <DorpsGek> [OpenTTD/dibridge] TrueBrain opened pull request #195: fix(irc): crash when server disconnects before first full connect https://github.com/OpenTTD/dibridge/pull/195
23:22:26  <truebrain> could really use some expert input on #194, as I am rather unsure if there are additional constraints πŸ™‚
23:22:59  <truebrain> In other news, for when I am done with the infra migration, I think I found a nice way to get us all back our correct names (`TrueBrain`, `glx`, `peter1138`, etc).
23:23:02  <peter1138> "x=x" vs "x = x" bugs me πŸ˜‰
23:23:18  <truebrain> as on Discord we now have a concept called "global usernames"
23:23:25  <truebrain> peter1138: write an angry letter to Guido πŸ˜›
23:23:36  <DorpsGek> [OpenTTD/dibridge] glx22 approved pull request #194: fix(irc): usernames are not allowed to start with _ https://github.com/OpenTTD/dibridge/pull/194#pullrequestreview-1499699123
23:24:28  <peter1138> Yeah, I figured it was a language constraint, as I can't imagine you doing that otherwise!
23:24:35  <truebrain> πŸ™‚
23:25:30  <DorpsGek> [OpenTTD/dibridge] glx22 approved pull request #195: fix(irc): crash when server disconnects before first full connect https://github.com/OpenTTD/dibridge/pull/195#pullrequestreview-1499700257
23:25:52  <DorpsGek> [OpenTTD/dibridge] TrueBrain merged pull request #194: fix(irc): usernames are not allowed to start with _ https://github.com/OpenTTD/dibridge/pull/194
23:26:08  <truebrain> if there are more conditions, we will add them .. but let's first get everyone to talk on IRC again πŸ˜›
23:26:34  <DorpsGek> [OpenTTD/dibridge] TrueBrain merged pull request #195: fix(irc): crash when server disconnects before first full connect https://github.com/OpenTTD/dibridge/pull/195
23:26:54  <DorpsGek> [OpenTTD/dibridge] TrueBrain created new tag: v1.3.2 https://github.com/OpenTTD/dibridge/releases/tag/v1.3.2
23:30:14  <truebrain> so bridge will reset in a sec .. let's hope everyone can read what _glx_ writes after πŸ˜›
23:31:54  <truebrain> not YET πŸ˜› It is slow πŸ™‚
23:32:09  <truebrain> just wait for the massive IRC disconnects πŸ˜„
23:33:33  *** andythenorth has quit IRC
23:33:33  *** olionkey[d] has quit IRC
23:33:33  *** shoter has quit IRC
23:33:33  *** peter1138 has quit IRC
23:33:33  *** frosch123 has quit IRC
23:33:33  *** dP has quit IRC
23:33:33  *** michi_cc[d] has quit IRC
23:33:33  *** sinas128 has quit IRC
23:33:33  *** jfs has quit IRC
23:33:33  *** emperorjake has quit IRC
23:33:33  *** kamnet has quit IRC
23:33:33  *** talltyler has quit IRC
23:33:33  *** truebrain has quit IRC
23:33:33  *** DorpsGek_v has quit IRC
23:33:49  *** DorpsGek_v has joined #openttd
23:33:54  *** truebrain has joined #openttd
23:33:54  <truebrain> right
23:34:05  <truebrain> talk ! TAAALLLKKK ! πŸ˜›
23:34:30  <truebrain> darn it ... still nothing?
23:34:32  <truebrain> wth πŸ˜›
23:37:52  <DorpsGek> [OpenTTD/team] glx22 commented on issue #432: [cy_GB] Translator access request https://github.com/OpenTTD/team/issues/432
23:38:01  <DorpsGek> [OpenTTD/dibridge] TrueBrain opened pull request #196: fix(irc): also remove _ from username for puppets https://github.com/OpenTTD/dibridge/pull/196
23:38:06  <truebrain> developing this late is not smart πŸ˜›
23:38:20  <truebrain> I can't test this code currently, but "it looks fine" πŸ™‚
23:39:55  <truebrain> and if the IRC ghost agrees with that statement, we are just going to roll it out to production and see what it does πŸ™‚
23:40:05  <DorpsGek> [OpenTTD/dibridge] glx22 approved pull request #196: fix(irc): also remove _ from username for puppets https://github.com/OpenTTD/dibridge/pull/196#pullrequestreview-1499709713
23:40:16  <DorpsGek> [OpenTTD/dibridge] TrueBrain merged pull request #196: fix(irc): also remove _ from username for puppets https://github.com/OpenTTD/dibridge/pull/196
23:40:29  <DorpsGek> [OpenTTD/dibridge] TrueBrain created new tag: v1.3.3 https://github.com/OpenTTD/dibridge/releases/tag/v1.3.3
23:41:24  <truebrain> so 5 more minutes _glx_ , and you should have a voice again πŸ˜›
23:42:13  <truebrain> what is funny is that highlights are translated to your IRC nick
23:42:17  <truebrain> but you just aren't there πŸ˜›
23:44:30  <truebrain> it will find a valid name πŸ˜‰
23:45:09  <truebrain> yeah, and after that it starts to add numbers
23:45:12  <truebrain> it will find a valid name πŸ™‚
23:45:46  <truebrain> on IRC it looks like I am talking to myself; a normal day in the office, basically πŸ˜›
23:45:50  *** DorpsGek_v has quit IRC
23:45:50  *** truebrain has quit IRC
23:46:05  *** DorpsGek_v has joined #openttd
23:46:11  *** truebrain has joined #openttd
23:46:11  <truebrain> right ..
23:46:13  <truebrain> how abou tnow?
23:46:32  <truebrain> think carefully about your first words πŸ˜„
23:46:33  *** _glx_ has joined #openttd
23:46:33  <_glx_> silent voice
23:46:39  <truebrain> there we go
23:46:41  <truebrain> good πŸ™‚
23:46:54  <truebrain> stupid IRC and its little rules ....
23:47:17  <truebrain> right, way too late ... time to get some sleep!
23:47:52  <_glx_> oh but indeed `glx` as discord username would have been fine (it was fine with glx#7256)
23:48:27  <truebrain> the important thing is that you can talk with LordAro again πŸ˜„
23:48:40  <_glx_> and eddi
23:49:16  <_glx_> strange it was not noticed earlier
23:51:44  <truebrain> most talk is between Discord users these days .. so that might have been part of it
23:51:59  <_glx_> oh the restart of thursday killed me
23:52:03  <truebrain> but yeah .. you lost your voice on IRC 5 days ago .. sorry mate .. did not expect there to be different rules for `username` πŸ˜›
23:52:33  <_glx_> https://weblogs.openttd.org/openttd/2023/06/22.html#034522-35 <-- there πŸ™‚
23:52:40  <truebrain> yup
23:52:43  <truebrain> #feelsbadbro
23:52:45  <truebrain> anyway, zzz

Powered by YARRSTE version: svn-trunk