IRC logs for #openttd on OFTC at 2026-02-17
β΄ go to previous day
00:20:08 <xarick> can't load save on 15.1 :
00:23:05 <peter1138> There's been savegame bumps, yes.
01:05:50 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
01:06:12 *** WormnestAndroid has joined #openttd
01:29:48 *** thinkweregonnagobyph has joined #openttd
01:29:48 <thinkweregonnagobyph> ok, so I just got this, and am confused... what data should I send where?
02:01:04 <peter1138> So the second line is a URL, which is where to send it.
02:02:11 <peter1138> Then lines 3 to 6 are paths to files which contain the data to send.
02:05:00 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
02:07:17 *** WormnestAndroid has joined #openttd
02:11:35 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
02:13:56 *** WormnestAndroid has joined #openttd
02:48:33 *** Wormnest has joined #openttd
02:53:30 *** Wormnest has quit IRC (Quit: Leaving)
04:10:15 *** Tirili has quit IRC (Quit: Leaving)
04:18:33 *** Zathras_1 has joined #openttd
04:18:43 *** Zathras_7 has joined #openttd
04:21:58 *** Zathras_4 has quit IRC (Ping timeout: 480 seconds)
04:22:03 *** Zathras_11 has quit IRC (Ping timeout: 480 seconds)
04:31:45 *** toktik has quit IRC (Remote host closed the connection)
04:57:59 *** pickpacket3 has joined #openttd
04:57:59 *** pickpacket has quit IRC (Read error: Connection reset by peer)
04:57:59 *** pickpacket3 is now known as pickpacket
05:03:10 *** guru3 has quit IRC (Read error: Connection reset by peer)
05:08:24 <DorpsGek> - Update: Translations from eints (by translators)
06:11:01 *** cu-kai has quit IRC (Quit: Leaving for a bit.)
07:00:37 *** Smedles has joined #openttd
07:29:28 *** Flygon has quit IRC (Remote host closed the connection)
08:05:12 <Zathras_7> besides server_name is there another way to provide info about the server to clients? maybe something like a welcome message on joining?
08:10:22 *** coobies has joined #openttd
08:12:39 <Zathras_7> coobies: thanks! will have a look at that
08:24:02 <Zathras_7> uhm, where do I find these scripts? I am on Devuan/Debian and compile myself. then run ottd from within the build directory. cannot find any of the mentioned scripts there
08:25:56 <Zathras_7> since I probably need the "echo" command for this purpose, where would I put a script to be executed? it is a headless server so no GUI.
08:27:50 <Zathras_7> oh, sorry, totally missed that. thanks!
08:28:00 <coobies> It looks like you would use one of those filenames and put it in the scripts folder, and use the echo command like you said
08:29:00 <Zathras_7> ok, probably the on_server_connect.scr ipt
08:31:31 <coobies> There is also the "storybook" feature in-game that some servers use for information. I think there's a way to make a pop-up with information or instructions about the server but I don't know how it works. I think it probably requires a custom gamescript
08:42:34 <Zathras_7> I'll have a look at that if the other option is not sufficient :D
09:20:09 *** SigHunter has quit IRC (Remote host closed the connection)
09:22:14 *** SigHunter has joined #openttd
09:52:06 <LordAro> because no one ever updated it
10:01:11 <pickpacket> yeah, but why placed under "archive"?
10:01:29 <LordAro> everything was archived when the wiki was migrated from the old mediawiki instance
10:01:40 <pickpacket> ah! That explains it
10:43:15 <xarick> it's taking longer and longer to build master
10:43:27 <xarick> i suspect documenting everything slows it down
10:46:25 <xarick> okay, now testing Smooth economy instead of Frozen, game starts with 20,283 industries
10:49:01 <xarick> eh, strange to see the "Income Graph" to display the negative scale
10:59:31 <Zathras_7> you should can your manager then :D
11:16:56 <LordAro> xarick: not perceptably
11:35:11 <peter1138> It's all the nasty templates we use ;)
11:35:50 <LordAro> peter1138: so my commuter/winter bike is knackered
11:36:02 <LordAro> fork corrosion has gotten bad enough that it probably should be replaced
11:38:30 <peter1138> Yes. Brake levers are in an awful position.
11:38:37 <xarick> too slow for my liking
11:39:22 <xarick> kdtree for scripts when?
11:39:56 <_jgr_> You could write one of those in squirrel if you wanted
11:40:28 <xarick> hmm sounds like a plan
11:55:01 <xarick> oh, maybe it's not quite kdtree what i need
11:56:01 <xarick> i dont want just the closest
11:56:13 <xarick> i want multiple closests
12:04:15 <_jgr_> It is not surprising that this is slow when there are many pointless uses of Valuate and the number of evaluations of the highlighted loop is the number of industries x the number of airports
12:04:51 <_jgr_> Doing everything using Valuate and bulk list operations is likely to far slower and more inefficient than just writing normal style code
12:05:28 <xarick> gonna add a break there
12:06:05 <xarick> AILists only have unique items and im trying to add heliport_location multiple times
12:07:31 <andythenorth_> I have a 2004 ish steel framed Marin Muir Woods I should sell for restoration π
12:08:01 <andythenorth_> Was a phenomenal commute bike
12:08:45 <xarick> lol, problem solved! It was me after all
12:10:41 <xarick> it's not quite what I wanted, but all things considered, I prefer it this way
14:40:56 <xarick> game started in 1928, with 20,283 industries, 50 years later, with Smooth Economy, it's at 16,345
14:42:22 <xarick> industry density with Frozen Economy would put this at 28k
14:54:24 <andythenorth_> What is there to investigate? :)
14:55:21 <xarick> it doesn't stop rising
14:55:39 <xarick> and since they're frozen, they never poof
14:56:30 <xarick> i was expecting a hard cap at around 20k
14:58:35 <xarick> 256x256 map, started with 80 industries
15:01:21 <andythenorth_> Yes the game just keeps building them
15:01:45 <_glx_> frozen economy just affects production changes, if you don't want the game to build industries switch them to fund only
15:02:18 <andythenorth_> The settings for industries are a bit like the honer simpson spiders gif
15:03:07 <andythenorth_> It would be nice to rework them one day, but thenβ¦.flaming torches :)
15:04:36 *** Wormnest has joined #openttd
15:07:31 <andythenorth_> 3 types of economy, plus density, plus funding only
15:07:42 <andythenorth_> Plus whatever silly FIRS does
15:14:20 <rito12_51026> How long is "period"?
15:16:48 <talltyler> 12 economy minutes, specifically. In calendar timekeeping mode you'd call it a year.
15:43:11 <xarick> industry density isn't respected anymore?
15:44:23 <xarick> how does timer_game_economy work, who set it up to trigger?
16:04:25 <xarick> wanted_inds keeps increasing
16:06:54 *** MinchinWeb[m] has quit IRC (Ping timeout: 480 seconds)
16:09:09 *** MinchinWeb[m] has joined #openttd
16:19:19 <xarick> if (81 + 4 >= 83) { weird number += another weird number } but it's still 83
16:24:35 <_glx_> that's 5% chance to create a new industry
16:24:52 <xarick> there's the change_loop still
16:26:44 <xarick> i think the math isn't mathing correctly, if it just keeps increasing
16:26:55 <xarick> it should stop at some point
16:27:18 <_glx_> change_loop increases then overflows
16:29:36 <_glx_> ah no it's reset every time at line 3102
16:31:13 <_glx_> so I think change_loop is only 0 or 1, maybe 2 but probably not
16:34:52 <_glx_> and increment is (1 << map_size) / 31
16:36:35 <xarick> gonna add an assert here, and wait
16:38:26 <xarick> let's see when it asserts, what numbers it will give, if it really asserts
16:41:44 <_glx_> ok one a 4x*4k map, change_loop is always at least 8
16:43:36 <_glx_> because `_economy.industry_daily_increment = (1 << map_size) / 31;` is `(1<<24) / 31 = 0x84210`
16:49:28 <_glx_> for 4kx2k it's at least 4, for 2kx2k at least 2, 1 for 2kx1k, and under 1kx1k it needs more than one day to go to at least 1
16:50:42 <_glx_> so huge maps can get a lot of new industries, even with a 3% chance
17:08:21 <xarick> it asserted at when there was 207 industries in map
17:11:06 <xarick> the daily loop is still running though, i wonder if more than 207 spawn
17:25:05 *** Pricilla[m] has joined #openttd
17:25:28 <Pricilla[m]> Hello π everyone
17:25:53 <jfkuayue> *left the IRC channel*
17:34:03 <xarick> which industry is industry type 12?
17:36:28 <xarick> this looks strange though
17:37:34 <xarick> or whatever, maybe not
18:13:36 <xarick> strange how all this works
18:29:15 <xarick> tried to reduce the max_behind by 1.. not much of a gain
18:34:07 <xarick> reduced max_behind by 2:
18:34:39 <xarick> the aim was 80 but still...
18:35:20 <andythenorth_> Wonder when these improvements forcthe uncommon case impair the common case? :)
18:36:05 <xarick> there's still some daily checks going on which can still generate a new industry
18:36:10 <andythenorth_> like when providing more threads increases cache misses
18:36:25 <xarick> this is some elaborate algorithm
18:39:12 <xarick> then each industry type has a random generated `target_count` and compares against the real number of industries of that type already on the map. If it falls short, it's going to spawn it
18:40:42 <xarick> until all target_counts are met, it's still going to generate new industries... way past the expected density amount i guess
18:45:09 <xarick> well, this ain't working
18:46:04 <xarick> it's chasing a moving goal
18:46:15 <xarick> just keeps spawning new industries no matter
18:48:40 <xarick> alright, it stopped at 253
19:20:17 *** Extrems has joined #openttd
19:31:03 <xarick> frozen economy eludes me
19:52:25 *** MinchinWeb[m] has quit IRC (Remote host closed the connection)
19:53:20 *** MinchinWeb[m] has joined #openttd
19:59:53 <andythenorth_> I donβt mind the mutual support group adpect of the project, but it would be nice to have an actual development channel separate from the rabbit holes :p
20:00:08 <andythenorth_> I mostly moved grf chat to other channels
20:00:38 <andythenorth_> Although I quit discord for a bit so apologies for grf chat in advance :|
20:08:28 <talltyler> Discord has a development-forum where GRF developers can post their own threads, like a regular forum π
20:17:55 <peter1138> tt-forums has a forum for, uh... well, it's a forum, so.
20:36:07 <xarick> how do i get the industry id of an industry when i only have the location of its station
20:36:30 <xarick> ScriptIndustry::GetIndustryID not that smart :(
20:37:16 <rito12_51026> Is `if constexpr` a selection or iteration statements?
20:44:51 <rito12_51026> So debug_inline can't be used with it
20:44:54 <rito12_51026> Can template specialization be used with debug_inline? The comment before debug_inline does not say anything about templates
20:46:22 <Rubidium> question #1 regarding debug_inline is: have you proven, by profile, that debug performance is attrocious because of that function you want to add debug_inline to?
20:48:36 <rito12_51026> No, but it will be called by multiple functions that currently have debug_inline
20:52:01 <Rubidium> sounds like that'd make the functions maybe not that trivial anymore. Nevertheless, you can try if it works. And remember it's only an attempt to not create atrociously slow debug binaries without exploding build time
21:05:21 *** gelignite has joined #openttd
21:11:25 <mmtunligit> what even was the impetus for removing company passwords? i remeber hearing something about people potentially using their one password they used for everything, but if thats the only real issue, why not just have a password generated on company founding that cant be changed? have it be like 8 characters long so its not (trivially) brute forceable but also easy to type in. you could even combine
21:11:25 <mmtunligit> that with user auth stuff so it doesnt need to be typed in on every join
21:21:06 <Rubidium> 1) our refusal to store passwords in savegames, as that'd mean anybody can do offline password attacks. 2) server reload/restarts where all companys become fully open because of #1
21:23:42 <Rubidium> what is basically 'needed' from that is the 'friends list'. Then I think there aren't many problems. But that requires someone to want to put the effort into creating an usable UI for that
21:33:10 *** gelignite is now known as Guest3005
21:33:14 *** gelignite has joined #openttd
21:38:20 *** Guest3005 has quit IRC (Ping timeout: 480 seconds)
21:40:05 <rito12_51026> Rubidium: I thought about it and I got to the conclusion that same or maybe faster result I can get from utilizing class inheritance and implicit constructors, although it might be less clear code
21:41:38 <peter1138> What needs tob be faster?
21:42:31 <Rubidium> rito12_51026: I'm not quite sure what the exact context is you're thinking about. I toiled with class inheritance for TileTypeProcs and whatever I tried, I had two pointer dereferences compared to only one for the table-based lookup.
21:56:35 <xarick> <`local list = AIVehicleList_Station(AIStation.GetStationID(industry_list.GetValue(i)), AIVehicle.VT_AIR);`>
21:58:09 <xarick> ok, it's just the AIVehicleList_Station part
22:01:29 <rito12_51026> Uh, It is getting late, good night π
22:01:33 <xarick> the darned vehicle list
22:01:52 <xarick> those valuates spike at 5 ms
22:02:12 <xarick> AIVehicleList_Station puts it at 130 ms
22:04:57 *** gelignite is now known as Guest3009
22:05:01 *** gelignite has joined #openttd
22:06:23 <Rubidium> rito12_51026: looks like a lot more pointer dereferences, but ofcourse it's hard to predict what the impact of that is going to be
22:07:02 <Rubidium> in any case, debug_inline doesn't matter for now as it doesn't impact the compiler with optimisations turned on, and that's the way you need to check the actual performance impact
22:11:41 *** Guest3009 has quit IRC (Ping timeout: 480 seconds)
22:14:03 *** locosage has joined #openttd
22:14:03 <locosage> is there some way to allow player into company automatically?
22:14:07 <locosage> like command or gs api?
22:15:13 <locosage> other than move command
22:23:19 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:36:03 <_glx_> xarick: and this constructor uses FindVehiclesWithOrder which is already better than what it used to be
22:38:33 <_glx_> that's what happens when there's too many objects in game
22:51:06 <xarick> eh, i missed something
22:51:46 <xarick> ah, i see, it's a recent commit
22:53:45 <xarick> will stringIds be enum class'ed?
23:07:21 *** lobster has quit IRC (Read error: Connection reset by peer)
23:07:34 *** lobster has joined #openttd
23:22:22 <peter1138> StringID isn't an enum.
23:25:15 <xarick> or could you cook something up from that branch...
23:26:59 <xarick> oh btw the build is release at top vs relwithdebinfo at bot
23:27:17 <xarick> would be even better is both were release
23:30:26 <xarick> those peaks are from AIVehicleList_Station, just to clarify
23:33:27 <_glx_> yes there are too many vehicles in game
23:34:15 <xarick> only 1 company, around 4900 aircraft t.t
23:35:21 <xarick> that includes the heliports too
23:40:54 <_glx_> means you're creating vehicle lists 8700 times so huge cpu impact on successive ticks
23:44:49 <_glx_> it's equivalent of a human clicking on "show vehicles using this station" on all stations at the same time
continue to next day β΅