Back to Home / #openttd / 2021 / 06 / Prev Day | Next Day
#openttd IRC Logs for 2021-06-14

---Logopened Mon Jun 14 00:00:27 2021
01:05-!-sla_ro|master [~sla.ro@89.136.179.137] has joined #openttd
01:05-!-sla_ro|master is "slamaster" on @#sla #openttd
01:44-!-sla_ro|master [~sla.ro@89.136.179.137] has quit []
02:18-!-tokai|noir [~tokai@00012860.user.oftc.net] has joined #openttd
02:18-!-mode/#openttd [+v tokai|noir] by ChanServ
02:18-!-tokai|noir is "Christian Rosentreter" on +#openttd
02:25-!-tokai [~tokai@00012860.user.oftc.net] has quit [Ping timeout: 480 seconds]
02:37<@DorpsGek>[OpenTTD/OpenTTD] James103 commented on pull request #9366: Fix 81062163: for (really) old games, station bus/truck station cache was not updated https://git.io/JnebJ
02:48-!-esselfe [~steph@00029dbe.user.oftc.net] has joined #openttd
02:48-!-esselfe is "Steph" on #openttd #debian-quebec #debian #linode
03:15<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9366: Fix 81062163: for (really) old games, station bus/truck station cache was not updated https://git.io/JnvOC
03:21<_dp_>TrueBrain, btw, that testing is not enough to test _all_ afterload cases
03:21<_dp_>since you always call afterload at least once and there are some cases (i.e. server after new game) where it doesn't call afterload at all
03:21<_dp_>for example that way you won't pick up VRF_EL_ENGINE_ALLOWED_NORMAL_RAIL difference that exists
03:24*Rubidium wonders what new game (server or non-server) comes with road stops
03:24<_dp_>I didn't mean _right_ after the new game, there can be some player actions
03:25<_dp_>point is, server never calls afterload
03:26<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JZLZC
03:27<_dp_>for example, with VRF_EL_ENGINE_ALLOWED_NORMAL_RAIL afterload always sets it if elrail is disabled, but newgame doesn't
03:27<@Rubidium>does that cause problems?
03:28<_dp_>no, that flag doesn't rly matter if it's disabled
03:29<@Rubidium>so, it's not needed for "new" savegames, but it is needed for old savegames that did not have that electric rails. Sounds like afterload is the right place for that
03:30<_dp_>flag difference is alright, I just mentioned it as an example of difference that testing afterload that way won't pick up
03:34<@Rubidium>still, it seems kinda pointless to mention. It's like saying, after someone changed something to trains, that you did not test all cases because you didn't test aircraft
03:35<Xaroth>Sounds like complaining for the sake of complaining.
03:36<_dp_>I'm mentioning because in that pr TB says "I did this to validate "Afterload", that we are doing the right thing in all cases."
03:36<_dp_>so it's cool, but that's not _all_ the cases
03:37<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9322: Add: store table header for each chunk in savegame https://git.io/JGlmd
03:37<Xaroth>By that definition we might as well spend the next decade testing for all use cases that are impossible to happen, because otherwise we wouldn't be testing "all" the cases.
03:37-!-HerzogDeXtEr [~farci@ip9234017f.dynamic.kabel-deutschland.de] has joined #openttd
03:37-!-HerzogDeXtEr is "purple" on #openttd
03:37<_dp_>in fact, no afterload-related network desync would be caught like that because it will be comparing the same thing
03:39<_dp_>Xaroth, huh? that's just a remark, chill
03:39<_dp_>I don't even know how to reasonably check those cases
03:39<TrueBrain>Rubidium: fun fact ... I used to drop "debug.h" include whenever I wanted to add a DEBUG() statement somewhere, as I am lazy .. in result, often I forget to clean up the random "debug.h" include .. BUT NO LONGER! It fails to compile, as fmt uses snprintf, which you can no longer after the safeguard :D
03:39<TrueBrain>so my laziness is now punished, rightfully :P
03:40<Xaroth>_dp_: You do realize that I was holding up a mirror, right?
03:42<_dp_>Xaroth, I've no idea wtf are you on about
03:48<@Rubidium>in any case, the "cases" that were spoken about was loading an old save game, and a the new save game of the same game state and comparing they are the same, as that's the premise that is set up in the lines before. Not "a new game, and then loading that on another client" cases
03:49-!-Ttech [ttech@00014919.user.oftc.net] has quit [Quit: Este é o fim.]
03:56-!-andythenorth [~andytheno@cpc87165-aztw31-2-0-cust40.18-1.cable.virginm.net] has joined #openttd
03:56-!-andythenorth is "andythenorth" on #openttd
03:56-!-andythenorth [~andytheno@cpc87165-aztw31-2-0-cust40.18-1.cable.virginm.net] has quit []
03:57<_dp_>Rubidium, whatever, it was just a passing remark on something I think is worth keeping in mind, don't start a drama out of it
03:58-!-snail_UES_ [~snail_UES@cpe-98-14-137-148.nyc.res.rr.com] has quit [Quit: snail_UES_]
03:58-!-Ttech [ttech@00014919.user.oftc.net] has joined #openttd
03:58-!-Ttech is "Thomas Techinus" on #virt @#transcendence @#swift #openttd #oftc #moocows #mobian #linux #alpine-devel #help #debian #ceph #alpine-linux
03:58<@peter1138>Oh no, nearly work o'clock :(
03:59<Xaroth>peter1138: been work o'clock for me for almost an hour now.... I'm already looking forward to weekend o'clock.
03:59<@peter1138>Weekends are too short.
04:00<@peter1138>Hmm, 14 hrs 43 mins in VS Code last week. That is odd, used to be 40+ hours.
04:00<@peter1138>Oh of course, had several stupid meetings that ended up with horrible work in Excel.
04:00<TrueBrain>I agree, weekends are too short .. this is why I extended them with no job-weeks :P
04:00<TrueBrain>no-job weeks
04:00<TrueBrain>typing, hard
04:01<@peter1138>Couple of years I'll have paid off the mortgage and that may be an option :p
04:03<TrueBrain>ha, I am far away from paying that off :P
04:06<Xaroth>only 30 more years to go \o/
04:10<TrueBrain>21 and 25 for me :P
04:10<TrueBrain>after 21 the biggest bulk is done, 4 years later the rest
04:10<TrueBrain>does require me to not move out :P
04:34<TrueBrain>"wait, I made this change 3 times already, why do I have to do it again?!" - "owh .... this file is autogenerated ...."
04:34<TrueBrain>:D
04:34<TrueBrain>I feel stupid :P
04:35<@peter1138>:D
04:35<TrueBrain>way too used to ctrl+click on error lines
04:35<TrueBrain>VSCode made that so smooth
04:38<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9322: Add: store table header for each chunk in savegame https://git.io/JGlmd
04:44<TrueBrain>owh, the nightly failed
04:44<TrueBrain>"clang: error: unable to execute command: Bus error: 10"
04:44<TrueBrain>nice
04:44<TrueBrain>very descriptive too
04:46<LordAro>fun
04:46<TrueBrain>it is the arm64 build
04:46<TrueBrain>so I cannot judge if it was a temporary failure
04:46<TrueBrain>or that the fmt addition put it over the edge
04:47<LordAro>https://stackoverflow.com/questions/8716714/what-is-the-meaning-of-bus-error-10-in-c
04:47<LordAro>hmmm
04:49<TrueBrain>guess we need orudge to find out what it is exactly that is causing it :P
04:50<@peter1138>ARM, such niche ;)
04:54<@peter1138>I remember having issues with Alpha back in the day. Just being 64 bit was enough to cause issues.
05:00<TrueBrain>okay, also interesting .. I only refactored my PR a bit, basically moved code around between commits
05:00<TrueBrain>and now the test fails :P
05:01<TrueBrain>a DemolishTile is not being done .. lol
05:06<TrueBrain>and this is why "git reflog" is incredibly useful :)
05:07<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9322: Add: store table header for each chunk in savegame https://git.io/JGlmd
05:15-!-NGC3982 [~henrik@h-178-174-188-134.A980.priv.bahnhof.se] has quit [Quit: leaving freenode]
05:16-!-NGC3982 [~henrik@h-178-174-188-134.A980.priv.bahnhof.se] has joined #openttd
05:16-!-NGC3982 is "henrik johansson" on #openttd
05:16-!-NGC3982 [~henrik@h-178-174-188-134.A980.priv.bahnhof.se] has quit []
05:18-!-NGC3982 [~henrik@h-178-174-188-134.A980.priv.bahnhof.se] has joined #openttd
05:18-!-NGC3982 is "henrik johansson" on #openttd
05:49<@peter1138>Yes but also...
05:49<@peter1138>I did once get into the habit of creating a separate branch before rebasing/refactoring
05:55<@Rubidium>yeah, that's especially useful if you want to have the same result at the end, but are moving around a lot of things in commits
05:55<@Rubidium>although I might have misused tags for that
05:56<@peter1138>I tend to consider tags as permanent.
07:10<@DorpsGek>[OpenTTD/OpenTTD] PeterN opened pull request #9373: Cleanup: nested_array should not be accessed directly. https://git.io/JnJv0
07:11<TrueBrain>can't we make the variable private or something? :P
07:13<LordAro>TrueBrain: do i need to tell you off for making a comment in IRC rather than the PR? :p
07:13<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain approved pull request #9373: Cleanup: nested_array should not be accessed directly. https://git.io/JnJfi
07:13<TrueBrain>LordAro: yes!
07:13<TrueBrain>I can use that :)
07:14<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9373: Cleanup: nested_array should not be accessed directly. https://git.io/JnJfh
07:14<TrueBrain>there, happy? :)
07:14<TrueBrain>:D
07:15<LordAro>:p
07:15-!-WormnestAndroid [~WormnestA@35.136.189.95] has quit [Remote host closed the connection]
07:16-!-WormnestAndroid [~WormnestA@35.136.189.95] has joined #openttd
07:16-!-WormnestAndroid is "WormnestAndroid" on #openttd
07:17<TrueBrain>now to find a savegame with a GSTR chunk ..
07:27<TrueBrain>lol, GSTR chunk reads a std::string, runs c_str() over it, to store it in a std::string again
07:27<TrueBrain>partial C++ conversions stacking up yo!
07:30<LordAro>there's probably a lot of those
07:31<TrueBrain>"fun fact" .. a GameScript language blob stored in savegames don't have to be valid entries
07:31<TrueBrain>"##### STORY BOOK #####" are also stored
07:31<TrueBrain>empty lines too
07:32<@Rubidium>yup, it's easy to miss those. Though, there should be less c_str()s than before the weekend, so it should be slightly easier to sift through them (which is basically what I've been doing for some of my std::string conversion PRs)
07:32<TrueBrain>well, I am going to help you, and remove .. 3 I think :P
07:32<TrueBrain>also one less SLE_STR
07:33<@Rubidium>yay!
07:33<@DorpsGek>[OpenTTD/OpenTTD] PeterN commented on pull request #9373: Cleanup: nested_array should not be accessed directly. https://git.io/JnJm2
07:35<_dp_>it kind of makes sense that gs strings are stored uncompiled, saves from maintaining binary compatibility
07:35<TrueBrain>huh? Who was talking about compiled?
07:37<_dp_>you? that's kind of why it has all the comments and junk
07:38<TrueBrain>I am a bit scared that validate means compiled in your world :s
07:38<@peter1138>I have no clue.
07:39<TrueBrain>I made the table-stuff fail hard when I try to store a table header without it being a table chunk
07:39<TrueBrain>as I kept doing that wrong
07:40<TrueBrain>I can tell you .. I do it wrong EVERY SINGLE conversion I do :P
07:40<TrueBrain><3 assert :)
07:40<_dp_>TrueBrain, there is no "validation" per se in openttd iirc, raw strings just go into Compile()
07:40<_dp_>sure, you could theoretically add an extra step and some intermediate format but why
07:41<@peter1138>Is this another irrelevant factoid, just to bear in mind?
07:42<_dp_>yeah, just a "fun fact" ;)
07:42<@peter1138>It doesn't seem to relate to what TrueBrain is doing.
07:43<@peter1138>Sometimes a bit of context is useful.
07:44<_dp_>there is no good way, to reply to a specific message in irc, look a few messages higher :P
07:44<@peter1138>How many is a few? None of it is context to what you wrote.
07:45<_dp_>TrueBrain> "fun fact" .. a GameScript language blob stored in savegames don't have to be valid entries
07:46<_dp_>also, why do I now feel like a need to pack a car full of lawyers to talk in this chat? :p
07:47<TrueBrain>something something mirror
07:49<TrueBrain>ha, I can now read GSDT correctly too via savegame-reader .. okay, that was easier than I expected
07:50<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9322: Add: store table header for each chunk in savegame https://git.io/JGlmd
07:50<TrueBrain>right .. linkgraph left .... oof
07:51<@Rubidium>TrueBrain: added bonus for the linkgraph parsing in your new tool: .dot output, or json that dotty understands (if that's possible) ;)
07:51<@peter1138>You seem to jump to massive conclusions about what people are talking about, and then never explain the connection, assuming it's obvious. I still don't see the connection here other than gamescript and strings...
07:51<TrueBrain>Rubidium: you do like me digging this rabbit hole nice and deep, don't you? :P
07:52<@peter1138>I should add some bacon to my bacon flavoured Tucs.
07:53<@Rubidium>TrueBrain: no, I want to warn you for the rabbit hole so you see it and don't break your leg ;)
07:54<@Rubidium>as the OpenTTD field you're walking through has a lot of, yet unseen, rabbit holes to fall into or break your leg in (on?)
07:55<TrueBrain>true true, very true :)
07:56<TrueBrain>it is appreciated :)
07:56<_dp_>peter1138, what other connection do you expect? TB commented on gs strings and so did I
08:06<TrueBrain>"Impossible as they have been present in previous game." <- I love the optimism in that statement :)
08:14-!-Samu [~Ricardo@po1-84-91-251-215.netvisao.pt] has joined #openttd
08:14-!-Samu is "realname" on #openttd
08:15<TrueBrain>funny, LinkGraph in-memory storage is as such that is it non-trivial to store it in the SaveLoad struct method without keeping some meta-data in a global
08:15<TrueBrain>basically, in-memory is not nested
08:16<TrueBrain>2 "globals" track edges and nodes based on index, which are not stored in the object itself
08:16<TrueBrain>global it is :)
08:41<Timberwolf>My retail copy of Transport Tycoon appears to have a behaviour where if a primary industry transports more than about 70% of its cargo, it gets immediately marked for closure.
08:41<Timberwolf>I'm surprised I never noticed this.
08:42<TrueBrain>I am surprised you are playing the original :P
08:42<Timberwolf>Although that said, I used to have a patch floppy so maybe that got fixed from the retail version.
08:42<Timberwolf>Heh.
08:43<Timberwolf>I did a little playing around in it, mostly to see what building a network was like without any of the modern signalling options.
08:43-!-snail_UES_ [~snail_UES@cpe-98-14-137-148.nyc.res.rr.com] has joined #openttd
08:43-!-snail_UES_ is "Jacopo Coletto" on #openttd
08:44<Timberwolf>None of your new-fangled "building signals on diagonal track" here!
08:44<esselfe>When I 'save gamename', shutdown the server and later restart with -g gamename.sav, the company passwords disappeared, why?
08:44<TrueBrain>because company passwords are not stored in the savegame
08:45<esselfe>only in RAM?
08:45<esselfe>ok I'll advise my players that I had to restart :P
08:45<TrueBrain>:D
08:46<esselfe>storing/comparing SHA 256 sums in the savegame wouldn't be possible?
08:47-!-glx [~glx@000128ec.user.oftc.net] has joined #openttd
08:47-!-mode/#openttd [+v glx] by ChanServ
08:47-!-glx is "Loïc GUILLOUX" on #openttd.noai #openttd.notice +#openttd
08:47<esselfe>(of the passwords)
08:48<Timberwolf>The other thing I liked from the original - "Tutorial 1" (building a basic road service) has an error, it builds one of the road stops in a place where nothing is in the catchment area.
08:48<milek7>I guess nobody wants to improve passwords because they are bad mechanism anyway
08:48<Timberwolf>I think the TTD one is different entirely, so it got fixed between TTO and TTD.
08:53<TrueBrain>esselfe: it is all a bit nuanced, but it is not trivial to do so
08:53<TrueBrain>so possible, yes, but nobody put in the effort for it
08:53<TrueBrain>(as in, enough effort has been put in it, but nothing that hit master yet)
08:53<TrueBrain>so possible, yes, but nobody carried it to the goal-line
08:53<TrueBrain>is a better way of wording myself :)
08:54<Samu>it's not really a password
08:54<+glx>it is a password, but not very safe :)
08:54<TrueBrain>but we ahve the first ticket dating back to 2007 requesting the functionality :P
08:56-!-tokai [~tokai@00012860.user.oftc.net] has joined #openttd
08:56-!-mode/#openttd [+v tokai] by ChanServ
08:56-!-tokai is "Christian Rosentreter" on +#openttd
09:03-!-tokai|noir [~tokai@00012860.user.oftc.net] has quit [Ping timeout: 480 seconds]
09:14<@peter1138>I guess that just means we're all lazy.
09:36<TrueBrain>I am weirdly surprised linkgraph stuff works at all :P
09:36<TrueBrain>but lets not look into the details of our Pool system ..
09:36<TrueBrain>let's
09:43-!-nielsm [~nielsm@188-181-82-243-cable.dk.customer.tdc.net] has joined #openttd
09:43-!-nielsm is "Niels Martin Hansen" on #openttd
09:44<TrueBrain>https://linux.chat/linux-on-freenode/ <- another one for the books :P
09:45-!-WormnestAndroid [~WormnestA@35.136.189.95] has quit [Remote host closed the connection]
09:45-!-WormnestAndroid [~WormnestA@35.136.189.95] has joined #openttd
09:45-!-WormnestAndroid is "WormnestAndroid" on #openttd
09:45<Eddi|zuHause>i think the main problem with saving passwords was: "we need to do cryptography, but we can't be bothered to do it properly"
09:45<Timberwolf>Client certificates would be a nice way of handling the multiplayer problem, although you have the issue of sharing them between multiple people who want to use a shared company.
09:46<Timberwolf>So you either need players to share them outside the game, or have some kind of "invite code" or "player x wants to join company, allow?" functionality.
09:46<TrueBrain>Timberwolf: you are aware there is a PR and discussion addressing all this? :D
09:47<Timberwolf>Oh cool, PR already?
09:47<TrueBrain>still has a way to go, but it shows a possible approach to this problem
09:48<TrueBrain>AddressSanitizer: allocator is out of memory trying to allocate 0x31223f400 bytes
09:48<TrueBrain>that is not good, is it?
09:48<@Rubidium>meh
09:48<Eddi|zuHause>sounds a tad large :p
09:49<Eddi|zuHause>that's like what? 12GB?
09:49<@Rubidium>closer to 13 GiB
09:49<TrueBrain>check your DHCP server, I have been told it contains the answer
09:50<TrueBrain>@calc 0x31223f400 / 1024 / 1024 / 1024
09:50<@DorpsGek>TrueBrain: 12.28344440460205
09:50<TrueBrain>Rubidium: seems you are not correct, sorry :P
09:50<@Rubidium>@calc 0x31223f400 / 1000 / 1000 / 1000
09:50<@DorpsGek>Rubidium: 13.189248
09:51<TrueBrain>lol, you became a harddisk manufacturer?
09:52<@Rubidium>if not specifically noted, I assume the proper SI units ;)
09:52<TrueBrain>well, Eddi|zuHause used a weird unit, so that was an assumption on your part :P :P
09:52<TrueBrain>lol
09:52<TrueBrain>don't we love a good troll :)
09:53<Eddi|zuHause>Rubidium: but isn't GiB specifically referring to the 1024 based unit?
09:54<@Rubidium>Eddi|zuHause: yes, and isn't 12.28 closer to 13 than 13.18 is to 12?
09:54<Eddi|zuHause>depends... :p
09:59<TrueBrain>omg, I have linkgraphs in JSON format!
09:59<TrueBrain>what an utter mess :P
10:00<TrueBrain>not the code, but the JSON output, to be clear
10:01<+glx>3 different array IIRC
10:01<TrueBrain>job -> linkgraph -> node -> edge
10:01<TrueBrain>and jobs are weird .. it seems to hijack an index from the linkgraph pool
10:01<TrueBrain>not using the correct method of doing so
10:01<TrueBrain>dunno .. bit odd duck
10:03<TrueBrain>but ... this does mean I finally managed to do all chunks, except for map-chunks
10:03<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9322: Add: store table header for each chunk in savegame https://git.io/JGlmd
10:03<TrueBrain>glx: btw, I did find a clean way to use CH_READONLY already
10:03<TrueBrain>so I cherry-picked that part from your commit :P
10:09<TrueBrain>right, time for hopefully the final run of tests :D
10:10<+glx>oh I should steal your default span constructor
10:12<TrueBrain>yeah, without it std::optional doesn't work :D :D
10:13<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JZLZC
10:13<TrueBrain>finally ready for review ^^ :)
10:17<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 updated pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/JZxHY
10:21<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain opened pull request #9374: Change: make lists in savegames consistent https://git.io/JnURj
10:22<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9374: Change: make lists in savegames consistent https://git.io/JnURj
10:22<TrueBrain>needed to make the PR to know the number to update the PR :P
10:24<@Rubidium>const TOwn * <- was about to comment on the capitalisation there ;)
10:27<TrueBrain>:D
10:27<TrueBrain>it confused me more than once
10:27<TrueBrain>but it is correct :P
10:27<TrueBrain>I take suggestions :)
10:28<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain opened pull request #9375: Change: make as many savegame chunks a CH_ARRAY as possible https://git.io/JnUze
10:28<@peter1138>https://dpaste.com/9WAUTQ34B < irccloud / freenode
10:32<TrueBrain>owh, I still have a TODO to fix .. hmm .. well, SO CLOSE :)
10:32<TrueBrain>luckily it is in one of the last commits, so what-ever
10:41<@DorpsGek>[OpenTTD/OpenTTD] glx22 updated pull request #9368: Codechange: Remove last FOR_XXX macros https://git.io/JZNwn
10:43<TrueBrain>and of course there is a warning in the firs tPR
10:43<TrueBrain>lol
10:44<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JZLZC
10:45<+glx>usual MSVC warnings
10:46<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9374: Change: make lists in savegames consistent https://git.io/JnURj
10:48<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9375: Change: make as many savegame chunks a CH_ARRAY as possible https://git.io/JnUze
10:48<TrueBrain>3 PRs, 3 different warnings
10:48<TrueBrain>nice
10:52<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9375: Change: make as many savegame chunks a CH_ARRAY as possible https://git.io/JnUze
10:52<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9322: Add: store table header for each chunk in savegame https://git.io/JGlmd
10:54<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9322: Add: store table header for each chunk in savegame https://git.io/JnUXT
10:55<TrueBrain>what was especially funny that the warnings from one were fixed by the other
10:55<TrueBrain>but .. yeah .. :P
10:57<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 commented on pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JnU1s
11:01<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JnUDm
11:02<TrueBrain>I knew someone would complain about that, but forgot to write that in the description :P
11:11<TrueBrain>lol, the CI is being busy :P
11:12<TrueBrain>maybe I should add a docs/savegame-format.md
11:12<TrueBrain>explaining how this very simple savegame format works
11:12<TrueBrain>LordAro will like that, I am sure :D
11:13<LordAro>likely :)
11:15<Timberwolf>Well-documented savegame format, people can write offline GS :)
11:15<Timberwolf>"please save and quit now, so the GS can run its next tick"
11:15<TrueBrain>:D
11:19<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JZLZC
11:20<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 commented on pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JnUd3
11:32<TrueBrain>hmm .. I expected MSVC to complain about one part of the code .. it does not
11:32<TrueBrain>so "friends" now either work or turn out to not be needed :P
11:34<@Rubidium>or the builder got updated?
11:34<+glx>there's no new VC2017 compiler IIRC
11:41<TrueBrain>ah, the other code wants access to protected, not private information
11:41<TrueBrain>there seems to be the difference
11:56<TrueBrain>euuhh ... master kinda resets a lot of settings
11:56<TrueBrain>2TallTyler made the mistake and both me and michi_cc didn't spot it ... and my PR is exactly trying to prevent that mistake :D
11:57<TrueBrain>the irony is high
11:58<TrueBrain>owh, no, I am wrong
11:58<TrueBrain>ugh, this is so annoying to read
11:58<TrueBrain>I am happy my PR removes that problem :P
11:59<TrueBrain>basically, a new setting got added, but I didn't add it in my compat layer in my PR .. so it was resetting all the settings
12:00<TrueBrain>but I completely missed the "SLV" entry in the settings :P
12:00<TrueBrain>life is hard
12:03-!-crem [~crem@2a02:169:160a:1:9b30:962e:76eb:4bb3] has quit [Quit: WeeChat 3.0]
12:03-!-crem [~crem@2a02:169:160a:1:9b30:962e:76eb:4bb3] has joined #openttd
12:03-!-crem is "crem" on #openttd
12:09-!-Progman [~progman@p548d9231.dip0.t-ipconnect.de] has joined #openttd
12:09-!-Progman is "Peter Henschel" on #openttdcoop.dev #openttd
12:09<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 commented on pull request #9374: Change: make lists in savegames consistent https://git.io/JnT3y
12:11-!-Wormnest [~Wormnest@35.136.189.95] has joined #openttd
12:11-!-Wormnest is "Wormnest" on #openttd
12:26-!-D-HUND [~debdog@2a00:79c0:600:ec00:7a24:afff:fe8a:d04d] has quit [Quit: Initiating getting-the-hell-out-of-here maneuver!]
12:27<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 commented on pull request #9375: Change: make as many savegame chunks a CH_ARRAY as possible https://git.io/JnT8e
12:30<@DorpsGek>[OpenTTD/OpenTTD] PeterN commented on pull request #9373: Cleanup: nested_array should not be accessed directly. https://git.io/JnT4l
12:41<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9374: Change: make lists in savegames consistent https://git.io/JnTun
12:42<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9375: Change: make as many savegame chunks a CH_ARRAY as possible https://git.io/JnTuF
12:49<@DorpsGek>[OpenTTD/OpenTTD] PeterN merged pull request #9373: Cleanup: nested_array should not be accessed directly. https://git.io/JnJv0
13:00-!-Wolf01 [~wolf01@0001288e.user.oftc.net] has joined #openttd
13:00-!-Wolf01 is "Wolf01" on #openttd
13:49<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JZLZC
13:55-!-sla_ro|master [~sla.ro@89.136.179.137] has joined #openttd
13:55-!-sla_ro|master is "slamaster" on #sla #openttd
13:59<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9374: Change: make lists in savegames consistent https://git.io/JnURj
14:01-!-Flygon [~Flygon@2001:44b8:411e:4e00:dd80:4925:d035:b930] has quit [Quit: A toaster's basically a soldering iron designed to toast bread]
14:05<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9375: Change: make as many savegame chunks a CH_ARRAY as possible https://git.io/JnUze
14:09<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9322: Add: store table header for each chunk in savegame https://git.io/JGlmd
14:11<TrueBrain>Rubidium: you were joking about it, I think, but for sure it is now possible to render a map with the linkgraphs on it :P
14:16<TrueBrain>just the way it is stored on disk is a bit awkward
14:17<TrueBrain>nodes: 0, 1. edges: [0][0] -> (0 -> 0) [0][1] -> (0 -> 1) .. so far so good. But now: edges: [1][0] -> (1 -> 1), [1][1] -> (1 -> 0)
14:17<TrueBrain>not sure that makes sense .. but the order on disk is not the order of edges
14:31-!-gelignite [~gelignite@55d4986c.access.ecotel.net] has joined #openttd
14:31-!-gelignite is "gelignite" on #debian #llvm #openttd
14:32<_dp_>wait, all that was to move savegames to sqlite? why?
14:33<_dp_>I mean, I get some external save to sqlite converter but as a savegame format it fells like a regression
14:33<_dp_>as it gets not of the benefits but all the downsides
14:35<_dp_>db stuff it doesn't need as the game still needs to load it fully
14:36<_dp_>and I don't think it will do any good for size and speed which are very important for the save game
14:55<@DorpsGek>[OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://git.io/Jnkl2
14:55<@DorpsGek> - Update: Translations from eints (by translators)
15:00-!-iSoSyS [~iSoSyS@ff2-84-90-95-208.netvisao.pt] has joined #openttd
15:00-!-iSoSyS is "realname" on #/r/openttd #openttd
15:00<Xaroth>they aren't going to use sqlite, it's all going to be xml.
15:01<Xaroth>then with some epic xsl trickery allow you to create a nice HTML render of your savegame's map
15:04-!-iSoSyS [~iSoSyS@ff2-84-90-95-208.netvisao.pt] has quit []
15:05<_dp_>ok, irc ate my message, anyway, for the context: https://github.com/OpenTTD/OpenTTD/pull/9322 (Motivation section)
15:05<TrueBrain>meh, turns out to be pretty difficult to find a Python lib that can draw self-loops and isn't ugly
15:22<TrueBrain>ValueError: Some given node positions are not within the data range specified by `origin` and `scale`!
15:22<TrueBrain>getting there
15:25<TrueBrain>so it calculates positions for me, then complains they are not within bounds
15:25<TrueBrain>lol
15:25<TrueBrain>hateful
15:33<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 approved pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JnkKe
15:41<TrueBrain>Rubidium: https://cdn.discordapp.com/attachments/477434889508093952/854083140284579890/unknown.png <- FOR YOU!
15:43<+glx>next step replace numbers in circle with station name ;)
15:43<TrueBrain>yeah .......
15:43<TrueBrain>till you realise
15:43<TrueBrain>they are not in the savegame :'( :'(
15:43<+glx>only if custom name
15:43<TrueBrain>as I said, they are not in the savegame :P :P
15:43<+glx>else it's magic generation
15:44<@Rubidium>nice ;)
15:56<TrueBrain>I really wasn't planning on making it, but I realised I should make a small script while I still understand the linkgraph structure :D https://github.com/TrueBrain/OpenTTD-savegame-reader/blob/main/linkgraph/main.py
15:58<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain merged pull request #9339: Codechange: add and use the ability to store (lists of) structs in savegames https://git.io/JZLZC
15:58<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain updated pull request #9374: Change: make lists in savegames consistent https://git.io/JnURj
15:59<+glx>haha my client replaced the __ in url (and webster seems to do it too)
16:04<+glx>youhou conflicts everywhere :)
16:11<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9372: Fix: [Network] Determining GetNetworkRevisionString could overflow and underflow its buffer https://git.io/Jnk5w
16:12<TrueBrain>glx: I think it was my client that did it :P
16:19<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/Jnkb2
16:25<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9369: Fix: don't show join button in online players window when the company is an AI https://git.io/JnkAH
16:32<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9368: Codechange: Remove last FOR_XXX macros https://git.io/JnkhZ
16:32<TrueBrain>poeh ... that was a hard one to review .. can't imagine how it was to write :P
16:35<@DorpsGek>[OpenTTD/OpenTTD] glx22 commented on pull request #9368: Codechange: Remove last FOR_XXX macros https://git.io/JnkjB
16:38<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9368: Codechange: Remove last FOR_XXX macros https://git.io/JnIe4
16:45<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 updated pull request #9372: Fix: [Network] Determining GetNetworkRevisionString could overflow and underflow its buffer https://git.io/JZpCf
16:47<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain approved pull request #9372: Fix: [Network] Determining GetNetworkRevisionString could overflow and underflow its buffer https://git.io/JnIJQ
16:48-!-sla_ro|master [~sla.ro@89.136.179.137] has quit []
16:55-!-virtualrandomnumber [~Thunderbi@p4ffe30df.dip0.t-ipconnect.de] has joined #openttd
16:55-!-virtualrandomnumber is "virtualrandomnumber" on #openttd #/r/openttd
16:55-!-virtualrandomnumber [~Thunderbi@p4ffe30df.dip0.t-ipconnect.de] has quit []
17:05<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 merged pull request #9372: Fix: [Network] Determining GetNetworkRevisionString could overflow and underflow its buffer https://git.io/JZpCf
17:05-!-nielsm [~nielsm@188-181-82-243-cable.dk.customer.tdc.net] has quit [Ping timeout: 480 seconds]
17:15-!-Samu [~Ricardo@po1-84-91-251-215.netvisao.pt] has quit [Quit: Leaving]
17:22<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 commented on pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/JnIGW
17:23<+glx>not bad, with all the huge conflicts to solve in my saveload branch, the only error I had was a missing }
17:24<@DorpsGek>[OpenTTD/OpenTTD] LordAro commented on pull request #9368: Codechange: Remove last FOR_XXX macros https://git.io/JnIG7
17:27<TrueBrain>LordAro: but I had faith in you!!
17:27<TrueBrain>:P
17:27<TrueBrain>:D
17:27<TrueBrain><3
17:33<TrueBrain>ps: nightly is still failing
17:34<TrueBrain>for some reason I am going to laugh if it turns out to be the 'static std::string_view abc = "def";' we now have :P
17:35<TrueBrain>I wouldn't be surprised if Apple does something idiotic there :P
17:36-!-gelignite [~gelignite@55d4986c.access.ecotel.net] has quit [Quit: Stay safe!]
17:36<+glx>would be nice to at least find the breaking commit
17:36<TrueBrain>I believe only orudge has an ARM Apple at hand. So I think he is the only one who can find the commit
17:37<TrueBrain>I do not really have an idea how we otherwise can find it .. except for abusing the CI a lot .. which would be really annoying and painful
17:40<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 updated pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/JZxHY
17:40<+glx>we don't even know if x64_86 osx release builds fine
17:41<TrueBrain>but we can ask others that
17:41<TrueBrain>at least the CI works for it
17:41<TrueBrain>so that is something :D
17:41<+glx>I'm trying win64 clang release as a test
17:42<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain approved pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/JnI8w
17:44<+glx>because OSX is the only platform using clang with RelWithDebInfo
17:44<+glx>CI checks clang but only for Debug
17:45<+glx>and who knows what happens during LTO
17:45<TrueBrain>a crash :)
17:49<TrueBrain>sometimes reddit is just fun .. post #1 of user, super proud of his station design .. post #2, a much more efficient version of his station design "based on feedback"
17:49<+glx>oh linux generic seems to warn when linking
17:49<TrueBrain>you don't have to open post #1 to know how that conversation went :P
17:50<TrueBrain>glx: yeah, has been there for a while now
17:51<TrueBrain>hmm, no, that is a lie
17:51<TrueBrain>wasn't there 2 days ago, it seems
17:51<TrueBrain>locally I have had it for a while now :P
17:54<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 dismissed a review for pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/JnI8w
17:54<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 updated pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/JZxHY
17:54<TrueBrain>wtf
17:54<TrueBrain>you want me to approve it again or something?
17:54<TrueBrain>tssk
17:55<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain approved pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/JnI0w
17:55<+glx>ok no fail with msvc clang
17:55<@DorpsGek>[OpenTTD/OpenTTD] rubidium42 commented on pull request #9371: Assorted C-string -> std::string conversions in network https://git.io/JnI0X
17:57<@Rubidium>TrueBrain: no, I definitely didn't want you to have to re-approve it...
17:57<TrueBrain>:D
17:57<TrueBrain>glx: I cannot reproduce that error anymore ... lol
17:57<@Rubidium>but as you already mentioned, Apple works in mysterious ways
17:58-!-Wolf01 [~wolf01@0001288e.user.oftc.net] has quit [Quit: Once again the world is quick to bury me.]
18:03<TrueBrain>ah, GCC only warning
18:10<TrueBrain>compiles take ~5 minutes each
18:10<TrueBrain>so bisecting is .. euh .. taking a while
18:11<@DorpsGek>[OpenTTD/OpenTTD] glx22 commented on pull request #9369: Fix: don't show join button in online players window when the company is an AI https://git.io/JnIaC
18:12<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9369: Fix: don't show join button in online players window when the company is an AI https://git.io/JnIaD
18:13<TrueBrain>owh, right, I was wondering if we wanted the button disabled
18:13<TrueBrain>or not there
18:14<+glx>for me, nobody should join AI company
18:14<TrueBrain>if that is what console does, that is what the GUI should do
18:14<TrueBrain>but he now removes the button
18:15<TrueBrain>but we also disable buttons
18:15<TrueBrain>which means the GUI is a bit less .. jumpy, with buttons
18:15<+glx>disabling should be better visually
18:20<+glx> /* Disable the chat button when there are players in this company. */
18:20<+glx> chat_button->disabled = !has_players;
18:20<+glx>double negation failure in the comment ?
18:21<@DorpsGek>[OpenTTD/OpenTTD] TrueBrain commented on pull request #9369: Fix: don't show join button in online players window when the company is an AI https://git.io/JnIot
18:22<+glx>too bad we can't add comments on lines not in the diff
18:24<TrueBrain>cd .. && git bisect good && cd build4 && make -j9
18:24-!-HerzogDeXtEr [~farci@ip9234017f.dynamic.kabel-deutschland.de] has quit [Read error: Connection reset by peer]
18:24<TrueBrain>stupid bisect must be executed from root bla
18:26<TrueBrain>okay, that GCC warning is introduced by the Debug() commit
18:30<TrueBrain>but I think that is just what pushed it over the edge
18:30<TrueBrain>as I had it in my PR for a while longer now
18:30<TrueBrain>I think it just has too many lines of code in a single source-file
18:33<+glx>it's not the biggest file we have
18:34<TrueBrain>remember it includes a 1000 line long settings table :P
18:36<+glx>and strings table
18:38<+glx>maybe this gcc warning has the same cause as apple ld crash
18:39<TrueBrain>GCC gives this warning when it is tracking 50M variables
18:39<TrueBrain>lol
18:40<+glx>that's a lot
18:43<TrueBrain>wait .. hmm ..
18:43<TrueBrain>I am now getting the error on much earlier commits
18:43<TrueBrain>this is weirdly inconsistent
18:55-!-Progman [~progman@p548d9231.dip0.t-ipconnect.de] has quit [Remote host closed the connection]
18:55<TrueBrain>omg, these LTO compiles ...
18:55<TrueBrain>GCC, come on, this is just painful
19:02<TrueBrain>bisecting now claims it is the commit changing SettingDesc::name to a std::string
19:05<TrueBrain>okay, I can reproduce that now somewhat reliable it seems
19:12<TrueBrain>lets try something to see if we can fix it a tiny bit
19:17<TrueBrain>moved a shitton out of the file, still the same error
19:18-!-tokai|noir [~tokai@00012860.user.oftc.net] has joined #openttd
19:18-!-mode/#openttd [+v tokai|noir] by ChanServ
19:18-!-tokai|noir is "Christian Rosentreter" on +#openttd
19:18<TrueBrain>no clue .. going to give up on this :) Somewhat doubt it is the same issue as MacOS is having
19:18<+glx>I think it's not related to particular file
19:19<+glx>as it's tracking all variables for improved debug info during optimisation
19:22<TrueBrain>for now, goodnight!
19:25-!-tokai [~tokai@00012860.user.oftc.net] has quit [Ping timeout: 480 seconds]
19:30-!-tokai [~tokai@00012860.user.oftc.net] has joined #openttd
19:30-!-mode/#openttd [+v tokai] by ChanServ
19:30-!-tokai is "Christian Rosentreter" on +#openttd
19:36-!-tokai|noir [~tokai@00012860.user.oftc.net] has quit [Ping timeout: 480 seconds]
20:41-!-tokai|noir [~tokai@00012860.user.oftc.net] has joined #openttd
20:41-!-mode/#openttd [+v tokai|noir] by ChanServ
20:41-!-tokai|noir is "Christian Rosentreter" on +#openttd
20:48-!-tokai [~tokai@00012860.user.oftc.net] has quit [Ping timeout: 480 seconds]
20:58-!-tokai [~tokai@00012860.user.oftc.net] has joined #openttd
20:58-!-mode/#openttd [+v tokai] by ChanServ
20:58-!-tokai is "Christian Rosentreter" on +#openttd
21:05-!-tokai|noir [~tokai@00012860.user.oftc.net] has quit [Ping timeout: 480 seconds]
21:21-!-Wormnest_ [~Wormnest@35.136.189.95] has joined #openttd
21:21-!-Wormnest_ is "Wormnest" on #openttd
21:22-!-Wormnest_ [~Wormnest@35.136.189.95] has quit []
21:49-!-Wormnest [~Wormnest@35.136.189.95] has quit [Quit: Leaving]
21:51-!-tokai|noir [~tokai@00012860.user.oftc.net] has joined #openttd
21:51-!-mode/#openttd [+v tokai|noir] by ChanServ
21:51-!-tokai|noir is "Christian Rosentreter" on +#openttd
21:58-!-tokai [~tokai@00012860.user.oftc.net] has quit [Ping timeout: 480 seconds]
22:49-!-glx [~glx@000128ec.user.oftc.net] has quit []
---Logclosed Tue Jun 15 00:00:29 2021