IRC logs for #openttd on OFTC at 2026-04-09
โด go to previous day
00:28:19 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
00:28:42 *** MinchinWeb[m] has joined #openttd
01:25:22 *** WormnestAndroid has quit IRC (Remote host closed the connection)
01:25:38 *** WormnestAndroid has joined #openttd
02:16:55 *** Wormnest has quit IRC (Quit: Leaving)
02:25:07 *** R1zla has quit IRC (Remote host closed the connection)
02:40:00 *** tokai|noir has joined #openttd
02:40:00 *** ChanServ sets mode: +v tokai|noir
02:44:40 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
02:44:59 *** WormnestAndroid has joined #openttd
02:47:01 *** tokai has quit IRC (Ping timeout: 480 seconds)
03:12:23 *** Phileman has joined #openttd
03:15:51 *** Philemon has quit IRC (Ping timeout: 480 seconds)
05:54:45 *** toktik has quit IRC (Ping timeout: 480 seconds)
06:15:59 *** androxarev has joined #openttd
06:21:34 *** wallabra has joined #openttd
06:29:12 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
06:29:30 *** MinchinWeb[m] has joined #openttd
06:31:58 *** emperorjake has joined #openttd
06:31:58 <emperorjake> androxarev: What are you trying to do? If you're designing or playing a scenario you'll be better off on another channel.
06:56:50 *** toktik has quit IRC (Remote host closed the connection)
07:14:40 <Borg> need a hand in naming of well, signal mode evaluation...
07:14:58 <Borg> after fidling with that train slowing down on PBS signals.. I got it sorted out..
07:15:33 <Borg> settled on adding firstred|lastred_penalty * 2 in case of first PBS signal green or reserved signal right after platform
07:16:02 <Borg> but now an idea poped in.. if I am already evaluating signal right after platform I can use it for extra stuff, like whatever I allow train on given platform or not
07:16:39 <Borg> for this I need to add conditional.. I was thinking about: if signal mode is 'platform' then
07:16:56 <Borg> and block will be evaluated only for trains who wants to enter station....
07:17:22 <Borg> other mode will be 'normal' for standard operations.. default
07:17:34 <Borg> any ideas for better name? or solution?
08:32:52 <_zephyris> peter1138: Worth thinking about the tree layouts as an opportunity for a hypothetical newgrf trees?
08:33:26 <_zephyris> On my wishlist is custom recolours for trees...
08:43:26 <peter1138> _zephyris, well, the entire process I'm doing is working on making NewGRF trees a possibility.
08:44:05 <peter1138> I came up with indirection between layouts and sprites, though.
08:44:44 <peter1138> Where tree layouts are not like existing layouts, as the code determines how many trees to draw.
08:46:18 <peter1138> But maybe I should undo the tree layout -> tree abstraction, and let NewGRFs do the entire tree layout thing via a regular act2 tile layout.
08:47:03 <peter1138> That would mean NewGRFs have to do decide on variations, tree count and growth stages, which is "a lot"
08:47:56 <peter1138> Currently all trees have 7 growth stages, the code just references the first sprite and adds on the growth stage.
09:05:11 <peter1138> There's also the ground sprite to draw.
09:05:34 <peter1138> Which can be a shore tile, clear land, rough land, partially snowy land, etc...
09:07:23 <peter1138> treegrowth only applies to the last tree, otherwise the mid-growth is used.
09:07:50 <peter1138> Seems like too much logic for NewGRFs to implement for every tree.
09:31:41 <peter1138> So it could be something like industries / industry tiles.
09:32:01 <peter1138> Hmm, no that's entirely the wrong comparison.
09:58:00 <Borg> okey! came w/ good name: entry mode
09:58:08 <Borg> and values, Normal, Platform, Back
10:37:24 <_zephyris> As you say, IMO trees make more sense as a dedicated bare tile type. They always conform to the terrain, they always have to work with growth cycles, etc.
10:38:16 <_zephyris> So sufficient to have definition of which 3 tree classes could appear and which 3 recolours to use for any newgrf implementation.
10:45:23 <_zephyris> With a switch for climate or tile type (snow/desert/grass).
10:49:29 <talltyler> Rainforest is its own type too ๐
10:53:12 <_zephyris> I always forget that!
10:54:44 <_zephyris> For performance, presumably have any tile change only trigger on tree update tile loop?
10:56:12 <_zephyris> Could do pretty good newgrf-defined tree seasons if you could switch recolor based on date as the tile loop progresses.
10:57:22 <emperorjake> Wasn't there a proposal to give rainforest a different terrain colour to distinguish it more?
11:04:54 *** WormnestAndroid has quit IRC (Remote host closed the connection)
11:05:02 *** WormnestAndroid has joined #openttd
11:20:20 <peter1138> Yeah, adding landscape mask and tropic zone mask was one of the first things I did. It's entirely necessary just to remove the hardcoded numbers.
11:22:28 <peter1138> The cactus probability was a bit awkard.
11:48:24 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
11:49:05 *** MinchinWeb[m] has joined #openttd
11:49:28 <peter1138> When the tile is a desert tile, the seed that is normally used to pick a random tree-layout instead is used a probability to determine if a cactus should be placed, or nothing.
11:50:05 <peter1138> This behaviour conflicts with introducing extra tree-layouts.
11:51:49 <peter1138> Disabling it means you end up with large clumps of cactuses. So I added another random value to be used as probability instead, but that means random tree generation is not the same. Not a huge deal.
11:58:06 <_glx_> Hmm publish preview workflow fails, but when I tested on my fork it was fine (publishing actually works, the issue is the deployment on github)
12:14:13 <peter1138> Wondering if PlaceTree should use its own random value instead of taking one that's already been used.
12:16:37 <peter1138> On a 4Kx4K map, 24 bits are already used to pick the random tile. This means that on a large map, tree count and growth stage depends on where the tree tile is.
12:18:45 <peter1138> Probably not something that's actually noticable though.
12:18:51 <reldred> i am excited by everything I am reading in here
12:22:35 <LordAro> reldred excited by preview workflow failures, confirmed
12:22:53 <__abigail> Can you cunts fix it already? I am getting emails from GitHub every fucking day
12:23:36 <LordAro> another failure to avoid the c-bomb from __abigail
12:24:06 <mmtunligit> shes australian its her culture
12:25:19 <__abigail> Yeah where are you from again mate
12:27:38 <mmtunligit> im so good at this
12:27:42 <peter1138> Wait, do you actually get emails about it? Cos I don't.
12:28:00 <reldred> You followed the whole damn repo did you
12:28:15 <LordAro> i follow the whole damn repo and i don't get emails about it
12:28:24 <LordAro> i get an awful lot of other emails, but nothing about that
12:28:44 <reldred> I just starred it, I donโt follow it, coz yeah then your emails get obliterated
12:29:05 <reldred> I only get spammed for prโs Iโve commented on, etc
12:29:25 <rito12_13[d]> I gave GitHub my spam address
12:29:41 <reldred> Oh thatโs my Gmail anyway
12:47:17 <Borg> I dont have GitHub acct at all :P
12:47:43 <Borg> via my private CGIT instance
12:53:07 <Borg> but I hate how it looks... I avoided goto [;
12:53:19 <Borg> talltyler would be proud [;
12:55:05 <Borg> rito12_13[d]: yeah. I disabled some code patch for now
12:55:20 <Borg> once it will be all right. I will get rid of it
12:56:01 <rito12_13[d]> why not `/*` and `*/`
12:56:15 <Borg> rito12_13[d]: because if there are comments inside.. it will get scrabled
12:56:30 <Borg> its also super easy to enable it. you just put #if 1
12:57:14 <rito12_13[d]> that makes sense
13:24:52 *** MinchinWeb[m] has quit IRC (Remote host closed the connection)
13:27:03 *** MinchinWeb[m] has joined #openttd
13:37:14 <peter1138> That level of nested ifs is scary.
13:38:35 <Borg> I could rewrite it w/ goto to early quit on 4 first ifs
13:40:40 <Borg> from screenshot.. yes.. this will fix it
13:41:15 <Borg> w/ this patch (you need to apply parts of it) train would go to right station (from train point of view)
13:42:15 <Borg> you need to apply first chunk, and in 5 chunk.. everything up to if (IsRestrictedSignal(t)) {
13:44:36 <Borg> you need to apply only 5 chunk as I said
13:45:08 <Borg> first chunk wont work in your openttd.. because it needs my patch where PBS signals stay green until train fully passes signal
13:45:42 <Borg> but the 1 chunk fixes the very same case. but w/ PBS signal -> PBS Signal
13:46:03 <Borg> identical situation. if train is occupying junk PBS signal tile.. (stopped) and we have 2 same paths
13:46:16 <Borg> incoming train will get stuck. instead go to free track
13:49:43 <Borg> peter1138: I think I can remove one if anyway to make it shorter
13:49:51 <Borg> if (KillFirstBit(tf_local.m_new_td_bits) == TRACKDIR_BIT_NONE)
13:50:03 <Borg> this is not really necessary.. because junctions cannot have signals..
13:50:21 <Borg> so I can remove it and collapse everything
13:50:42 <Borg> and because I lookup just single tile. I dont need to bother.. no signal, we exit
13:55:30 <Borg> or.. to be on safe side.. collapse it
13:56:19 <Borg> if (tf_local.m_new_td_bits == TRACKDIR_BIT_NONE && HasSignalOnTrackdir(t, td))
13:59:49 <Borg> hah :) I forgot to check for tunnel and bridge heads
14:00:41 <_glx_> And I guess it won't apply cleanly to master ๐
14:02:21 <Borg> _glx_: yeah, but its close
14:02:37 <Borg> I checked master.. and there are not many differences there
14:02:55 <Borg> damn. so many checks you need to do
14:05:41 <Borg> IsTileType(tile, MP_RAILWAY)
14:05:44 <Borg> this should be enough...
14:09:09 <Borg> okey I need to add if back.. but instead of KillFirstBit check. I will put IsTileType() check
14:09:33 <Borg> the second if I pasted here stay. just in case.. its cheap to check.. better safe than sorry
14:11:41 <ahyangyi> Borg rebasing to master? ๐ฎ
14:14:00 <Borg> ahyangyi: I have no way to test master
14:14:06 <Borg> even no way to compile it..
14:15:22 <Borg> peter1138: want new .patch?
14:16:00 <Borg> if (KillFirstBit(tf_local.m_new_td_bits) == TRACKDIR_BIT_NONE)
14:16:12 <Borg> if (IsTileType(t, MP_RAILWAY))
14:19:13 <Borg> if (tf_local.m_new_td_bits == TRACKDIR_BIT_NONE && HasSignalOnTrackdir(t, td))
14:23:57 <Borg> okey checks brides.. and also signals in not on trackdir
14:24:12 <Borg> for that cases.. default behaviour kicks in. trains waits
14:24:41 <Borg> but if we have signal right after station tile (PBS or Block) and its reserved.. penalty applies. and train goes to free platform
14:31:53 *** Wormnest has joined #openttd
14:31:55 <Borg> okey.. ReservationCost() will handle that
16:49:13 <_glx_> hmm I think my deployment testing has a flaw, the branch used to do the test is from my own fork
17:13:57 <andythenorth> oof the Steam sign-in dance
17:14:05 <andythenorth> trying to gift one of my kids a game
18:41:17 <andythenorth> I had better logout of Steam before I reply to any comments ๐
18:43:13 <andythenorth> TL:DR "many posters seem to be confused about the difference between _justice_ and _law_" ๐
18:54:35 *** Flygon has quit IRC (Read error: Connection reset by peer)
19:41:54 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
19:42:31 *** MinchinWeb[m] has joined #openttd
19:45:32 <rito12_13[d]> Does it have to be two branches inside one fork or can it be your branch PRed onto master in another fork?
19:56:49 <_glx_> rito12_13[d]: PR into my fork but with branch from another fork, so I can change master and update the PR when I need
19:57:43 <_glx_> it's a pain to test `workflow_run` as it runs from master
19:58:11 <_glx_> so for any change I have to update my master, then the PR
20:01:03 <_glx_> and since everything works fine when the PR is one of my branches, but doesn't work in openttd repo with a usual PR, it's the case I have to test on my fork
20:01:18 *** Borg has quit IRC (Quit: leaving)
20:01:27 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
20:04:52 <_glx_> nice it fails like openttd repo, exactly what I wanted
20:04:58 *** MinchinWeb[m] has joined #openttd
20:19:59 <_glx_> `"message": "No ref found for: glx_test",` <-- that's what I guessed
20:20:20 <_glx_> it was working by "luck"
20:21:07 *** WormnestAndroid has quit IRC (Remote host closed the connection)
20:21:20 *** WormnestAndroid has joined #openttd
20:53:54 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
20:55:08 *** MinchinWeb[m] has joined #openttd
20:58:32 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
20:58:48 *** MinchinWeb[m] has joined #openttd
21:10:54 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
21:11:24 *** MinchinWeb[m] has joined #openttd
21:28:32 <peter1138> Is that a dupe? I already have that crash json file... :o
21:33:14 <peter1138> Oh, no, it's just a comment on the existing issue, oops. :)
21:33:55 <_glx_> an AI generated comment ๐
21:40:31 <andythenorth> am I AI generated?
21:40:41 <andythenorth> can someone fund more tokens to improve my performance?
21:41:53 *** WormnestAndroid has quit IRC (Remote host closed the connection)
21:42:09 *** WormnestAndroid has joined #openttd
22:12:46 *** wallabra has joined #openttd
22:27:29 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
23:29:35 <mmtunligit> it looks like there's some sort of issue with 15.x on macos 26.x probably related to the graphics pipeline. there are a number of open issues that are having issues with graphical lag and mouse pointers. id imagine theyre all due to the same thing so if we can find a mac out there to test on we should probably try to fix it
23:30:31 <talltyler> Our sole Mac user seems to be napping.
23:31:15 <mmtunligit> andy uses mac? the mroe you know
23:36:08 <mmtunligit> also, relevant issues seem to be 15316, 15354, 15393, and 15394.
23:36:10 <mmtunligit> 15349 may also be related but I think is unlikely, and the author has yet to provide crash logs
23:39:04 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
23:43:06 *** MinchinWeb[m] has joined #openttd
continue to next day โต