IRC logs for #openttd on OFTC at 2026-04-28
⏴ go to previous day
01:04:54 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
01:05:42 *** MinchinWeb[m] has joined #openttd
01:18:57 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
01:19:18 *** MinchinWeb[m] has joined #openttd
01:52:06 *** Wormnest_ has quit IRC (Quit: Leaving)
02:40:37 *** ChanServ sets mode: +v tokai
02:47:30 *** tokai|noir has quit IRC (Ping timeout: 480 seconds)
03:49:35 *** Phileman has joined #openttd
03:52:59 *** Philemon has quit IRC (Ping timeout: 480 seconds)
03:57:17 *** merni has quit IRC (Quit: User went offline on Discord a while ago)
03:59:21 *** Compu has quit IRC (Remote host closed the connection)
05:40:29 <DorpsGek> - Update: Translations from eints (by translators)
06:56:02 <peter1138> (Direct X link becuase the mirrors don't seem to handle this "article" business.
07:15:19 <reldred> Though I did have a coworker once go through two forced ‘are you fucking sure’ prompts and delete a VDI pool in Horizon which instantly wiped 50+ virtual desktops, all of their snapshots, all of their data, everything.
07:15:46 <reldred> The task he was assigned at the time had *nothing to do with deleting a pool, any pool*
07:16:13 <reldred> The only thing I can think of in that moment was that the Voices In His Head Compelled Him
07:17:00 <reldred> But he also routinely shit on the toilet seats at work so you know, there were a litany of other issues at play
07:18:29 <reldred> For your benefit Peter I clown reacted those two image posts
07:18:39 <andythenorth> in another prompt
07:19:08 <LordAro> peter1138: oh dear oh dear
07:19:34 <andythenorth> I guess my last personalisation instruction gives the robot a dillema
07:32:04 <peter1138> A dilemma would require thinking.
07:32:13 <andythenorth> algorithmically I mean 😛
07:32:27 <andythenorth> what's next token prediction, given the constraints
07:35:38 <andythenorth> might be the wrong audience to ask 😛
07:38:31 <peter1138> You already failed the task.
07:39:31 <belajalilija> god o hate the AI writing style
07:40:47 <reldred> at least gemini has the occasional mental breakdown and uninstalls itself rather than delete all your shit
07:41:23 <reldred> kinda reminds me of Sydney, one of the earlier Cortana iterations. You know when it wasn't going on anti-semitic rants.
07:42:21 <andythenorth> I like LLMs as technology, but I did philosophy of language in my degree yada yada
07:42:41 <andythenorth> I don't like the businesses around them, but the technology is interesting
07:45:04 <peter1138> To avoid feeding the machine, use a local-only LLM with local-only training data.
07:45:12 <emperorjake> andythenorth: That's how I feel too. I see a lot of people taking out their frustrations on AI when it's actually the fault of capitalism
07:46:22 <emperorjake> I want to use as much local AI as possible to reduce dependence on the whims of corporations
07:46:34 <reldred> yeah well we can't have luxury gay space communism can we
07:47:00 <peter1138> reldred, isn't that the fediverse?
07:47:44 <reldred> or my favorite line I just saw pop up on said fedi this arvo "queer-owned business" means nothing anymore. openai and palantir are both queer-owned businesses"
07:53:48 <emperorjake> We may live in a capitalist dystopia but at least billionaires can be openly queer
07:55:23 <__abigail> Only the right types of queers though
07:56:05 <peter1138> Basically gotta be a white cisgay man.
08:21:46 <LordAro> reldred: you're suggesting someone's sexuality isn't their entire identity and they may have other opposing views?
08:23:39 <LordAro> 2013 tumblr would call you homophobic for such an opinion
08:23:55 <reldred> oh don't worry 2026 tumblr still probably would
08:24:11 <will_marshall_> Now that I'm gay married will it be my turn to own a nasty multibillion dollar company next?
08:24:30 <will_marshall_> Or is there no correlation at all not even for the main character? (/s)
08:24:55 <will_marshall_> Opening my christmas presents this year and it's just full of now-worthless oracle stock.
08:25:06 <peter1138> Only if you're a proper c*nt.
08:25:43 <will_marshall_> Checking with my coworkers if I've been evil enough.
08:25:43 <reldred> so that's my problem, I'm enough of a cunt to get a kushy corpo job earning fucka bands but not quite enough of a cunt to be a billionaire. Typical.
08:25:59 <reldred> I need to lift my game
08:48:20 <reldred> peter1138: diid you mean to join the voice channel on discord? you've been sitting in there for a bit by yourself, I'd join you but I don't even have a mic setup on this computer 😛
09:37:32 *** Flygon_ has joined #openttd
09:43:56 *** Flygon has quit IRC (Ping timeout: 480 seconds)
09:45:26 *** Flygon_ has quit IRC (Read error: Connection reset by peer)
09:54:36 <peter1138> reldred, yeah, just lurking in case someone coherent decides to come on.
10:02:03 <LordAro> might be waiting a while
10:06:47 <reldred> microphone access aside, I’m fresh out of coherency.
10:13:39 <__abigail> reldred: I'm too much of a cunt to get a nice corpo job apparently
10:13:39 <__abigail> Ghosted by the grad programs
10:13:55 <__abigail> After their "psychometric evaluations" that are definitely not autism filters
10:24:09 <reldred> An see the trick is to work for 15-20yrs at absolute shit kicker jobs at great cost to your mental health and wellbeing before getting tapped by a recruiter at a contracting firm and then totally skip the usual corporate recruitment pipeline
10:24:46 <reldred> I’m told this can actually be shortened significantly, only took my coworker about 3-4yrs of entry level shitkicker jobs
10:25:29 <reldred> In hindsight I could have done it quicker as well but I was dumb and kept working for small family businesses who then gaslit me into staying for far too long for far too little money
10:55:06 *** WormnestAndroid has quit IRC (Remote host closed the connection)
10:55:10 *** WormnestAndroid has joined #openttd
10:55:19 *** WormnestAndroid has quit IRC (Remote host closed the connection)
10:55:26 *** WormnestAndroid has joined #openttd
11:19:31 <_zephyris> Not sure I could cope with hearing a human voice from peter1138. surely a coding robot
11:28:47 <ahyangyi> peter1138: Why does this kind of article always read so sloppy
11:28:53 <ahyangyi> > A single API call deletes a production volume. There is no "type DELETE to confirm." There is no "this volume is in use by a service named [X], are you sure?" There is no rate-limit or destructive-operation cooldown. No environment scoping. Nothing between an authenticated request and total data loss.
11:29:14 <ahyangyi> How do the suggested things even help, man it's a fucking API
11:30:17 <ahyangyi> besides scoping that is.
11:31:28 <ahyangyi> Obviously the agent authorized to delete a whole volumn can also type DELETE to confirm, and answer "Yes I am sure", and a single delete will not trigger any rate-limit.
11:32:10 <peter1138> Probably they used a slop-generator to complain about their slop being sloppy.
11:39:44 <reldred> AI is great at giving mediocre people unreasonable amounts of confidence
12:35:33 *** Wormnest has joined #openttd
12:48:18 <squirejames> Also great at giving unreasonable people unreasonable amounts of confidence
12:48:39 <squirejames> "I asked AI and they said this picture is...."
12:48:39 <squirejames> No, it isn't. Stop, just, stop
12:53:19 <ahyangyi> "but, I asked AI and they said it's OK to ask AI!"
13:07:44 <peter1138> > overly verbose embellished tamagotchi
13:23:36 <squirejames> I think they were at Download
14:15:01 <mmtunligit> oh cool, new distro had all the packages i needed for compiling openttd preinstalled
14:20:58 <mmtunligit> i bet there are people out there calling cachy bloated lol
14:22:59 <peter1138> Generally yes, including all headers and pkgconfig bits needed for compilation of any random software is bloated.
14:24:44 <mmtunligit> i like not having to set everything up myself
14:24:54 <mmtunligit> arch purists will be mad but w/e
14:34:59 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
14:35:23 *** MinchinWeb[m] has joined #openttd
14:41:16 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
14:41:22 *** MinchinWeb[m] has joined #openttd
14:56:46 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
14:59:10 *** MinchinWeb[m] has joined #openttd
14:59:10 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
15:01:19 *** MinchinWeb[m] has joined #openttd
15:09:21 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
15:10:44 *** MinchinWeb[m] has joined #openttd
15:18:46 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
15:19:49 *** MinchinWeb[m] has joined #openttd
16:03:21 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
16:05:45 *** MinchinWeb[m] has joined #openttd
16:16:27 *** Smedles has joined #openttd
17:50:40 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
17:50:46 *** MinchinWeb[m] has joined #openttd
18:01:38 *** tokai has quit IRC (Quit: c('~' )o)
18:02:56 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
18:03:52 *** MinchinWeb[m] has joined #openttd
18:07:42 <peter1138> Figured it would be something already solved.
18:24:35 *** Flygon has quit IRC (Remote host closed the connection)
18:44:37 <peter1138> Specifically the COM initialization.
18:44:51 <peter1138> We call CoInitializeEx(), but only in the music and audio drivers.
18:45:08 <peter1138> I wonder if it is related.
19:36:36 <_glx_> I just tried `-snull -mnull`, so no call to CoInitialize, and no issue
19:36:53 <_glx_> kind of hard to test when it's not reproduceable
19:38:49 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
19:39:21 *** MinchinWeb[m] has joined #openttd
19:40:30 <_glx_> and #15551 uses both xaudio2 and dmusic
19:41:30 <peter1138> Yeah, but possibly race conditions.
19:42:20 <peter1138> The exception is inside the UISettings constructor.
19:46:13 *** Tirili has quit IRC (Quit: Leaving)
21:08:35 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
21:09:05 *** MinchinWeb[m] has joined #openttd
21:31:54 <will_marshall_> Okay, implementing flip for articulated vehicles by caveman methods: Promising results with fascinating edge cases.
21:33:07 <will_marshall_> This is very much caveman method (flip the articulated vehicle's span in the linked list, set the flipped bit on all the elements, nudge the newgrf code to pick the right sprites), I'm not asking what I'm doing wrong, it's all wrong 🙂
21:37:41 <will_marshall_> It's probably not the best approach, which might be to destroy the articulated parts and run AddArticulatedParts respecting the flip state of the original vehicle?
21:38:27 <will_marshall_> Being able to flip articulated vehicles would be really useful for the patch I actually want to work on.
21:41:55 <will_marshall_> It's funny that there's gamestates that don't trip asserts but do result in a self-replicating virus train though.
21:42:53 <audigex> will_marshall_: The game wants shunting
21:43:02 <audigex> It's becoming sentient
21:43:23 <will_marshall_> I'm trying to help it get shunting but without broken UX.
21:49:17 <will_marshall_> apart from turning into train 0, losing all sense of self, driving off uncommanded and all the animations running in reverse, this does work.
21:51:38 <audigex> I feel like shunting needs to be split into two separate ideas, personally
21:51:38 <audigex> 1. Yard/depot shunting where you move eg wagons around in a small relatively fixed area
21:51:38 <audigex> 2. "Split/merge diagrams" where trains can travel together as eg a 9 -car train and then split into a 4 and 5 car for a Y route, attempting to re-combine again (with eg a timeout if no appropriate "partner" arrives in time) with another train that has the same shared orders
21:51:38 <audigex> I feel like that would make it more plausible to get one or both of them into the game, rather than trying to combine both ideas into one arbitrary "trains can split/merge at any time" kinda situation
21:51:59 <will_marshall_> Both of those are doomed IMO because you have the problem of needing to make orders for trains that do not yet exist.
21:52:05 <audigex> Also, I get the feeling that now Push-Pull is becoming native, a lot of conversations will move towards shunting and underground metro as "the next big thing"
21:52:34 <audigex> will_marshall_: Yeah to be clear, I'm firmly of the opinion that shunting is *at best* a 50-50 possibility of ever happening. And I think that's already quite an optimistic view
21:52:38 <will_marshall_> And making train orders for hypothetical future trains feels to me like a complete headache.
21:52:57 <will_marshall_> I'm not looking at shunting, I'm only looking at a situation where two trains enter and two trains leave.
21:53:00 <audigex> But I figure by splitting the ideas it becomes potentially a bit *more* plausible because those two concepts are quite different
21:53:32 <andythenorth> “Switching Isn’t Shunting”
21:53:45 <will_marshall_> I'm starting with "wait for a powered vehicle to arrive at the rear of the formation that matches the powered vehicles at the front of the formation, and '''swap''' the intermediate vehicles between the two trains"
21:54:03 <will_marshall_> And furthermore, swap the orders between the locomotives you attached and the locomotives you detached.
21:54:19 <andythenorth> Shunting’s BS, Train Simulator exists 🫠
21:54:43 <andythenorth> “Chuff chuff, choo choo”
21:55:37 <will_marshall_> The logic being you have a train arrive at a dead-end station with "wait for locomotive swap", and a locomotive on it's own waiting near the station with "attach to train at [station]", so you don't create or destroy a train at any point.
21:55:58 <andythenorth> Swapping vehicles between two consists is quite neat
21:56:06 <andythenorth> “Train ferries next”
21:56:15 <will_marshall_> Train ferries in train simulator first.
21:57:24 <will_marshall_> anyway, to be able to swap vehicles between consists you need to be able to reverse all vehicles and you need to be able to confidently work with sub-consist spans (flip them, mostly)
21:57:34 <will_marshall_> hence, working on flippable articulated vehicles.
21:58:00 <mmtunligit> ive got theories about how to make shunting work but i will not state them because the haters (people with different ideas) will come for me
21:58:25 <will_marshall_> i already said your idea won't work, fite me
21:58:46 <andythenorth> I’m not haters, I’m fight club
21:58:52 <will_marshall_> don't talk about it
21:59:13 <andythenorth> “Don’t talk about what?”
22:00:11 <will_marshall_> given that it's pratchett day that maybe should have been a "dont arsk us about..."
22:05:01 <peter1138> Bah, materialized view slower than CTE :/
22:05:27 <will_marshall_> Actually this might be a genuine need, motion_counter only ever goes up, even if the train is going backwards, meaning if it's being used to animate wheels/rods...
22:05:50 <will_marshall_> does there need to be a new equivalent var that goes up in forward and down in reverse?
22:08:04 <_jgr_> Having the motion counter advance in the negative direction when going backwards ought to be fine. I don't think there's much point in a duplicate variable.
22:09:54 <will_marshall_> Only thought would be that it'd be weird for sounds?
22:10:53 <will_marshall_> Not really critical given that if the vehicle has just reversed the sound playing is who cares.
22:11:23 <_jgr_> I've got no idea what NewGRF authors are doing for sounds TBH. I've got all that annoying stuff turned off all the time.
22:11:55 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:16:33 <peter1138> Sounds are either tick counter, or when the motion counter passes 256.
22:17:07 <peter1138> If it's switched to reversing then the condition in vehicle.cpp:1058 probably nedes to be inverted too.
22:17:36 <peter1138> Eh, not inverted, but tweaked.
22:17:57 <will_marshall_> Yeah, my thought was that if you had a vehicle stop and reverse with the motion counter just past 256 you'd get the sound playing twice? Anyway, needs a tiny bit of thought.
22:19:16 <will_marshall_> It's also not just IsDrivingBackwards() - it's IsDrivingBackwards xor vehicle flip state within the consist.
22:19:18 <peter1138> I'm willing to bet for the very few sets that implement sounds, it's not worth worrying about for now.
22:19:32 <will_marshall_> More sets implement animations than implement sounds.
22:24:08 <audigex> will_marshall_: Thinking about it, could this be a potential theoretical solution to issue the "Split/Merge" type of shunting I was talking about, where you said about how you can't create/remove orders for a train that doesn't exist?
22:24:08 <audigex> So you'd actually create two trains first, then "merge" them. They'd each retain their "own" orders, but would happen to couple up and travel together for a shared portion as a single consist
22:25:21 <will_marshall_> Yes but you instantly fall into a mire of UX, I think the solution in your case there would be to treat it (conceptually) like the way consisting works on model railways - you have a temporary train that's composed of a set of other trains.
22:25:26 <audigex> _jgr_: Our sound stuff looks something like this, and I didn't write it so I can't comment much on it. I also don't use it 😂
22:26:14 <audigex> will_marshall_: Yeah that's more or less what I'm getting at, effectively they would officially stay as separate trains but would happen to consist together in some way temporarily for a set of shared orders
22:26:35 <audigex> I feel like that, while complicated, feels a bit more plausible than arbitrary wagon switching in a yard
22:26:51 <will_marshall_> Yeah, I think that's elegant compared to trying to break the link between "1 order list == 1 set of vehicles"
22:26:58 <audigex> It would still be a hell of a change and I doubt we'll see it... but it feels *potentially* plausible as opposed to entirely implausible
22:27:33 <audigex> Obviously I'm saying that with a completely naive perspective, I'd fully expect there to be some blocker I'm simply unaware of. You don't know what you don't know, etc
22:27:52 <will_marshall_> Part of my day job has been designing scheduling systems (timetable solvers) for train simulations, everything about this is a can of worms.
22:28:30 <will_marshall_> It's easy to solve this sort of problem for a set of train instructions that run once.
22:29:05 <will_marshall_> Solving them in such a way that the orders can be repeated over and over and over (which is to say, ensuring that all your timetabled movements have a balancing input) is something real railways spend millions of dollars solving.
22:30:10 <will_marshall_> If all your train orders are one train in, one train out nothing bad ever happens.
22:32:48 <audigex> That's why I think the "two trains that happen to travel together sometimes" thing potentially has legs as a concept
22:32:48 <audigex> You have an order where they wait for an appropriate "partner" (same shared order segment between the merge and split) to run with, but if they hit a timeout then they just continue alone and try again next loop
22:32:48 <audigex> Since they're both still separate trains, they can both just continue without the other with no harm done other than taking up an extra path
22:32:48 <audigex> If a train arrives at that station with a path to that platform while a "potential partner" train is waiting, it paths to the same platform and they join together and continue with their shared order segment together, until they hit a "split" order where they split and leave independently
22:32:54 <andythenorth> games should permit more bad things to happen
22:32:59 <andythenorth> "all your trains died"
22:33:05 <andythenorth> "play again y|n"
22:33:25 <audigex> andythenorth: Hard agree. OpenTTD is too easy, let people mess it up and work out how to fix it
22:33:25 <audigex> It's a mechanic, welcome to hard mode
22:33:46 <will_marshall_> I agree. Let's talk about permissive signalling and the call-on aspect.
22:34:07 <audigex> I genuinely don't care about the "it's possible to deadlock" side of this stuff, let people figure out how to manage that. For me the only blocker is development difficulty and the low likelihood that anyone ever takes it on
22:34:33 <audigex> I should write up this concept as a bit of a "whitepaper" though, maybe, for discussion
22:34:50 <mmtunligit> you get noobs deadlocking trains all the time already and nobody sees that as an issue to solve
22:34:53 <will_marshall_> Wiki page time?
22:35:05 <audigex> Again, I'm gonna emphasise, I doubt it's ever gonna happen. But until a couple of weeks ago I thought we'd never get native push pull either so... never say die
22:35:23 <_jgr_> It's probably worth looking at "games" which have this already (e.g. SimSig)
22:35:28 <audigex> I might win the lottery and just buy an entire OpenTTD Dev or something
22:35:52 <audigex> JGR how much would I have to pay you to work on this feature? Just so I know how much of the Euromillions I'll have left for a swimming pool
22:35:54 <will_marshall_> Simsig does this by brute force.
22:36:05 <mmtunligit> yeah i was thinking about simsig as well, though "train waits indefinently if partner doesnt show up" probably isnt ideal for us
22:36:26 <_jgr_> audigex: At the risk of being flippant "more than you can afford" is the stock answer 😛
22:36:37 <will_marshall_> Simsig puts the full burden on the timetable author and the player to make sure that a corresponding train shows up for the join instructions.
22:36:41 <audigex> Indefinite wait is definitely impractical - you only need a couple of full platforms and a train waiting at the entrance and nothing would ever move
22:36:55 <mmtunligit> NIMBYrails also has a system now, though its hidden behind its scripting language because the dude didnt want to solve the UI problem
22:37:00 <_jgr_> In SimSig the player is expected to manually intervene for things like that
22:37:03 <audigex> _jgr_: If I win £200m though, I suspect there might be some wriggle room there? 😂
22:37:29 <_jgr_> Well yes, anyone can be bribed at some point 🙂
22:37:43 <audigex> _jgr_: Yeah I think that's why we'd need timeouts - that would be the signaller/dispatcher intervention ("There's disruption, just continue alone")
22:37:44 <will_marshall_> You could make a lot of game for £200m.
22:38:21 <audigex> Indeed, but I needed to establish the principle before negotiating on price
22:38:21 <audigex> Give me a decade to simultaneously save up and wear him down through incessant nagging...
22:38:53 <will_marshall_> Just find game developers whomst are bored after work and get them to do it.
22:39:34 <will_marshall_> Actually honestly probably not very much money at all.
22:39:54 <audigex> Realistically the actual best option for me would be to spend some time learning the codebase and take a crack at it myself. I'm a reasonably competent software developer, I should really be taking more of a crack at OpenTTD stuff
22:39:54 <audigex> On the flip side, 8 month old baby... I should've probably looked at it 5 years ago rather than today 😂
22:40:19 <audigex> But it feels like the kind of feature that would be better served by someone who already knows their way around, rather than someone's first forays into the codebase
22:41:30 <will_marshall_> I'm sort of jumping in with both feet at what I'm trying to do but I am a professional C++ trains understander so in theory I should be fine?
22:41:55 <will_marshall_> The worst thing I can do is disappoint people who should've known better than to have high expectations.
22:42:18 <will_marshall_> Or maybe the worst thing I could do is dissuade someone more competent from taking a crack at it?
22:43:06 <peter1138> andythenorth, what are they all talking about
22:46:42 <audigex> peter1138: I'm mostly just naively spouting thoughts about how "split/merge" consists could potentially be handled as a concept, if we considered it separately to "yard switching/shunting"
22:46:42 <audigex> Bit of a hypothetical conversation (and hoping for devs to point out to me where it would fall down) rather than any real expectation of it happening
22:48:44 <peter1138> So two otherwise independent trains being able to join or detach on command, presumably outside of a depot?
22:49:16 <will_marshall_> Join and then (later, mandatory) detach.
22:50:09 <will_marshall_> Always in a matched pair, I think? Correct me if I'm wrong.
22:50:24 <audigex> peter1138: That’s the gist of it, yeah, merging (with a timeout) if they arrive at the same station at the same time
22:50:44 <audigex> will_marshall_: I was envisioning “the have to have the same orders between the merge and split but not strictly matched units”
22:50:57 <will_marshall_> I mean a matched pair of orders.
22:51:27 <will_marshall_> 2) stop at B (join trains)
22:51:27 <will_marshall_> ...) stop at ...
22:51:27 <will_marshall_> n) stop at G (split trains)
22:53:09 <peter1138> Seems entirely too much work for a not really very useful thing, tbh.
22:53:48 <audigex> Essentially it’s two independent trains
22:53:48 <audigex> They have some identical orders between “stop at A and merge” and “stop at B and split”
22:53:48 <audigex> If a train arrives at A while another with the same order segment is waiting there, it paths to the same platform and they combine temporarily. If not it just stops at the far end of the platform and waits for one to arrive. After a timeout it leaves alone
22:53:48 <audigex> On arriving at B, they split and go on their merry way separately
22:54:04 <will_marshall_> It's probably more useful than what I'm working on, which is for real anoraks like me.
22:54:48 <audigex> peter1138: I believe this would be astonishingly popular among the model railroad style of users in the community, the author would be a hero to us
22:54:48 <audigex> I agree it would be a lot of work, though 😂
22:54:59 <will_marshall_> Though if you can get it right it does account for helper engines, which arguably have a gameplay purpose.
22:55:44 <will_marshall_> just make the detach order able to happen at a waypoint 😉
22:58:11 <audigex> will_marshall_: Or just fake it with an engine that turns invisible on flat ground 😂
22:58:53 <will_marshall_> I like to pretend people like that don't exist.
22:59:15 <peter1138> Probably a lot easier to make it happen inside a depot.
22:59:22 <peter1138> But I imagine that's not what you're thinking of.
23:05:10 <will_marshall_> audigex: See I think this is what happens to people when they're starved for good meat-and-potatoes roleplaying features in their transportation management games, they make dopey roleplay in the only scripting interface available to them 😄
23:07:37 <audigex> haha at the end of the day if pushpull/shunting aren't available natively and properly, we're just gonna find ways to try to hack them in as best we can
23:09:28 <_jgr_> On the other hand, the gameplay point of stuff like banker engines is to for players to have to plan around it, build infrastructure, maybe build a flatter route instead, etc
23:10:04 <_jgr_> Just having the engine appear at the back doesn't make any actual difference to the player
23:10:28 <will_marshall_> tradeoffs between running cost/organizational complexity/investing in infrastructure are good things to add to your game
23:12:31 <will_marshall_> Am I going crazy? I can't find a single thing that actually makes vehicle running sounds?
23:14:55 <audigex> _jgr_: It also adds power and running costs when in use, and there’s an up front cost to buy it
23:14:55 <audigex> Although to be fair I’ve never actually released that or coded more than one unit, it was just an experiment
23:14:55 <audigex> I like to play around with newGRF features and see what kind of silliness I can add
23:14:55 <audigex> Banker engines, the old style hacky push pull, and the “engine runs round” thing I posted yesterday in Discord channel #add-on-development , that kinda stuff
23:14:55 <audigex> It’s mostly just to see if I can and how well it works, similar to things like having a buffet car reduce running costs to emulate an income from selling sandwiches etc
23:15:48 <audigex> That setup requires a banker engine on the back of every train so it’s not much of a sensible gameplay tradeoff, just a fun bit of eye candy for those of us who like to add some pretend realism to OpenTTD even where it isn’t necessary
23:16:34 <audigex> I think of it in much the same vein as departure boards, they don’t *really* add anything, they’re just fun
23:17:44 <peter1138> will_marshall_, old NARS, old UKRS.
23:19:04 <audigex> will_marshall_: BRTrains does
23:19:11 <_jgr_> audigex: I've found departure boards pretty handy for planning timetables, dispatch schedules, platforms, etc.
23:19:16 <audigex> Not for absolutely every unit
23:19:36 <will_marshall_> I was trying UKRS2 because I have vivid memories of using it's param to disable running sounds.
23:19:46 <will_marshall_> High chance of crazy or possibly it being bedtime.
23:20:28 <squirejames> I do remember UKRS2 having running sounds
23:20:56 <squirejames> (I could still hear the chuff chuff chuff long after i'd close the game, and indeed shut down the PC)
23:22:18 <roadworx> hey, peter, sorry to interrupt, but would you happen to have a link to that patch you mentioned that increases the amount of cargo types? or at least the memory allocated to it
23:23:56 <will_marshall_> Herp derp derp
23:24:00 <will_marshall_> someone shoot me dead
23:35:49 <peter1138> Seems a bit extreme.
23:43:39 <roadworx> guess i could attempt to figure out how to do it myself lol
23:44:52 <roadworx> i wish i could stop tinkering with things and just play the damn game
23:58:57 <squirejames> Welcome to modding 😄
23:59:22 <roadworx> yeahhh i do this with nearly every game i play lol
23:59:30 <peter1138> The changes are quite extensive and a bit old. I would need to spend quite a bit of time to update it.
23:59:35 <roadworx> i never even do it to release them either, i jsut do it for my own personal amusement
23:59:50 <roadworx> roadworx: ahhhh, gotcha, nvm then. thanks anyways!
continue to next day ⏵