IRC logs for #openttd on OFTC at 2023-06-21
00:24:02 *** Extrems has quit IRC (Ping timeout: 480 seconds)
00:47:21 *** Extrems has joined #openttd
02:19:49 <DorpsGek> [OpenTTD/OpenTTD] tyrone-sudeium commented on issue #11048: [Bug]: Sound non-functional in nightly linux-generic builds
02:24:53 <Gadg8eer[m]> <DorpsGek> "[OpenTTD/OpenTTD] tyrone-sudeium..." <- Huh. So that's why I wasn't getting sound in JGRPP on my Steam Deck.
02:26:58 <DorpsGek> [OpenTTD/OpenTTD] Gadg8eer commented on issue #11048: [Bug]: Sound non-functional in nightly linux-generic builds
02:37:59 <DorpsGek> [OpenTTD/OpenTTD] tyrone-sudeium commented on issue #11048: [Bug]: Sound non-functional in nightly linux-generic builds
02:40:29 *** D-HUND has joined #openttd
02:43:51 *** debdog has quit IRC (Ping timeout: 480 seconds)
03:10:45 *** D-HUND is now known as debdog
03:39:10 *** keikoz has joined #openttd
03:46:15 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 merged pull request #11050: Codechange: use span of StringParameter within StringParameters
04:17:44 *** nielsm has joined #openttd
04:40:35 *** bigyihsuan has joined #openttd
04:40:35 <bigyihsuan> JGR: same, but in general i wish go's types were just a teensie bit better
04:40:45 <bigyihsuan> minimum add in tagged unions and i'll be golden
04:41:14 <bigyihsuan> (though you can mimic tagged unions using interfaces and a dummy "tag" method, but that feels extremely cursed)
04:41:30 <bigyihsuan> (or having a field in the struct that determines the type)
04:41:47 *** nielsm has quit IRC (Ping timeout: 480 seconds)
04:41:50 <bigyihsuan> (or having a "fat union" struct that embeds all the kinds of struct that it can be)
04:46:09 <bigyihsuan> (or a fat union struct that embeds all possible types that it can be, and use an iota-enum to switch between them)
04:46:30 <bigyihsuan> oh how i wish go had a slightly better type system, i'm pretty happy with everything else
05:04:12 *** keikoz has quit IRC (Ping timeout: 480 seconds)
08:11:47 <petern>
08:11:47 <petern>
08:11:47 <petern> Argh, now I'm being complained at because of this...
08:12:12 <TrueBrain> unacceptable ... stop making fonts look nice
08:13:04 <petern> Don't think the font is changed, just looks different due to scaling because I didn't crop exactly the same area.
08:13:48 <petern> The "Info" button changed from a teal to cyan, and the "Success" is slightly darker.
08:13:51 <TrueBrain>
08:13:51 <TrueBrain> You are right; funny how much worse that effect is in the Discord preview:
08:14:44 <petern> I think it's fixable but means I need to recompile bootstrap during build instead of using the defaults :/
08:14:54 <TrueBrain> manually installing the whole Linux release pipeline to test sound .. ugh, this is dreadful
08:15:08 <TrueBrain> petern: change is hard πŸ˜›
08:15:34 <petern> The issue is "I" changed it, so I should put it back.
08:15:45 <petern> Yeah, updating frameworks is not that simple πŸ™‚
08:16:05 <TrueBrain> you should have sold it as a "new look, better for the eye"
08:16:06 <TrueBrain> πŸ˜›
08:18:02 <petern> Difficult when I'd not even mentioned the updates or changes and the first thing is a complaint that it's wrong...
08:19:40 <TrueBrain> let's see if SDL wants to do its job when you actually give it header-files to compile against
08:20:04 <TrueBrain> SDL is a bit silly .. it dynamically loads libraries, but it needs the header file during compile to do that
08:20:20 <TrueBrain> guess they didn't want to vendor the header-files
08:21:38 <LordAro> i figured that's what it was doing
08:22:31 <TrueBrain> just proving I am right takes ~30 minutes compiling πŸ˜›
08:23:45 <LordAro> although i can't see where we're compiling SDL in the workflow though
08:23:54 <TrueBrain> vcpkg does
08:23:57 <LordAro> ah
08:24:35 <LordAro> in which case i'm definitely looking in the wrong place, because i'm looking at "yum install SDL2-devel"
08:24:49 *** aethe has joined #openttd
08:24:49 <aethe> i (tyrone-sudeium on github btw) spent a bunch of time playing around with this issue today. keen to see what you make of it
08:24:53 <TrueBrain> LordAro: maybe update your local copy once in a while πŸ˜›
08:25:21 <TrueBrain> aethe: if my compile ever finishes, I can tell you if I am right πŸ˜„
08:25:46 <TrueBrain> as vcpkg uses a static version of SDL, I am not completely sure it is going to do the right thing ..
08:25:51 <TrueBrain> it does for X11 .. but yeah ...
08:26:11 <aethe> my compiles were super quick but yum took an absolute eternity to run in the `manylinux2014_x86_64` container
08:26:12 <LordAro> TrueBrain: aha, i still had my 13.2-changelog branch checked out :D
08:28:01 <pickpacket> uh. I can't find any tags in the repo (locally).
08:28:38 <pickpacket> they've all disappeared, and I don't get them back with git pull --tags
08:28:53 <petern> git fetch upstream --tags
08:28:55 <TrueBrain> aethe: yum is pretty quick here. It is the python3 that is the problem πŸ˜›
08:29:31 <petern> Oh, probably s/upstream/origin/ as that's my workflow πŸ™‚
08:29:46 <pickpacket> petern: same for me, but didn't work
08:30:04 <pickpacket> I *had* all the tags up until 13.1, but they've just disappeared
08:30:11 <TrueBrain> I have too many build folders .. lol ...
08:30:17 <petern> Disappeared from where? Does 'git tag' not list anything?
08:31:02 <pickpacket> no, it doesn't
08:31:07 <pickpacket> Oh!!! I know!
08:31:52 <aethe> could be useful to publish a docker image that is built off `manylinux2014_x86_64` as a base but does the yum stuff and the python stuff. that way an environment for compiling linux-generic is just a docker pull and vcpkg install away
08:32:07 <TrueBrain> all things are cached on GitHub anyway
08:32:12 <TrueBrain> and the amount of time we do this manually ..
08:32:16 <TrueBrain> not sure that is worth the trouble, honestly πŸ™‚
08:32:51 <pickpacket> I forked the repo to work on beards for manager faces, and then I set my fork as upstream
08:34:35 <TrueBrain> okay, jack and pulse works
08:34:39 <TrueBrain> but alsa doesn't show up ..
08:34:48 <TrueBrain> seems CentOS alsa is not compatible with vcpkg SDL πŸ˜›
08:35:10 <TrueBrain> but it is also dragging all those libraries in now .. which was not the idea
08:35:13 <TrueBrain> as that drags in X11
08:35:14 <TrueBrain> ugh
08:35:16 <petern> Weird
08:35:34 <TrueBrain> I have been down this path before, and I hate it πŸ˜›
08:35:56 <petern> Is there a way to pull in headers without actually building the libs... if that's what SDL wants.
08:36:36 <TrueBrain> I first need to check if this didn't happen accidentially because I updated fluidsynth while at it
08:36:54 <TrueBrain> as you know .. I tend to do 10 things at once .. smart ... πŸ˜›
08:38:38 <TrueBrain> as ldd tells me, it too was dragging in a lot of shit πŸ˜„
08:39:46 <TrueBrain> so possibly SDL is doing the right thing, but fluidsynth might not .. which means I just need to compile fluidsynth before installing the headers
08:39:59 <LordAro> lol
08:40:01 <TrueBrain> which would mean a restart of this docker ... and other 30 minutes will pass πŸ˜› πŸ˜„
08:40:22 <TrueBrain> these are the moments I am tempted to buy a new PC
08:40:40 <TrueBrain> (I have a 8700K .. I have nothing to complain about .. but it could be faster!!!)
08:40:42 <petern> My AA rechargeables all seem to have a knack of being discharged at the same time, despite only using them individually.
08:41:23 <TrueBrain> in the meantime, let's play the game: how much % is cached today
08:41:37 <TrueBrain> 45% cached
08:41:51 <TrueBrain> that is really good πŸ™‚
08:41:53 <petern> I too have an 8700K. Apparently there's much faster these days :/
08:42:07 <TrueBrain> yeah, one of the newer AMDs would compile a lot faster πŸ˜›
08:42:13 <LordAro> 6600K here
08:42:18 <TrueBrain> 80% of BaNaNaS activity is 13.3 .. which means ... 20% is not πŸ˜›
08:42:19 <petern> But, ew, AMD.
08:42:21 <LordAro> and also signs that the hardware is dying
08:42:37 <TrueBrain> 13.1 and 13.0 combined make up for another 5%
08:42:40 <TrueBrain> 5% by latest JGRPP
08:42:47 <TrueBrain> and rest is all old shitty versions πŸ˜›
08:43:24 <TrueBrain> over the last 24 hours, UK was #3 in downloads
08:43:37 <TrueBrain> also, 230GB in a day transfered ...
08:44:20 <TrueBrain> okay, without fluidsynth this is doing exactly what I would expect it to do, and sound works
08:44:43 <TrueBrain> owh, alsa is working, but it is "asound" ofc
08:45:15 <TrueBrain> there are two other backends SDL support .. `sndio` and `libaudio` .. but I just don't know what that actually is in Yum language πŸ˜›
08:45:29 <TrueBrain> so I am doing jack / pulse / alsa for now
08:45:33 <TrueBrain> I think that covers most systems, not?
08:46:27 <aethe> should do, yes. even jack is a bit obscure for most
08:47:17 <debdog> isn't there a new one around? pretty popular?
08:47:54 <debdog> pipewire?
08:48:13 <aethe> if you speak pulse or jack, you speak pipewire πŸ˜‰
08:48:23 <debdog> ok
08:50:36 <LordAro> TrueBrain: i think these &
08:50:42 <LordAro> the latter took some tracking
08:50:59 <LordAro> "NAS 1.9.5 (stable) is now available. This version includes some patches submitted over the last 9 years or so."
08:57:14 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #11048: [Bug]: Sound non-functional in nightly linux-generic builds
09:01:09 <TrueBrain> time to install again .. but I got other stuff to do, so a PR will take a bit more time πŸ™‚ But it works locally, at least!
09:01:45 <aethe> nice! curious to see what you did, and if it's smarter than my super blunt approach of just running `yum install pulseaudio-libs-devel` etc lol
09:05:32 <TrueBrain> it isn't; but fluidsynth ruined your approach πŸ™‚
09:17:12 <petern> Alsa should be enough , it'll talk to pulse/jack anyway
09:17:37 <petern> But maybe pulse is nice to have anyway
09:17:54 <TrueBrain> it is one line to enable pulse and jack, so it is fine πŸ˜›
09:18:16 <petern> Jack is not ideal tbh, it's not meant for gaming
09:18:44 <petern> But thats user config I guess πŸ™‚
09:19:17 <aethe> it is definitely better to support pulse directly, since `pulseaudio-alsa` / `pipewire-alsa` are not necessarily always bundled with pulse / pipewire
09:20:02 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #11051: Fix: [CI] enable audio (alsa / jack / pulse) for generic Linux builds
09:20:15 <TrueBrain> still locally compiling, but I think this should work. Maybe aethe can test it too in the meantime
09:20:52 <LordAro> apparently SDL2 does have native pipewire support
09:23:01 <aethe> TrueBrain: can do. though `yum` is gonna take 20 minutes to do that haha. no idea why it hates my machine so much
09:23:22 <TrueBrain> LordAro: but pipewire isn't in this old CentOS system πŸ˜›
09:24:04 <aethe> we have the same problem if we wanted to enable wayland in sdl, right? the centos too ancient for the devel libs?
09:24:13 <TrueBrain> Wayland works fine
09:24:43 <TrueBrain> okay, compile fininshed, audio is working fine, so this should be good to go
09:25:22 <TrueBrain> was surprised WSLg also forwards audio πŸ˜›
09:27:43 <TrueBrain> fluidsynth doesn't work, can't find soundfonts
09:27:43 <TrueBrain> hmm
09:28:09 <LordAro> TrueBrain: not with that attitude
09:28:12 <TrueBrain> ah, yes, 150MB, not going to embed that πŸ˜›
09:28:28 <TrueBrain> after installing a soundfont, even music works
09:29:13 <TrueBrain> funny, changing soundsets doesn;'t work till you close the Game Options window
09:29:16 <TrueBrain> that was unexpected πŸ™‚
09:36:56 <TrueBrain> ah, yes, on Steam we do add soundfonts, but as a secondary package .. that makes sense πŸ™‚
09:40:29 <aethe> there _are_ small soundfonts, but they tend to sound pretty bad haha
09:40:45 <aethe> we even found one that was only 7 kilobytes once. but it pretty much sounds like chiptunes
09:43:27 <aethe> another project i contribute to, midi support is super important for their app so as a last resort fallback they embedded a project that emulates an old Yamaha YM2608 FM synthesizer, all in software. that way they have a reasonable (but not great) fallback in case all other midi drivers fail
09:44:16 <LordAro> chiptune TTD music sounds like it would be amazing
09:44:43 <Gadg8eer[m]> LordAro: Seconded.
09:48:02 <aethe> if you want to experience the majesty of 7kb soundfont openttd yourself, here's the sf2 LOL
10:02:08 <aethe> aethe: so much for 20 minutes. 40 minutes later and it's still going
10:10:13 *** merni has quit IRC (Quit: User went offline on Discord a while ago)
10:11:08 <petern> Hmm, how does one select soundfonts with fluidsynth...
10:11:34 <aethe> `-m fluidsynth:soundfont=path/to/soundfont.sf2`
10:12:04 <petern> With WSL installing fluidsynth installed a 6MB sf2 by default, which is ... not great but maybe better than 7KB πŸ™‚
10:12:59 <petern> Cool, that's... interesting.
10:13:29 <aethe> you trying the 7kb masterpiece?
10:13:44 <aethe> the title screen actually sounds alright imo but some of the other tracks, oof
10:13:46 <petern> Yes. As a synth-nerd, I love it πŸ˜„
10:14:15 <petern> Percussion is not its strong point.
10:16:14 <petern> Sawyer's Tune has no percussion, sounds great.
10:19:26 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #11051: Fix: [CI] enable audio (alsa / jack / pulse) for generic Linux builds
10:21:45 <aethe> TrueBrain: confirmed, works for me. though I noticed the binary has swollen up to 249MB, did it do that for you too? the build from my workflow earlier today was only 69MB
10:22:37 <petern> Oh, I just found the demo songs on my JV-1080.
10:22:53 <petern> "1080 Rave" ... such cheese
10:32:36 <petern> Maybe breakfast
11:16:26 <TrueBrain> aethe: After cpack it is only 55 for me. Before that time the binary is not stripped
11:17:51 <aethe> this was after cpack. the tar.xz is still 57MB but inside it is a 249MB binary, at least for me
11:18:12 <aethe> could be something else went wrong on my end
11:21:54 <TrueBrain> Via docker we really should get the same result .. odd
11:23:27 <aethe> something to watch out for anyway. if the github action doesn't produce that result then we're definitely clear
11:32:46 <glx[d]> With `CMAKE_BUILD_TYPE=RelWithDebInfo` ?
11:34:52 <glx[d]> Anyway binary size should increase a little (SDL trying to load more libs)
11:35:49 <TrueBrain> it is in the order of kilobytes
11:35:52 <TrueBrain> not even megabytes πŸ˜›
11:36:02 <TrueBrain> ` 55M Jun 21 11:23 openttd`
11:36:14 <TrueBrain> and before stripping the binary is 557MB
11:36:21 <TrueBrain> so no clue what you exactly build there aethe πŸ˜›
11:36:36 <aethe> something cursed
11:36:53 <TrueBrain> final .tar.xz is just 19MiB
11:37:10 <TrueBrain> let's hope the CI will agree tonight πŸ™‚
11:37:18 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #11051: Fix: [CI] enable audio (alsa / jack / pulse) for generic Linux builds
11:37:21 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed issue #11048: [Bug]: Sound non-functional in nightly linux-generic builds
11:37:27 <aethe> glx[d]: `cmake .. -DCMAKE_TOOLCHAIN_FILE=/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOPTION_PACKAGE_DEPENDENCIES=ON`
11:37:38 <aethe> i think it's probably something in my vcpkg
11:37:59 <TrueBrain> dockers should be reproducible πŸ˜„ πŸ˜›
11:38:11 <TrueBrain> anyway, it works \o/
11:38:16 <TrueBrain> that is the more important part of the story πŸ™‚
11:38:52 <TrueBrain> so I have a 2FA on a mobile of which the screen is broken, which I need to login to somewhere that doesn't have any decent 2FA recovery mechanism ..
11:39:09 <TrueBrain> sadly, I never enabled the developer mode on that mobile, so adb doesn't work .. I don't have an USB-B -> HDMI adapter ...
11:39:21 <TrueBrain> what other shitty ways can I find to get this 2FA from that mobile πŸ˜›
11:40:28 <glx[d]> No 2FA backup system ?
11:40:41 <TrueBrain> back then that didnt exist
11:40:45 <TrueBrain> as Google didnt allow it
11:40:50 <TrueBrain> they changed their mind now, ofc, but .. yeah ..
11:41:12 <glx[d]> I mean SMS or backup codes
11:42:19 <TrueBrain> no, they don't offer any of that shit
11:42:33 <TrueBrain> it is not the best 2FA implementation out there πŸ˜›
11:49:16 <pickpacket> When I buy Exclusive Transport Rights it seems some other player can go and buy it right afterwards and thereby trump my purchase. Is this intended?
11:49:56 <pickpacket> The expected behaviour -- to me at least -- is that when I buy the rights I have them for a year or until I go bankrupt, whichever comes first
11:54:49 <pickpacket> Otherwise it turns into a bit of a chicken race. Player A spends Β£X on rights, then right after player B spends Β£X on the same rights. The end result is that both spent Β£X within seconds of each other but B now has the rights for a year
12:03:59 <pickpacket> Maybe this is enough to fix it?
12:04:42 <pickpacket> The idea is that you then can't purchase if there's still time left on the current exclusive rights contract, whomever may hold it atm (even if it's you)
12:07:55 <pickpacket> Or this:
12:12:26 *** fooxie has joined #openttd
12:12:55 *** fooxie has quit IRC ()
12:18:59 <Eddi|zuHause> i don't know about "intended", but it is known that it works that way
12:21:02 <Eddi|zuHause> but imagine this situation: someone with a giant stack of money goes through the whole town list and purchases all rights. now none of the competitors have a chance to earn any money, even if their individual smaller stacks of money would suffice to buy back the rights in their core territories
12:22:55 <Eddi|zuHause> (also, getting exclusive rights should probably throw a news message)
12:24:05 <pickpacket> it does through a news message :)
12:24:34 <glx[d]> nobody reads the news messages πŸ™‚
12:24:36 <Eddi|zuHause> well, i played multiplayer maybe twice
12:24:49 <Eddi|zuHause> in like 20 years
12:24:51 <pickpacket> I do
12:25:02 <pickpacket> though I turn off all that aren't relevant to me
12:25:50 <Eddi|zuHause> did we ever fix the news messages being blocked while the ticker runs?
12:27:06 <pickpacket> Eddi|zuHause: Imagine this scenario then: someone with a huge stack of money buys exclusive rights in the three four towns your operation is centered in. You have enough money to buy them back, but only to see them bought back again by that player right away
12:27:07 <LordAro> i think so
12:27:09 <Eddi|zuHause> i wrote a patch for that, but i don't remember if it was included
12:28:14 <pickpacket> If I have the money to buy rights *once* I can preemptively do so in my cities, but that won't help me at all if someone else can buy them anyway
12:29:00 <Eddi|zuHause> pickpacket: yes, but to you rather want to sit there unable to do anything, or sit there having the possibility to influence things by talking to other players?
12:29:32 <pickpacket> what do you mean?
12:30:10 <Gadg8eer[m]> There's a chat in MP games.
12:30:16 <Eddi|zuHause> i mean, you could ask other players to buy exclusive rights in your competitor's cities, so he has to spend his pile of money there
12:30:16 <Gadg8eer[m]> I think that might be it.
12:30:33 <pickpacket> Gadg8eer[m]: I know about the chat :)
12:30:43 <Gadg8eer[m]> lol sorry :P
12:31:17 <pickpacket> Eddi|zuHause: or the big competitor already has to do that pre-emptively if they suspect they'll be dog-piled out of existence otherwise
12:31:30 <Gadg8eer[m]> Then um... I think you might be playing without enough rules or with too competitive players.
12:32:24 <Gadg8eer[m]> That said, turning off exclusive transport rights would be good for MP mode.
12:32:39 <Eddi|zuHause> pickpacket: dunno, i believe the "once bought, you cannot buy again" approach will lead to worse griefing
12:32:53 <pickpacket> Gadg8eer[m]: highly competitive play may be the point for some ;) But if I play with less competitive players this wouldn't be an issue either way
12:33:19 <pickpacket> Eddi|zuHause: possibly. Could also be the opposite
12:34:35 <Gadg8eer[m]> Too easy to abuse exclusive transport rights, competitive or not, now that I think about it. Probably better to be able to turn that feature off in MP and let players sabotage each other in ways that take more effort so it can at least be entertaining that way instead of happening with a single button press.
12:35:22 <Eddi|zuHause> pickpacket: one approach would be to alter the cost by the amount of economic activity of the competitors in the city
12:36:04 <Eddi|zuHause> so if you have a strong foothold in the city, buying back the rights will be significantly cheaper than the other player trying to sabotage your core business
12:36:25 <Gadg8eer[m]> That could be done? I'm no expert on competitive play, I mostly play with tons of GRFs to make things look cool and realistic.
12:37:51 <Eddi|zuHause> lots of things can be done...
12:39:00 <Gadg8eer[m]> Fair enough, but I've technically been around since the latter days of TTDPatch and have been told no to features way back when unless I was willing to implement them myself.
12:39:19 <Gadg8eer[m]> Supposedly because they're too complex to implement.
12:39:59 <Eddi|zuHause> that's still mostly true
12:40:11 *** nielsm has joined #openttd
12:40:30 <Eddi|zuHause> features don't simply materialize out of thin air just because you wish for them
12:40:41 <Eddi|zuHause> someone(tm) has to implement them
12:41:04 <pickpacket> Eddi|zuHause: that’s one approach of course. But intuitively I think it’s very odd that my contract can be rescinded by another player. A more ”realistic” approach could be that several players can have ”exclusive” rights at the same time
12:41:11 <Eddi|zuHause> and there's little to no incentive for that someone(tm) to be anyone else but you
12:41:53 <Eddi|zuHause> pickpacket: wouldn't be very "exclusive" then
12:42:49 <Gadg8eer[m]> Since then the only person I've successfully managed to ask for new features is JGR. I mean, I get that its difficult, but in 2007 asking for a new feature out of the possible features was like talking to a brick wall. Everything that was, at the time, easy, was already done. At least saying yes sometimes, instead of never, makes newbies more patient with getting "no" for an answer if it really is difficult.
12:42:49 <Gadg8eer[m]> It wasn't until they implemented canals that that started to change, I guess.
12:42:55 <Eddi|zuHause> pickpacket: it could come with a requirement to fulfill some service within the exclusive year, and then it would be blocked for 10 years if you don't fulfill it
12:43:33 <pickpacket> Eddi|zuHause: that wouldn’t at all stop someone from buying the rights to starve out another company
12:44:21 <Eddi|zuHause> if you starve out within one year, you probably have a bad company
12:44:27 <Gadg8eer[m]> Reverse it? Ned to deliver mail and/or passengers in a certain amount to be eligible for exclusive transport rights?
12:46:24 <Eddi|zuHause> Gadg8eer[m]: at no point in time was it ever true that "all the easy features were already done"
12:46:50 <pickpacket> Eddi|zuHause: well if you think of that way then buying rights for grift purposes is only a marginal annoyance more than an actual problem
12:47:17 <pickpacket> I think I need to do a writeup of this and post on the forum
12:47:24 <Eddi|zuHause> Gadg8eer[m]: just go through github and look for the tag "good first issue"
12:47:37 <Gadg8eer[m]> Was literally told "historical buildings like in Sim City 4" were "too difficult".
12:47:53 <Gadg8eer[m]> That was before game scripts and NewObjects.
12:49:02 <Gadg8eer[m]> So now, yes, if you convert all other GRF towns into newobjects, you accomplish basically the same thing, but back then? "We don't want to".
12:49:10 <Eddi|zuHause> neither of those is an easy feature
12:49:32 <Gadg8eer[m]> No, but the hard features were the only ones that people had left to want at that time.
12:50:05 <Gadg8eer[m]> Multiplayer wasn't even possible in OpenTTD or TTDPatch for a whole decade.
12:50:12 <Gadg8eer[m]> So this whole conversation would have been a moot point.
12:50:36 <Eddi|zuHause> what? even the original TT had multiplayer
12:51:21 <Gadg8eer[m]> Yes, but it used dial-up.
12:51:38 <Gadg8eer[m]> If you had broadband internet, no MP.
12:51:54 <Gadg8eer[m]> And TTDPatch was legally incapable of fixing that.
12:52:10 <Eddi|zuHause> no, it used a "null modem cable" (effectively a serial cable)
12:52:12 <Gadg8eer[m]> So it wasn't until AFTER OpenTTD was a thing that MP came back.
12:52:15 <TrueBrain> OpenTTD had UDP-based network since the day it was launched, all the way back to 2004 πŸ˜›
12:52:31 <TrueBrain> so I guess the "or" part is "either of the two"
12:52:34 <TrueBrain> as one of them wasn't πŸ˜›
12:52:38 <petern> This is so weird πŸ™‚
12:52:50 <jfs->
12:52:50 <jfs-> TTD (DOS) can actually play over IPX network
12:52:56 <TrueBrain> I miss IPX/SPX
12:53:00 <TrueBrain> that was such an easy protocol
12:53:09 <TrueBrain> Novell is the best πŸ™‚
12:53:19 <Gadg8eer[m]> I never said OpenTTD didn't have MP, but it wasn't used because TTDPatch had more features at the time.
12:53:34 <Gadg8eer[m]> Most people played with the patch.
12:53:35 <Eddi|zuHause> you didn't say that at all
12:54:22 <jfs-> and as far as I remember, on Windows 98 you could also use VPN or VPN-like software that let you tunnel IPX over internet
12:54:47 <XarothBrook> TTD Multiplayer brings back fond memories.
12:54:50 <Gadg8eer[m]> That's probably true, but I played TTDPatch on XP.
12:55:01 <Gadg8eer[m]> So did most people.
12:55:08 <petern> That's a strange way of spelling "oh, I was wrong"
12:55:58 <jfs-> anyway, what was this discussion about?
12:56:02 <petern> Nothing much.
12:56:11 <TrueBrain> Someone was wrong on the Internet πŸ™‚
12:56:45 <Eddi|zuHause> i think it was whining about "if you want the feature, implement it yourself"
12:57:01 <TrueBrain> meh; we have the forums for that
12:57:07 <Gadg8eer[m]> All I remembered is I couldn't use MP in TTDPatch because we had broadband and I'd never heard of a VPN at the time so I never tried that. Please don't dwell on me misremembering stuff.
12:57:22 <petern> There's reddit... oh wait no there isn't πŸ™‚
12:57:34 <TrueBrain> owh snap
12:58:13 <Gadg8eer[m]> Yeah, and I was insta-perma-banned from the forums 3 years ago for causing drama. The less I say about that the better.
12:58:28 <petern> I can't think why.
12:58:40 <discord_user_03329cf> Oh hey
12:58:46 <Gadg8eer[m]> The convo was about disabling exclusive transport rights.
12:59:12 <Gadg8eer[m]> If you want to stick to that, fine. Stop picking apart every little thing I say on purpose.
12:59:56 <discord_user_03329cf> Look who it is πŸ‘€
13:00:09 <petern> Nobody is. It's okay be wrong, but doubling down on it is weird.
13:00:38 <Gadg8eer[m]> I'm not trying to double down on it. I was wrong. Are you happy now?
13:01:02 <Gadg8eer[m]> Because I get you're trying to be polite, but TrueBrain isn't.
13:01:23 <TrueBrain> Leave me out of this, wth?
13:01:52 <discord_user_03329cf> :kek:
13:02:20 <Eddi|zuHause> i think this discussion is over
13:02:26 <Gadg8eer[m]> Okay.
13:02:51 <Gadg8eer[m]> * polite, but ~~TrueBrain, * TrueBrain~~, * Eddi isn't.
13:03:09 <Gadg8eer[m]> * polite, but <del>TrueBrain, * TrueBrain</del>, * Eddi isn't.
13:03:29 <Eddi|zuHause> sure. if you want to believe that.
13:03:37 <TrueBrain> a word of the wise: if someone says it is over, don't continue. Let it be over. Don't try to have the last word.
13:04:00 <XarothBrook> πŸ€¦β€β™‚οΈ
13:04:14 <TrueBrain> anyway ... I need to prune down this 115GB big CDN ...
13:04:22 <discord_user_03329cf> TrueBrain: It’s a word of the wise, only the wise will understand
13:04:23 <TrueBrain> let's see how ...
13:05:00 <TrueBrain> having every binary for all OSes back till 2020 for every nightly produced ... maybe there is a start
13:05:31 <petern> That seems over the top.
13:05:40 <TrueBrain> I once intended to write a cleanup script
13:05:46 <TrueBrain> (end of story)
13:05:53 <Eddi|zuHause> cool story bro
13:06:27 <TrueBrain> 800 nightlies, each ~100MB .. so that makes ... 80GB?
13:06:30 <TrueBrain> sounds about right
13:07:17 <Eddi|zuHause> what's a sane cutoff for nightly binaries? 1 week? month? year?
13:07:28 <TrueBrain> 3 months
13:07:40 <TrueBrain> (I really don't know πŸ˜› Anything above 1 day is sufficient, I guess)
13:07:53 <petern> 1 week is about how long it takes us to notice it's stopped working... so 1 month probably πŸ™‚
13:08:25 <petern> Steam only gives access to the most recent nightly, right?
13:08:31 <TrueBrain> yup
13:08:58 <TrueBrain> lol, there are also 60 OpenGFX nightlies πŸ™‚
13:09:52 <Eddi|zuHause> i was also thinking "surely nobody needs a nightly more than 3 months old"
13:10:11 <TrueBrain> well, we do have the source files for every nightly all the way back to 2004
13:10:17 <TrueBrain> "just in case"? πŸ˜„
13:10:18 <Eddi|zuHause> yes
13:10:31 <petern> In git, yes πŸ˜‰
13:10:40 <TrueBrain> no no, on the CDN! πŸ™‚
13:10:42 <Gadg8eer[m]> No, you know what? This isn't about the last word. I was FUCKED OVER by an incompetant psychiatrist for 6 years and now I'm banned from everywhere. If you're going to be pedantic and then ignore me, FUCK ALL OF YOU.
13:11:01 <TrueBrain> I think it is time you walk away from your keyboard and take a breather
13:11:20 <glx[d]> Eddi|zuHause: unless I miss a crash report πŸ™‚
13:12:27 <glx[d]> but yeah 3 months should be more than enough
13:12:35 <Eddi|zuHause> how reproduceable are builds these days?
13:12:48 <glx[d]> never with MSVC
13:12:49 <TrueBrain> not; vcpkg changes more often than you change your underpants
13:13:01 <Eddi|zuHause> twice a year? :p
13:13:07 <TrueBrain> you said it πŸ˜„
13:13:10 <petern> Inside out AND back to front.
13:13:34 <glx[d]> you can run the build twice in a row and get a different exe/pdb combo
13:15:00 *** Gadg8eer[m] has left #openttd
13:16:13 <petern> Oh stop it YouTube, I do not need to watch synthesizer reviews.
13:16:21 <petern> ... but ... ooh, shiny...
13:16:30 <TrueBrain> .... nooooooooo, don't do ittttttttt
13:16:38 <Eddi|zuHause> (i think we lost him already)
13:17:02 <glx[d]> imagine synthesizer reviews on bike
13:17:11 <discord_user_03329cf>
13:19:05 <petern> I'm mostly immune to bike reviews, they're a bit like computers. Beyond the frame, everything else is from one of two big manufacturers.
13:20:55 <Eddi|zuHause> but do the bikes have RGB?
13:21:06 <sinas128> if it rides, its good πŸ‘
13:21:14 <TrueBrain> that's what she said
13:21:29 <sinas128> :widdle_goblin:
13:22:02 <TrueBrain> I am such a child .. I am giggling about that joke .. oowwhh .. right, CDN ...
13:34:16 <petern> Korg Wavestate MK2... a $900 synthesizer which runs (or at least the previous incarnation did), at its core, a Raspberry Pi compute module... Yeah, shiny, but not that interesting after all.
13:37:20 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
13:43:29 <TrueBrain> `You don't have permission to send messages from this mailbox.` .. ffs Exchange, I gave myself those permissions .. why do you take for ever to propegate that information .. and why can't I see anywhere it hasn't yet 😦
13:44:15 <petern> It's great isn't it? There's also a separate flag hidden somewhere that allows you to send as an alias (that is already linked to your mailbox), otherwise you can only send as the main email address...
13:44:33 <TrueBrain> figuring all this out the first time took for ever
13:44:38 <TrueBrain> but every time after still frustrates me
13:44:50 <TrueBrain> these days I just make a new distribution group where I give myself "send as" rights to
13:45:59 <pickpacket>
13:45:59 <TrueBrain> but I always wonder .. did I forget any of the other 20 steps I have to take, or does this just needs some time .. as you just don't know
13:48:54 <TrueBrain> it was time
13:49:25 <petern> Lunch time?
13:49:32 <TrueBrain> yes
13:50:00 <petern> Cos I am dumb, I had breakfast and salad and also snacks :/
13:50:26 <petern> The scales doth protest
13:51:22 * pickpacket had cake
13:54:46 <DorpsGek> [OpenTTD/workflows] TrueBrain opened pull request #29: Upgrade: bump all dependencies to latest
13:56:07 <DorpsGek> [OpenTTD/workflows] TrueBrain opened pull request #30: Change: [CI] update to reusing workflow for testing
13:56:26 <TrueBrain> oops, that will do a bit too much ...
13:57:00 <DorpsGek> [OpenTTD/workflows] glx22 approved pull request #29: Upgrade: bump all dependencies to latest
13:57:48 <glx[d]> haha fails everywhere, and of course expected no longer exist
13:59:47 <justanortherner> petern: I know this feeling... although mine is related to yesterday's alcohol consumption πŸ˜‚
13:59:54 <DorpsGek> [OpenTTD/workflows] TrueBrain updated pull request #30: Change: [CI] update to reusing workflow for testing
14:00:02 <DorpsGek> [OpenTTD/workflows] TrueBrain merged pull request #29: Upgrade: bump all dependencies to latest
14:00:25 <TrueBrain> still not sure if I want to move these exceptions to the normal workflow to the actions repo or not .. website also has a similar copy of the flow ..
14:00:54 <DorpsGek> [OpenTTD/workflows] TrueBrain updated pull request #30: Change: [CI] update to reusing workflow for testing
14:08:31 <DorpsGek> [OpenTTD/workflows] glx22 approved pull request #30: Change: [CI] update to reusing workflow for testing
14:08:34 <DorpsGek> [OpenTTD/workflows] TrueBrain merged pull request #30: Change: [CI] update to reusing workflow for testing
14:11:55 <TrueBrain> deleting of stuff on a CDN is tricky ...
14:12:10 <TrueBrain> besides permissions and shit, how do you make sure the script doesn't go crazy and removes the wrong stuff
14:12:43 <TrueBrain> sadly, S3 buckets don't support that πŸ™‚
14:12:48 <petern> πŸ™‚
14:13:10 <petern> I'm looking at .github/workflows/ as inspiration and think I just don't need to migrate my CI today.
14:13:30 <TrueBrain> our workflow is ... more complex than most projects need πŸ˜›
14:14:03 <TrueBrain> I guess I just have to make the cleanup a manual job, where it lists what it wants to remove, and a human says: yes, I am fine with this
14:14:12 <TrueBrain> owh, in theory I could use a Staged Workflow for that
14:14:15 <Eddi|zuHause> "rm -rf / path/" :p
14:14:29 <TrueBrain> just means a few of us get an email with a question: can you approve this gate? And there it lists all the files it wants to remove
14:15:16 <petern> Better than doing it blind, yes.
14:15:37 <TrueBrain> yeah .. although I make backups of our CDN, it is still a bit annoying if it removes everything "because of a bug" πŸ˜›
14:18:23 <petern> Oh no, too many adhoc fixes here... rebasing x/41
14:22:11 <Eddi|zuHause> man, this game worked yesterday, but today it segfaults on start...
14:22:21 <TrueBrain> sorry
14:25:08 <petern> I probably broke another dropdown πŸ™‚
15:09:17 <pickpacket>
15:31:49 *** keikoz has joined #openttd
15:34:58 *** gelignite has joined #openttd
15:47:10 <Eddi|zuHause> i hope i made my point as concise as possible?
15:51:29 <jfs-> what statistics do towns have at this point that indicate the "quality of service" for a company? cargo picked up? delivered?
15:56:26 <Eddi|zuHause> none of that...
15:56:53 <Eddi|zuHause> each company has a reputation (based on frequency of service and destruction of houses/trees)
15:57:19 <Eddi|zuHause> and there's a total number of transported passengers/mail (outgoing)
15:57:24 <TallTyler> You have percent of passengers/mail picked up, but it’s not per company
15:57:37 <jfs-> maybe require a town reputation above what you can reach by bribes and planting trees?
15:58:26 <Eddi|zuHause> we should finally fix the tree exploit, and bribing should be fine?
15:58:32 <jfs-> and above the initial reputation when you build your first tile inside the town
15:59:01 <Eddi|zuHause> maybe buying rights could drop your rating, so you can't immediately buy again?
16:04:21 <jfs-> my basic idea behind requiring a reputation above what can be bought is that companies need to "earn the trust"
16:05:19 <TallTyler> I would agree with that
16:06:03 <jfs-> I don't think taking a reputation hit from buying exclusive rights makes sense, but it might make sense to have a "fine" if you buy rights and do nothing with them, but that is probably getting too complex
16:06:29 <TallTyler> I also like the bidding idea
16:06:42 <TallTyler> Although it’s almost certainly TMWFTLB πŸ™‚
16:06:43 <jfs-> yeah but it easily becomes spammable
16:06:45 <Eddi|zuHause> the idea of the "make nothing with it" is slightly based on the existing concept of vehicle previews
16:07:51 <jfs-> maybe you can do so a company with exclusive rights will have their reputation drop much easier each month if they don't meet monthly quotas
16:08:52 <jfs-> so it would also quickly drop below the threshold for being able to renew it
16:09:42 <jfs-> and/or if it drops too far, you lose the rights
16:09:44 <andythenorth> town happiness πŸ˜›
16:09:56 <andythenorth> this should all be GS anyway πŸ˜›
16:17:51 <jfs-> well, someone wrote on forums a few days ago asking if they could extend the town actions with GS
16:18:25 <jfs-> yeah, this <>
16:18:31 <Eddi|zuHause> that sounds like something that should be possible :)
16:19:08 <andythenorth> what would the extensions be I wonder
16:19:37 <Eddi|zuHause> whatever you can imagine
16:19:38 <jfs-> a significant block for that would be the cost calculation for the action
16:19:46 <andythenorth> and are we replacing towns with WASM module? πŸ˜›
16:20:23 <Eddi|zuHause> i was suggesting individual town AI before
16:21:27 <Eddi|zuHause> which may include road patterns, town zone locations, opinion on terraforming, etc.
16:21:52 <jfs-> since either the GS would need to register the action ahead of time with cost pre-calculated on each town (unrealistic with maps larger than 512), provide an entirely static cost (unsatisfactory), not be able to display cost ahead of time (bad user experience), or work with either a synchronous callback or special expression language for determining the cost (much more complexity)
16:23:30 <Eddi|zuHause> jfs-: logically it should probably a callback that works like a command function (giving cost estimate and execution in one place)
16:24:03 <jfs-> yeah, but then you suddenly have synchronous GS, and how would that work on network games where the GS only exists on the server?
16:24:03 <JGR> It would be better off as a NewGRF with callbacks, that way you wouldn't have to involve scripts at all
16:24:14 <Eddi|zuHause> GS/AI currently don't have callbacks, IIRC
16:24:37 <jfs-> generating savegame data is a synchronous callback iirc
16:24:41 <jfs-> but that's the only thing
16:25:20 <Eddi|zuHause> town action GRFs could be possible as well, just way more limited in scope
16:35:46 *** Kitrana has quit IRC (Quit: Leaving.)
16:36:09 <andythenorth> GS + GRF packaged as one thing when? πŸ˜›
16:36:21 *** Kitrana has joined #openttd
16:36:54 <CK2347> Oh wow
16:38:36 <TrueBrain> andythenorth: cool, you are building that? Awesome. Yeah, let us know when you are done.
16:42:02 <andythenorth> well
16:42:23 <andythenorth> let's say I'm building the GS, and the GRF
16:43:27 <andythenorth> 2 out of 3 ain't bad?
16:44:32 <andythenorth>
16:44:32 <andythenorth> my GS understands my GRF industries
17:38:20 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 opened pull request #11052: Codechange: use vector/variant for string parameter backups
17:40:45 *** hello_world has joined #openttd
17:40:54 *** hello_world has quit IRC ()
17:48:53 *** HerzogDeXtEr has joined #openttd
17:50:19 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #11052: Codechange: use vector/variant for string parameter backups
18:15:18 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 opened pull request #11053: Codechange: use std::string over stredup/strecpy
18:19:48 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 updated pull request #11052: Codechange: use vector/variant for string parameter backups
18:20:29 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #11052: Codechange: use vector/variant for string parameter backups
18:26:36 <TrueBrain> pretty code is pretty!
18:34:45 <DorpsGek> [OpenTTD/OpenTTD] nielsmh commented on pull request #11052: Codechange: use vector/variant for string parameter backups
18:38:04 <DorpsGek> [OpenTTD/OpenTTD] eints-sync[bot] pushed 1 commits to master
18:38:05 <DorpsGek> - Update: Translations from eints (by translators)
18:41:57 <DorpsGek> [OpenTTD/OpenTTD] BPplays opened issue #11054: [Bug]: font (A-OTF Shin Go Pr6N) not working
18:53:33 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #11052: Codechange: use vector/variant for string parameter backups
19:07:10 *** esselfe_ has quit IRC (Remote host closed the connection)
19:11:47 *** esselfe has joined #openttd
19:29:03 *** Wolf01 has joined #openttd
19:37:02 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #11052: Codechange: use vector/variant for string parameter backups
20:17:39 <pickpacket> Eddi|zuHause: yeah, your point is valid :) I think that exact problem already exists, however. Someone buys the rights, you buy them back, they buy them again, and now you can’t afford it so you have to wait a year. And as you said: if your company topples over because you can’t transport anything in one town for a year it’s not a very good
20:17:39 <pickpacket> company
20:19:35 <pickpacket> I’d argue that buying exclusive rights can be used as both weapon and defence. Buy them in your core town pre-emptively and you can have peace of mind there (but not with the current solution). Buy them in someone else’s town and you’ll throw a wrench in their cog wheels
20:21:17 <DorpsGek> [OpenTTD/OpenTTD] James103 opened issue #11055: [Bug]: "Game Load Failed" error message is shorter than other two-line messages
20:21:58 <pickpacket> Buying rights in a town you’re not yet active in is also a great way of elbowing your way into that town’s market, which is especially hard otherwise if other companies are already active there
20:22:48 <pickpacket> If you wanna talk about grifting and balance I have one thing to say: Road reconstruction πŸ˜‰
20:23:03 *** nielsm has quit IRC (Ping timeout: 480 seconds)
20:23:28 <pickpacket> I have things to say about town company rating too, but that’s for another day
20:27:00 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
21:08:05 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
21:20:57 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:50:16 *** gelignite has quit IRC (Quit: Stay safe!)
22:10:15 <DorpsGek> [OpenTTD/OpenTTD] krysclarke commented on issue #11054: [Bug]: font (A-OTF Shin Go Pr6N) not working
22:28:29 <k-man> my trains are not showing % loaded. is there an option i may have accidentally turned off?
22:29:00 <k-man> nm, found it
22:29:01 <debdog> k-man: mayhap "x"
22:29:05 <debdog> :)
22:30:28 <debdog> hmm, there might be even an option somewhere to make "x" not affect un-displaying that value
22:33:46 <k-man> thanks
22:34:09 <k-man> how do auto upgrade trains?
22:36:27 <k-man> nm, found it
22:38:10 <k-man> i'm taking wood to the sawmill, but it doesn't seem to produce any goods. or does that not happen until good wagons start arriving at that station
22:42:51 <debdog> the sawmill itself should tell you what it produces. the station attached needs an according train to accept the product
22:57:10 <k-man> ah ok thanks
22:58:09 <k-man> with the open graphics, is there a way to make it look less pixelated when i zoom in?
23:04:41 <LordAro> k-man: there is not
23:05:51 <LordAro> you can either a) not zoom in so far b) use a graphics base set that provides extra zoom sprites
23:05:58 <LordAro> or c) learn to love the pixels
23:12:19 <k-man> thanks
23:12:23 <k-man> pixels are awesome
23:14:30 <debdog> hehe
23:14:52 <debdog> LordAro: regarding option b), there are? how do I find them?
23:14:56 <debdog> or where?
23:18:24 <k-man> where are screenshots saved?
23:21:59 <LordAro> debdog: z/abase
23:23:12 <debdog> k-man: on linux in ~/.local/share/openttd/screenshot/
23:24:14 <debdog> LordAro: thanks!
23:24:50 <k-man> debdog: thanks. i added the path to the wiki page
23:24:52 <k-man>
23:28:12 <k-man> any thoughts on how i can fix my station? the Lindhattan Woods one
23:33:47 <debdog> only have path signals there for leaving trains. remove the other signals
23:33:58 <debdog> up to the crossing, that is
23:37:27 <DorpsGek> [OpenTTD/OpenTTD] BPplays commented on issue #11054: [Bug]: font (A-OTF Shin Go Pr6N) not working
23:39:22 <debdog> k-man: something like that
23:40:16 <debdog> except the crossings a diagonal in my case
23:41:06 <debdog> *are
23:41:32 <k-man> thanks