IRC logs for #openttd on OFTC at 2023-01-29
β΄ go to previous day
00:00:41 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
00:10:06 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
00:10:14 *** WormnestAndroid has joined #openttd
00:16:16 <kamnet> TrueBrain: Does ChatGTP now get a contribution credit in the game? π
00:48:04 *** gelignite has quit IRC (Quit: Stay safe!)
00:48:54 *** Wormnest has joined #openttd
01:12:27 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
01:33:14 *** sla_ro|master has quit IRC ()
01:41:10 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
02:19:10 *** Wormnest has joined #openttd
03:11:51 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
03:30:01 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
03:30:05 *** WormnestAndroid has joined #openttd
03:30:26 *** debdog has quit IRC (Ping timeout: 480 seconds)
03:38:26 *** Wormnest has joined #openttd
03:42:11 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
03:42:22 *** WormnestAndroid has joined #openttd
04:10:53 *** Wormnest has quit IRC (Quit: Leaving)
05:10:02 *** D-HUND is now known as debdog
05:11:22 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
05:11:28 *** WormnestAndroid has joined #openttd
06:33:35 *** HerzogDeXtEr has joined #openttd
08:59:39 <Wolf01> Hmmm, creating a new flat land scenario 64x64 takes ages, why? (13.0-RC2)
09:12:06 <Rubidium> it's basically instantaneous for me with #10429
09:29:46 <Rubidium> it's similarly instantaneous in a debug build of 13.0-RC2 (no scripts/ai/newgrf/etc)
09:39:10 <Rubidium> same problem in RC1 or not?
09:41:11 <Wolf01> Can't remember, probably even on 12
09:42:17 <Wolf01> Btw it seem the order, not specific to some grfs, removing them in a different order still cause the problem
09:48:41 <Wolf01> Probably I should move them to SSD
09:50:46 <Pruple> Wolf01: is a grf trying to place objects in the landscape, but can't find anywhere because it's looking for somewhere that's not flat, perhaps?
09:51:13 <Pruple> or otherwise meets criteria that aren't present on the generated map?
09:51:14 <Wolf01> It shouldn't do it on scenario editor
09:51:42 <Wolf01> BTW happens also enabling just the opengfx ones
09:53:47 <Wolf01> Also the openttd folder is already on SSD
10:05:49 <nielsm> most GRFs are a few MB at most. disk speed won't matter for them, they'll be living in the OS disk cache entirely after you
10:05:57 <nielsm> after you've had them read in once
10:06:26 <nielsm> unless your machine is badly starved for RAM
10:07:35 <Wolf01> I doubt that, also the SSD tool says everything is fine, a bit degraded after 6 years but fine
10:12:50 <andythenorth[d]> how do I even set the map size for scenario editor?
10:13:41 <nielsm> pretty sure it's in the "generate landscape" button
10:14:06 <andythenorth[d]> instant for me, sorry
10:15:05 <Wolf01> Instant even for me without grfs
10:15:55 <andythenorth[d]> I don't know about objects
10:16:11 <andythenorth[d]> maybe there's a grf object with an unmeetable placement constrain on small maps
10:18:24 <Pruple> that's what I said, innit?
10:19:02 <Wolf01> Nope, I enabled only opengfx and still happen
10:19:15 <Wolf01> It seem it rescans all the enabled grfs
10:19:21 <andythenorth[d]> maybe I should read π
10:20:15 <Wolf01> Even with "big gui" only
10:21:23 <Wolf01> It hangs for a second (nothing compared when there is FIRS :P but still hangs)
10:21:41 <Wolf01> Without any grf it's immediate
10:23:55 *** sla_ro|master has joined #openttd
10:45:37 <andythenorth[d]> trying to replicate
10:46:08 <andythenorth[d]> I haven't been able to trigger it yet
10:47:09 <nielsm> it sounds like you'd have to share at least your config files, and possibly your entire collection of installed content
10:49:33 *** reldred has quit IRC (Quit: User went offline on Discord a while ago)
10:54:21 <andythenorth[d]> does GS get any free opcodes when loading savegame?
10:55:52 <andythenorth[d]> I am trying to make my GS as stateless as possible with respect to savegame, but that requires doing slow things at least once
11:20:17 <nielsm> andythenorth[d]: the "load saved data" function is kind-of free opcodes, but I don't think you're allowed to touch game state during it, only calculate things internally (can't fire commands)
11:22:58 <andythenorth[d]> but I might be able to do stuff like walk all the tiles on the map
11:29:07 <nielsm> I'd suggest (again) to try to save as much of your internal state as possible in a data structure that can be loaded and saved directly by the load/save functions
11:29:27 <nielsm> so you can just load it and be running straight away without having to re-calculate anything
11:36:22 <Samu> i opened Industry chains, boom
11:39:54 <andythenorth[d]> I want to drop most of the state on saveload π
11:40:08 <andythenorth[d]> it will be a source of bugs
11:40:26 <andythenorth[d]> and will require migrations, or constantly building a new test game
11:41:35 <andythenorth[d]> specifically I am copying a lot of the map into a squirrel table
12:25:53 <andythenorth[d]> hmm my GS needs to stop deleting all of the map π
12:26:02 <andythenorth[d]> I left it in as a test
12:26:21 <andythenorth[d]> but in normal gameplay it takes about 5 years to do it π
12:26:28 <andythenorth[d]> such savegame
13:32:02 <TrueBrain> I am looking (once again in sorts) if we could upload crashes automatically for release-builds .. it seems pretty doable, the main issue is: most solutions don't ask the user to report the crash, but just upload it
13:32:38 <TrueBrain> the days of "Report this issue" seems to be somewhat over .. and most software just sends it to a central server
13:33:49 <TrueBrain> there also seems to be no real cross-platform way to add a `.log` file to crashes .. but looking into how the crash-collectors work, that is not really surprising
13:36:50 <TallTyler> Somewhat related because that sounds like a lot more bug reports would be generated, I wonder if a permanent flag like βmoney cheat has been used in this savegameβ but instead for βNewGRF has been changed in a running gameβ would be a useful addition to savegames, so we could more quickly triage those. Although I guess most of those reports are βeconomy broke plz fixβ and not βthe game crashedβ. I guess Iβm just
13:37:16 <TrueBrain> changing NewGRFs are tracked by the game log
13:37:30 <TrueBrain> you can see that in the `crash.log` currently
13:37:44 <TrueBrain> (game logs are embedded in the savegame)
13:41:30 <TrueBrain> there you can see that on tick 1280, NewGRFs were changed
13:46:59 <TallTyler> Ah, guess I never learned to read crash logs properly then π
13:47:20 <TrueBrain> it also doesn't happen all that often, that a crash is reported due to players doing silly things with NewGRFs
13:47:44 <TrueBrain> but sometimes players do, and we love to point out: you ignored a bit-fat-warning, so .. yeah ... π
13:49:54 <TrueBrain> owh, for crashpad, the most likely backend for Windows / MacOS, we can indicate it should also attach a log-file on crash .. so an option would be to write the gamelog to disk, and append when things change, so it gets attached on crash
13:53:12 <andythenorth[d]> Weβd have opt out? And we could black some things?
13:54:04 <andythenorth[d]> E.g I always redact crashlogs because the mac ones contain 50% of my auth creds in the path
13:54:30 <TrueBrain> There is a tip .. don't use your username as part of your password π
13:55:01 <andythenorth[d]> You know what I mean :p
14:00:10 <TrueBrain> okay, so this would also drag in libcurl, but otherwise seems doable
14:00:35 <TrueBrain> would need to use vcpkg for Linux I guess, to keep things sane .. as crashpad is not in the Ubuntu package repo π
14:14:27 <TrueBrain> okay, so there is sentry-native, which builds against all our targets. Crashpad as backend. Sentry Relay in `openttd.org`, so there are no weird calls to weird domains from the client. Opt-in on first-start to ask: automatically upload crashes? vcpkg for sentry-native and libcurl .. and that is all she wrote .. guess worth a test
14:15:11 *** debdog has quit IRC (Ping timeout: 480 seconds)
14:15:47 <TrueBrain> it would upload a minidump and the gamelog of the active game. By uploading the debug-symbols to sentry, this should give pretty accurate stacktraces for crashes.
14:16:03 *** D-HUND is now known as debdog
14:16:35 <TrueBrain> and of course we should only enable it on our releases, as you don't want to receive this bla on development builds π
14:17:22 <TrueBrain> it would however be incompatible with our current crash handlers .. that is the only real downside I can find. So no more `crash.sav`, basically
14:17:56 <TrueBrain> makes me wonder .. was that ever actually useful? Can't remember π
14:26:03 <TrueBrain> well, we would lose that ability. Similar for the `crash.png` file
15:15:52 <kamnet> If the new way makes it easier and faster to diagnose and fix issues with less waiting on the public to report it, I don't see it as a loss.
15:16:25 <TrueBrain> there is a balance ... we need to estimate how much reports we would receive, as storage is not endless π
15:17:42 <TrueBrain> but luckily enough sentry de-duplicates similar stacktraces, and doesn't keep all the minidumps around π
15:26:42 *** Wormnest has joined #openttd
16:24:41 <Samu> is github suddenly slow, or is it me?
16:50:36 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
17:00:19 *** gelignite has joined #openttd
17:56:42 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
18:05:23 <Samu> i loaded a savegame from 1.5.0 and i can't build rails or roads, says there's no engines available
18:11:36 <FLHerne> ...shouldn't affect roads anyway
18:11:47 <FLHerne> well, too early would I guess
18:11:49 <Samu> i can build roads, but not road stations
18:12:05 *** ChanServ sets mode: +v tokai
18:12:26 <Samu> an ai started, tried to build rail, made the railtracks but no train at all
18:15:21 <Samu> strange, now i could build, grr
18:16:15 <Samu> nevermind, i know what it is
18:16:47 * andythenorth[d] writing python to write squirrel
18:17:07 <glx[d]> oh could be a conversion error
18:17:24 <Samu> where can i download 1.5.0-beta2?
18:18:43 *** tokai|noir has quit IRC (Ping timeout: 480 seconds)
18:19:59 <Samu> yeah, vehicles = 0 there too
18:21:28 <andythenorth[d]> do pythons eat squirrels?
18:22:05 <Samu> over there i can't really start building rail at all
18:33:10 <Rubidium> glx[d]: can you reproduce the bug? As for me the counts seem to be right
18:42:12 <DorpsGek> - Update: Translations from eints (by translators)
18:44:17 <Rubidium> that's a very nasty bug due to very uncommon behaviour of one tile type
18:50:53 <glx[d]> rubidium: yes I reproduced it
18:53:33 <glx[d]> 2 canals -> 2 water pieces, build an object on canal -> 2 water pieces, build depot -> 7 water pieces, remove depot -> 3 water pieces, remove canals -> 1 water piece
18:53:51 <Rubidium> glx[d]: same issue with locks?
18:53:59 <Rubidium> or maybe anything that's built on water
18:58:39 <glx[d]> locks are not affected
19:10:25 <Rubidium> and industries can't be built on objects, though they can make canals unowned
19:10:38 <Rubidium> so not a problem either
19:13:58 <FLHerne> that is indeed very neat
19:22:38 <Rubidium> Ich verstehe nur Bahnhof. But I wonder why they use RAM and not Arbeitspeicher ;)
20:11:38 <Samu> i'm tackling with a similar issue
21:02:07 <andythenorth[d]> oof crashed the game again on GS
21:02:13 <andythenorth[d]> I should learn to debug
21:03:45 <andythenorth[d]> how do I attach a debugger?
21:05:24 <andythenorth[d]> `lldb ./openttd` and then `run` seems to work
21:05:39 <andythenorth[d]> ok I've run it to the point of the crash
21:06:14 <andythenorth[d]> gives me a backtrace(?)
21:06:16 <andythenorth[d]> prints stuff anyway
21:07:06 <JGR> Yes, if it looks OK you could attach it to the issue on github
21:08:25 <andythenorth[d]> useful or junk?
21:09:53 <JGR> Seems useful, at a glance
21:11:45 <glx[d]> so something with the new script load handling
21:14:34 <glx[d]> I edited your post andy (it's triple backquote not a single π )
21:15:53 <andythenorth[d]> someone should do a new standard for text formatting π
21:19:09 <andythenorth[d]> it doesn't crash on all syntax errors
21:21:19 *** gelignite has quit IRC (Quit: Stay safe!)
21:21:20 <Rubidium> Samu: why not make the backup between line 1 and 2, and then restore between 21 and 22 plus just before each return?
21:24:52 <glx[d]> hmm EXC_BAD_ACCESS seems to be an annoying macos thing
21:27:13 <JGR> Isn't it just a nicer name for SIGSEGV?
21:27:18 <Rubidium> it's just MacOS' equivalent of C0000005 ;)
21:27:19 <glx[d]> seems you were loading a game, can you attach the save ?
21:28:20 <michi_cc[d]> @Rubidium: If we were using C++20 already, there's `using enum` to pretend a struct is actually an enum.
21:28:57 <andythenorth[d]> glx[d]: the save has unreleased grfs etc, let me see if I can do a repro without anything else
21:31:35 <andythenorth[d]> ^ only one grf missing, probably fine, just Iron Horse
21:34:42 <JGR> Interesting, that save crashes, but the test save I made didn't
21:35:21 <andythenorth[d]> the script has changed under the save
21:35:31 <andythenorth[d]> but this is a class of crashes on macOS I think
21:35:40 <andythenorth[d]> syntax errors, malformed comments etc
21:35:52 <andythenorth[d]> progress π
21:36:02 <JGR> I'm recompiling, and will post when that has done
21:47:02 <glx[d]> ok it crashes here too
21:48:21 <glx[d]> oh this->engine is null
21:50:01 <glx[d]> ok I know what happens
21:50:48 <glx[d]> syntax error so dead script, so engine is null and of course trying to load saved data then crash
21:55:56 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:56:27 *** JustANortherner has quit IRC (Quit: User went offline on Discord a while ago)
21:56:48 <andythenorth[d]> I find the best bugs π
21:57:19 <JGR> Better to find them before the big release than after
21:59:28 <glx[d]> at least it's easy to fix π
22:00:51 *** nielsm has quit IRC (Ping timeout: 480 seconds)
22:14:32 <glx[d]> you're too good at breaking things andythenorth[d] π
22:15:02 <andythenorth[d]> ha nice diagnosis
22:15:34 <andythenorth[d]> I assume this also addresses the malformed comment crash
22:16:14 <glx[d]> it should address all possible syntax errors π
22:16:25 <glx[d]> as they all result in dead script
22:17:09 <Samu> how do i abort a rebase in command line, i am bad
22:18:34 <glx[d]> samu: git rebase --abort
22:19:34 <Samu> oh, i was trying git push --abort lol
22:26:50 <Samu> now prospected industries are prospected as OWNER_TOWN, up till that part where it finds canals
22:27:17 <Samu> then it runs the commands as the founder of the prospect
22:32:34 <Samu> oh snap, conflicts with dock, depot stuff, :)
22:40:09 <Samu> yeah, i dont need those fixes here in my branch, my infrastructure counting is already correct
22:40:10 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
22:41:13 <Samu> I took a whole different approach
22:47:29 <glx[d]> hmm eints and nightly workflow failed
22:51:19 <glx[d]> ha no it was on my fork
22:51:58 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
22:52:11 *** WormnestAndroid has joined #openttd
22:52:31 <glx[d]> weird it tried to run them on schedule
23:08:23 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
23:12:43 *** Wormnest has joined #openttd
23:28:28 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
23:29:23 *** Samu has quit IRC (Quit: Leaving)
23:40:09 *** sla_ro|master has quit IRC ()
23:44:00 *** WormnestAndroid has joined #openttd
continue to next day β΅