IRC logs for #openttd on OFTC at 2026-01-14
⏴ go to previous day
03:03:37 *** Wormnest has quit IRC (Quit: Leaving)
03:37:30 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
03:37:31 *** WormnestAndroid has joined #openttd
03:37:45 *** WormnestAndroid has quit IRC (Remote host closed the connection)
03:37:46 *** WormnestAndroid has joined #openttd
03:37:50 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
03:38:01 *** WormnestAndroid has joined #openttd
04:50:10 <DorpsGek> - Update: Translations from eints (by translators)
06:53:48 *** cu-kai has quit IRC (Quit: Leaving for a bit.)
08:24:59 <LordAro> if i could be bothered i would complain about the obviously missing context :p
10:11:26 *** SigHunter has joined #openttd
10:12:44 *** toktik has quit IRC (Remote host closed the connection)
11:26:50 <andythenorth> unless nmlc was expanding the ternary to 2 action 0s, and wrap action 6 or something around it
11:34:48 <_glx_> Action 6 do exist too andy
11:52:59 <LordAro> doesn't do any good here
11:53:16 <LordAro> (time taken would be more beneficial though)
11:53:54 <_glx_> Probably better to look at introducing some threading for screenshots, but not easy
12:31:33 <peter1138> Looks sweet, to be honest.
13:19:25 *** moll has quit IRC (Ping timeout: 480 seconds)
13:49:01 <_zephyris> There's something about the colour palette and anisotropic blur on CRTs which does look lovely
13:52:41 *** Wormnest has joined #openttd
14:00:06 <peter1138> _glx_, yeah we use a callback to draw sections of the image, so that would break horribly.
14:04:42 *** Flygon has quit IRC (Remote host closed the connection)
14:13:22 <kuhnovic> Forest fire simulation to prevent maps filling up with trees?
14:26:31 <kuhnovic> Danish numbers are the worst
14:37:14 <peter1138> kuhnovic, surely the solution is just to completely disable trees because they're all entirely pointless... ;)
14:37:59 <kuhnovic> First I ruined buoys, now trees are next
14:39:39 <kuhnovic> Maybe I should use that as my new nickname
14:49:43 <belajalilija> xarick: 92 in Danish is tooghalvfems
14:50:18 <belajalilija> 95 is femoghalvfems
14:50:53 <belajalilija> It’s just like reading “two and half fives”
14:51:08 <belajalilija> Fives being five twenties
14:51:29 <belajalilija> The concept is similar to telling the time
14:51:45 <belajalilija> Like when an English person tells you it is half ten
14:51:51 <belajalilija> They don’t mean it is 5
14:51:58 <belajalilija> They mean it is 10:30
14:52:07 <_zephyris> Cellular automata trees
14:53:25 <_zephyris> Don't mind forest fires, but it does seem more like a disaster than a tree control measure
14:53:52 <talltyler> Forget DOOM, the real test is if your game can play Game of Life
14:53:57 <LordAro> should disasters be anything more than visual though?
14:54:42 <_zephyris> IMO simpler solution is adding a density-based chance of dieback of trees, which is kinda cellular automata at its heart
14:54:59 <talltyler> A forest fire would have gameplay implications if you were cutting down trees in subtropic
14:55:29 <talltyler> Ot what if your steam locomotive starts the forest fire, and it causes all the nearby towns to hate you? 😛
14:57:18 <LordAro> We didn't start the fire
14:58:02 <peter1138> I'm in favour of trying to rebalance growth, as long as it doesn't result in eventual complete death, or say the entire map just having sparse trees with no clumps.
15:00:23 <peter1138> (Not keen on trying to avoid randomness... :))
15:06:05 <kuhnovic> _zephyris: I changed to palette to gray just to visualize what's going on. I want the trees to just die off one by one, opening up a clearing.
15:12:55 <peter1138> Hmm, I suppose it's not possible for a NewGRF to optionally provide zoom levels.
15:13:03 <peter1138> (OpenGFX2 sprite font related)
15:13:30 <peter1138> It would have to contain everything twice.
15:36:21 <_zephyris> kuhnovic: Oh! Interesting.
15:38:57 <_zephyris> IMO the current game setting control of max sprite zoom to use is good enough, except for maybe eg. loading and downscaling 4x sprites to 2x, if maximum sprite resolution is set to 2x.
15:39:34 <_zephyris> I wonder if a maximum bit depth setting, instead of running with a different blitter, might be a nice enhancement. But possibly just a can of worms.
15:51:56 <ahyangyi> I still need to understand what the 40bpp blitter is doing
15:59:16 <LordAro> ahyangyi: it'd be nice if someone understood it
16:19:21 *** gelignite has joined #openttd
16:19:43 <peter1138> IIRC the issue is ambiguity on what to do with alpha vs recolouring.
16:20:27 <peter1138> For company recolour stuff it's pretty irrelevant, but for animated recolouring it matters.
16:29:49 <rito12_51026> > Compiling with CMake instead
16:29:49 <rito12_51026> Isn't it as if cmake is necessary?
16:30:02 <andythenorth> Standardised TreeType Scheme
16:30:18 <LordAro> rito12_51026: i wonder if they've tried to use vcpkg on linux or something weird
16:30:49 <LordAro> andythenorth: Tree Type Dataformat, obviously
16:31:52 <rito12_51026> Maybe they lack some external library?
16:32:46 <LordAro> not worth speculating with so little information
16:33:00 <LordAro> encourage them to ask for help / file an issue :p
16:34:48 <peter1138> `164 + (79 - 48 + 1)`
16:35:10 <peter1138> I know what the 164 is (`41 * 4`), but I'm stuck on 79 - 48 + 1 (it's 32)
16:35:29 <peter1138> > the extra things follow
16:36:35 <peter1138> Okay, I think they might be snowy trees.
16:38:02 <peter1138> Makes sense, there are 8 tree types in arctic, and 8 snow versions of them. `79 - 48 + 1` is a strange way to express 4 * 8 though :)
16:38:27 <peter1138> andythenorth, for gods sake, I wasn't thinking about tree specs :/
16:39:19 <Rubidium> might 79 and 48 be the last 2 digits of the sprite number?
16:43:28 <peter1138> Hmm, of course, the TreeType thing is not actually a tree type, just a guideline.
16:49:45 *** brickblock19280 has joined #openttd
16:49:45 <brickblock19280> is there any way to tell if a badge exists? like dumpinfo railtypes or newgrf developer inspect
16:56:07 <andythenorth> if it exists on an item. it's in newgrf debug window
16:56:26 <andythenorth> at least for vehicles, probably the others
16:56:38 <andythenorth> there's no `dumpinfo badgetypes`
16:58:39 <peter1138> Also a badge exists purely by being listed in a badge translation table.
17:01:42 <Rubidium> peter1138: I'd just replace those magic numbers with 32 (or 8*4) and the 'extra things follow' with 'snowy variants of arctic trees'.
17:09:00 <andythenorth> `dumpinfo badgetypes` probably isn't wise, given the 65k allocation
17:09:07 <andythenorth> "badge explorer" 😛
17:33:16 <peter1138> Badge Picker Window?
17:35:56 <andythenorth> dump badges to json?
17:36:06 <andythenorth> dump all game state to json?
19:22:20 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
19:24:09 *** MinchinWeb[m] has joined #openttd
19:31:46 <brickblock19280> game also crashes silently ?? when clicking on the dropdown again
19:32:39 <_jgr_> brickblock19280: Don't post jgrpp bugs in the vanilla github
19:33:20 <LordAro> it explicitly says "latest is not a version"
20:09:03 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
20:36:44 <goddess_ishtar> my current plans are user-created "folders" which let you group together NewGRFs and/or a tagging system
20:37:22 <goddess_ishtar> the NewGRF Settings menu really is awful with hundreds of GRFs installed or active
20:37:28 <peter1138> That would be better than the rather silly "newgrf categories" which require you to add a newgrf :D
20:37:57 <goddess_ishtar> yeah, that was what I was thinking
20:38:04 <peter1138> I wanted to do something with the metadata available from online content to be able to sort/filter/etc better, but never got around to doing so.
20:38:26 <peter1138> That has information about tags, features, etc etc..
20:38:35 <goddess_ishtar> when we're at the point of people adding dummy NewGRFs for section headers, we're basically already there, just jankier
20:38:57 <goddess_ishtar> peter1138: yeah that was my plan for the tagging and filter system
20:40:03 <andythenorth> I wanted to parse the grfs on bananas to see what cargos, labels, badges etc are actually used 🙂
20:40:25 <andythenorth> did rito12_51026 demo that for badges, just running it locally?
20:40:48 <andythenorth> greatly much work to change apparently
20:41:04 <andythenorth> on the plus side, reduces requests for 4x zoom FIRS 😛
20:41:21 <goddess_ishtar> I think just being at the point of being able to filter for top-level categories ("industry", "trains", "objects") would be a massive improvement and I'm pretty sure all NewGRFs on BaNaNaS have that information
20:41:39 *** kuka_lie has joined #openttd
20:41:56 <peter1138> Well, NewGRFs are the information.
20:42:12 <peter1138> Bananas scaned NewGRFs on upload to determine what's in it, and add the tags.
20:42:16 <peter1138> OpenTTD doesn't do that
20:42:22 <andythenorth> the classifier is also extensible
20:42:54 <peter1138> Of course it doesn't cover NewGRFs that are not on online content.
20:43:18 <peter1138> Also it's not written in C++, so to build something similar into the game would require reimplementing it.
20:43:27 <goddess_ishtar> peter1138: oh, I thought they were specified by the uploader
20:44:12 <goddess_ishtar> I think the vast majority of NewGRFs used are from the content downloader, anyway, so we probably shouldn't worry about the edge case
20:44:13 <peter1138> You wouldn't get much useful information asking people to categories and tag things themselves :)
20:45:08 <peter1138> Last time I looked, I think it would need us to add versioning to the APIs so that we can add new fields for newer OpenTTDs, but still allow old versions to work.
20:45:35 <reldred> The tag system has been gimped on bananas anyway and it now makes it an absolute prick to search for things.
20:45:40 <peter1138> (Either versioning or some kind of request extension systme?)
20:45:57 <rito12_51026> andythenorth: I did not complete the workflow to automate it and didn't figure out how internall OTTD - bananas TCP work, are there any docs of that?
20:46:28 <peter1138> reldred, that's mainly because people were using the tag system as a free-for-all, instead of a limited classification system.
20:47:09 <reldred> peter1138: I still believe that ‘problem’ was drastically over blown and the impact of removing it has been worse than the original problem.
20:47:49 <reldred> And you now have a situation where things are called differently in the OpenTTD UI than the Bananas UI
20:48:19 <reldred> And if you don’t know the precise name of a grf you can’t find it on Bananas search.
20:48:37 <reldred> Eg: NARS vs North American Renewal Set
20:50:16 <andythenorth> global to the grf
20:50:39 <andythenorth> readable from bananas, the client, and....readable from GS 😛
20:50:41 <reldred> _zephyris: It didn’t use to be
20:52:53 <_zephyris> It'd be better if usage data biased the hits, but that may be controversial 🙂
20:53:42 <reldred> It’d be nice if we had the tagging system back
20:53:52 *** kuka_lie has quit IRC (Quit: leaving)
20:53:58 <reldred> And content moderation issues were fixed with content moderation
20:56:55 *** kuka_lie has joined #openttd
20:56:57 <goddess_ishtar> peter1138: I mean, the point of free-entry tags are to define aliases you want your GRF to show up in searches for, right? if the problem is that people aren't using the classifications correctly then just don't make those parts free-entry
20:56:58 <peter1138> _zephyris, yes, conversely that's likely a reason it isn't biased.
20:58:18 <_zephyris> A way of moderation-like handling without needing lots of manual input, which may fail completely
20:58:22 <reldred> goddess_ishtar: It’s now a limited dropdown for country and it’s made searching for grf’s in game an absolute pain
20:58:31 <goddess_ishtar> like, BaNaNaS can do its classification magic, then you just add related terms to the tags field to aid search optimization
20:59:40 <reldred> If search also worked on description rather than just title it would go some way to alleviate the searching issues
20:59:51 <reldred> But even that isn’t perfect
21:00:59 * andythenorth steps away from `SAA^`and friends
21:02:16 <brickblock19280> they'll be killed off soon enough
21:07:47 <andythenorth> brickblock19280: how does checking `current_railtype` against those nml pseudo labels work?
21:07:58 <andythenorth> does it expand the varact 2 to cover all of them?
21:08:03 <brickblock19280> idk I don't think it works at all
21:08:19 <andythenorth> my guess would be it doesn't work
21:09:05 <andythenorth> I can't see how nmlc would have a heuristic for how to expand the switch
21:10:21 <andythenorth> is there a railtype table for each variant of the pseudo labels?
21:10:25 <andythenorth> I've never understood it
21:11:05 <andythenorth> indexing into [list of labels] is just not how railtypetable works
21:11:47 <brickblock19280> there is one rtt but it gets overriden with some action I've forgoten
21:13:31 <brickblock19280> overriden with action D I think
21:26:03 <andythenorth> I'm considering putting a deprecation notice on the nml wiki section about it 😛
21:33:32 <brickblock19280> It really isn't
21:35:02 <andythenorth> it just makes railtype authors life harder
21:35:21 <andythenorth> because train authors have defined (yada yada) fallbacks, and then the behaviour is unpredictable
21:36:13 <yozora3> My issue with removing tags was that you can't add tags like metro
21:36:13 <yozora3> It's all just "trains" now
21:37:33 <yozora3> And any set that uses abbreviations is dead to search yes
21:40:23 <_zephyris> Hmm, now I'm poking, I do see that
21:45:47 <andythenorth> hmmm so....railtype variants then?
21:46:23 <andythenorth> one label, multiple action 0
21:46:45 <andythenorth> maybe some kind of ID range increase 😛
21:47:01 * andythenorth back to painting small trains
21:47:32 <brickblock19280> I kinda want that for cargoes
21:47:46 *** kuka_lie has quit IRC (Ping timeout: 480 seconds)
21:47:48 <brickblock19280> 1st and 2nd class pax could maybe work like that
21:49:58 <andythenorth> aka livery callback
21:53:42 <kale91> reldred: I agree the current system is rough
21:54:18 <kale91> also part of the reason people select random old/broken newgrfs all the time
21:54:54 <mmtunligit> at least objects never go out of style (not entirely true)
21:56:12 *** tabytac has joined #openttd
21:56:12 <tabytac> Yeah i was looking for Ragins' newGRFs a couple of days ago and without just like going to their github to find all of the names for their train sets, its kinda impossible to find all of them without custom tags/author labels
21:56:55 <goddess_ishtar> the Online Content window is also flawed, but it's at least pretty functional for its intended purpose
21:57:19 <goddess_ishtar> so I'm going to deal with it after
21:57:40 <andythenorth> I don't really use online content though
21:57:59 <squirejames> Iron Horse V for Victory
21:58:04 <andythenorth> are the checkboxes there to save bandwidth?
21:58:20 <andythenorth> I always forget to use them, and think the client is broken
21:58:33 <tabytac> andythenorth: what if i want to find all of your newgrfs tho? u dont have andythenorth on the title on any of them and you shouldnt have to
21:59:07 <goddess_ishtar> andythenorth: don't you need all parts of Iron Horse installed for it to work?
21:59:37 <goddess_ishtar> andythenorth: frankly yeah I don't know why we don't include Author information anywhere in-game
21:59:57 <goddess_ishtar> (whoops, pinged twice)
22:00:45 <goddess_ishtar> "iron horse 2 add-on" is definitely an official Horse expansion pack
22:01:22 <reldred> Definitely one of gee eight arr’s piece of shit broken grf’s
22:01:38 <andythenorth> I would guess average redditor also installs Horse Carts
22:01:49 <andythenorth> as Carts is a long-standing synonym for train wagon
22:02:12 <goddess_ishtar> well the other grf is Iron Horse (trains)
22:02:21 <goddess_ishtar> so the wagons are clearly included separately
22:02:23 <_zephyris> Where does the survey data end up?
22:02:30 <_zephyris> (not the summaries, the actual raw data)
22:03:29 <goddess_ishtar> wouldn't there be privacy concerns with making the raw data available?
22:03:57 <_zephyris> Not really, nothing personal is sent, so nothing personal can be received
22:06:17 <_zephyris> So it's agglomerated...
22:06:27 <tabytac> yeah but its a bit more indepth than the website
22:06:38 <tabytac> you get raw numbers insted of percentages
22:06:46 <_zephyris> I was after the base set stats
22:07:27 <tabytac> looks for nfo.configuration.graphics_set
22:07:38 <goddess_ishtar> that reminds me, we should change how "number of active NewGRFs" is summarized
22:08:26 <_zephyris> The summaries are still very basic, certainly interest in improved summarisation
22:08:51 <_zephyris> Or rather the summary presentation
22:09:11 <reldred> I keep having a daft idea about pumping all of the data into an influxdb instance or something and rendering it in Grafana
22:09:55 <goddess_ishtar> knowing that 0.4% of the survey population uses exactly 41 GRFs isn't helpful
22:10:08 <LordAro> _zephyris: raw data is hidden away in cloudflare
22:10:10 <goddess_ishtar> we only care about the approximate number used in any given game
22:11:36 <_zephyris> Stuff like number of NewGRFs makes sense to be presented in bins
22:11:58 <_zephyris> Stuff like sea level would make sense to be presented as the human-readable string, rather than the numerical value
22:12:15 <_zephyris> ... plus many more things.
22:13:07 <tabytac> this reminds me, is it possible to download newgrfs directly through the bananas API or was that disabled a while back?
22:13:07 <tabytac> Wanted to mess around with some of the heightmaps and couldnt figure out a way to use the API to download, only to get info on current newGRFs and stuff
22:14:26 <_zephyris> IIRC that was disabled, but I'm remembering a chat message, so may well be wrong
22:14:34 <goddess_ishtar> _zephyris: that goes for basically every setting, I think
22:14:42 <goddess_ishtar> all the enums, anyway
22:17:18 <reldred> tabytac: Disabled, which is a pain, because certain things are easier to find on the bananas website than in game
22:17:19 <goddess_ishtar> oh, I never looked at the survey results for 3rd-party content yet
22:17:22 <goddess_ishtar> this is fascinating
22:17:57 <_zephyris> That's what I was poking too 😉
22:18:07 <tabytac> reldred: ah thats a shame, wonder about the sotry about why thats had to happen xD
22:19:35 <goddess_ishtar> _zephyris: yeah I'll take a poke at it :p
22:19:36 <mmtunligit> I wonder if it had somethign to do with scrapers and wasting bandwidth?
22:26:53 <andythenorth> the 3rd party content on vanilla is always worth seeing
22:27:06 <andythenorth> what's actually popular vs. what's popular to talk abut
22:27:43 <LordAro> afaik the api still allows downloads, assuming you can auth to it
22:27:56 <LordAro> (it has to, because that's what ottd uses these days)
22:28:04 <LordAro> the web interface on the other hand
22:28:35 <_zephyris> The 3rd party is all there, but takes a bit of wrangling to get nice data from it
22:30:20 *** MinchinWeb[m] has joined #openttd
22:38:16 <andythenorth> can we have a signed value for vehicle running costs? 😛
22:38:25 <andythenorth> buffet cars should earn income
22:42:10 <_zephyris> With a callback for current train pax load
22:42:21 <mmtunligit> add in shunting, get the proper penn central 6 day diner car bounce around NYC-chicago
22:42:46 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:46:56 <goddess_ishtar> goddess_ishtar: do we actually keep that anywhere?
22:47:09 <goddess_ishtar> which settings are numerical versus multiple-choice?
22:51:24 <_zephyris> Probably mostly `settings.cpp`
22:56:36 <goddess_ishtar> bluh, that's going to be annoying to do serverside
23:00:21 <_zephyris> Mmm... Some kind of (manually prepared) config per setting presumably
23:08:56 <goddess_ishtar> _zephyris: that's the kind of thing I'd prefer to avoid, because it makes the whole system a headache to maintain
23:09:07 <goddess_ishtar> but it's probably the simplest solution
23:18:40 <_glx_> ah looks like I'll have to craft a new nml release
23:25:01 *** MinchinWeb[m] has quit IRC (Read error: Connection reset by peer)
23:26:25 *** MinchinWeb[m] has joined #openttd
23:49:46 *** gelignite has quit IRC (Ping timeout: 480 seconds)
continue to next day ⏵