IRC logs for #openttd on OFTC at 2025-11-17
β΄ go to previous day
00:16:37 <reldred> talltyler: Certified good feature. Ship it.
00:23:47 <kaji_kaede> *let him cook, let him cook*
00:44:49 <talltyler> Certified reldred moment π
00:46:11 <talltyler> Do we keep 50/50 lakes when rivers terminate, or delete lakes and do wetlands only?
00:46:37 <talltyler> I am referring to lakes made of river tiles, not the stray bits of ocean
00:47:27 <reldred> Yes, keep em I think. Might want to check JGRPP weβve got a size modifier that I added and JGR tweaked the gen to be a bit less βsquareβ
00:47:48 <talltyler> Separate PR I think, but those would be nice improvements π
00:48:39 <reldred> Maybe a parameter? Leaked/wetlands, fraction thereof? I think personally Iβd like 1/4 lakes 3/4 wetlands.
00:48:58 <talltyler> Trying to avoid new settings, as always π
00:49:21 <talltyler> I am happy to be opinionated in my design though π
00:54:41 <kaji_kaede> talltyler: I'm gonna cry.
00:56:02 <belajalilija> Lakes for rivers is nice yeah
00:58:27 <reldred> talltyler: yeah maybe do like a 1/3 or 1/4 ratio and full send. if it bothers me enough I'll make a paramteter for the ~~patch~~parameterpack
00:58:53 <talltyler> Actually, 1/3 lakes, 1/3 swamps with trees, 1/3 marshes with grass makes a lot of sense
00:59:09 <reldred> talltyler: Yup, or that.
00:59:41 <reldred> I'd like it if tree placement was a bit more smarter and organic, I love the results I'm getting with tropic atm.
00:59:49 <reldred> cluster foliage around water sources
01:02:01 <talltyler> PRs welcome, I promise to review them π
01:31:22 <reldred> omw to post 'merge this or I'll egg your house' on the githubs brb
01:36:47 <kaji_kaede> if they're not merging it i will
01:52:08 *** Beer has quit IRC (Quit: Leaving)
01:56:55 <talltyler> I can merge it, but somebody has to approve it first π
01:57:32 <talltyler> Seriously though, itβs worth going into the GitHub preview and testing it out, make sure nothing is too weird, and then leaving your comments on GitHub.
01:58:26 <reldred> Yeah I'll have a look later tonight. I'm in the build room of a datacentre atm and my poor LTE modem is struggling π
02:35:19 *** Wormnest has quit IRC (Quit: Leaving)
03:13:08 *** gchromodynamics has joined #openttd
03:13:08 <gchromodynamics> im planning a patch on jgrpp with something like this
03:13:08 <gchromodynamics> - amortized routing algorithm. routes are fixed and defined ahead of time, isolates the exact tracks, trains have dispatch logic at destinations to choose next routes, mainly to eliminate the overhead of calling pathfinding at every signal
03:13:08 <gchromodynamics> - implicit generation algorithm, stores the world state as a quadtree of altered tiles against original tiles, stores compressed version of original heightmap, goal is to support world sizes of 2^24x2^24 with extremely sparse cities
03:13:08 <gchromodynamics> - dynamic time acceleration from basically realistically real time to 1000x real time to cover the aformentioned distances
03:13:08 <gchromodynamics> - new city layout and generation algorithm, mainly involving customizing the city road plan for big enough cities that restricts and defines how they grow. objective of scale is to facilitate maps with multiple 1M+ population cities, each with size ~1024x1024
03:13:10 <gchromodynamics> - true elevated and underground railway tracks by defining additional railway tiles with arbitrary height coordinate, not just the height coordinate given by the world map, stored as a completely separate structure. i have no idea how i could patch yapf pathfinding to work with this so i'm only going to code the logic to work with amortized routing
03:13:10 <gchromodynamics> im about halfway through implementing amortized routing now and im posting this mainly to gauge interest/suggestions on development. any feedback would be greatly appreciated!
03:51:39 *** gnu_jj_ has joined #openttd
03:54:59 *** gnu_jj has quit IRC (Ping timeout: 480 seconds)
03:57:50 *** Binette[m] has joined #openttd
04:20:08 *** Zathras_1 has joined #openttd
04:20:16 *** Zathras_11 has joined #openttd
04:23:28 *** Zathras_4 has quit IRC (Ping timeout: 480 seconds)
04:23:38 *** Zathras has quit IRC (Ping timeout: 480 seconds)
04:41:42 <DorpsGek> - Update: Translations from eints (by translators)
05:25:35 *** tokai|noir has joined #openttd
05:25:35 *** ChanServ sets mode: +v tokai|noir
05:31:49 <kuhnovic> So maybe some of it can be repurposed π
05:32:38 *** tokai has quit IRC (Ping timeout: 480 seconds)
06:22:43 <kaji_kaede> gchromodynamics: ...We've got like... Four different people right now who have at the very least declared intent or desire to work on supporting underground/overground stations.
06:24:43 <kaji_kaede> I intend to, but I also can't guarantee it goes anywhere beyond my own little corner, and it's a long way off for me putting work in to it.
06:25:52 <gchromodynamics> i definitely wont be able to complete the last part all by myself i should ask some other people how theyre approaching underground/overground trains
06:26:21 <gchromodynamics> mainly the first four parts are almost purely code but the last part involves a ton of gui overhaul and graphical design
06:26:31 <kaji_kaede> I believe... Cyprian? Was at the very least experimenting with updating older fork branches.
06:28:01 <kaji_kaede> I think the general goal is to first just divorce the code from the expectation of every tile having a single tile type.
06:28:11 <gchromodynamics> okk ill look a bit
06:28:35 <gchromodynamics> oh yeah that sounds difficult
06:28:48 <gchromodynamics> the thing i wanted to try was avoiding touching as much logic as possible and hack around it instead
06:31:09 <kuhnovic> Just as a general advice: try to keep such a feature somewhat lean if at all possible. It's easy to drag in more and more stuff and change everything, but big changes come with risk and opposition (and take lots of time to review). Best to take an incremental approach.
06:31:45 <kaji_kaede> Well... Depends on intent, on how far you want your changes to get.
06:32:33 <kaji_kaede> Given the name, I would assume so.
06:32:40 <kaji_kaede> I'm not sure, though.
06:37:55 <rito12_51026> gchromodynamics: Noο»Ώ, that's a first attempt it is not very usefull except the ui
06:44:34 <rito12_51026> kaji_kaede: The one with this feature is in the new_map branch, but it might not complie. Majority of work had been done by Michael Lutz, so maybe look at his newmap branch, it should compile
06:46:32 <gchromodynamics> thank you i'll look at that
07:06:13 <DorpsGek> - Add: summary for week 46 of 2025 (by OpenTTD Survey)
07:46:20 *** pickpacket has quit IRC (Quit: Ping timeout (120 seconds))
07:47:03 *** asymptotically2 has quit IRC (Read error: Connection reset by peer)
07:47:03 *** asymptotically2 has joined #openttd
07:47:14 *** nebulabc has quit IRC (Write error: connection closed)
07:47:14 *** nebulabc has joined #openttd
07:48:54 *** pickpacket has joined #openttd
07:55:13 *** zanooda2000 has joined #openttd
07:55:13 <zanooda2000> Regarding new way of joining company without passwords but with invite system.
07:55:13 <zanooda2000> Is it any way to invite "yourself" to "your" company without being online on both ends at the same time? Let's say you create company at home and then want to join from work pc. How can you do that without bothering other people?
07:57:13 <zanooda2000> Was really frustrated that I can't join by password at 15beta3 and I needed to disturb other player to at least be able to join to fix some things at 3 am
08:12:31 <locosage> in theory you should be able to share private key between two machines but I haven't looked into how it's done in practice
08:13:21 <locosage> feels like I'll have to implement passwords myself on citymania if 15.0 ships as it is
08:23:10 <LordAro> it seems likely that additional documentation is needed
08:25:49 <zanooda2000> locosage: yeah, I've already tried it and as my tests it already works as "last resort", it's especially fun way to join your company if you din't have access to game files/configs... but i'm more interested in _intended_ way of doing it
08:25:49 <zanooda2000> about citymania passwords, not sure if it will work on the regular servers with the regular players, unless done as UI way to change your auth. keys
08:29:42 <locosage> won't work on regular servers, best I can do is if both sides have cmclient they can use passwords
08:36:02 <LordAro> regardless, please file an issue about this "limitation" - then we can properly assess whether it's a workflow we actually want to support
08:36:11 <LordAro> otherwise it'll very much be forgotten :)
08:53:41 <_jgr_> gchromodynamics: Points 2 and 5 in particular seem very ambitious. I am highly sceptical that your target size is achievable/practical, to be honest.
08:55:23 <_jgr_> Point 1 represents a very large loss of routing flexibility, I can see how this might help for extremely sparse maps but it seems a step backwards for normal play.
08:58:15 <peter1138> LordAro, it's been 18 months as #12337 was merged, are we ready for rc1 now?
08:59:19 <LordAro> i'd almost be tempted to make it 16.0-rc1, just to keep it in sync with the year :D
09:00:20 <LordAro> but missing documentation for the change is definitely worth fixing - i can't find anything on it (blog post, overarching issue, even internal md doc)
09:00:39 <LordAro> it'll only get... noisier if we make a full release without mentioning it
09:16:27 <gchromodynamics> _jgr_: it's intended to be an additional option that works in conjunction with yapf, if a train is assigned to the new routing scheme then its destinations are determined by amortized routing but all other trains work as normal
09:18:19 <gchromodynamics> i have a rough idea of how to implement pt5 once i have pt1 done, but metros don't really make sense with the current scale of cities in openttd generation which is why i came up with 2 3 and 4
09:18:35 <gchromodynamics> the one i genuinely have no clue how to implement efficiently is pt2
09:18:56 <gchromodynamics> i could imagine a compatibility layer that converts all tile calculations to quadtree queries but that would incur an insane overhead
09:36:22 <LordAro> i feel like you're going to quickly discover why the limit is 4kx4k
09:36:56 <gchromodynamics> jgr limit is 16kx16k
09:37:16 <LordAro> and do you find that... works?
09:37:30 <gchromodynamics> and it's not enough for what i want
09:43:23 <gchromodynamics> the end goal is to scale everything realistically to around one tile width = one standard track separation (~5m) so the biggest map that still corresponds to reasonable scales is 128kx128k
09:43:54 <gchromodynamics> well, 131kx131k since it has to be a power of 2
09:45:37 <LordAro> this sounds suspiciously like a different game that happens to use OTTD's graphics
09:46:00 <LordAro> and i meant that from a code architecture point of view as much as ...everything else
09:46:07 <locosage> i don't think it could even use ottd graphics
09:46:23 <locosage> with 5m scale typical wagon would be like 5 tiles long
09:47:16 <LordAro> most things would have to be redrawn to be able to be properly displayed with overground/underground too
09:47:33 <LordAro> don't get me wrong, i love the enthusiasm, but... maybe start smaller :)
09:49:17 <gchromodynamics> yeah i understand rescaling like this and redoing everything that would be relevant is overambitious at this timescale
09:49:33 <gchromodynamics> its just like, something i'm keeping in the back of my head as i'm actually coding the approachable features
09:52:15 <kuhnovic> Sounds like a fun excercise but not something that OpenTTD actually needs
09:52:16 <peter1138> The world changes the map itself, so your list of change tiles would be... every tile.
09:52:25 <kuhnovic> (the huge maps, not talking about swamps)
09:53:04 <LordAro> peter1138: maybe some people like playing at 1fph
09:53:22 <xarick> my poor AI respects every water tile as "untouchable"
09:53:36 <locosage> tbf most of the tile loop isn't that important
09:53:38 <gchromodynamics> peter1138: tree updates industry generation etc. would be replaced with a cellular automaton or even just completely suspended
09:56:09 <peter1138> Hmm, redis failing :/
10:02:55 <peter1138> Hmm, needs `tlsprotocols=tls12`
10:03:25 <locosage> gchromodynamics: it all sounds great but that's just not openttd, so keeping it in mind while working on features for openttd is kind of pointless
10:04:17 <locosage> if you seriously intend to achieve what you envisioned it's probably better to start from scratch early than trying to weave it into a game with 30 years of legacy
10:05:35 <locosage> At some point I almost started writing a new game for half of what you planned there π
10:05:42 <peter1138> Step 1: Create a game that isn't tile-based.
10:06:24 <xarick> i''ve been thinking about the mac os crash again... am I being misled that there were 2 crashes?
10:06:31 <locosage> never was particularly serious about it so didn't invest much time but I did code ... something π€£
10:07:17 <locosage> wth is wrong with these images again
10:08:32 <xarick> I have serious doubts regression_stationlist crashed
11:13:03 <peter1138> Heh, newish disaster: building on wetlands may lead to flooding/subsidence.
11:29:10 <andythenorth> GS option to raise sea level?
11:33:58 <talltyler> I've been thinking about this issue of small ocean holes in landscapes (my motivation is rivers flowing into them, but FIRS coastal industries also spawn in them).
11:33:58 <talltyler> The easiest solution seems to be to keep these dry and only flood the sea from the map edges. But that introduces a new disaster and griefing opportunity to flood potentially entire networks, cities, industries, etc., in the larger of these. So I'm not sure it's a good idea. Thoughts?
11:34:32 <andythenorth> below-sea-level dry basins? π
11:34:33 <talltyler> The other option of course is to fill them to height level 1 during TGP, but that's a lot more code π
11:34:50 <andythenorth> "minimal sea size"
11:35:00 <talltyler> Polders in OpenTTD π
11:36:19 <peter1138> Only flood the sea from the map edges sounds like bad idea, especially on larger maps.
11:36:52 <peter1138> I don't see a problem with having smallish sea-level lakes.
11:37:22 <peter1138> Also, making them not water means the sea-level percentage can become way off.
11:37:28 <talltyler> I just don't like the way the rivers flow into them π
11:38:04 <peter1138> (Although that's fairly vague anyway)
11:38:32 <peter1138> Reverse the river flow algorith, and don't start in small land-locked lakes?
11:40:48 <talltyler> That would be an improvement, yes.
11:41:08 <peter1138> Though that would upset #14784...
11:41:10 <talltyler> Although you wouldn't get swamps or lakes if you always started from a sea tile
11:41:38 <talltyler> Actually, stupid idea... have the river check whatever it flows into, and if it's too small, fill it and make a swamp instead π
11:42:04 *** Flygon has quit IRC (Read error: Connection reset by peer)
11:42:15 <talltyler> Maybe not that stupid
11:43:01 <peter1138> Naturally spawning 0-level land though.
11:43:12 <peter1138> Not the worst thing but.
11:47:33 <reldred> I donβt hate that option actually
11:48:57 <reldred> But might have some results that donβt match a heightmap authors intentions (like Iβve ever been known to respect heightmap authors intentions with how I use them π€£)
11:53:02 <rito12_51026> andythenorth: Depressions
11:56:55 *** Zathras_1 has quit IRC (Quit: Connection reset by beer!)
11:59:44 <peter1138> I don't need a game to get depression.
12:02:11 <rito12_51026> gchromodynamics: Feels like a city builder based on TTD
12:03:31 <rito12_51026> peter1138: But I need one π
12:04:39 <xarick> I need to test more list swaps
12:05:14 <xarick> i've only tested Item Ascending with Item Ascending
12:05:26 <xarick> but there are 8 combinations possible
12:19:14 <xarick> oh, that's gonna make 4k map gen slower for sure
12:20:05 <rito12_51026> How can I get the seed of an existing savegame?
12:20:34 *** tabytac has joined #openttd
12:20:34 <tabytac> use the getseed command
12:34:25 <_zephyris> Snowy rocks _and_ wetlands... it's a landscaping revolution.
12:35:00 <xarick> woah, that's another unexpected
12:36:26 <xarick> line 1315 now says false ...
12:54:45 <talltyler> peter1138: Early this year when you added rocks to cliffs during map gen, you also talked about player terraforming uncovering rocks. Did you ever write any code for this?
12:54:45 <talltyler> If not, I will. π
12:56:15 <peter1138> talltyler, no I didn't.
12:56:32 <peter1138> (This might mean I have a patch for that that I've forgotten... but I don't think so.)
12:57:10 <talltyler> OK, I'll have a go at it later π
13:16:22 <peter1138> I've wondered about some kind of map persistence for this kinda stuff, but map array space etc etc.
13:16:41 <peter1138> It sort of biomes at this point.
13:17:56 <_zephyris> I can imagine "if lowered place rocks" works fairly well, even with no persistence.
13:18:58 <andythenorth> How much RAM do we have nowadays?
13:19:49 <peter1138> But if swamps could "refresh" themselves after a while...
13:20:09 <peter1138> Also tree clumps ... it would be nice if trees DIDN'T flood the map eventually.
13:20:12 <_zephyris> Self-repairing swamps and rivers would be kinda nice.
13:20:26 <peter1138> Without just saying "trees are random and must therefore be excised from the game"
13:20:41 <_zephyris> Wrong solution to the problem π
13:20:52 <kaji_kaede> peter1138: To be fair. That's kinda how real life is.
13:21:39 <peter1138> IRL you just get towns spreading infinitely instead. :/
13:21:56 *** voss749 has joined #openttd
13:21:56 <voss749> wetlands would be the improvement
13:22:06 <kaibaneddy> if we're thinking objects, it would be nice if newgrfs could disable the transmitter and lighthouse (either to get rid of them, or replace them with, eg, terrain-aware versions). Objects are really the only newgrf feature where the defaults are not disableable (and stations, I guess).
13:22:08 <kaji_kaede> Well, IRL you get farms.
13:22:35 <voss749> I still want train ferries π
13:23:00 <kaji_kaede> Best of my knowledge, if it wasn't for human intervention, a lot of places like the UK would be entirely forested.
13:23:49 <belajalilija> most forested areas in the uk are very managed too
13:24:07 <belajalilija> there's very very little in terms of actual ancient forest left
13:24:20 <kuhnovic> Conway's game of life but with trees
13:24:24 <LordAro> we turned it all into boats
13:24:52 <voss749> kaji_kaede: Deforestation thats a bonus game π
13:25:53 <belajalilija> deforestation, that's a paddlin
13:27:53 <locosage> _zephyris: it's a solution for a different problem π
13:27:57 <peter1138> Deforestation causes landslidess and flooding?
13:31:56 <xarick> this is starting to make no sense
13:32:24 <LordAro> one undefined behaviour tends to result in others
13:32:34 <LordAro> or at least be difficult to tell what is/isn't the same issue
13:33:58 <_zephyris> kuhnovic: π«π«π²
13:34:59 <_zephyris> It's not a bad idea, adding a death criteria to the spawn criteria would regulate density
13:35:25 <talltyler> I would like to see dead trees be more interesting, we have the sprites but I never notice/see them
13:35:31 <talltyler> Beetle kill disaster?
13:35:45 <_zephyris> Go full factorio, dead trees near industries and towns
13:36:19 <locosage> btw, isn't there already a setting to disable tree spreading?
13:36:35 <kuhnovic> PFAS factory, all trees near it instantly die
13:37:49 <peter1138> Yes but "don't eventually fill the map" is not the same as "don't spread at all".
13:38:05 <talltyler> Well, we do actually know the industry type... extractive industries like coal mines could kill trees nearby.
13:38:59 <locosage> realistically speaking it is π€
13:39:28 <xarick> list.Clear() doesn't touch the iterators ?
13:40:25 <locosage> even if you do biomes/zoning it basically the same as no spreading
13:41:03 <locosage> so to make it different you need some kind of mechanics that would remove trees
13:41:41 <locosage> talltyler: like this, though it doesn't make much sense realistically speaking
13:42:33 <locosage> coal mines don't remove trees
13:42:37 <locosage> unless they collapse xD
13:46:35 <vondpc> what if industries start to have negative impact ont he cities :Ferrisc
13:49:19 <xarick> seems there's also issues with ScriptList::Clear
13:53:39 <_glx_> well removing elements may affect iterators
13:57:07 <kuhnovic> Xarick has no need for such fundamental programming knowledge!
13:57:24 <kaji_kaede> vondpc: Finally. Accurately modelled Birmingham simulation
13:57:59 <_glx_> anyway the everything is invalidated with `clear()` was guessable π
14:02:14 <andythenorth> 1024^2 max map size, use the free RAM for biome stuff
14:03:21 <Timberwolf> ZX Spectrum style, 4096x4096 maps but some less important stuff has to occupy an entire 8x8 grid, such as biomes or rails.
14:03:37 <xarick> non cloning lists, even if I sort, the bucket_iter or whatever iters the list has are not reseted
14:04:07 <xarick> Clear does an incomplete job
14:04:53 <_glx_> `Clear()` sets `has_no_more_items`
14:06:07 <_glx_> so iterators are just ignored in sorter
14:06:35 <_glx_> until you call `Begin()`
14:07:13 *** lobster has quit IRC (Read error: Connection reset by peer)
14:07:28 *** lobster has joined #openttd
14:07:35 <xarick> i call begin on both lists, but apparently, after some swaps...
14:07:54 <xarick> non clone list on the left
14:07:58 <xarick> clone list on the right
14:10:19 <xarick> i "renamed" list 3 to list 2
14:11:06 <xarick> gonna retest to confirm
14:16:06 <xarick> nevermind, i can't reproduce
14:16:15 <xarick> why does this always happen to me π
14:20:10 <xarick> forget it, now i get the 2nd result on both cases
14:20:29 <xarick> begs the question how did it come up with the first result
14:30:42 <peter1138> > The modern era of lighthouses began at the turn of the 18th century
14:30:47 <peter1138> So 1700s, not 1920 ;)
14:32:56 <talltyler> Not sure what you're referencing, but my PR only touches transmitters. Lighthouses still spawn in all years. π
14:35:24 <peter1138> Yes, but I had a brain fart.
14:35:41 <peter1138> I assume I was thinking of lighthouses due to the other PR.
14:36:27 <talltyler> I actually want to see more lighthouses, might dabble with that later π
14:38:31 <peter1138> I think they only appear near the edge of the map?
14:39:07 <peter1138> Which is silly for a high-water game with lots of islands.
14:40:17 <peter1138> Yeah, object_cmd.cpp:755-760
14:40:41 <peter1138> Well, 755-784 I guess.
14:40:43 <talltyler> Agreed. My theory is that transmitters and lighthouses are only interesting as obstacles when they're near a place you want to build, e.g. industries and towns. Putting them in the middle of nowhere does nothing.
14:40:43 <talltyler> So I plan to experiment by iterating through towns and trying to find a suitable tile nearby, rather than picking random tiles from the entire map.
14:44:41 <_glx_> oh of course the crash log output is not fully correct on CI because we run `ctest -j` for linux and macos
14:50:19 <kaibaneddy> talltyler: Isn't this something that might be better handled through newgrf?
14:50:19 <kaibaneddy> There are an awful lot of players who don't want 'interesting obstacles'... π
14:50:55 <acs121> Then maybe you could have a setting to not have these obstacles at all. Problem solved...
14:52:09 <voss749> I want train ferries if they can do hovercrft they can do train ferries
14:53:08 <merni> voss749: Bold statement.
14:53:26 <voss749> I think the truth is thats a niche demand π
14:53:36 <merni> Unfortunately hovercraft and train ferries are not really comparable in terms of technical complexity :)
14:53:59 <merni> A hovercraft is just a boat with different graphics
14:54:25 <voss749> Having a split flap display schedule would be awesome but complex π
14:54:41 <kaibaneddy> acs121: yes, which is the point of making the behaviour grf controlled π
14:54:50 <merni> If by a train ferry you just mean a ferry that looks like it has train cars on it, that would be possible through grf
14:55:40 <kaibaneddy> kaibaneddy: allows for more options than "Chris Sawyer's Vision" and "2TT's Vision" π
14:56:50 <voss749> Sometime in the 2030s we will have 1080p buildings at which point the old school people will fork it with "Classic Openttd" lol
14:58:39 <_glx_> that's called extrazoom
15:02:14 <acs121> kaibaneddy: Why not have it controlled by a setting ?
15:02:41 <kaibaneddy> acs121: 'allows for more options than "Chris Sawyer's Vision" and "2TT's Vision"'
15:03:17 <kaibaneddy> what 2TT thinks is an interesting arrangement of lighthouses, and what I think is an interesting arrangement of lighthouses, may be different
15:07:04 <mmtunligit> i mean if you want to change it via newgrf you might be able to already? i know you can give industries custom spwaning rules, i would be suprised if you could give them to objects too
15:07:37 <mmtunligit> heck you can always make dummy industries and treat them like objects
15:09:01 <kaibaneddy> mmtunligit: yes, but you can't, afaia, override or disable the default lighthouse and transmitter with newgrf
15:16:25 <locosage> even with industries spawn control isn't particularly good
15:16:58 <locosage> and for lighthouses/transmitters it's none, you can only change the sprite
15:19:20 <locosage> basically industry placement is still random but it can either accept or deny it
15:24:49 <peter1138> Basically lighthouse placement is geared towards 256x256 maps.
15:27:49 <peter1138> The number of default objects is scaled by map size, but the area they can be placed on is not.
15:29:33 <talltyler> Restricted to too close to the map edges, you mean?
15:29:35 <peter1138> Ah for lighthouses is scaled 1D.
15:32:32 <peter1138> So on a 4kx4k map, I have 3840 transmitters, and 35 lighthouses.
15:32:50 <peter1138> Because freeform edges also kills it.
15:35:18 <peter1138> With non-freeform edges I still have only 128 lighthouses, vs 3840 transmitters.
15:36:40 <peter1138> Hmm, I wonder if the towns/industries scaling by landmass should also apply to objects.
15:36:53 <peter1138> ScaleByWater is sort of but not quite the same.
15:37:51 <talltyler> Itβs sort of the inverse for lighthouses, but also not ready
15:39:25 <peter1138> I think using the proportion of landmass for both scalebywater and not-scalebywater (inverted as appropriate) might help.
15:39:36 <peter1138> Does not help with the perimeter test of lighthouses though.
15:44:31 <talltyler> I donβt think the perimeter test is valid on larger maps. Itβs probably a proxy for βis this the oceanβ which was close enough on 256^2 maps, but bays can be much larger now.
15:51:41 <peter1138> ANd that's why a "behaviour" change is okay. You can't increase the map size via NewGRF either...
15:53:08 <talltyler> Agreed. I'll see what I can do with trying to place near towns.
15:53:25 <talltyler> If it works I'll likely add it as a placement flag for GRF objects too.
15:56:46 <kuhnovic> Haven't looked at the code but maybe searching for a shore tile could work? It could lead to lighthouses standing by lakes, which are technically also sea tiles.
15:59:37 <talltyler> The Great Lakes in US/Canada have lighthouses π
16:13:25 <Heiki> many large lakes have lighthouses
16:18:22 <peter1138> The usual "how large is the lake" problem.
16:32:00 *** Zathras_4 has joined #openttd
16:56:34 *** Beer has quit IRC (Quit: Leaving)
17:17:26 <merni> acs121: Well, this gave me an idea... let's see if everyone else thinks it's useless :)
17:20:16 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
17:20:40 *** WormnestAndroid has joined #openttd
17:29:08 <audigex> Heiki: Never mind that... how about a lighthouse up a hill 2km from the sea?
17:31:23 <Heiki> audigex: makes sense as itβs visible from the sea
17:33:59 <vondpc> audigex: maybe they checked it with coverage on and saw that it covers at least one tile of the sea π
17:34:58 <peter1138> Wouldn't want your triremes to get lost at sea.
17:40:11 <audigex> Heiki: Not in any useful way, when you consider where it is...
17:40:11 <audigex> If you've managed to get far enough into Morecambe Bay to see it, you've already missed everything dangerous π}
17:40:11 <audigex> Although the actual answer is that it's not technically actually a lighthouse, it's a monument that was designed to look like a lighthouse but has never actually held a light
17:40:24 <audigex> It's based on this iteration of the Eddystone Lighthouse
17:45:09 <merni> The lighthouse and transmitter have object-classes but are not documented in the newgrf specs
17:45:09 <merni> Do these have any functionality in terms of newgrf?
17:46:10 <merni> NML:Objects page says "Overriding the default objects (e.g. transmitter, lighthouse) is not (yet) possible. "
17:46:10 <merni> So what happens if a grf defines an object in the class "LTHS" or "TRNS"?
17:52:53 <peter1138> Same as adding an object to any other class.
17:54:50 <peter1138> (And stations with 'DFLT' class.)
18:07:47 *** gelignite has joined #openttd
18:32:54 <peter1138> I'm not sure what a NewGRF way to disable existing objects would look like. All the overrides stuff for houses and industries is actually a pain in the bum.
18:44:21 <kaibaneddy> there are only two default objects, and they don't actually do anything, so I'd imagine it'd be a bit easier than houses and industries... π€·ββοΈ Not that I'm volunteering, so...
18:47:29 *** Beer_ has quit IRC (Quit: Leaving)
18:54:28 <peter1138> Well, there's actually 5, but 3 of them are very special.
18:54:49 <peter1138> And "don't do anything" is the entire point of objects.
19:03:00 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
19:04:21 <rito12_51026> peter1138: Could it be achieved by disabling creation during map generation and hiding them from build window? We should not bother with support for adding such grfs to the existing save games as it already is discouraged, should we?
19:05:36 *** WormnestAndroid has joined #openttd
19:24:24 *** Wormnest has joined #openttd
19:33:52 *** kuka_lie has joined #openttd
19:44:35 *** gelignite has joined #openttd
20:08:13 <talltyler> Woof, that was a lot of files
20:23:45 <zanooda2000> Maybe make option to allow destroying transmitters and lighthouses instead of disabling its generation?
20:24:40 <zanooda2000> then you just leave it if you like or use dynamite if it got on your way
20:26:31 <peter1138> Hmm, that large swamp is, perhaps, a bit large.
20:27:36 <peter1138> Yes, magic bulldozer already allows removing unmovable objects.
20:30:33 <peter1138> Does that still happen in OpenTTD?
20:34:14 <_glx_> hidden lighthouse, so the ennemy can't see it
20:34:34 <peter1138> With TGP I'm lucky to get one.
20:39:20 <reldred> JGRPP has default object disabling in his branch, I made a .grf to utilise it. Itβs done using his custom NFO spec stuff.
20:40:07 <andythenorth> the only lighthouse you ever need
20:42:09 <peter1138> Have you ever, ever felt like this?
20:44:25 <andythenorth> Have strange things happened?
20:53:06 <Borg> Hmmm I see that Compiling OpenTTD wiki is terribly outdated..
20:53:19 <Borg> do we have information on minimal gcc version somewhere?
20:55:47 <peter1138> COMPILING.md mentioned compiler versions.
20:56:31 <peter1138> Specifically the "minimum version" must support C++20.
20:59:58 <Borg> oh thanks.. missed COMPILING.md
21:00:10 <Borg> you guys push it hard...
21:00:17 <Borg> Ill stay w/ my outdated stuff then
21:04:34 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
21:05:28 <Borg> peter1138: C++ features into OpenTTD
21:05:43 <peter1138> C++ codebase uses C++, shock.
21:07:35 <Borg> whats the newest C++? C++23?
21:30:09 <reldred> @peter1138 I bring you glad tidings of hopefully this dumbass ai bubble bursting
21:30:34 <reldred> Burry was the guy who predicted and shorted the hell out of the subprime mortgages
21:31:18 <peter1138> They're all up to something.
21:31:59 <reldred> Iβd like them to all be up to applying for unemployment.
21:32:24 <reldred> Makes me wonder how some firms like Microsoft and oracle are going to survive at all if this ai bubble pops
21:33:19 <reldred> Rude shock for some people if they have to go back to thinking for themselves some day.
21:33:48 <peter1138> Well, Microsoft have been doing things like sneakily increasing prices for Copilot... so they'll be okay.
21:34:10 <peter1138> I'm probably going to get in trouble for repeatedly using terms like 'slop' at work.
21:34:18 <andythenorth> just get your AI to say it
21:34:28 <andythenorth> then you're conforming to the requirement to innovate using LLMs
21:34:37 <andythenorth> and the LLM is always right, no?
21:34:47 <reldred> peter1138: Heh, theyβve run afoul of our ACCC over that
21:35:07 <andythenorth> hmm I have a pension in stocks somehow, should I ask to sell some and wait for prices to fall?
21:35:17 <andythenorth> it's via a fund, I don't trade my own future
21:37:03 <reldred> Meh, line will go back up again, itβll dip a bit probably and thatβs about it.
21:39:47 <xarick> i cherry picked 14772 and put them through the "several" tests:
21:40:12 <xarick> acceptable, but mac still crashes
21:41:00 <xarick> and Linux still disagrees with windows
21:42:49 *** kuka_lie has quit IRC (Quit: Lost terminal)
21:45:18 *** Borg has quit IRC (Quit: leaving)
21:46:02 <rito12_51026> github-advanced-secu: Now I'm really confused with the #14717
21:49:07 <peter1138> rito12_51026, I recommend following our coding style.
21:49:30 <peter1138> Because that isn't it.
21:53:40 <peter1138> I am also not a fan of making the dropdown window a templated thing.
21:58:25 <rito12_51026> peter1138: Do you mean the coding style of function pointers or the whole PR
22:00:04 <rito12_51026> Wouldn't it be faster as template than with the virtual functions and overrides?
22:03:46 <_jgr_> Having two copies of everything for tram and road seems overkill when they're functionally the same, a normal parameter and if statements ought to be fine
22:05:02 <_jgr_> The overhead of virtual functions is also negligible in this context
22:07:10 <rito12_51026> I guess I just wanted to use concepts
22:08:33 <acs121> peter1138: How can they do this ? Copilot is so terrible already compared to many AIs lmfao
22:09:24 *** keikoz has quit IRC (Ping timeout: 480 seconds)
22:10:38 <peter1138> They're pushing it hard.
22:10:53 <peter1138> They're all the same shit to me, I am not touching it.
22:11:54 <andythenorth> is copilot still just GPT wrapped, or did they do their own now?
22:13:02 <rito12_51026> _jgr_: Not everything, they share comparison functions, and all bitsets
22:14:49 <andythenorth> roofs or rooves?
22:37:44 <peter1138> lol, my search & replace went wrong :/
23:50:27 *** WormnestAndroid has quit IRC (Remote host closed the connection)
23:50:29 *** WormnestAndroid has joined #openttd
continue to next day β΅