Times are UTC Toggle Colours
00:09:35 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #9210: Fix #9209: Excessive time resizing highscore/news window when screen is too small. https://git.io/J39VX 00:11:28 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on issue #9209: The victory screen newspaper slows the game down considerably https://git.io/J39zL 00:53:14 *** Progman has quit IRC 02:13:47 *** Wormnest has quit IRC 02:52:15 *** glx has quit IRC 02:54:03 *** D-HUND has joined #openttd 02:57:24 *** debdog has quit IRC 03:09:22 *** bruvvha has joined #openttd 03:10:06 <bruvvha> You know with all this digital badge bs thats a modern norm.... I think it'd be really amazing if someone came up with an exam and digital badge for OpenTTD Train Signalling. I totally would put that on my linkedin 03:14:23 *** Compu has joined #openttd 03:25:35 *** tokai has joined #openttd 03:25:35 *** ChanServ sets mode: +v tokai 03:28:11 *** tokai|noir has joined #openttd 03:28:11 *** ChanServ sets mode: +v tokai|noir 03:34:51 *** tokai has quit IRC 04:40:24 *** Flygon has joined #openttd 05:34:32 *** unbeatable101 has joined #openttd 05:39:34 *** unbeatable101 has quit IRC 06:03:04 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #9210: Fix #9209: Excessive time resizing highscore/news window when screen is too small. https://git.io/J3HuE 06:06:55 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #9205: Codechange: Make GetCurrentRect() conform to usual Rect bounds, and reuse it. https://git.io/J3HzJ 06:13:03 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #9206: Codechange: Slider widget used different range for drawing vs setting. https://git.io/J3Hgt 06:33:46 *** supermop_Home has quit IRC 06:37:17 *** Progman has joined #openttd 06:39:22 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 opened pull request #9211: Change: [Network] Change ChatMessage's message to std::string https://git.io/J3HwP 06:48:34 *** jottyfan has joined #openttd 06:57:27 *** andythenorth has joined #openttd 06:59:04 *** sla_ro|master has joined #openttd 07:17:21 <andythenorth> yo 07:17:35 <Rubidium> 'lo 07:19:55 <LordAro> o/ 07:20:11 <LordAro> such rain 07:22:19 *** nielsm has joined #openttd 07:22:31 <andythenorth> such mouse 07:22:35 <andythenorth> in a mousetrap 07:25:01 <LordAro> is it deadmaus? 07:26:08 <andythenorth> humane trap 07:26:10 <andythenorth> so no 07:26:18 <andythenorth> looks like it's considering life choices though 07:26:27 <andythenorth> humane? mousane? 07:31:29 <LordAro> trouble with them is that you've now got to decide what to do with it 07:33:53 <andythenorth> well between them, our nearest neighbours have 7 cats 07:34:01 <andythenorth> who fight over our garden as territory 07:34:20 <andythenorth> 2 of the cats have abandoned home and live in our compost heap 07:34:29 <andythenorth> or I could take it to the park and let it go 07:41:28 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 opened pull request #9212: Change: support passing std::string directly to DEBUG https://git.io/J3HDE 07:42:43 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #9207: Fix: Use non-XDG directory for OpenTTD on Emscripten https://git.io/J3HD1 07:43:20 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9207: Fix: Use non-XDG directory for OpenTTD on Emscripten https://git.io/J39WC 08:08:04 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #9208: Emscripten cannot persist all setting changes by design https://git.io/J394K 08:08:49 <TrueBrain> no clue why people think things are "by design" :P 08:10:18 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 updated pull request #9212: Change: support passing std::string directly to DEBUG https://git.io/J3HDE 08:11:07 <Rubidium> it's obvious that the person who made the Emscripten has designed everything perfectly and then implemented it ;) 08:11:35 <TrueBrain> I love that people have this illusion 08:12:24 <TrueBrain> but okay .. SetSettingsValue ideally should get a better wrapper, as now you have to use a string .. but that is something for another day 08:13:12 <Rubidium> I guess those people also abide by the idea of Intelligent Design 08:17:29 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #9211: Change: [Network] Change ChatMessage's message to std::string https://git.io/J3H7S 08:17:37 <TrueBrain> you can change the commit message during squashing if you like ^^ 08:18:23 <DorpsGek> [OpenTTD/team] 112200369 opened issue #211: [en_AU] Translator access request https://git.io/J3H7h 08:19:45 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 merged pull request #9211: Change: [Network] Change ChatMessage's message to std::string https://git.io/J3HwP 08:19:49 <TrueBrain> Rubidium: you spotted the CI warnings with #9212? 08:20:15 <TrueBrain> glx, hurry up with your workflow fix :D :D :D 08:20:24 <TrueBrain> it worked, ship it :P :D 08:20:55 <DorpsGek> [OpenTTD/team] 112200369 commented on issue #211: [en_AU] Translator access request https://git.io/J3H7h 08:21:12 <LordAro> i am suspicious of that username 08:21:14 <TrueBrain> and another person that failed the read test .. 08:21:52 <LordAro> australian too... 08:22:11 <TrueBrain> well, strictly seen, he double failed 08:22:23 <TrueBrain> as not only did he not read for who the message was, but also what the message was 08:22:30 <LordAro> and that is not australian in the email body thst they received... 08:22:31 <Rubidium> TrueBrain: yeah, though it's only one warning... so much better than the previous attempt which just broke on anything not MSVC. And what I had to do to get it to build... I'm not so sure that's the way to go anymore. So I hope I can get some opinions on the limitation it adds (or removes) 08:22:36 <LordAro> /english 08:23:01 <TrueBrain> LordAro: euh .. yeah ... that is very odd 08:23:16 <TrueBrain> Rubidium: I did not know you could do this with templates, it does look pretty neat :) 08:23:32 <TrueBrain> but I leave it to C++ experts to give a real opinion :) 08:23:41 <TrueBrain> "looking neat" is not really a valid reason for anything code-wise :P 08:26:01 <Rubidium> TrueBrain: well, the point is that it sacrifices WARN_FORMAT. So the question is, what's more important. Not having to worry about WARN_FORMAT when you convert from C-string to std::string (on MSVC), or having something that attempts to check the parameters against the format 08:26:23 <TrueBrain> the latter saved us many many many many times 08:26:33 <TrueBrain> so yeah .. I understand your reluctance here 08:27:27 <LordAro> i know it's a much bigger change, but how about dropping the printf style entirely? DEBUG(misc, "some text ", intvar, " more text", strvar); 08:27:30 <LordAro> etc 08:28:14 <TrueBrain> removing all need for %s etc? 08:28:22 <Rubidium> yeah, I guess that's where it's going to head to 08:28:53 <TrueBrain> does that also allow you to print an enum, but instead it looks up the name instead of the value? :P :P 08:30:32 <Rubidium> if you provide the appropriate override it probably would 08:32:22 <Rubidium> the main problem with the bigger change... how would I ever get that approved? ;) 08:33:14 <TrueBrain> YOLO approve? :P 08:37:03 *** HerzogDeXtEr has joined #openttd 08:52:58 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #9204: Codechange: Be more selective when marking windows dirty https://git.io/J3SgI 08:53:59 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #9205: Codechange: Make GetCurrentRect() conform to usual Rect bounds, and reuse it. https://git.io/J393y 08:54:18 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #9206: Codechange: Slider widget used different range for drawing vs setting. https://git.io/J39sc 08:54:36 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #9210: Fix #9209: Excessive time resizing highscore/news window when screen is too small. https://git.io/J39VX 08:54:39 <DorpsGek> [OpenTTD/OpenTTD] PeterN closed issue #9209: The victory screen newspaper slows the game down considerably https://git.io/J39zL 08:55:23 <TrueBrain> SPAM! :P 08:55:39 <TrueBrain> I see peter1138 wants to be in the stats too :) Very nice :) 08:56:29 <peter1138> Got a way to go to get near RB. 08:59:03 <LordAro> peter1138: did you see the other comment in #9209 ? 08:59:36 *** Samu has joined #openttd 08:59:38 <peter1138> Other comment? 09:00:16 <TrueBrain> he is imagining things I am afraid :P :D <3 09:00:38 <LordAro> oh, lol 09:00:42 <LordAro> thst was you 09:00:45 <LordAro> not the reporter 09:00:57 <TrueBrain> lolz :D 09:04:50 *** iSoSyS has joined #openttd 09:05:37 *** iSoSyS has quit IRC 09:08:27 *** andythenorth has quit IRC 09:09:10 <peter1138> It seems to be somewhat wet. 09:10:27 <peter1138> Hmm, #9203... 09:12:00 <Rubidium> TrueBrain: I learned some new C++. See line #7 in https://godbolt.org/z/83MeqfK7j 09:12:54 <Rubidium> well... learned is not the right word... I stumbled upon it trying to LA's idea to work 09:14:07 <TrueBrain> I don't even ... wuth? 09:14:08 <TrueBrain> no 09:14:10 <TrueBrain> :P 09:14:25 <LordAro> mm, fold expressions 09:14:27 <LordAro> great fun 09:15:17 <peter1138> Why not Debug("yikes", 1L << " " << 0.5 << " hi" << " bye") 09:15:36 <LordAro> might as well just use std::cout directly though :p 09:15:41 <peter1138> Ah 09:16:21 <Rubidium> LordAro: except, how are you going to redirect that over the network and split off desync debug stuff into a file 09:16:40 <peter1138> No, assuming Debug isn't a macro, that would always perform the formatting even if the message isn't ever displayed. 09:18:25 <TrueBrain> Could not connect to :0 (IPv?): Connection refused 09:18:27 <TrueBrain> oops 09:20:02 <TrueBrain> you can't get the peername of a socket that shows an error 09:20:02 <TrueBrain> hmm 09:20:06 <TrueBrain> that is a bit of an issue :D 09:20:23 *** virtualrandomnumber has joined #openttd 09:22:24 *** virtualrandomnumber has quit IRC 09:25:14 <TrueBrain> takes so much more bookkeeping to know the real IP otherwise, ugh .. 09:30:08 <Rubidium> https://godbolt.org/z/aazTo7ooY <- might be more palatable? 09:32:24 <Rubidium> I have been thinking about making a specialized stringstream of some sort that does the right thing, however... that makes it more likely to get conflicts between different threads in the output. Now it will have one line ready before going to the debug_print function 09:34:36 <_dp_> oh, lol, I was looking for a way to unpack args into stream just a few days ago 09:34:44 <_dp_> should've asked here I guess xDD 09:35:15 <Rubidium> _dp_: then your search-foo is failing you, as I just stumbled upon it searching 09:35:44 <_dp_> well, I didn't completely fail, I found a recursion trick 09:36:36 *** andythenorth has joined #openttd 09:37:08 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9213: Fix f7e390bd: getpeername() doesn't work on closed sockets https://git.io/J3QUR 09:48:24 <LordAro> Rubidium: oh, well if redirecting is needed, just stringstream then 09:48:44 <LordAro> direct stringstream to std::cout, then network (as str) as appropriate 09:48:48 <LordAro> not quite as clean, but clean enough :p 09:51:00 <_dp_> btw :p https://pastebin.com/Qcv5hG3e 09:53:31 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9213: Fix f7e390bd: getpeername() doesn't work on closed sockets https://git.io/J3Qky 09:55:41 <LordAro> _dp_: no std::format until C++20 :p 09:55:52 <LordAro> we could add fmt, but... 09:57:37 <peter1138> I did a nasty hack to make missing road types not cause a crash. 09:57:45 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9213: Fix f7e390bd: getpeername() doesn't work on closed sockets https://git.io/J3QUR 09:57:47 <_dp_> I couldn't stand c++ formating any more 09:57:48 <peter1138> I suspect it would be better to abort loading the game though. 09:57:54 <_dp_> fmt makes formatting much easier 09:59:44 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding https://git.io/JOk7C 09:59:47 <DorpsGek> [OpenTTD/OpenTTD] LordAro updated pull request #9203: Change: Use gender-neutral pronouns https://git.io/J3SEv 09:59:58 <TrueBrain> okay, in theory this should now work with IPv6 too .. now I just need to make a test-setup to validate that :D 10:00:43 <DorpsGek> [OpenTTD/OpenTTD] LordAro updated pull request #9203: Change: Use gender-neutral pronouns https://git.io/J3SEv 10:00:48 <peter1138> ipv6 stun? hmm 10:00:54 <peter1138> I have ipv6 so... 10:01:02 <LordAro> test game? :D 10:01:18 <TrueBrain> well, there is a bit of work for me to do first, before I can test .. mainly, getting the GC to work on IPv6 10:01:26 <peter1138> ah 10:01:27 <TrueBrain> I don't have a test-box with IPv6 on a public routed IP :P 10:01:38 <peter1138> So about 10 minutes knowing you :D 10:01:41 <TrueBrain> so I need to poke some holes in several places .. 10:01:43 <TrueBrain> nah, first lunch 10:01:48 <TrueBrain> so it takes a bit longer :) 10:01:49 <TrueBrain> but tnx ;) 10:02:33 <DorpsGek> [OpenTTD/OpenTTD] LordAro merged pull request #9203: Change: Use gender-neutral pronouns https://git.io/J3SEv 10:02:50 <LordAro> (i squashed it, don't worry) 10:03:05 <peter1138> Hmm, actually although my home network has a /48, I only use one subnet to avoid having to be routed. 10:03:09 <peter1138> :-) 10:03:15 <LordAro> of course it does 10:03:23 <peter1138> It would be rude to reject it based on the commit messages. 10:03:25 <LordAro> because IPv4 exhaustion taught us nothing 10:03:36 <Rubidium> LordAro: oh boy, there still are more of those ;) 10:04:07 <peter1138> There are a lot more 2^48s than 2^32, but yes. 10:04:22 <peter1138> Really a /56 would be ample but ISPs be ISPs 10:04:27 <LordAro> src/script/api/script_waypointlist.hpp: * @param vehicle_id The vehicle to get the list of waypoints he has in its orders from. 10:04:30 <LordAro> bleh. 10:04:46 <peter1138> Don't have to do everything in one commit. 10:04:53 <peter1138> How else are we going to catch up with Rb. 10:05:25 <LordAro> peter1138: the explanation given to me by some network engineers was that it's a trade off between (global) routing table size 10:05:30 <LordAro> but eh. 10:05:33 *** WormnestAndroid has quit IRC 10:05:47 *** WormnestAndroid has joined #openttd 10:05:56 <LordAro> something about the silicon needed for the really high level routers being super expensive too 10:06:52 <peter1138> At that level they are probably only dealing with /32s anyway. 10:07:26 <peter1138> I think they increased the default allocation from /32 to /29, at RIPE at least. 10:08:35 <LordAro> possibly 10:08:40 <LordAro> i'll have to ask again when they're online 10:08:42 <LordAro> https://github.com/OpenTTD/OpenTTD/pull/9081/files#diff-e88ddaad49e8d7421d92825f11a486bbee4238a5166639a1cbe3dea9bd2b8239R887-R892 10:08:48 <LordAro> anyone think of a good solution to this? 10:10:08 <peter1138> What's the problem? 10:10:22 <LordAro> year / {NUM} years being a "substring" 10:10:56 <Rubidium> LordAro: yes, support {NUM} within {P}, e.g. {P year "{NUM} years"} 10:10:57 <LordAro> there's a way of pluralising things, isn't there? 10:11:40 <LordAro> does that still work with the extra parameter? 10:11:43 <Rubidium> the alternative is {NUM} year{P "" s}, but then you will get "1 year", "2 years", etc. 10:11:55 <LordAro> that's not terrible 10:12:44 <peter1138> It goes up to 5005 years :D 10:12:46 <peter1138> ... 5000 10:12:50 <peter1138> Long term goals :D 10:13:15 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #9081: Feature: Configurable subsidy duration https://git.io/J3QtK 10:14:19 <Rubidium> Or just rewording the whole thing: "1 year subsidy awarded to {company}!{}{}{STRING} service from {STRING2} to {STRING2} will double rates" 10:16:13 *** andythenorth has quit IRC 10:28:07 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #9212: Change: support passing std::string directly to DEBUG https://git.io/J3QYj 10:36:42 <DorpsGek> [OpenTTD/OpenTTD] LordAro merged pull request #9202: Codechange: Don't save unused NewGRF override mappings. https://git.io/J3yTe 10:37:17 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9039: Codechange: refactor File I/O slot functions to be object oriented and pass references instead of indices https://git.io/J3Q34 10:37:32 <Rubidium> hooray! ;) 10:37:50 <LordAro> i'm still not sure i totally understand why that variable needs to be static/global 10:37:53 <LordAro> but eh. 10:39:22 <Rubidium> it's effectively the file pointer to the base sound file (e.g. opensfx), from which it needs to read things. That should be released when changing sound set, but who's responsible for releasing it? 10:39:38 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 merged pull request #9039: Codechange: refactor File I/O slot functions to be object oriented and pass references instead of indices https://git.io/JOGDX 10:40:06 *** frosch123 has joined #openttd 10:40:51 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #9188: `autosave/netsave.sav` is not numbered (unlike regular `autosave/autosave#.sav`) https://git.io/J3guT 10:41:42 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #8870: Thread safety issues with _fio https://git.io/JqphB 10:41:45 <DorpsGek> [OpenTTD/OpenTTD] LordAro closed issue #8870: Thread safety issues with _fio https://git.io/JqphB 10:42:51 <Rubidium> 69 open PRs and 69 pages of PR... oh console_interal.h:32 ;) 10:43:30 * peter1138 rebases again 10:44:14 <DorpsGek> [OpenTTD/OpenTTD] Sgt-Nukem commented on issue #8112: Players report unauthorized clients joining passworded companies https://git.io/JfGhG 10:45:32 * peter1138 ponders a rework 10:48:43 <TrueBrain> LordAro: funny, I had the same reaction to #9188 :) Not the first time James creates a ticket about it .. seems he thinks they do something else than what they are build for 10:48:51 <TrueBrain> so it might also be a misconception on our part by now :P 10:49:18 <TrueBrain> guess we should either rename it to "emergency-netsave.sav", to highlight what we think it does 10:49:24 <TrueBrain> or make it more to what he thinks it does :) 10:49:42 <LordAro> ¯\_(ツ)_/¯ 10:49:50 <LordAro> presumably wouldn't be particularly difficult to make it numbered 10:50:07 <frosch123> oof... east const... where did rb copy&paste that from :p 10:50:40 <LordAro> oh no 10:50:44 <TrueBrain> LordAro: we already have the code; but it also means it changes what we consider its functionality. Which is fine, but it might mean it needs a bit more than just numbering :) 10:50:51 <LordAro> mm 10:50:59 <DorpsGek> [OpenTTD/OpenTTD] nielsmh commented on issue #8112: Players report unauthorized clients joining passworded companies https://git.io/JfGhG 10:51:09 <TrueBrain> but it might also be that it is a niche he is having and nobody else :P So I am a bit on the fence about it :D 10:52:27 <Rubidium> frosch123: where did I sneak that in? 10:52:48 <TrueBrain> right, I was going to set up somewhere I can test IPv6 on .. eeeuuuuuuhhhhhhhhhhhhh 10:53:03 <frosch123> ToPrintfArgument(std::string const &value) noexcept 10:53:24 <TrueBrain> ideally it should be somewhere outside my own IPv6, so I can test my router too .. hmm 10:53:48 <frosch123> sorry, i did not yet bother digging out the password manager and 2fa device for login :p 10:54:53 <Rubidium> frosch123: Canada I guess; https://docs.microsoft.com/en-us/archive/msdn-magazine/2015/march/windows-with-c-using-printf-with-modern-c 10:55:39 <Rubidium> though that approach is effectively dead as it removes the compile time string format validation 10:56:22 <Rubidium> but I figured that out only after the CI ran it 10:56:54 <peter1138> "The currently selected base graphics set is missing 10 psirtes." 10:56:58 <peter1138> Uh, what have I done? :/ 10:57:22 <peter1138> Apart from mistyped sprites. 10:57:30 <frosch123> ah, reading comments before diff :) 10:58:12 *** andythenorth has joined #openttd 10:58:24 <peter1138> He's back once again. 10:58:33 <andythenorth> probably immune now 10:58:40 <andythenorth> super 10:58:52 <peter1138> Glad mine isn't today, it's pissing down. 10:59:04 <andythenorth> such vaccine 10:59:07 <peter1138> "I'd rather get Covid than get wet" 10:59:28 <andythenorth> wife is doing them, but there were 3 lines, so I joined a different one 11:03:11 <peter1138> Mine is tomorrow. What's the betting I'll forget. 11:04:08 <TrueBrain> bah, this VPS has only Python 3.7 .. I need 3.8 .. ffs :P 11:04:10 <FLHerne> TrueBrain: Well, why are there multiple autosaves? 11:04:35 <peter1138> FLHerne, so that you can load a previous one. 11:04:40 <Rubidium> I'm betting there's a 100% chance there's a chance you forget 11:04:41 <FLHerne> Surely the original point of that is to have a backup in case the game crashes or you do something terrible and unrecoverable 11:05:02 <peter1138> No, auto saves are for when the player messes up, not for when the game messes up. 11:05:10 <peter1138> crash dump save is for when the game messes up 11:05:12 <FLHerne> You're supposed to save under a real name if you actually want to keep some state :p 11:05:38 <TrueBrain> and netsave for when the network messes up :) 11:06:20 <FLHerne> peter1138: It's kind of rare to mess up in such a way that you really need to go back 10 months or whatever it is 11:07:41 <FLHerne> James' first usecase sounds sane IMO 11:07:45 <FLHerne> "The server restarts and the client fails to reconnect to the server. The server restart causes the client to generate a netsave.sav, then the client failing to reconnect causes another disconnect which generates another netsave.sav which overwrites the first and useful version." 11:08:38 <FLHerne> Servers do restart, and some players do like to keep a copy of all their multiplayer games 11:09:11 <peter1138> Arguing to have mutliple netsaves is more useful than arguing to not have multiple autosaves ;) 11:09:27 <TrueBrain> and cue: so it might also be a misconception on our part by now :P 11:09:30 <FLHerne> Abolish all the saves! 11:09:49 <TrueBrain> honestly, I truly wonder how often autosaves are used .. we should add telemetry to the game 11:09:53 <TrueBrain> report to Google with metrics 11:09:55 <peter1138> lol 11:09:58 <TrueBrain> make it opt-out 11:10:03 <TrueBrain> I read that is doing really well these days 11:10:04 <FLHerne> OpenTTD should be like, say, Tetris 11:10:21 <TrueBrain> (for the record, that was all sarcastic, of course) 11:10:22 <peter1138> I think this is another one that isn't going to get old. 11:10:27 <FLHerne> You just keep playing until you have to quit, and the highscore depends how obsessively you played it 11:10:29 <TrueBrain> peter1138: :D 11:10:32 <peter1138> ALthough I've forgotten what the old one was :( 11:10:48 <TrueBrain> peter1138: next time, google that please 11:10:52 <TrueBrain> (sorry, I didn't forget :P) 11:11:23 <TrueBrain> wait, it should have been: what stupid you forgotten, you can just google that, pfffff 11:11:33 <peter1138> Oh yes. 11:11:55 <peter1138> That I forgot again is just the icing on the cake 11:12:59 * peter1138 rebuilds again. Good ol' bisects 11:13:13 <peter1138> Except I'm lazy so it's oldschool "pick a random commit" 11:14:29 <Rubidium> FLHerne: you know autosave counting starts at 0 every time you start the game, so... depending on whether you restarted the game, your first autosave of that game might be overwriting the last one of the previous one 11:14:55 <FLHerne> I didn't know that 11:15:28 <FLHerne> But then I normally play one or two games for years at a time, so I wouldn't :p 11:15:35 <FLHerne> That sounds like a bug really 11:16:43 <Rubidium> I'm talking about starting the game (OpenTTD), not a game (like the one you start twice a year, or do you play OpenTTD only twice a year) 11:18:07 <TrueBrain> if we are moving the netsave from emergency-save to something else, it might be worth the effort to just autosave client-side too on regular intervals 11:18:33 <TrueBrain> but as I mention, if we no longer consider it an emergency save, we might consider polishing it in general :) (also some function renaming :P) 11:19:38 <FLHerne> Ok, that also sounds like a bug 11:21:39 <TrueBrain> okay ... GC running on IPv6 .. now lets test! 11:22:16 <TrueBrain> absolutely no clue what it is going to do :) 11:22:29 <TrueBrain> "fatal error: charconv: No such file or directory" 11:22:30 <TrueBrain> joy 11:22:38 <LordAro> good start! 11:22:46 <TrueBrain> this is Ubuntu 18.04 11:22:51 <TrueBrain> guess we no longer support building on that :P 11:22:58 <TrueBrain> I blame Rubidium 11:23:17 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #9039: Codechange: refactor File I/O slot functions to be object oriented and pass references instead of indices https://git.io/J3Qlr 11:23:29 <andythenorth> so how about GS that is packaged with a grf, and only has limited set methods available, scoped to objects in that grf? 11:23:32 <peter1138> Meh, wrong place for it but Meh 11:23:41 <LordAro> TrueBrain: yes we do? 11:23:57 <TrueBrain> LordAro: given it no longer compiles on my Ubuntu 18.04, I think that means we don't :P 11:24:15 <Rubidium> charconv is C++17, so Ubuntu 18.04 does not provide a C++17 stdlib 11:24:29 <LordAro> hmm, it's still in the release workflow... 11:24:38 <TrueBrain> LordAro: but we haven't released "master" yet now have we? :) 11:24:44 <TrueBrain> pretty sure it breaks ;) 11:24:55 <LordAro> i didn't realised we'd actually broken it on 1804 11:25:04 <LordAro> 1.11 is still the same C++17, after all 11:25:06 <TrueBrain> none of us did, I would guess :) 11:25:32 <TrueBrain> let me try with backports on 11:26:11 <LordAro> TrueBrain: what py38 thing did you need, ooi? 11:26:23 <TrueBrain> LordAro: nottthhhinngggg ... "fixed" it for now ... 11:26:27 <TrueBrain> please do not login to bananas-1 11:26:35 <LordAro> oh no 11:26:40 <TrueBrain> I will clean it up, I promise :) 11:27:32 <Rubidium> TrueBrain: CXX=g++-8 might help you on Ubuntu (or something similar) 11:28:05 <TrueBrain> honestly, I am fine if we drop building the deb-files for 18.04 too .. the linux-generic should still work for anyone 11:28:05 <Rubidium> as the default is 7 which does not support this, whereas 8 which is also included in 18.04 should be able to support it 11:28:50 <TrueBrain> just my WSL1 (which has IPv6 support) is still running 18.04 :P 11:28:54 <TrueBrain> only reason I ran into this :D 11:29:46 <TrueBrain> and I/O on WSL1 is slow as fuck, so this is going to take a while .. ll 11:32:09 <peter1138> Fullscreen with HW accel and vsync on is... weird. 11:37:38 <TrueBrain> 18.04 with backports doesn't work for GCC7 11:38:35 <TrueBrain> GCC 8 is not installed by default .. so adding that to the workflow would be a joy if we want that :P 11:39:23 <andythenorth> hmm taking an iphone apart 11:39:27 <TrueBrain> (but I still have a hard time seeing the benefit on producing deb files honestly .. with the linux-generic we have now, it feels like we make Debian/Ubuntu more special than all the other flavours) 11:39:32 <andythenorth> turns out it's not made of magic inside an iphone 11:40:45 <TrueBrain> but, GCC8 does work, it seems 11:41:43 <LordAro> TrueBrain: debs are a lot nicer than just unpacking a tar archive, imo 11:41:54 <TrueBrain> sure, but why no rpm, ... 11:42:03 <LordAro> because no one's made any! 11:42:05 <TrueBrain> to me it still feels like this is something for distro maintainers 11:42:16 <peter1138> unpacking a tar achive is a lot nicer than just installing an rpm, imo 11:42:29 <LordAro> it would only be for distro maintainers if they updated everything 11:43:35 <peter1138> So, er, any idea how to find why these 10 sprites are now missing? :D 11:48:43 <LordAro> get Rubidium to fix it 11:48:49 <LordAro> :p 11:49:21 *** HerzogDeXtEr has quit IRC 11:50:32 <TrueBrain> (gdb) print c->status 11:50:32 <TrueBrain> Cannot access memory at address 0x55d3e6520000807b 11:50:32 <TrueBrain> hmm 11:51:25 <TrueBrain> a 20.04 server works, a 18.04 server does not 11:51:28 <TrueBrain> this will be very interesting :D 11:51:43 <LordAro> oho 11:51:47 <LordAro> valgrind time 11:52:06 <TrueBrain> first, time to check master 11:52:27 <TrueBrain> seems I created other valgrind warnings anyway with my last PR 11:53:04 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 opened pull request #9214: Cleanup: [Fluidsynth] Remove fluid_player_join https://git.io/J3QE0 12:01:12 <peter1138> Sounds like they have some design issues... 12:02:54 <TrueBrain> hmm .. how to kill a thread .. 12:03:24 <TrueBrain> you cannot via std::thread 12:03:25 <TrueBrain> lol 12:03:36 <Rubidium> not, because that has lots of weird repercussions 12:06:03 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 opened pull request #9215: Fix #fdc11a9: Missing sprite count determined on the wrong file https://git.io/J3QgI 12:06:18 <TrueBrain> what is that # doing for that hash? :P :D 12:06:22 <Rubidium> that should help peter1138 figuring out what's going wrong ;) 12:07:23 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 updated pull request #9215: Fix #fdc11a9: Missing sprite count determined on the wrong file https://git.io/J3QgI 12:07:24 <Rubidium> being pretty ;) 12:09:34 <TrueBrain> so .. I join the thread 12:09:36 <TrueBrain> and yet still ... 12:09:43 <TrueBrain> it reads memory inside the thread 12:09:45 <peter1138> Ooo 12:09:46 <TrueBrain> huh? This makes no sense :P 12:09:50 <TrueBrain> I must be doing something wrong :D 12:10:30 <Rubidium> first join the thread, then delete the connecter 12:10:41 <TrueBrain> you cannot join in the dtor? 12:10:43 <DorpsGek> [OpenTTD/BaNaNaS] frosch123 opened pull request #96: Change: migrate OpenTTD user Pikka to GitHub user PikkaBird https://git.io/J3QgA 12:11:02 <DorpsGek> [OpenTTD/BaNaNaS] TrueBrain approved pull request #96: Change: migrate OpenTTD user Pikka to GitHub user PikkaBird https://git.io/J3Qgj 12:11:04 <peter1138> Testing 12:11:38 <TrueBrain> I would assume the dtor is called before any variable is released 12:11:46 <DorpsGek> [OpenTTD/BaNaNaS] TrueBrain merged pull request #96: Change: migrate OpenTTD user Pikka to GitHub user PikkaBird https://git.io/J3QgA 12:11:46 <TrueBrain> but, assumptions 12:13:29 <peter1138> The fios changes touched enough files that switching back and forth causes what feels like a full recompile :D 12:13:44 <TrueBrain> yeah, joining before doesn't help 12:15:23 <DorpsGek> [OpenTTD/OpenTTD] frosch123 commented on pull request #9215: Fix fdc11a9: Missing sprite count determined on the wrong file https://git.io/J3Q2D 12:15:49 <TrueBrain> invalid writes are triggered during the joining of the thread .. hmm .. this must be something else .. 12:16:12 <andythenorth> cheese on toast, or macaroni cheese? 12:19:15 <frosch123> hmm, i read about a c++23 feature/proposal the other day. last night i noticed how i could use it in openttd, but then wondered about some details. now i cannot find the proposal again, and wonder whether i dreamt it as well :p 12:19:16 <DorpsGek> [OpenTTD/OpenTTD] PeterN approved pull request #9215: Fix fdc11a9: Missing sprite count determined on the wrong file https://git.io/J3Qa4 12:22:03 <TrueBrain> ooowwwhhh .... dtors can be triggered from other places too .. hmm ... that is rather unexpected .. 12:22:17 <TrueBrain> this code is a bit weird :P 12:22:25 <DorpsGek> [OpenTTD/OpenTTD] frosch123 approved pull request #9215: Fix fdc11a9: Missing sprite count determined on the wrong file https://git.io/J3QwL 12:22:29 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #9215: Fix fdc11a9: Missing sprite count determined on the wrong file https://git.io/J3Qwt 12:23:21 <Rubidium> andythenorth: macaroni cheese on toast? 12:23:30 <andythenorth> that is a strong idea 12:24:39 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 merged pull request #9215: Fix fdc11a9: Missing sprite count determined on the wrong file https://git.io/J3QgI 12:31:13 <peter1138> Okay, somehow I did something to my git and it's download the whole repo again :/ 12:32:20 <peter1138> Receiving objects: 100% (202014/202014), 153.29 MiB | 7.10 MiB/s, done. 12:32:22 <peter1138> Kinda scary :p 12:33:59 *** tokai has joined #openttd 12:33:59 *** ChanServ sets mode: +v tokai 12:34:14 <Rubidium> TrueBrain: I think I know why the join in the destructor does not work. It first calls the desctructor of the sub class, so the connection string already gets destructed by the implicit ~TCPQueryConnecter before the ~TCPConnecter gets called 12:35:29 <TrueBrain> hmm .. I guess 12:36:06 <TrueBrain> guess it doesn't help I have 2 variables with the same name :D 12:37:18 <TrueBrain> well, I have a commit already to fix most of that, so I can do that too .. 12:38:26 <TrueBrain> hmmm .. now the dtor of the thread fails, also fun 12:39:57 <peter1138> Hmm, easiest fix for this is to squash and the split :( 12:40:58 *** tokai|noir has quit IRC 12:55:50 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #9187: Fix #9186: Fix incorrect bounding box height causing station sprite glitch. https://git.io/J3QXv 12:56:27 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9216: Several network code related fixes (four for one special!) https://git.io/J3QXI 12:57:47 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9216: Several network code related fixes (four for one special!) https://git.io/J3QXI 12:58:36 <TrueBrain> right, that fixes those issues .. now for my 1804 / 2004 issues .. 12:59:42 <peter1138> Is 1804 an LTS release? 13:00:05 <TrueBrain> it is 13:00:16 <TrueBrain> but that is not why I am interested in it .. somehow a server can break a client 13:00:19 <TrueBrain> that is never a good thing :D 13:00:22 <peter1138> Ooo 13:00:31 <TrueBrain> with my STUN PR, mind you 13:00:35 <peter1138> Ah 13:05:58 <TrueBrain> yeah ... NetworkGameInfo seems somewhat damaged :D Lol 13:08:26 <TrueBrain> there we go \o/ okay .. now IPv6 .. 13:10:01 <TrueBrain> Failed to resolve DNS for <my IPv6 here> 13:10:02 <TrueBrain> hmm 13:11:31 <TrueBrain> haha, oops, this is my GC code :D 13:11:37 <TrueBrain> it is matches an IPv4 with an IPv6 13:11:37 <TrueBrain> ll 13:11:39 <TrueBrain> lol 13:14:42 <DorpsGek> [OpenTTD/OpenTTD] embeddedt commented on issue #8112: Players report unauthorized clients joining passworded companies https://git.io/JfGhG 13:15:04 *** glx has joined #openttd 13:15:04 *** ChanServ sets mode: +v glx 13:17:53 <DorpsGek> [OpenTTD/OpenTTD] frosch123 approved pull request #9187: Fix #9186: Fix incorrect bounding box height causing station sprite glitch. https://git.io/J3QyH 13:19:55 <TrueBrain> ha, works through IPv6 firewalls too :D 13:19:58 <TrueBrain> sweet 13:20:03 <LordAro> TrueBrain: is #9216 even vaguely backportable? 13:20:11 <LordAro> or is it all new fixes? 13:20:18 <LordAro> all fixes for new things* 13:20:21 <TrueBrain> LordAro: I would stop backporting any of the network stuff 13:20:30 <LordAro> fair nuff 13:21:13 <TrueBrain> in general, I hope we did the last patch release, but that is just me hoping it doesn't take another 10 months before STUN lands mainstream :P 13:22:27 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding https://git.io/JOk7C 13:22:42 <peter1138> 1.12 when? 13:23:34 <TrueBrain> okay, 9017 should not work for IPv6 too .. let me change the GC to only allow IPv6 13:23:37 <TrueBrain> wanna test peter1138 ? :D 13:24:16 <DorpsGek> [OpenTTD/OpenTTD] embeddedt commented on issue #9208: Emscripten doesn't persist all setting changes https://git.io/J394K 13:24:23 <LordAro> andythenorth: i was gonna try tanks, but apparently i've not played it in so long that i've got to download 26G 13:24:30 <TrueBrain> revision-wise, I called the branch "stun-me" 13:24:35 <LordAro> which is probably going about 2 days 13:26:28 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #9208: Emscripten doesn't persist all setting changes https://git.io/J394K 13:27:35 <TrueBrain> anyone else who wants to join with an IPv6 connection, you are welcome to. Check out above PR under branch name "stun-me", Search Internet, join my server 13:28:07 <FLHerne> My ISP still doesn't support IPv6 at all :-( 13:28:36 <TrueBrain> normally not an issue, as most people with IPv6 are dual-stack anyway 13:28:46 <TrueBrain> but for testing, I disabled IPv4 support :P To ensure it is not cheating :D 13:29:23 <peter1138> Ok 13:30:00 <TrueBrain> if it is failing ,run the client with -dnet=5 btw, as that will show what it is trying :) 13:30:03 <TrueBrain> it is .. verbose :P 13:30:24 <TrueBrain> I think we need to add that it doesn't try to resolve IP addresses .. it is giving like 5 lines of logs extra because of it :P 13:30:53 <peter1138> Building 13:35:31 <DorpsGek> [OpenTTD/OpenTTD] glx22 opened pull request #9217: Add: [Actions] Check CI annotations to detect compile warnings https://git.io/J3Q7w 13:35:41 <frosch123> doesn't work for me. it tries to search servers via bananas :o 13:36:09 <frosch123> https://dpaste.org/K1mO <- when i press "search internet" 13:36:19 <glx> still #9017 ? 13:36:21 <TrueBrain> frosch123: I am "using" bananas-1.cdn for this 13:36:44 <TrueBrain> frosch123: that does look fine. It should result in 1 server being listed 13:37:03 <frosch123> no servers 13:37:08 <peter1138> Oh, it finished building. I should make it run :D 13:37:15 <TrueBrain> owh, hmm, not here either 13:37:20 <TrueBrain> that is odd .. eeeuuuhhh .. hmm 13:37:48 <TrueBrain> that was working a moment ago :o 13:37:49 <TrueBrain> lol 13:38:25 <glx> ok let's build a release version 13:38:54 <TrueBrain> frosch123: okay, it does work for me .. no clue why it wouldn't for you .. hmm 13:39:29 <TrueBrain> frosch123: that disconnect in your logs, is that near-instant after Search Internet? 13:39:43 <frosch123> yes, the whole log is instant 13:40:06 <frosch123> i created a new public server 13:40:13 <frosch123> console still gives a join-key 13:40:34 <TrueBrain> I can see yours fine 13:40:42 <TrueBrain> oddddddddd 13:40:46 <frosch123> yep, i see you 13:40:56 <TrueBrain> wrong password, yeah, you guys keep having random passwords :P 13:41:16 <peter1138> Nothing listed eh 13:41:18 <frosch123> it's whatever i used last :p 13:41:39 <TrueBrain> so there is a bug somewhere with server listing .. mostly interesting as I don't have it :D 13:41:56 <TrueBrain> peter1138: try invite code "mtW-cipedIg" 13:42:10 <TrueBrain> I really should fix those codes to be less weird 13:42:19 <peter1138> Server offline 13:42:37 <TrueBrain> what do the logs say? 13:43:25 <frosch123> b05JkQXEsjs <- that's mine 13:43:59 <frosch123> we need a token generator that avoids ambiguous letters though :) 13:44:01 <TrueBrain> might be the server disconnecting you, or the client disconnecting .. don't know honestly :D 13:44:11 <TrueBrain> frosch123: yup .. I have one, just haven't installed it :P 13:45:20 <peter1138> https://gist.github.com/PeterN/3aacf86731bb15dbe9c80a12c81b8340 13:45:38 <TrueBrain> yeah, same issue, connection closed right after it is set up 13:45:42 <TrueBrain> and no longs why :D 13:45:44 <TrueBrain> logs 13:46:37 <TrueBrain> anyway, you should be able to setup a server peter1138 13:46:39 <TrueBrain> at least, frosch123 could 13:46:42 <TrueBrain> so maybe we can test that :D 13:46:55 <TrueBrain> owh, I see what is wrong 13:46:58 <TrueBrain> I am a peanut 13:47:02 <TrueBrain> please go to Start server 13:47:06 <TrueBrain> and change visibility into public 13:47:07 <TrueBrain> now try listing 13:47:40 <TrueBrain> when you are private, it disconnects you when you are a server 13:47:45 <TrueBrain> that "when you are a server" is missing :P 13:47:45 <peter1138> Started 13:47:51 <peter1138> oh, public 13:47:53 *** WormnestAndroid has quit IRC 13:47:58 <TrueBrain> private by default :D 13:48:05 <TrueBrain> but you can change that via the GUI :) 13:48:06 *** WormnestAndroid has joined #openttd 13:48:23 <peter1138> ok, 13:48:26 <peter1138> KESyDTEkLLg 13:48:54 <TrueBrain> wrong game password .. euh .. I have a password? :P 13:48:58 <frosch123> pff, tb is using a password as wel :p 13:49:48 <TrueBrain> so IPv6 works too, sweet :D 13:49:51 <peter1138> Friends-only... well if I had friends... 13:49:53 <glx> stupid MSVC, I converted to console and it decided to recreate the exe when I pressed F5 13:50:11 <TrueBrain> peter1138: I know right :( 13:50:35 <TrueBrain> well, this testing showed at least 1 bug already, that is a good thing :) 13:50:47 <peter1138> IPv6 eh? Such modern. 13:51:06 <TrueBrain> well, IPv6 without firewall configuration ... :D Still cannot believe this works ... it is so dirty 13:51:09 <TrueBrain> but what can I say .. 13:52:43 <TrueBrain> anyway, server password really should be added to the GUI 13:52:47 <TrueBrain> changing it was annoying :D 13:53:38 <TrueBrain> tnx for testing frosch123 / peter1138 ; happy IPv6 "just" works too :) 13:53:51 <TrueBrain> now I just need to finish some odd bits and pieces, and it should be good enough for a first version 13:53:54 <frosch123> happy my ipv6 worked today :p 13:54:32 <TrueBrain> "odd bits and end pieces" is more correct English, I guess 13:54:34 <TrueBrain> odds and ends 13:54:37 <TrueBrain> yeah, sounds more sane 13:55:14 <TrueBrain> right, off for a while; I will leave the game coordinator in IPv6-only mode if you want to test a bit more :) 14:14:33 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #9081: Feature: Configurable subsidy duration https://git.io/JOXcg 14:26:10 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #9217: Add: [Actions] Check CI annotations to detect compile warnings https://git.io/J37vH 14:30:49 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9216: Several network code related fixes (four for one special!) https://git.io/J37fQ 14:36:18 *** jottyfan has quit IRC 14:37:04 *** jottyfan has joined #openttd 14:39:37 <LordAro> dbg: [net] Timeout while connecting to bananas-1.cdn.openttd.org:12122 14:39:39 <LordAro> :( 14:40:46 *** jottyfan has quit IRC 14:45:37 <frosch123> no ipv6? 14:46:07 <LordAro> barely ipv4 14:46:32 <glx> it's in ipv6 only mode 14:46:55 <DorpsGek> [OpenTTD/OpenTTD] unbeatable-101 opened issue #9218: Charts do not repect font size increases https://git.io/J37kw 14:47:25 <LordAro> hmm 14:47:27 <LordAro> got a crash 14:47:36 <LordAro> on the stun-me branch... but i was just in single payer 14:47:41 <LordAro> +l 14:52:47 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on issue #9218: Charts do not repect font size increases https://git.io/J37kw 14:56:26 <DorpsGek> [OpenTTD/OpenTTD] unbeatable-101 commented on issue #9218: Charts do not repect font size increases https://git.io/J37kw 14:58:35 <andythenorth> such multiplayer game 15:02:45 *** jottyfan has joined #openttd 15:03:59 <DorpsGek> [OpenTTD/OpenTTD] embeddedt commented on issue #9208: Emscripten doesn't persist all setting changes https://git.io/J394K 15:09:13 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on issue #9208: Emscripten doesn't persist all setting changes https://git.io/J394K 15:14:21 <TrueBrain> LordAro: that is not really useful information .. anything related to my work? backtrace? crash.dmp? :D :D :) 15:14:29 <LordAro> TrueBrain: i have no idea 15:14:34 <LordAro> i have not been able to reproduce it 15:14:42 <LordAro> windows, so crash.log is useless 15:14:49 <LordAro> seemed to be on autosave 15:15:19 <LordAro> (and mingw debug compiled, so presumably crash.dmp is unhelpful too?) 15:16:20 <glx> crash.dmp is valid only for the exact same build anyway 15:16:27 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #9208: Emscripten doesn't persist all setting changes https://git.io/J394K 15:16:28 <LordAro> mm 15:16:44 <TrueBrain> LordAro: too bad .. 15:16:49 <TrueBrain> any crash is one crash too many :) 15:16:57 <LordAro> indeed 15:17:03 <LordAro> i'm running it within gdb now 15:17:08 <LordAro> but nothing yet... 15:17:15 <TrueBrain> I looked into Sentry, but that was a bit more complicated than I would like 15:17:37 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on issue #9208: Emscripten doesn't persist all setting changes https://git.io/J394K 15:17:38 <TrueBrain> not Sentry itself, but the way to capture exceptions :P 15:18:53 <TrueBrain> I see Rb and I agree :P 15:21:23 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding https://git.io/JOk7C 15:21:26 <TrueBrain> fix the listing issue at least ^^ :) 15:21:32 <TrueBrain> and switched IPv4 back on for the GC 15:21:43 <Rubidium> TrueBrain: almost... I want to get rid of calling the "right" function, and just make assigning to the setting do the right thing by overriding that behaviour and thus making it impossible to do the illegal writes 15:22:04 <TrueBrain> Rubidium: tomato tomato, really :) 15:22:35 <TrueBrain> important bits is that the current code cheats, and any hack on top of that should be prevented :P 15:23:44 <TrueBrain> WARNING: ThreadSanitizer: heap-use-after-free (pid=16673) 15:23:47 <TrueBrain> guess I should fix that too .. 15:24:27 <TrueBrain> oops, that really is bad code .. lol 15:25:17 <TrueBrain> SUMMARY: ThreadSanitizer: signal-unsafe call inside of a signal 15:25:24 <TrueBrain> ctrl+c on Linux is still fun :P 15:26:01 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding https://git.io/JOk7C 15:26:14 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9216: Several network code related fixes (four for one special!) https://git.io/J3QXI 15:27:11 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding https://git.io/JOk7C 15:27:12 <TrueBrain> that was the wrong order of commits .. lol ... I keep the CI busy :D 15:28:19 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #9217: Add: [Actions] Check CI annotations to detect compile warnings https://git.io/J37Gx 15:30:16 <glx> there's so much stuff in the json 15:30:32 *** Flygon has quit IRC 15:30:40 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #9217: Add: [Actions] Check CI annotations to detect compile warnings https://git.io/J37ZC 15:31:03 <TrueBrain> yeah, I was thinking something simple .. 15:31:20 <TrueBrain> it would also solve what LordAro reported, I guess 15:31:46 <TrueBrain> just a simple: "ERROR: N annotations found; please check and resolve the warnings", in better written English 15:32:09 <TrueBrain> or if you want to go all fancy, per target 15:32:44 <TrueBrain> but anything that gives an indication of "you suck" and "you made a single boo-boo", would go a long way :) 15:33:38 <TrueBrain> right, I should get dinner .. :D 15:35:15 <glx> https://api.github.com/repos/glx22/OpenTTD/check-suites/2678720641/check-runs <-- that's the full data :) 15:37:31 <TrueBrain> per entry, outputting output.title + output.summary 15:37:51 <TrueBrain> sounds like sufficient to me 15:38:04 <TrueBrain> you can just always output that, and do the exit code like now 15:38:13 <TrueBrain> the human will figure it out from there, I would think 15:38:54 <glx> yeah the hardest part is testing ;) 15:39:09 <TrueBrain> make a new workflow that only does this, with a hardcoded run-id? 15:39:26 <TrueBrain> but yeah, testing these kind of things is always tricky :) 15:39:34 <TrueBrain> at least you have the JSON blob, so you can test most locally :) 15:39:39 <TrueBrain> that is something! 15:39:51 <glx> true 15:39:55 *** Progman has quit IRC 15:53:12 *** jottyfan has joined #openttd 16:14:24 *** Progman has joined #openttd 16:14:34 *** HerzogDeXtEr has joined #openttd 16:27:36 *** WormnestAndroid has quit IRC 16:27:58 *** WormnestAndroid has joined #openttd 16:58:26 *** Wormnest has joined #openttd 17:01:54 *** jottyfan has joined #openttd 17:05:12 <peter1138> Such scaling. 17:06:49 <peter1138> Such broken tooltips. 17:07:18 *** Gustavo6046_ has joined #openttd 17:09:48 *** Gustavo6046 has quit IRC 17:09:48 *** Gustavo6046_ is now known as Gustavo6046 17:14:31 <peter1138> Such fixed tooltips. 17:41:00 <andythenorth> \o/ 17:56:17 *** arikover has joined #openttd 18:05:36 <peter1138> Such concordes 18:16:05 <peter1138> Hmm. Changes to WWT_INSET, I wonder. 18:17:23 <peter1138> Yes, that seems to work betterer. 18:20:11 *** Guest2239 has quit IRC 18:21:23 *** Westie has joined #openttd 18:23:11 <DorpsGek> [OpenTTD/OpenTTD] kiwitreekor updated pull request #9161: Feature: NewGRF Bridges without overriding https://git.io/J3cPO 18:24:08 <DorpsGek> [OpenTTD/OpenTTD] kiwitreekor commented on pull request #9161: Feature: NewGRF Bridges without overriding https://git.io/J37Ng 18:24:45 <TrueBrain> that moment you write 100 lines of code and it compiles without error :p 18:24:47 <TrueBrain> that cannot be right 18:25:11 <peter1138> #if 0 18:25:15 <andythenorth> you compiled in the wrong repo 18:25:21 <andythenorth> git st -> no changes 18:29:17 <TrueBrain> its so weird to think that if I leave my server now open during testing, anyone can join it :P 18:29:21 <TrueBrain> sure is a new world 18:46:07 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #9219: Fix: Apply unscaled padding to Viewport inside WWT_INSET. https://git.io/J37hk 18:54:08 *** gelignite has joined #openttd 18:57:19 <TrueBrain> w00p, managed to segfault both server and client at the same time 18:59:56 *** supermop_Home has joined #openttd 19:14:49 <TrueBrain> there we go, TURN works too :) 19:14:52 <TrueBrain> expensive .. but it works :P 19:17:23 <TrueBrain> found a nice way to keep bans on IP workable 19:17:34 <TrueBrain> and, we can distribute TURN servers in cheap places, like OVH VPSes 19:19:17 <frosch123> can you track clients getting banned from servers, and when they reach a threshold, auto ban them for all servers. maybe use google analytics? 19:23:41 <peter1138> Should I look at the forums? 19:25:42 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding https://git.io/JOk7C 19:25:59 <TrueBrain> there we go .. I disabled all other connect methods from GC for now 19:26:03 <TrueBrain> every connection is forced via TURN 19:26:32 <peter1138> How do you do TURN securely? 19:26:46 <TrueBrain> if anyone feels like testing, I would appreciate 1 or 2 people joining my server 19:27:08 <TrueBrain> peter1138: to answer somewhat seriously, TURN only forwards packets that decode like OpenTTD packets :) 19:27:17 <TrueBrain> in fact, it first reassembles them before forwarding them 19:27:48 <peter1138> Interesting. 19:28:18 <TrueBrain> and valid tickets are only assigned by the game-coordinator, so you cannot just blindly get a forward to a random other address :P 19:28:30 <peter1138> Exactly. 19:29:22 <TrueBrain> but what I did, instead of hardcoding the addresses of the TURN server 19:29:27 <TrueBrain> they are instead given from the game-coordinator 19:29:37 <TrueBrain> that should hopefully give us some freedom in where to locate them 19:29:46 <frosch123> i wonder whether to keep "private" distinct from "friends only" 19:29:59 <frosch123> there is a difference, but who would understand it? 19:30:11 <TrueBrain> the difference is kinda big: one is private, as in, no centralized connection 19:30:20 <TrueBrain> so no connection to the game coordinator 19:30:34 <TrueBrain> I am all up for better wording btw, but I can imagine people want this type of functionality in a game like OpenTTD 19:30:44 <frosch123> for players it means: "share ip" vs "share invite code" 19:30:45 <TrueBrain> (so private == single player) 19:31:08 <TrueBrain> well, private == single player + LAN, lol 19:31:11 <peter1138> Why would you do that? 19:31:24 <peter1138> Hm. 19:31:28 *** supermop_Home has quit IRC 19:31:41 <TrueBrain> as I kinda want private to revert to single player 19:31:47 <TrueBrain> and friends-only / public to multiplayer 19:31:49 <TrueBrain> automagic :) 19:32:28 <frosch123> is LAN tied to "private"? 19:32:30 <TrueBrain> well, I guess there should be LAN-only mode too 19:32:44 <frosch123> i thought you would find any server on LAN via local broadcast 19:32:59 <TrueBrain> friends-only and public ALSO works on LAN 19:33:19 <TrueBrain> basically, no matter what your mode is, LAN discovery works 19:33:43 *** Wormnest has quit IRC 19:33:47 <frosch123> but "add server via ip" also exists, and works for "private" 19:34:04 <TrueBrain> yeah, okay: LAN or direct port forwarding, lol 19:34:09 <TrueBrain> it is the same ofc, technically seen 19:34:53 <TrueBrain> FLHerne: you should only have a connection to 51.195.151.229 now 19:35:02 <TrueBrain> (Well, 2 connections, one on 12122 and one on 12120) 19:36:24 <frosch123> hmm, what if the "enter invite code" would also accept "ip:port". then regular joes do not need to know the difference. the server owner can decide whether to use the game coordinator or whether to use port forwarding 19:36:42 <TrueBrain> frosch123: sure, we basically did that internally already 19:36:50 <TrueBrain> invite codes internally have a + prefix 19:37:05 <TrueBrain> you can see that in the server listing too 19:37:16 <TrueBrain> might as well make it one button that accepts both serialization methods 19:37:57 <TrueBrain> anyway, so "private" means we don't help with setting up the networking. "friends-only" means we help, but don't list you public, and "public", well .. duh :) 19:38:01 <FLHerne> TrueBrain: That seems right 19:38:05 <FLHerne> 20:36:45.322510 IP bananas-1.cdn.openttd.org.12120 > perran.54480: Flags [P.], seq 5429:5440, ack 49, win 509, options [nop,nop,TS val 860093206 ecr 918936467], length 11 19:38:11 <FLHerne> ^ repeat many times 19:38:11 <TrueBrain> I have no clue if those words work, or we should have 2 settings etc .. but that is what I did now :P 19:38:14 <TrueBrain> FLHerne: nice :) 19:38:18 <TrueBrain> okay, so TURN works fine too 19:38:22 <TrueBrain> tnx! 19:38:40 <frosch123> when only the server needs to know the difference between private and friends-only, we can rename "private" to "do not track me", and display a message about required port forwarding 19:38:50 <FLHerne> I'm a bit surprised just how many packets I'm being sent 19:39:06 <TrueBrain> FLHerne: "continue to this frame" packet 19:39:08 <TrueBrain> 30 a second I believe 19:39:13 <TrueBrain> or 15, never really sure honestly 19:39:15 <FLHerne> It's several per second continuously, despite no-one doing anything 19:39:19 <FLHerne> Yeah, that would do it 19:39:23 <TrueBrain> lockstep :) 19:39:31 <FLHerne> Is that really necessary? It seems excessive :p 19:39:41 <TrueBrain> frosch123: "private" sounded better to me than "do not track", but yes, that is what it does, so .. 19:39:53 <TrueBrain> FLHerne: we do not do predictive gamestate 19:39:59 <TrueBrain> so yes, that is pretty much what makes the game tick 19:40:06 <TrueBrain> don't worry, the packets are < 20 bytes 19:40:19 <TrueBrain> @base 16 10 b 19:40:20 <DorpsGek> TrueBrain: 11 19:40:22 <TrueBrain> they are 11 19:40:24 <TrueBrain> + IP header, ofc 19:40:50 <FLHerne> Yes, it says 'length 11' in tcpdump 19:41:08 <TrueBrain> so in reality, it really is nothing :) 19:41:43 <TrueBrain> but this is what lockstep is .. 1 person constantly yelling to the rest to make a step forward :) 19:41:50 <TrueBrain> REALLY LOUD 19:42:53 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding https://git.io/JOk7C 19:43:00 <TrueBrain> lets make the CI happy now 19:44:01 <TrueBrain> frosch123: reason I picked "private" btw is because of "private window" in browsers :P I think "do not track" is too much in your face .. something in between those two might work better :) 19:44:21 *** WormnestAndroid has quit IRC 19:44:46 <TrueBrain> we can also name it "Local". As with any game, if you port-forward, local becomes global, but .. that really is a user issue, I could argue :) 19:45:02 <TrueBrain> I wonder what other games do 19:45:13 <peter1138> Steam SDK ;( 19:46:30 <FLHerne> Is port-forwarding still a thing with IPv6? 19:46:51 <FLHerne> Shouldn't be any need for NAT 19:46:51 <TrueBrain> Xbox calls it Local Play, Online Play with friends and Online Play through a list of game sessions 19:47:37 <peter1138> FLHerne, technically it could be done, but I don't think anything implements it because there's no point. 19:47:40 <TrueBrain> https://satisfactory.fandom.com/wiki/Multiplayer#Session_privacy 19:47:44 <TrueBrain> Friends Only and Private 19:47:54 <frosch123> ok, fair, convinced :) 19:48:10 <TrueBrain> but their "Private" is "Invite only" 19:48:10 <TrueBrain> lol 19:48:49 <TrueBrain> well, I agree that private is weird, as it suggests you cannot join it at all 19:48:56 <TrueBrain> so I think "Local" or something is better 19:50:06 <TrueBrain> well, one could argue that it is private, as you need to know the IP 19:50:15 <TrueBrain> meh :D 19:50:22 <frosch123> hmm, so when we have a social api... would we also have some "all your friends are invited"? 19:50:28 *** WormnestAndroid has joined #openttd 19:50:37 <TrueBrain> how do you mean? 19:51:39 <frosch123> like satisfactory: "keep the invite code secret to the server owner" vs "actively send the invite code to all your firends, so they can directly join without exchange of the invite code on other ways" 19:52:00 <TrueBrain> ah, yes, "friends-only" is designed for the social APIs 19:52:20 <TrueBrain> so on Steam if you click Join Game on a friend, and he is "friends-only" or higher, it will exchange the invite code 19:52:39 <TrueBrain> the manual entering of invite codes .. that is just a solution for the non-socials :D 19:52:41 <frosch123> so "public", "friends only", "invite only", "local"? 19:53:12 <TrueBrain> well, what Satisfactory does, from what I understand, is that the server can only invite people in 19:53:23 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #9219: Fix: Apply unscaled padding to Viewport inside WWT_INSET. https://git.io/J35mG 19:53:29 <TrueBrain> that I do not see often, honestly, in games 19:53:39 <TrueBrain> most games these days, if you are "friends-only", anyone on your friends-list can join 19:53:54 <TrueBrain> but sure, we can add a mode, if the social APIs happen, that this is not the case 19:54:19 <TrueBrain> but that is tight to the existence of social APIs :P Without those there is no difference between "friends-only" and "invite-only" , right? 19:54:30 <frosch123> yes, but then you would have to call the current mode "invite onyl" 19:54:41 <frosch123> or you have to change menaing later again 19:54:45 <TrueBrain> sure, I can work with that 19:55:50 <frosch123> btw. did you understand why the gog api docs are not public? 19:56:02 <TrueBrain> no? Are they? 19:56:18 <frosch123> the link they gave us requires login 19:56:26 <frosch123> i never did, so i do not know what is behind it 19:56:28 <TrueBrain> ah .. unexpected 19:56:37 <TrueBrain> login is in 1password if you really want to know :) 19:56:52 <TrueBrain> https://docs.gog.com/developer-portal/ <- but that just works for me 19:57:12 <TrueBrain> https://docs.gog.com/galaxyapi/ for the SDK 19:57:23 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9219: Fix: Apply unscaled padding to Viewport inside WWT_INSET. https://git.io/J35m1 19:57:47 <frosch123> ok, maybe the login is then for downloading the headers or something 19:57:48 <peter1138> The magic of pictures 19:59:33 <TrueBrain> would it be weird if I make the order: local, public, invite only, friends only? 19:59:41 <TrueBrain> otherwise later adding a setting would be really hard :P 19:59:55 <frosch123> the gui order does not need to match the enum order 20:00:08 <TrueBrain> it does :( 20:00:12 <TrueBrain> they are mapped on each other 20:00:39 <frosch123> the config file uses strings 20:00:49 <frosch123> so, actually, where do your enum values matter? 20:00:53 <TrueBrain> huh? 20:00:54 <frosch123> are they sent over the network? 20:01:03 *** iSoSyS has joined #openttd 20:01:04 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #9219: Fix: Apply unscaled padding to Viewport inside WWT_INSET. https://git.io/J35YU 20:01:10 <TrueBrain> pretty sure we are not talking about the same thing now :D 20:01:20 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #9219: Fix: Apply unscaled padding to Viewport inside WWT_INSET. https://git.io/J37hk 20:01:30 <TrueBrain> https://github.com/OpenTTD/OpenTTD/pull/9017/commits/937bbef09d21660ddd65aafa7627718d4693245c shows the important bits 20:01:38 <TrueBrain> the config uses enum values 20:01:42 <TrueBrain> they are also sent over the network 20:01:49 <TrueBrain> and the dropdown uses the same order 20:02:01 <frosch123> ok, so you send it over the network 20:02:11 <TrueBrain> that is not my biggest problem, honestly 20:02:16 <TrueBrain> for that we have protocol revisions 20:02:32 <TrueBrain> but the config really does not store strings :P 20:02:37 <TrueBrain> do we have that for any config setting? 20:03:09 <TrueBrain> "sometimes", is the answer, it seems 20:03:16 *** andythenorth has quit IRC 20:03:17 <TrueBrain> how does that work ... 20:03:43 <frosch123> _OMANY and full = 20:04:07 <TrueBrain> as that is a whole lot more friendly than server_game_type = 1 20:04:12 <TrueBrain> server_game_type = invite-only 20:04:15 <TrueBrain> sounds better to me :) 20:04:40 <frosch123> changing the order in the dropdown menu is not much harder 20:04:57 <TrueBrain> it now is a one-on-one mapping, so some glue would be needed I guess 20:05:51 <frosch123> just use ShowDropDownList instead of ShowDropDownMenu 20:06:20 <frosch123> DropDownList manages pairs of string and "values" 20:06:39 *** Wormnest has joined #openttd 20:07:47 <TrueBrain> and with DParam you set the value? Or the index? 20:08:29 <frosch123> neither :p DParam is the stringid 20:08:42 <frosch123> it's not related to the order of things in the dropdown 20:08:43 <TrueBrain> hmm ... 20:09:27 <frosch123> to reorder the dropdown, you only need to change the ShowDropDownMenu call, the rest stays the same 20:09:45 <frosch123> sometimes we sort dropdown alphabetically 20:09:45 <TrueBrain> except there is this "selected" parameter :D 20:09:53 <frosch123> which means different order per language 20:10:13 <frosch123> TrueBrain: yes, but "selected" is not "position" 20:10:30 <TrueBrain> what is selected? 20:10:37 <frosch123> DropDownList is a list of pairs (StringId, enum value) 20:10:41 <TrueBrain> what it is not is not really helping me :P 20:11:02 <frosch123> you can sort the list whatever, you still get proper enum-values everywhere 20:11:16 <frosch123> so "selected" remains the enum-value 20:11:30 <TrueBrain> okay .. yeah, what is rather unclear about all these widgets 20:11:32 <TrueBrain> when to give what value 20:11:36 <TrueBrain> DParam is the StringID you say 20:11:38 <frosch123> and OnDropDownSelected (or what it's called) will also get the enum value 20:11:40 <TrueBrain> and selected is the enum-value 20:11:48 <TrueBrain> it most likely all makes sense, but it is not "obvious" :) 20:12:08 <frosch123> TrueBrain: "case WID_CL_SERVER_VISIBILITY" contains no "SetDParam" 20:12:34 <TrueBrain> other parts of the dropdown initialization do 20:12:37 <frosch123> no idea why you started with that 20:12:44 <TrueBrain> and just because you give me a fish, doesn't mean I don't want to learn to fish :) 20:12:56 <frosch123> brrr... fish 20:13:21 <frosch123> i do not live at the coast, i do not eat fish :p 20:13:47 <frosch123> you can keep all your crabs to yourself 20:14:58 <frosch123> anyway, the dropdown widget in the window is unrelated to the dropdown window with the list 20:15:10 <frosch123> sorting only matters to the list 20:15:32 <frosch123> and the only place that deals with the list, is ShowDropDownMenu 20:15:55 <TrueBrain> we will see if the words you spoke will match my expectations :P 20:20:39 <Timberwolf> Too much? :) https://i.imgur.com/whMduqH.mp4 20:20:53 <TrueBrain> what game are you playing? :P 20:21:25 <peter1138> Nice 20:21:58 <michi_cc> Timberwolf: Your ships itself look really good, but as there isn't any wake effect, they kinda look a bit too floaty. 20:22:00 <DorpsGek> [OpenTTD/OpenTTD] kloczek opened issue #9220: 1.11.2: test suite is failing https://git.io/J35st 20:22:25 <Timberwolf> Yes, I'm tempted to make some tooling to automate the wake effects. 20:22:48 <TrueBrain> awh, console doesn't understand OMANY 20:22:48 <TrueBrain> sad 20:23:12 <michi_cc> And the video really shows that with 60fps we need more and smaller motion updates :) 20:23:26 <TrueBrain> subpixels!! 20:24:04 <peter1138> Heh, regression test fails because no graphics installed... 20:24:22 <peter1138> michi_cc, yup... it's easy, just increase the subtile size ;) 20:24:57 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #9220: 1.11.2: test suite is failing https://git.io/J35st 20:28:25 <peter1138> patches be getting biggggggggggger 20:28:43 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #9220: 1.11.2: test suite is failing https://git.io/J35st 20:34:14 <TrueBrain> ugh, that "add server" has the previous content makes no sense what-so-ever 20:34:22 <TrueBrain> it is already in the list, the last content 20:34:28 <TrueBrain> and now I just need to delete what is there every time 20:38:43 <TrueBrain> ugh, SetDParamStr doesn't keep the std::string around .. that can be a bit annoying :D 20:38:43 <TrueBrain> lol 20:39:18 <DorpsGek> [OpenTTD/OpenTTD] kloczek opened issue #9221: 1.11.2: compile time warnings https://git.io/J35nE 20:40:11 <TrueBrain> and full recompiles every change is also annoying :) 20:43:50 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #9221: 1.11.2: compile time warnings https://git.io/J35nE 20:43:53 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed issue #9221: 1.11.2: compile time warnings https://git.io/J35nE 20:45:56 <Rubidium> TrueBrain: the same problem happens with the char* variant of SetDParamStr 20:46:10 <TrueBrain> Rubidium: sure, but that was more obvious that it wouldn't work :) 20:46:13 <TrueBrain> now it is hiding a bit more :P 20:46:20 <TrueBrain> so it took me a crash to find out :D 20:49:58 <TrueBrain> hmm .. showing a + conditionally is more annoying than I was hoping for :D 20:49:59 <TrueBrain> lol 20:50:52 *** iSoSyS has quit IRC 20:50:59 <frosch123> i was actually surprised that the invite codes were added to the list. but i guess it's easier to rejoin after you dropped 20:51:11 <TrueBrain> and I want to make them semi-persistent 20:51:15 <TrueBrain> still have to figure out how exactly 20:51:26 <TrueBrain> as it would be very annoying otherwise, I think :P 20:51:45 <TrueBrain> well, invite-only should be different every game, I guess 20:51:48 <TrueBrain> just public .. hmm 20:52:10 <frosch123> didn't you want to add a "rejoin last server" button? 20:52:21 <TrueBrain> yup 20:52:30 <frosch123> then you wouln't need to show the code in the list 20:52:42 <TrueBrain> we aren't there yet, not even close :) 20:52:44 <frosch123> and you only need to store one code in the config 20:52:52 <TrueBrain> currently, the bottom server 20:52:55 <TrueBrain> is your "last joined" 20:52:59 <TrueBrain> and it is always also added to the list 20:53:06 <TrueBrain> so .. yeah .. breaking the current UX is worse, I guestimated 20:56:18 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding https://git.io/JOk7C 20:56:24 <TrueBrain> okay .. GUI now shows "+<invitecode>" consistently 20:56:31 <TrueBrain> add server accepts both ip:port or +invitecode 20:56:40 <TrueBrain> "use invite code" button is gone 20:57:03 <TrueBrain> and server-type dropdown shows local / invite-only / public (but enum is local / public / invite-only) 20:57:25 <frosch123> magic :) 20:57:43 *** Samu has quit IRC 20:57:53 <TrueBrain> well, was a bit more code than I would liked, but .. what-ever, it looks a lot better :) 20:58:14 <TrueBrain> anyway, frosch123 , I also kinda would like to allow "+reddit1" to be a valid invite code 20:58:59 <TrueBrain> initially I made all invite-codes non-sticky, as in, the next restart they were all gone, manually added or not .. but .. now I first need to build a decent game-coordinator to see what is possible and not :P 20:59:01 <TrueBrain> no clue yet :D 20:59:11 *** Wormnest has quit IRC 21:00:41 <frosch123> uff, so we will see "+bestserverever" and "+hard_no_town_authority_no_inflation_no_infracost" 21:00:41 <TrueBrain> (I am stealing this stuff from Discord btw .. their invite links are normally random, but if you register with them, you can get a flavoured one :P) 21:01:00 <TrueBrain> no, if we do it, it will be via some vetting system 21:01:11 <TrueBrain> as it would also require a cookie of some sorts 21:01:33 <TrueBrain> I just don't know if it is a good idea or not .. but I can imagine: they create a PR in some GitHub repo to request a code linked to a public IP:port 21:02:05 <frosch123> sounds like server packages on bananas :p 21:02:18 <TrueBrain> ha, that is a cheap solution :D 21:02:26 <frosch123> but stupid :p 21:02:40 <TrueBrain> but in my head, such codes should only be given to public servers 21:02:47 <TrueBrain> that also makes validation really easy 21:03:02 <TrueBrain> (otherwise someone can "steal" +reddit1 .. that would be bad :P) 21:03:28 <frosch123> are server names currently checked for uniqueness? i don't know :p 21:03:36 <TrueBrain> doubt it 21:04:08 <frosch123> i don't see the point in public server + invite code 21:04:19 <frosch123> sounds like a "verified server" 21:04:25 <TrueBrain> say, you joined reddit via the game listing 21:04:28 <TrueBrain> you liked what you saw 21:04:32 <TrueBrain> the server restarts 21:04:36 <TrueBrain> now it is no longer in your favorites 21:04:42 <TrueBrain> as the invite code is now invalid 21:04:52 <TrueBrain> that is the use-case I want to avoid 21:04:59 <TrueBrain> so they have to be sticky for sure 21:05:06 <TrueBrain> and my mind just drifted off to custom invite codes .. 21:05:11 <TrueBrain> but that is not for the first version ;) 21:07:52 <TrueBrain> in my head, a public server should keep the same invite code for as long as possible. For invite-only games it should be for the same savegame. 21:08:20 <TrueBrain> invite-only: I am playing together with you, you go to bed, next morning, you start the game again .. I just want to be able to join the last server and go 21:08:32 <TrueBrain> but if you start a new game .. that shouldn't be possible anymore 21:08:32 <frosch123> https://github.com/OpenTTD/OpenTTD/blob/master/src/viewport.cpp#L271 <- off, how does that work and not even trigger a warning? 21:08:47 <FLHerne> Apropos of nothing, can cargodist for passengers be made the default? It's better :p 21:09:09 <frosch123> TrueBrain: so you want "give my server a unique id to make it trackable" :p 21:09:27 <TrueBrain> and I want to send it to an analytics platform too if that is okay :P 21:09:29 <TrueBrain> no, you silly :) 21:09:46 <TrueBrain> but I do want to give some nice usability as long as we don't have social APIs working 21:11:49 <TrueBrain> in my head there is also a button next to invite-code to get a new one .. just in case someone posted it on your stream and now every dipshit is joining :D 21:14:53 <TrueBrain> either way .. just a few more bits and ends to fix for the PR ... after that, I need to write the GC .. that will be fun :P 21:15:30 <frosch123> i always read garbage collection :p 21:15:40 <TrueBrain> I know :D 21:16:04 <TrueBrain> I need to find a database that works for this kind of load .. that alone is an interesting problem 21:16:22 <frosch123> did you also know that c++11 defined some "basic support for garbage collection", but no compiler supported it ever 21:16:39 <TrueBrain> lolz 21:16:41 <TrueBrain> why ... 21:16:43 <TrueBrain> would they ... 21:16:44 <TrueBrain> do that?! 21:17:09 <frosch123> c++11 is just "all ideas from 98 to 11" 21:17:25 <frosch123> not everything that was popular in 99 was still popular in 11 21:23:05 <TrueBrain> hmm .. a scalable game coordinator really is going to be somewhat of a challenge :D 21:23:23 <TrueBrain> well, without blowing up our AWS bill, ofc 21:23:50 <frosch123> hmm, what makes it more expensive than the master server? 21:23:57 <TrueBrain> more complex logic 21:24:04 <TrueBrain> connects now don't go via the master server 21:24:19 <TrueBrain> and a connect is not simple. Lot of bookkeeping 21:24:28 <TrueBrain> (first try scenario A, try B, try C, ..) 21:24:33 <TrueBrain> and all async too .. 21:25:38 <TrueBrain> https://github.com/OpenTTD/OpenTTD/blob/eb88276b2c79183d2ca65d1f9b2d7914620529f9/src/network/network_coordinator.h#L19 <- that logic makes it more expensive :) 21:29:41 <TrueBrain> I did make the whole protocol reactive, as in: nothing has to do wait-loops to check if something changed 21:29:54 <TrueBrain> both the server/client as the GC only have to do an action if a packet is received 21:30:40 <TrueBrain> meh, problem for another day! 21:38:26 *** sla_ro|master has quit IRC 21:40:01 *** nielsm has quit IRC 21:46:51 *** Wormnest has joined #openttd 21:46:52 <peter1138> Is it me or is the refresh rate on the intro screen not full speed? 21:47:01 *** arikover has quit IRC 21:47:11 <peter1138> Vehicles are moving but juddery and skip. 21:48:12 <peter1138> If I move (and keep moving) the intro window it goes to normal speed. 21:49:05 <peter1138> Fine with HW accel off. 21:52:36 <FLHerne> Ok for me with 1.11.2 21:54:23 *** tokai|noir has joined #openttd 21:54:23 *** ChanServ sets mode: +v tokai|noir 21:55:40 <peter1138> I guess some hw accel / vsync / nvidia shenanigans. 22:01:16 *** tokai has quit IRC 22:04:22 <glx> https://github.com/glx22/OpenTTD/pull/13/checks?check_run_id=2536278079#step:4:44 <-- better ? 22:05:23 <TrueBrain> How does it selfreport? :D 22:05:48 <TrueBrain> Does that also means it van never be successful? :) 22:06:01 <TrueBrain> But yeah, looks pretty! 22:06:08 <glx> it does self report here because I'm using an old run 22:06:29 <glx> hardcoded test ;) 22:06:46 <TrueBrain> :D 22:10:24 <glx> pushing a real run 22:12:47 <glx> I need to use a harder solution because I didn't want to output uneeded fields in logs 22:19:29 <glx> https://github.com/glx22/OpenTTD/pull/13/checks?check_run_id=2536330687 <-- no self report :) 22:21:55 <DorpsGek> [OpenTTD/OpenTTD] glx22 updated pull request #9217: Add: [Actions] Check CI annotations to detect compile warnings https://git.io/J3Q7w 22:22:07 *** frosch123 has quit IRC 22:27:29 <DorpsGek> [OpenTTD/OpenTTD] glx22 updated pull request #9217: Add: [Actions] Check CI annotations to detect compile warnings https://git.io/J3Q7w 22:27:39 <glx> forgot to add the always() 22:28:50 *** gelignite has quit IRC 22:49:55 <DorpsGek> [OpenTTD/OpenTTD] glx22 updated pull request #9217: Add: [Actions] Check CI annotations to detect compile warnings https://git.io/J3Q7w 22:53:16 *** tokai|noir has quit IRC 22:54:49 *** tokai has joined #openttd 22:54:49 *** ChanServ sets mode: +v tokai 23:00:18 *** tokai|noir has joined #openttd 23:00:18 *** ChanServ sets mode: +v tokai|noir 23:05:13 *** tokai has quit IRC 23:06:25 *** tokai has joined #openttd 23:06:25 *** ChanServ sets mode: +v tokai 23:11:09 *** tokai|noir has quit IRC 23:18:36 <DorpsGek> [OpenTTD/OpenTTD] katafrakt opened pull request #9222: Fix to Polish town names generation https://git.io/J35K6 23:26:44 *** tokai has quit IRC 23:27:07 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #9222: Fix to Polish town names generation https://git.io/J35i5 23:34:33 *** tokai has joined #openttd 23:34:33 *** ChanServ sets mode: +v tokai 23:53:50 *** Progman has quit IRC