IRC logs for #openttd on OFTC at 2024-03-14
β΄ go to previous day
00:56:03 *** Flygon has quit IRC (Remote host closed the connection)
01:38:34 *** Wormnest has quit IRC (Quit: Leaving)
01:48:08 *** tokai|noir has joined #openttd
01:48:08 *** ChanServ sets mode: +v tokai|noir
01:54:59 *** tokai has quit IRC (Ping timeout: 480 seconds)
02:27:26 <dwfreed> truebrain: oh, yes, forgot about that; could you email support@ just so we have an email address to contact you if needed? (or if you don't care, you can just share your email here)
02:50:37 <siciuvatiresubumbras> ^ as noted there I'm not at all sold on whether `std::shared_ptr` is needed for that, expert opinions welcome π
02:57:06 *** Leopold has quit IRC (Ping timeout: 480 seconds)
02:57:36 <_glx_> maybe finding a proper container would be better
03:01:47 *** Leopold_ has joined #openttd
03:03:31 *** Leopold_ has quit IRC (Remote host closed the connection)
03:04:06 *** keikoz has quit IRC (Ping timeout: 480 seconds)
03:04:08 *** Leopold_ has joined #openttd
03:11:07 *** gnu_jj_ has quit IRC (Ping timeout: 480 seconds)
03:14:08 <siciuvatiresubumbras> yeah, less-tired me will try and come up with something better
03:22:42 *** wallabra has joined #openttd
03:37:59 *** debdog has quit IRC (Ping timeout: 480 seconds)
04:41:18 <DorpsGek> - Update: Translations from eints (by translators)
05:13:58 *** D-HUND is now known as debdog
06:03:11 *** tramrider has joined #openttd
06:06:18 <tramrider> Is there any helper function to get the x,y,z coordinates of a tile given the TileIndex?
06:11:06 <locosage> z in coming from height map but there are several functions for that too
06:12:27 <tramrider> Thankyou! I shouldn't need Z in this scenario. I'm just working within roadstop tile(s).
06:44:27 <truebrain> dwfreed: truebrain at openttd dot org will do fine. Tnx π
06:45:06 <dwfreed> You've got the whole /64, right? even though you use like an /80 for the discord bridge
06:45:39 <dwfreed> ack, will adjust in a few minutes
07:03:23 <dwfreed> truebrain: you now have effectively unlimited connections
07:04:06 <truebrain> Awesome, tnx π that should prevent people from not being able to speak π
07:04:56 <truebrain> Will restart the bridge in a sec, as my bot won't reconnect the puppets in its own π
07:07:47 *** lapingvino has quit IRC (Remote host closed the connection)
07:07:47 *** drludde has quit IRC (Remote host closed the connection)
07:07:47 *** sherlockholmes1904 has quit IRC (Remote host closed the connection)
07:07:47 *** merni has quit IRC (Remote host closed the connection)
07:07:47 *** coil has quit IRC (Remote host closed the connection)
07:07:47 *** rutoks has quit IRC (Remote host closed the connection)
07:07:47 *** klote has quit IRC (Remote host closed the connection)
07:07:47 *** jfs has quit IRC (Remote host closed the connection)
07:07:47 *** ogi300 has quit IRC (Remote host closed the connection)
07:07:47 *** ajmiles has quit IRC (Remote host closed the connection)
07:07:47 *** emperorjake has quit IRC (Remote host closed the connection)
07:07:47 *** bendn has quit IRC (Remote host closed the connection)
07:07:47 *** habicuela has quit IRC (Remote host closed the connection)
07:07:47 *** tony_pixel has quit IRC (Remote host closed the connection)
07:07:47 *** kamnet has quit IRC (Remote host closed the connection)
07:07:47 *** dwfreed[d] has quit IRC (Remote host closed the connection)
07:07:47 *** sam_chug has quit IRC (Remote host closed the connection)
07:07:47 *** clark_l has quit IRC (Remote host closed the connection)
07:07:47 *** xarothbrook has quit IRC (Remote host closed the connection)
07:07:47 *** nanapipirara has quit IRC (Remote host closed the connection)
07:07:47 *** lea001 has quit IRC (Remote host closed the connection)
07:07:47 *** reldred has quit IRC (Remote host closed the connection)
07:07:47 *** brickblock19280 has quit IRC (Remote host closed the connection)
07:07:47 *** michi_cc has quit IRC (Remote host closed the connection)
07:07:47 *** _zephyris has quit IRC (Remote host closed the connection)
07:07:47 *** frosch123 has quit IRC (Remote host closed the connection)
07:07:47 *** _jgr_ has quit IRC (Remote host closed the connection)
07:07:47 *** kuhnovic has quit IRC (Remote host closed the connection)
07:07:47 *** xarick has quit IRC (Remote host closed the connection)
07:07:47 *** belajalilija has quit IRC (Remote host closed the connection)
07:07:47 *** rau117 has quit IRC (Remote host closed the connection)
07:07:47 *** wensimehrp has quit IRC (Remote host closed the connection)
07:07:47 *** locosage has quit IRC (Remote host closed the connection)
07:07:47 *** andythenorth has quit IRC (Remote host closed the connection)
07:07:47 *** siciuvatiresubumbras has quit IRC (Remote host closed the connection)
07:07:47 *** peter1138 has quit IRC (Remote host closed the connection)
07:07:47 *** jepeswe has quit IRC (Remote host closed the connection)
07:07:47 *** _glx_ has quit IRC (Remote host closed the connection)
07:07:47 *** talltyler has quit IRC (Remote host closed the connection)
07:07:47 *** DorpsGek_vi has quit IRC (Remote host closed the connection)
07:07:47 *** teifion has quit IRC (Remote host closed the connection)
07:07:47 *** tycekcz has quit IRC (Remote host closed the connection)
07:07:47 *** alfagamma7 has quit IRC (Remote host closed the connection)
07:07:47 *** truebrain has quit IRC (Remote host closed the connection)
07:07:47 *** johnfranklin has quit IRC (Remote host closed the connection)
07:07:47 *** mnhebi has quit IRC (Remote host closed the connection)
07:07:47 *** matusguy has quit IRC (Remote host closed the connection)
07:07:47 *** ahyangyi has quit IRC (Remote host closed the connection)
07:07:52 *** DorpsGek_vi has joined #openttd
07:08:43 *** truebrain has joined #openttd
07:08:43 <truebrain> That is a long list ... seems thr Discord is getting more and more popular π
07:13:01 <SpComb> someone is still directly on IRC?
07:15:46 <truebrain> most of them never spoken like ever, but yes π
07:16:17 <dwfreed> Discord is worse for that :P
07:16:43 <truebrain> owh, yes, absolutely
07:16:50 <truebrain> I myself am in several Discord where I have never spoken π
07:17:46 <dwfreed> 9,355 people on the openttd discord
07:17:51 <Ox7C5> Considering everyone and their grandmother has a "server" for something, I suppose most of them are without activity, just people lurking
07:18:14 <truebrain> pretty much like IRC π
07:18:19 <truebrain> some things just don't change π
07:18:44 <dwfreed> dude, if I shot the matrix bridge in the head, only about 1,000 people would actually be affected, and we'd lose 20,000 users
07:19:05 <truebrain> but what Matrix Bridge does is just insanity
07:19:13 <dwfreed> out of 31,000 total users
07:21:13 <Ox7C5> Just out of curiosity, but you're using Matrix Bridge between this channel and a Discord channel?
07:21:33 <Ox7C5> Can a dumdum with limited programming experience set that up? Or does it require some actual knowledge?
07:21:37 <truebrain> no; very delibrately, I am not π
07:22:00 <truebrain> as otherwise we would add 9000 people to the IRC channel
07:22:08 <truebrain> for absolutely zero reason π
07:22:25 <truebrain> it only connects people to IRC who actually talk on Discord
07:22:31 <Ox7C5> Mmm, okay. So the people connected to this channel is through IRC only then
07:22:38 <truebrain> on Discord all 9000 can lurk; but only when you talk, you become visible on IRC
07:23:05 *** reldred has joined #openttd
07:23:05 <reldred> /me materializes out of thin air
07:23:45 <Ox7C5> Nice. Will have a look at the repo and see if I could use it for my limited needs
07:24:23 <truebrain> it works for the use-case: bridge a single Discord channel with a single IRC channel
07:24:38 <truebrain> it doesn't do multi-channel, well, you will need to run more than one bridge for that
07:24:51 <reldred> It's a nice solution. Works well for the OTTD communities needs at least.
07:25:42 <truebrain> it avoids us being split π
07:27:29 <Ox7C5> Right. That'd be my use case as well, so that's perfect. I'm trying to avoid Discord as best as I can, but if I could interact with it through IRC, that'd be perfect
07:27:33 <Ox7C5> Thanks for the link and all
07:31:26 * aperezdc used to connect through Matrix, went back to using IRC + bouncer about a month back after being fed up with a mediocre experience
07:33:00 <truebrain> Try out Discord; free bouncer, infinite history, and still the "same" experience! π
07:33:18 <truebrain> (and if I would have added a link, I would have been banned for being a hijacked account spamming ads π )
07:39:29 <aperezdc> nah, not touching Discord with a ten foot pole
07:40:11 *** andythenorth has joined #openttd
07:40:11 <andythenorth> best not to, you will turn into a goblin at midnight if you do
07:40:22 <andythenorth> or alternatively, it's just another chat app, running in your browser
08:31:57 *** peter1138 has joined #openttd
08:38:06 <peter1138> Breakfast is served.
08:40:48 <LordAro> only a dribble of milk left :(
08:40:52 <LordAro> very dry weetabix this morning
08:51:51 <peter1138> Black coffee doesn't stop the tummy rumbles :S
08:52:10 <peter1138> We've got too much milk.
09:06:50 *** kuhnovic has joined #openttd
09:06:50 <kuhnovic> peter1138: In my case it causes the tummy rumbles
09:14:22 *** juzza1 has quit IRC (Quit: leaving)
09:18:07 <dwfreed> truebrain: when you have time, could you do me a favor and have the bridge select an IP to connect to at random? Some fucking moron who wrote the address selection RFC decided that DNS round-robins weren't important
09:19:00 <truebrain> yeah, sure. Not sure how to do that yet, but I will look into it
09:19:21 <truebrain> (as I don't resolve the DNS myself)
09:19:44 <dwfreed> yeah, you'd probably have to do that and pass IPs to whatever you're using for an IRC core
09:20:13 <truebrain> but yeah, it is still kinda funny that DNS "round robin" on most OSes is just: try the first IP first, if that fails, try the second π
09:20:36 <dwfreed> Well, that's not really an issue, because DNS randomizes address order
09:20:39 <truebrain> what-ever "irc.oftc.net" returns is a good enough of an IP pool to connect to?
09:21:05 <dwfreed> but then the address ordering algorithm fucking sorts them...
09:21:08 <peter1138> Ah yes, the people who think round-robin DNS is pointless because you should just have a load balancer, like that covers all use-cases.
09:21:44 <dwfreed> peter1138: nobody uses anything other than port 443 though!
09:21:45 <truebrain> ah, I see a TTL of 60s on the DNS
09:22:06 <dwfreed> yeah, really low TTL because we have a bot that manipulates the records regularly based on user counts
09:22:38 <truebrain> so wouldn't picking the first value it returns be the best pick?
09:23:03 <dwfreed> no, because your libc is sorting the records returned
09:23:23 <truebrain> `dig` isn't π But that is dig .. and lolz @ libc
09:23:35 <dwfreed> DNS itself gives random order to *every* query, and dig shows that
09:23:38 <peter1138> That IP address is "numerically-closer" to mine, that must be the nearest server!
09:23:58 <dwfreed> I really want to cluebat that fucker
09:24:11 <truebrain> hmm, when I check in Python, I do get the first result back
09:24:40 <truebrain> `('irc.geo.oftc.net', ['irc.oftc.net'], ['188.240.145.40', '130.239.18.116', '109.169.7.194', '109.74.200.93'])`
09:24:46 <peter1138> I remember when one of the domain registrars wouldn't let you have DNS servers in the same "subnet" because that wasn't redundant enough.
09:25:10 <peter1138> Because, "of course", they had visibility into how someone elses network is set up.
09:25:54 <peter1138> (We used /32s for DNS servers, routed and load balanced, and they were not just sat next to each other)
09:32:20 <dwfreed> truebrain: I only see it on v6
09:33:48 <dwfreed> in python, no matter how many times you run 'socket.getaddrinfo("irc.oftc.net", "6697", socket.AF_INET6, socket.SOCK_STREAM, socket.IPPROTO_TCP, socket.AI_CANONNAME)', it'll always return addresses in the same order
09:34:27 <dwfreed> this is because libc is sorting the addresses inside getaddrinfo() before returning them to you
09:34:48 <truebrain> hmm, all but the first are the same; the other 3 do rotate, when I try that
09:34:57 <truebrain> (not trying to correct you or anything; trying to understand how to solve it properly)
09:35:30 <dwfreed> maybe your distro patched that out of libc :D
09:35:39 <truebrain> well, no, the first entry is still always the same
09:37:29 <truebrain> ah, okay, it sorts based on some rules
09:37:35 <truebrain> one IPv6 is 2a01, the rest are 2001
09:38:19 <dwfreed> guessing because the sort is unstable
09:38:26 <truebrain> it kinda make sense, as IPv6 routes are more complicated
09:38:43 <dwfreed> or it's stable and going on the ordering of the DNS reply
09:39:00 <dwfreed> truebrain: it makes absolutely no fucking sense, IPv6 routes are not more complicated
09:39:16 <dwfreed> and numerically closest doesn't mean fucking shit
09:41:26 <dwfreed> I know a VPS provider that has 3 v6 blocks, one from ARIN, one from RIPE, and one from APNIC; originally, they used the matching block for the matching region; now it feels like it's chosen at random
09:41:44 <dwfreed> eg, their los angeles location uses the RIPE block
09:42:44 <dwfreed> Jakarta Indonesia uses the ARIN block
09:44:12 <truebrain> okay, so I really cannot tell the OS to not do this; you can only override rules, but that is just a rabbithole to dive into π
09:44:49 <truebrain> which means I need to do it programmatic, which is a bit tricky, as currently I don't actually care if it uses IPv4 or IPv6 to connect to, and I let the OS handle that π
09:44:59 <dwfreed> yeah, the wordaround would be that you resolve irc.oftc.net, and then take the resulting list of results and pick one at random yourself
09:45:07 <truebrain> well, puppets ofc are always IPv6 .. hmm
09:46:44 <truebrain> btw, also means that if `irc.oftc.net` resolved to IPv6 in the same NNNN:: range, it most likely would be random π
09:47:31 <truebrain> ugh, and `getaddrinfo` is ofc blocking ...
09:47:35 <truebrain> piece of shit callbacks
09:50:24 <peter1138> Oof, managed to hit 189 bpm last night. Highest for a while...
09:51:30 <truebrain> ah, Python has an async wrapper for getaddrinfo, nice
09:55:45 <peter1138> This is my "you're too heavy" rate :S
09:56:00 <dwfreed> truebrain: note that just runs it in a thread pool executor :)
09:56:21 <truebrain> yeah, so it doesn't block the rest of the bridge π
09:57:08 <truebrain> need to test this; and I don't have that setup .. will take care of that later tonight
09:57:11 <truebrain> this "should work" π
09:57:56 <dwfreed> you're going to need to pass ssl server name
10:00:30 <truebrain> still untested π
10:06:29 <truebrain> the code "looks good" .. so tempted to just test this in production π
10:10:06 <peter1138> "Continuous Testing"
10:13:13 <truebrain> hmm, can't seem to install HexChat from MSStore anymore
10:13:47 <dwfreed> probably got pulled after the dev announced he wasn't going to continue working on it
10:15:07 <truebrain> `TypeError: BaseEventLoop.getaddrinfo() takes 3 positional arguments but 6 were given`
10:15:11 <truebrain> and this is why we test ...
10:16:21 <truebrain> `ValueError: server_hostname is only meaningful with ssl`
10:17:17 <dwfreed> that's a fun one you'll have to do via **
10:17:46 <truebrain> owh, just using `None` works fine π
10:18:53 <peter1138> Bah, BaseConsist::vehicle_flags is used by more than just consists (where consist means front vehicle of chain.)
10:21:08 <LordAro> truebrain: i ran into an issue recently where passing undef had different behaviour to passing nothing at all
10:21:22 <truebrain> yes, but this aint Perl π
10:21:30 <LordAro> even better, it was the "weird, mostly works but sometimes doesn't" sort of behaviour
10:21:47 <truebrain> I mean ... Perl is just asking for trouble in so many ways
10:21:55 <truebrain> haven't seen anyone writing Perl in a few years now .. which makes me happy
10:22:10 <dwfreed> truebrain: need to catch socket.gaierror on the getaddrinfo call
10:22:41 <LordAro> truebrain: unfortunately, all our testing is based on perl
10:22:48 <LordAro> even better, a perl DSL
10:23:36 <truebrain> dwfreed: good addition; tnx π
10:23:48 <truebrain> LordAro: remind me to never apply for a job at your company π
10:23:48 <andythenorth> consist is a confusing word π
10:23:51 <truebrain> I would die inside π
10:25:13 <dwfreed> looks about right, shipit!
10:25:23 <LordAro> truebrain: we write things in other languages!
10:25:30 <truebrain> will await CodeQL, see if that finds anything; but yeah, will after π
10:25:43 <LordAro> (also an increasing amount of python)
10:25:44 <truebrain> LordAro: Ada I can kinda imagine, for older systems, etc etc
10:25:49 <truebrain> but still doing Perl is just .. wrong
10:26:03 <LordAro> we have some ~9000 test files
10:26:07 <LordAro> converting them all would be difficult
10:26:20 <truebrain> but not starting with converting will only make it more difficult π
10:26:31 <truebrain> it is the same argument as why some companies still run Python2! π
10:26:56 <truebrain> I know reality is more complicated π
10:26:58 <LordAro> there are plans, but i'm not sure they're much past the idea stage at this point
10:27:04 <truebrain> but Perl is such an annoying broken language
10:27:32 <truebrain> right, this will deploy in a bit, disconnecting us all π
10:28:18 <truebrain> it first has to build the images etc, so it will take a tiny bit of time π
10:28:50 <truebrain> (GitHub still has no arm64 linux runners π¦ )
10:29:53 <truebrain> finally, there we go!
10:30:07 *** xarick has quit IRC (Remote host closed the connection)
10:30:07 *** andythenorth has quit IRC (Remote host closed the connection)
10:30:07 *** kuhnovic has quit IRC (Remote host closed the connection)
10:30:07 *** peter1138 has quit IRC (Remote host closed the connection)
10:30:07 *** reldred has quit IRC (Remote host closed the connection)
10:30:07 *** DorpsGek_vi has quit IRC (Remote host closed the connection)
10:30:07 *** truebrain has quit IRC (Remote host closed the connection)
10:30:18 *** DorpsGek_vi has joined #openttd
10:30:25 *** truebrain has joined #openttd
10:30:49 <truebrain> dwfreed: should be round-robin now π
10:31:09 <dwfreed> you are now on a separate server from DorpsGek_vi
10:31:27 <truebrain> connected to a 2001: address, that would be a first for the bridge π
10:31:44 <dwfreed> DorpsGek_vi will always be on coulomb as long as its in rotation, but that's fine
10:31:56 <truebrain> yeah, I assumed as much π
10:32:03 <truebrain> only the puppets do RR π
10:32:19 <truebrain> should also help with the amount of disconnects if one server is taken down π
10:33:14 *** peter1138 has joined #openttd
10:33:32 <peter1138> Not to be confused with owo or uwu or whatever that is.
10:33:33 <truebrain> peter1138: too connected to another host
10:34:08 <peter1138> Distributed Discord users.
10:43:44 *** _zephyris has joined #openttd
10:56:41 <LordAro> i'm not seeing anyone on a 2001: address so far
10:58:43 <xarick> oh, 14/03 is pi day because in america it's 3/14
11:00:33 <dwfreed> LordAro: the 2001: is the IRC server IPv6 address
11:01:40 *** HerzogDeXtEr has joined #openttd
11:20:49 *** andythenorth has joined #openttd
11:22:54 *** reldred has joined #openttd
11:22:54 <reldred> I'm looking at the xreal air2, a friend has the original xreal air and loves it. Nothing stupid, just a big screen in your face.
11:33:15 *** tramrider has quit IRC (Quit: Page closed)
12:18:39 <peter1138> > most of the servers that currently run are not official open TTD servers
12:18:45 <peter1138> Who writes this rubbish :S
12:20:36 <peter1138> Wait, it was Rubidium who wrote "open TTD"...
12:20:53 <peter1138> Ah no, that was a revert π
12:23:11 <rutoks> truebrain: That dude posts a lot of cool stuff
12:23:38 *** johnfranklin has joined #openttd
12:23:38 <johnfranklin> GPD or One-Netbook, or neither?
12:24:13 <johnfranklin> I predict I will do a lot of travelling, and in the same time I have to use Windows/Linux systems
12:28:27 <truebrain> peter1138: `The following rules apply to each of the servers official and non official.` always nice, when I am dictated how to play on my own server π
12:30:43 <reldred> peter1138: Burn that crap to the ground
12:31:12 <reldred> That wiki needs a blowtorch taken to it I swear
12:34:42 *** asymptotically2 has quit IRC (Write error: connection closed)
12:34:56 *** asymptotically2 has joined #openttd
12:35:16 <peter1138> I didn't read it all, there's probably some crap about not competing...
12:35:55 <peter1138> Oh yes... there is.
12:47:12 *** michi_cc has joined #openttd
12:50:10 <peter1138> Well, it's basically what you were doing but less involved.
12:50:25 <peter1138> So probably not even worth me touching π
12:52:22 <peter1138> "content select [id]" ... is that NewGRF ID?
12:52:45 <truebrain> it is an arbitrary number as received by `content list` or one of those commands
12:52:49 <FLHerne> Yeah, that whole article is just bullshit
12:53:03 <peter1138> "content list" is not a valid command.
12:53:09 <truebrain> one of those other commands
12:53:10 <FLHerne> someone's preferred ruleset put down as if it's some global standard
12:53:24 <truebrain> the one listing content π
12:53:27 <merni> the wiki is generally full of random shit
12:53:30 <peter1138> "content state <text>"
12:53:50 <FLHerne> it might be worth mentioning some of these rule ideas, so that new players know what's meant by them
12:54:11 <truebrain> pfff, anarchy or go home
12:54:48 <FLHerne> it's tempting to replace the article with openttdcoop rules or something :p
12:55:20 <peter1138> They're a load of rubbish too.
12:55:44 <FLHerne> "The sole object of multiplayer games is to build hyperoptimized logic-based self-regulating networks. Vast presignal chains or go home."
12:56:29 <peter1138> Hmm, would be nice to show this ID in the "Content downloading" (what a name) GUI to make searching easier...
12:56:40 <peter1138> Whoever runs a server without an admin panel right?
12:57:22 <peter1138> Iron Horse 3. What other NewGRFs do I need these days...
12:57:47 <peter1138> I guess a ship set, a plane set and a road vehicle / tram set.
13:00:40 <peter1138> SQUID or SHARK? Who knows...
13:01:02 <truebrain> so many things about the content stuff is awkward these days
13:01:07 <truebrain> it was never build for this many entries π
13:02:07 <peter1138> I searched for "aircraft" and Iron Horse 3 shows up.
13:02:51 *** Leopold___ has joined #openttd
13:07:48 <_zephyris> Well, aesthetically it looks nice. Shame I have no idea if it is readable.
13:07:51 *** Leopold_ has quit IRC (Ping timeout: 480 seconds)
13:10:05 <_glx_> Try Google translate on the screenshot?
13:12:36 *** Leopold___ has quit IRC (Ping timeout: 480 seconds)
13:12:48 <peter1138> Ask people who read hebrew?
13:13:45 <peter1138> I did ask for some general pictures of it, I can ask around π
13:14:09 <peter1138> But a big red error message is probably not the best place to start with that π
13:14:13 <_zephyris> I'm pretty confident the design is reasonable, it's more whether I've made obvious misakes
13:14:29 <_zephyris> (it probably just says no suitable places for forest industry)
13:14:58 <_zephyris> _glx_: Great call! It does actually work
13:15:51 <_zephyris> No rush, need to work out the other fonts too
13:20:20 <_zephyris> Title screen is a bit friendlier than an error message!
13:23:34 <xarick> oh, everything is mirrored
13:23:45 <peter1138> I think the console might be broken π
13:34:43 <peter1138> _zephyris: the bit to the left of OpenTTD looks a bit odd to me, but of course I've no idea π
13:35:30 <_zephyris> I suspect that's LTR/RTL problems with the translation or layout
13:35:38 <peter1138> That is how it looks on my system.
13:35:57 <peter1138> (But without your font of course)
13:36:31 <peter1138> Arial looks like this.
13:36:41 <peter1138> So I think it's fine, just the wrapping is different π
13:41:48 <xarick> full stop is at the left side?
13:42:01 <peter1138> Hebrew is a right-to-left language.
13:42:19 <peter1138> Where else would it go?
13:42:31 <xarick> I dont really know, feels weird to me
13:45:11 <xarick> I guess I should shut up
13:46:00 <peter1138> It's at the end of the text.
13:47:21 <truebrain> sometimes I wish I learnt these languages, just to make these kind of jobs easier
13:47:28 <truebrain> than I am reminded I am already happy I can read/write two languages π
13:57:31 <_zephyris> You just have to accept that it's an intrinsically cursive writing system
13:57:56 <_zephyris> Get in that headspace and it's less scary!
14:12:49 *** talltyler has joined #openttd
14:12:49 <talltyler> michi_cc: π I donβt know if this motivates you, but if/when you finish that consists patch, I have a fleshed-out push-pull/trains-can-back-up plan that I should be able to implement pretty easily π
14:17:32 <merni> peter1138: Oh man, Indian scripts are even better
14:33:32 <michi_cc> talltyler: Why do you think I started the consist branch in the first place π But yes, I have too many much too unfinished branches sitting around π
14:34:02 <merni> lots of things in there that I took for granted
14:39:43 <talltyler> Well, whenever you get around to it, I will happily do my part and hopefully make your work worth it beyond simply cleaning up tech debt π
15:38:12 *** Smedles has joined #openttd
15:58:56 <truebrain> michi_cc: that branch is scary well created; the commits are very easy to read π
16:01:24 <truebrain> and I am out of ideas how to make benchmarking work on GitHub .. the ubuntu runners have all different CPUs, so comparing there is a bit pointless .. and on the M1s I can only use the CPU time, which just fluctuates too much. Meh.
16:01:27 <andythenorth> consists eh π
16:02:43 *** Wormnest has joined #openttd
16:03:59 <peter1138> My idea was just to use `std::unique_ptr<BaseConsist>` inside Vehicle. IMHO pools only really exist because we didn't have managed containers/pointers back in the day.
16:04:14 <peter1138> Though I guess a consist pool makes it easy to iterate just consists.
16:06:45 <andythenorth> are consists consistent?
16:07:00 <peter1138> There's also more things that can in the consist information, e.g. current_order
16:11:00 <truebrain> Makes a lot of places more clear, instead of the endless ->Front() π
16:19:53 <truebrain> peter1138: Should at least be shared_ptr not?
16:20:58 <peter1138> I didn't go all that far, my aim was just to reduce the amount of memory used by vehicles that don't need any of this information. So only the front vehicle has the unique_ptr.
16:21:10 <peter1138> But yes, michi's work is superior.
16:21:18 <truebrain> Ah, like that, gotcha
16:21:27 <peter1138> I was just looking after you commented about BaseConsist being made larger by somebody π
16:21:47 <truebrain> I wouldn't dare! π
16:23:12 <peter1138> You weren't complaining, just mentioned it!
16:24:28 <LordAro> truebrain: dedicated VPS!
16:25:04 <truebrain> Meh. More infra to support π¦
16:25:29 <truebrain> MacOS has kperf, but implementing that without a Mac is challenging
16:25:43 <truebrain> There is no CLI, just a headerfile
16:33:49 <peter1138> Left: master. The number is the group index, so shared across all companies.
16:34:00 <peter1138> Right: pathc. The number is a per-company group number.
16:34:16 <peter1138> (Ab)Using FreeUnitIDGenerator.
16:34:26 <truebrain> Wait, it was global? Clearly I play too much single player ...
16:34:39 <LordAro> definitely less confusing
16:34:42 <peter1138> Also, the first group you create, in single player, is "Group 0"
16:37:07 <peter1138> As it uses the same scheme as unit numbers, if you buy out a company the group numbers will change too.
16:37:29 <peter1138> I imagine most people rename groups anyway, but it still bugged me π
16:40:33 <truebrain> So another branch in the endless sea of your branches? π
16:42:19 <_glx_> don't forget all the patch/diff not in branches π
16:47:59 *** gelignite has joined #openttd
16:48:25 <peter1138> All those random stashes π
17:02:44 <peter1138> > 27 files changed, 6 insertions(+), 405 deletions(-)
17:02:46 <peter1138> A good day coding...
17:18:55 *** gelignite has quit IRC (Quit: Stay safe!)
17:21:07 <peter1138> Is it cheating to update the regression test result?
17:26:28 <peter1138> ctest-before-push, pom te pom.
17:29:33 <andythenorth> although last time I tried to train a model it made literal noise, and I got bored
17:41:57 <_glx_> peter1138: if the change is expected
18:36:28 <truebrain> _glx_: did you happen to test if the vcpkg fix also unbreaks our nightly?
18:45:52 <_zephyris> Generic image synthesis neural networks are useless for pixel art...
18:54:46 <truebrain> You sound surprised π
18:55:37 <truebrain> truebrain: tested myself, just to be sure; and indeed it fixes the issue. So now they just have to merge.
19:01:24 <_glx_> just tested in my docker
19:03:43 <truebrain> worked for me; could even bake a binary
19:06:09 <_glx_> ```sh-4.4# cat /vcpkg/buildtrees/icu/config-x64-linux-dbg-err.log
19:06:09 <_glx_> configure: WARNING: unrecognized options: --disable-silent-rules
19:06:09 <_glx_> ./../src/c-74_1-src-8ca76704fa.clean/source/configure: line 4620: syntax error near unexpected token `0.20'
19:06:09 <_glx_> ./../src/c-74_1-src-8ca76704fa.clean/source/configure: line 4620: `PKG_PROG_PKG_CONFIG(0.20)'```
19:27:14 <andythenorth> _zephyris: I'm not sure why
19:27:21 <andythenorth> they should be able to learn it trivially
19:27:33 <andythenorth> all my brain is doing is repeating patterns
19:27:58 <andythenorth> and we've both written different kinds of pixel art generators with primitive (ish) programming approaches
19:28:28 <andythenorth> I guess the problem is knowing whether the patterns mean anything, or are just junk shapes
19:59:49 *** greeter has quit IRC (Remote host closed the connection)
20:01:02 *** greeter has joined #openttd
20:05:24 <andythenorth> goes it throw out GS?
20:16:06 <michi_cc> truebrain: Did you think of a teaser yet?
20:16:20 <truebrain> I still have a day π
20:28:22 <andythenorth> should I add 'choose a random engine' from these variants?
20:28:35 <andythenorth> hmm, no I'll probably run out of varact2 IDs π
20:30:53 <reldred> andythenorth: YES. OH GOD YES.
20:32:41 <andythenorth> kind of wonder if the game should do 'random from variants'
20:32:53 <andythenorth> oh we could do it as a callback, and filter the list π
20:33:58 <andythenorth> so it would be an "engine" in the buy menu, with an ID, but it actually builds another ID, with a pointer to the "engine" ID that originally built it
20:34:03 <andythenorth> (for autoreplace reasons)
20:34:14 <peter1138> Open a discussion on github.
20:34:26 <andythenorth> it has worked before
20:34:56 <andythenorth> currently playing OpenTTD though
20:34:59 <andythenorth> killing cacodemons
20:43:19 <_glx_> truebrain: I forgot to apply a "cp"
20:43:37 <_glx_> aclocal stuff is important π
20:45:31 <_zephyris> andythenorth: I suspect its foundational in how the networks are designed... The input format/resolution, the network architecture, the output are all designed around high resolution images. Every output wants smooth pixel-pixel transitions! You'd want to start from scratch. (I've had related problems at work)
20:45:36 <_glx_> with properly configured image it works
20:48:18 <_glx_> it built, everything's fine
20:50:11 <andythenorth> _zephyris: It seems that the vector space for patterns of pixels, in 8bpp, would be relatively low dimension, compared to photo-real images
20:50:16 <andythenorth> (to me at least)
20:50:57 <andythenorth> and also we know there are clear x / y / z orientations in the sprite, which means we might be able to infer faces of the object
20:52:00 <andythenorth> so there might be a relatively small set of vectors corresponding to 'building walls'
20:52:48 <andythenorth> TBH, my real-world experience was with n-dimensional vector hyperspaces for text analysis, which predated LLMs
21:36:24 <xarick> oh, ChooChoo is getting updates often now
21:46:12 <xarick> strange that my ai performed best with the "is_friendly" setting turned on
21:49:34 <_zephyris> andythenorth: I haven't seen a convincing CNN, let alone a LLM-like model for pixel art! My experience is all machine learning classifiers though, nothing generational.
21:50:45 <xarick> gonna work on uploading my League Tables GS, I haven't touched it in a while, and it seems to work fine. all that's missing is documentation
21:53:20 <peter1138> beese and chiscuits time
22:21:40 *** nielsm has quit IRC (Ping timeout: 480 seconds)
22:34:31 *** salut3585 has joined #openttd
22:34:31 <salut3585> Hi, how can I force make to also compile the openttd.grf file? I have grfcodec
22:36:18 <xarick> badly described, can't be bothered with it
22:38:38 <xarick> it was ready since 2022 lol
22:38:54 *** Leopold has joined #openttd
22:39:23 <_glx_> salut3585: if grfcodec is in path it should be detected, else you'll need to set GRFCODEC_EXECUTABLE, GRFID_EXECUTABLE and NFORENUM_EXECUTABLE manually
22:41:52 <xarick> are GS automatically pushed into eints translators or not really?
22:42:22 <xarick> they got a lang folder
22:43:19 <_glx_> no, it's all done by script author
22:44:19 <salut3585> i compiled grfcodec and set symlinks in bin directory, do I need add export these values?
22:44:38 <_glx_> you did it after running cmake ?
22:47:54 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:49:42 <salut3585> do you mean /baseset/openttd ?
22:50:12 <LordAro> PATH as in environment variable
22:50:21 <LordAro> or just set the variables
22:50:41 <_glx_> they are cmake variables
22:50:59 <LordAro> not related to openttd checkout
22:51:13 <LordAro> just needs to be somewhere such that running `grfcodec` actually works
22:51:18 <LordAro> (or set the cmake variables)
22:54:06 <salut3585> I will check it. Thank you!
22:58:38 <_glx_> if you can run grfcodec, grfid and nforenum from anywhere, then openttd cmake should find them
23:12:54 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
23:14:42 <salut3585> I read that nforenum was added into grfcodec
23:15:11 <LordAro> the repos were merged, they're still separate executables
23:24:01 <salut3585> do you have a link on githab NFORenum
23:33:26 <salut3585> ok, what do I need to add?
23:33:39 <salut3585> export NFORENUM_EXECUTABLE=/usr/local/nforenum
23:33:39 <salut3585> export GRFID_EXECUTABLE=/usr/local/grfid
23:33:39 <salut3585> export GRFCODEC_EXECUTABLE=/usr/local/grfcodec
23:34:06 <LordAro> they need to be cmake variables, not environment variables
23:34:18 <LordAro> so cmake -DNFORENUM_...
23:34:31 <LordAro> or, if you add your symlinks into /usr/local/bin instead, it'll probably all just work
23:34:39 <LordAro> as /usr/local/bin will likely be on PATH
23:37:12 <salut3585> LordAro: it has not worked I will try to use the make variables
23:49:10 <_zephyris> Stylistically this is quite far from standard Hebrew... But I think it matches the serif font style quite well.
23:51:27 <_zephyris> I think the sans is is a safe design.
continue to next day β΅