Times are UTC Toggle Colours
00:09:56 *** Progman has quit IRC 00:21:49 <DorpsGek> [OpenTTD/OpenTTD] LC-Zorg commented on pull request #8700: Change: Recolour graph windows to brown https://git.io/Jqkx7 00:27:01 <TrueBrain> All I want to say: lol 00:31:23 <FLHerne> The whole thing is literally a bikeshed-colouring discussion, you expect useful comments? 00:33:13 <FLHerne> I think 2) and 3) are somewhat valid, the choice of windows to make brown seems pretty arbitrary 00:33:35 <FLHerne> But deferring to grf is lol, and adding more settings is extremely lol 00:33:50 <FLHerne> [sleep 00:33:51 <FLHerne> ] 00:44:21 <milek7> newgrf-based skins? :P 01:15:22 *** Wuzzy has quit IRC 01:26:11 *** Flygon has joined #openttd 01:28:45 *** WormnestAndroid has quit IRC 01:28:59 *** WormnestAndroid has joined #openttd 01:53:18 *** didac has quit IRC 02:06:20 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #8700: Change: Recolour graph windows to brown https://git.io/JqIfI 02:25:12 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 02:25:39 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqIJl 02:27:04 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqIJR 02:29:54 *** HerzogDeXtEr has quit IRC 02:31:05 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 03:10:52 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 03:12:30 *** daspork has quit IRC 03:13:02 *** daspork has joined #openttd 03:19:26 *** APTX has quit IRC 03:19:29 *** APTX has joined #openttd 03:20:05 *** Wormnest has quit IRC 03:33:54 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 03:49:29 *** Smedles has quit IRC 03:49:41 *** Smedles has joined #openttd 03:58:20 *** D-HUND has joined #openttd 04:00:42 *** argoneus has quit IRC 04:00:47 *** argoneus has joined #openttd 04:01:41 *** debdog has quit IRC 04:45:23 *** snail_UES_ has quit IRC 05:11:21 *** virtualrandomnumber has joined #openttd 05:11:49 *** virtualrandomnumber has quit IRC 06:14:21 *** supermop_Home has quit IRC 06:49:27 *** erle- has joined #openttd 07:19:59 *** sla_ro|master has joined #openttd 07:56:51 *** FLHerne has quit IRC 08:27:15 *** Wolf01 has joined #openttd 08:38:37 <DorpsGek> [OpenTTD/team] HAJDog247 opened issue #156: [en_US] Translator access request https://git.io/JqIcY 08:44:32 <DorpsGek> [OpenTTD/team] kemalyuk opened issue #157: [tr_TR] Translator access request https://git.io/JqIcK 08:48:53 *** HerzogDeXtEr has joined #openttd 08:49:43 <Wolf01> Bah... developers laziness "you must purchase this app in all the app stores to enable the pro features, I did that to take advantage of the stores licensing system instead of developing my own 08:55:35 <Wolf01> Che poi spero una cosa, che lo aggiornino ad android 11 visto che l'hanno promesso, intanto mi mancano anche le patch di sicurezza più recenti 08:56:00 *** dihedral has quit IRC 08:56:04 <Wolf01> Wtf wrong chat 08:56:11 *** dihedral has joined #openttd 09:07:38 *** andythenorth has joined #openttd 09:13:41 *** Venemo has joined #openttd 09:33:25 <DorpsGek> [OpenTTD/OpenTTD] nielsmh commented on pull request #8816: Add: GUI option to select video driver. https://git.io/JqIRm 09:36:20 *** FLHerne has joined #openttd 09:55:19 *** ttech2 has joined #openttd 09:58:21 *** Ttech has quit IRC 09:59:45 <Timberwolf> I ordered a new webcam last week. 10:00:29 <TrueBrain> so you too will be in fullHD! 10:01:54 <Timberwolf> All the UK listings were either scalpers going, "£80 for this basic Logitech C270" or "delivery 2022", so I ordered direct from Hong Kong. 10:02:12 <Timberwolf> Arrived 4 days later with duty paid by the manufacturer :/ 10:02:56 <andythenorth> brexit 10:05:14 <Timberwolf> Definitely for Logitech, even their own store has a warning along the lines of, "so... er... we thought we'd be covered by having Logitech EU SA. 10:06:49 <Timberwolf> I wonder if the prevalence of knockoffs on Amazon is sellers realising you can sell a genuine e.g. C920 with a tiny profit margin, or a copy of a C920 for about £20 less with a huge margin (because the wholesale price out of Shenzhen will be about ) 10:08:01 <Venemo> actually it's pretty impressive that it arrived from HK in 4 days 10:09:13 <Timberwolf> Yeah, I was expected it to be 3 weeks via sea. 10:09:28 *** Wuzzy has joined #openttd 10:10:33 <Timberwolf> Logistics chain must have been set up by an, "aircraft are the best, they make the most money" player. 10:12:48 *** Samu has joined #openttd 10:14:30 <Venemo> :D 10:15:56 * Timberwolf is now imagining calling DHL customer support and getting a response of, "so Düsseldorf Steel Mill shares platforms for loading and unloading due to space constraints, and you wouldn't think that would affect the road vehicle route from Northampton Woods to London East, but..." 10:17:27 <FLHerne> hahaha 10:23:59 <NGC3982> i love geoguessr so much 10:35:50 <TrueBrain> so what is on the agenda today? 10:36:18 <andythenorth> meetings 10:36:44 * andythenorth BBL 10:36:49 <andythenorth> newgrf spec! 10:36:52 * andythenorth BBL 10:37:37 *** andythenorth has quit IRC 10:43:02 <TrueBrain> Eddi|zuHause: https://github.com/OpenTTD/OpenTTD/pull/8744 <- friendly reminder there are some actions for you to take on this PR 10:44:15 <Eddi|zuHause> alright, i'll look at it 10:44:31 <Eddi|zuHause> must have missed this 10:44:39 <TrueBrain> hence the friendly reminder :) 10:52:40 <Eddi|zuHause> hm... competitor's (singular) or competitors' (plural)? 10:54:26 <DorpsGek> [OpenTTD/OpenTTD] Eddi-z updated pull request #8744: Change: Clarify what effect town interactions have https://git.io/JtFtl 10:55:39 <DorpsGek> [OpenTTD/OpenTTD] Eddi-z updated pull request #8744: Change: Clarify what effect town interactions have https://git.io/JtFtl 10:55:51 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8704: Change: Move toolbar button for cargo payment graph under industries https://git.io/JqIaO 10:55:54 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed pull request #8704: Change: Move toolbar button for cargo payment graph under industries https://git.io/JtSHC 10:59:19 <TrueBrain> Feature: Build train locomotive filter <- that sounds like an odd commit message 10:59:24 <TrueBrain> couldn't figure out what it did till I read the PR 10:59:39 <TrueBrain> "Feature: filter on engines only in build train window" ? 10:59:50 <TrueBrain> and maybe "Add" instead of "Feature", I guess 11:01:06 <TrueBrain> Add: filter for "engines only" when building new train 11:01:06 <TrueBrain> ? 11:02:13 <Eddi|zuHause> Add: Build train window can filter for "engines only" 11:02:35 <LordAro> Eddi|zuHause: competitors' is correct, i think 11:02:57 <Eddi|zuHause> LordAro: that's what i thought as well 11:03:16 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8733: Feature: Build train locomotive filter https://git.io/Jt7eH 11:03:42 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8733: Feature: Build train locomotive filter https://git.io/JqIa6 11:04:05 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #8744: Change: Clarify what effect town interactions have https://git.io/JqIaP 11:05:33 <michi_cc> TrueBrain: Do you aim at 1.11 for #8741? 11:05:45 <TrueBrain> michi_cc: no 11:06:15 <TrueBrain> I think we did enough for 1.11, honestly :P 11:06:29 <TrueBrain> why do you ask? 11:06:50 <LordAro> well it would help mitigate the GL issues, if we can't manage to solve them 11:07:03 <TrueBrain> it would not mitigate it, sadly 11:07:06 <TrueBrain> 100ms for a draw-tick 11:07:09 <TrueBrain> even threading doesn't solve that 11:07:14 <LordAro> ah, true 11:07:19 <michi_cc> Because I wondering whether I should clone that PR :) 11:07:23 <TrueBrain> the option to disable OpenGL is the best method 11:07:32 <TrueBrain> michi_cc: clone for what ;) 11:08:18 <LordAro> perhaps someone should prepare a PR for disabling opengl, for when we branch release/1.11 11:08:41 <Eddi|zuHause> does it make sense to put a driver-selector-dropdown into the game settings window? 11:08:42 <TrueBrain> you haven't looked in the PR list have you? :P 11:08:52 <Eddi|zuHause> or is that too "advanced"? 11:09:10 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8790: Slowdowns when scrolling on win32-opengl video driver https://git.io/JthtA 11:09:36 <Eddi|zuHause> "video driver: [auto|sdl|sdl-opengl|...]", same for sound, music, ...? 11:09:48 <TrueBrain> and blitter, even 11:10:37 <michi_cc> Eddi|zuHause: #8816, has some annoying limitations though. 11:10:41 <TrueBrain> michi_cc: I mainly ask to avoid me picking up something you are also working on :P 11:11:12 <michi_cc> TrueBrain: You did not mark #8471 it as draft. 11:11:37 <TrueBrain> michi_cc: it isn't a draft; but I wouldn't merge it for 1.11 :) 11:11:41 <TrueBrain> and we haven't branched yet :P 11:11:54 <TrueBrain> it is done, it is working, it is tested. So it should be good to go 11:12:21 <TrueBrain> (well, it needs a review, ofc, so who knows what that shows) 11:12:54 <TrueBrain> I just think it has a higher chance than normal that it break things, so we shouldn't put it in 1.11, but in 1.12 instead 11:12:58 <TrueBrain> so I cannot wait till we branch :D 11:14:34 <LordAro> what's stopping us from branch? :p 11:14:37 <LordAro> +ing 11:14:47 <TrueBrain> a few more things to do first 11:14:53 <TrueBrain> as I don't want to backport those :) 11:15:02 <LordAro> :) 11:15:13 <TrueBrain> but that is also why I tried to understand what michi_cc was up to, but he is talking in riddles :D 11:15:16 <TrueBrain> its fine :) 11:15:23 <TrueBrain> but branching by the end of the week or something? 11:15:29 <LordAro> absolutely 11:15:48 <LordAro> need to push more people to do titlegames 11:15:53 <LordAro> 2 is... disappointing 11:16:20 <TrueBrain> make a news post? 11:16:21 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8812: Add: Option to (dis-)allow accelerated video drivers. https://git.io/JqIV3 11:16:39 <TrueBrain> it was posted again on Discord and Reddit already 11:17:54 *** spnda has joined #openttd 11:18:01 <michi_cc> I'd seriously consider including #8471. We've already broken enough stuff that one thing more won't break the camel's back which makes it a prime opportunity :D 11:18:18 <TrueBrain> you mean 8741? 11:18:30 <TrueBrain> michi_cc: main issue for me is that beta2 is already out of the door :P 11:18:41 <LordAro> no, the already-merged Samu PR :p 11:19:03 <TrueBrain> michi_cc: in that case, review it plz 11:19:20 <TrueBrain> and test, if you can, especially screenshots and blitter changes :D 11:19:27 <TrueBrain> the removal of ReleaseBlitterLock is a bit odd 11:20:28 <TrueBrain> owh, I do have to check bootstrap, that might be broken again 11:20:54 <spnda> TrueBrain: You can test SDL on Windows/Linux right? I've never tested the SDL2 implementation of 8813 (also would be nice to know how for the future). 11:21:18 <TrueBrain> just move the SDL2 detection line in CMakeLists.txt to outside the "NOT WIN32" block 11:21:24 <TrueBrain> and have it installed via vcpkg 11:21:32 <TrueBrain> it will pick it up on Windows just fine, and you can use it just fine 11:21:32 <spnda> oh that is quite obvious... thx 11:21:37 <TrueBrain> it really just works, without any issues 11:21:52 <TrueBrain> we just don't do it, as people got confused and were using SDL while GDI is faster in 90% of the cases 11:22:04 <spnda> Also, I noticed yesterday I can review stuff on the OpenTTD repo... is that wanted? 11:22:13 <TrueBrain> everyone can in any GitHub repo 11:22:13 <spnda> review prs that is 11:22:20 <spnda> oh, never noticed 11:22:23 <TrueBrain> only your review doesn't allow merging 11:22:38 <LordAro> it's just that an approve/request changes has no meaning :p 11:22:40 <TrueBrain> we welcome anyone with feedback, basically 11:22:43 <LordAro> ^ 11:24:04 <TrueBrain> cool, I crashed the X11 server 11:26:43 <spnda> if I just add a global find_package(SDL2) will it really automatically select the SDL2 driver? 11:27:02 <TrueBrain> no, you have to use "-v sdl" or "-v sdl-opengl" when starting OpenTTD after 11:27:10 <TrueBrain> win32 driver has priority 11:28:05 <LordAro> TrueBrain: if it has priority, why is it "locked away" in cmake then? 11:28:25 <TrueBrain> well, mostly, it bloats the binary for no good reason 11:28:36 <TrueBrain> and there were issues with compiling SDL static for a while 11:28:41 <TrueBrain> and bundling it via a DLL sucks 11:28:42 <LordAro> doesn't particularly matter for self-compiled binaries 11:28:56 <LordAro> i'm not suggesting we build official binaries with it linked in 11:29:09 <TrueBrain> absolutely; I wouldn't know who made the choice in the end 11:29:15 <TrueBrain> I can only tell you the events leading up to it :) 11:29:18 <LordAro> :) 11:29:31 <LordAro> well it was likely you or glx ;) 11:29:51 <LordAro> or older, i suppose, if configure did the same 11:29:56 <TrueBrain> also, not having an option to get some diagnostic information from OpenTTD doesn't help 11:29:56 <TrueBrain> now we know: Windows -> win32 driver 11:30:02 <TrueBrain> otherwise .. who knows what the user had compiled :P 11:30:08 <TrueBrain> with OpenGL, this is already a bit of an issue 11:30:16 <TrueBrain> so we really should add something to give us some details on issues 11:30:24 <TrueBrain> OS, video driver, music driver, blitter, ... 11:30:27 <spnda> ayyy ok sdl2 implementation doesn't work. good to know 11:30:34 <LordAro> mm, getting some system information into the crashlog and/or console command would be an excellent help 11:31:01 <TrueBrain> I was thinking of a button that creates a "diagnostic.log" or what-ever 11:31:07 <LordAro> that too 11:31:07 <TrueBrain> crash.log already has most information 11:31:13 <TrueBrain> so just a smaller version of that 11:31:57 <TrueBrain> currently mainly missing what GPU is installed, I think 11:32:00 <TrueBrain> that would also help now :D 11:32:05 <spnda> or just generally have a latest.log or something with all sorts of log output? 11:37:44 <michi_cc> TrueBrain: Switching blitters on win32 is broken. SwitchNewGRFBlitter ends up in VideoDriver_Win32Base::MakeWindow which tries to send a window message on the main thread that is blocked waiting on the mutex. Not sure yet if the blocking call is even needed, but I'll have to think more on that. 11:39:59 <TrueBrain> Nice catch! 11:52:13 *** WormnestAndroid has quit IRC 11:52:23 <TrueBrain> okay, I have an idea for the accelerated graphics thing, lets see .. 11:53:09 <DorpsGek> [OpenTTD/OpenTTD] nielsmh commented on pull request #8812: Add: Option to (dis-)allow accelerated video drivers. https://git.io/JqIr6 11:54:05 *** WormnestAndroid has joined #openttd 11:54:29 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #8704: Change: Move toolbar button for cargo payment graph under industries https://git.io/JqIr9 12:07:50 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8812: Add: Option to (dis-)allow accelerated video drivers. https://git.io/JqIo2 12:08:51 <TrueBrain> michi_cc: code needs a cleanup, but what do you think about this: https://github.com/OpenTTD/OpenTTD/compare/master...TrueBrain:setting_accel ? 12:09:30 <TrueBrain> better URL: https://github.com/michicc/OpenTTD/compare/pr/setting_accel...TrueBrain:setting_accel 12:09:54 <TrueBrain> hmm ... no, that is also not showing what I expected 12:09:55 <TrueBrain> lol 12:10:08 <TrueBrain> owh, I amended .. oops 12:10:16 <TrueBrain> well, you get the idea :D 12:11:32 <michi_cc> Yeah, I think that should be good enough. 12:11:46 <TrueBrain> just a simple message when it fails, and disabling it 12:11:53 <TrueBrain> it is not pretty, just .. "it works" :P 12:12:33 <TrueBrain> want me to open a new PR, or overwrite your branch, or PR against yours? 12:13:05 <TrueBrain> I also renamed it to "Hardware acceleration" instead of "Accelerated drawing"; not sure that is a good idea, but it sounded a bit better in my head :D 12:13:42 <LordAro> hardware acceleration is the more usual term 12:13:56 <Timberwolf> Yeah, makes more sense to me as to what it is. 12:14:05 <spnda> I cannot for the life of me get VS to just append "-v sdl" when debugging... Also yes, hardware acceleration is better 12:14:19 <TrueBrain> spnda: I uses MSYS to start OpenTTD for that reason 12:14:22 <TrueBrain> I do not understand MSVC 12:14:25 <TrueBrain> VSCode makes it a bit easier 12:14:40 <spnda> is that mingw 12:14:44 <TrueBrain> yes 12:14:54 <TrueBrain> for debugging as in: tracing crashes, I use VSCode 12:15:00 <TrueBrain> which has a simple JSON file to define how OpenTTD is started 12:15:13 <spnda> well I've never managed to get a single cmake project running and building properly without VS so... up for the ride 12:15:51 <TrueBrain> if you have MSVC installed and use vcpkg, it is as easy as: mkdir build && cd build && cmake .. && cmake --build . 12:15:53 <TrueBrain> at least, for me 12:16:14 <spnda> nope that has never worked as it just doesn't want to accept that vcpkg exists 12:16:35 <TrueBrain> you do need to have vcpkg installed correctly, yes :) 12:16:43 <TrueBrain> (for MSYS too) 12:16:49 <TrueBrain> the bootstrap "just worked" for me 12:16:59 <spnda> i've done bootstrap and vcpkg integrate 12:17:48 <TrueBrain> but I try to stay as far away as possible from MSVC, so that is about as much as I can be helpful :D 12:19:31 <spnda> port 12:21:34 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #8819: Add: Option to (dis-)allow accelerated video drivers. https://git.io/JqIKE 12:21:36 <TrueBrain> can't have enough PRs doing the same :P 12:22:26 <spnda> I love how CMake is like "link_package(): xx not found;" and the line after its like "Manually specified variables were not used: CMAKE_TOOLCHAIN_FILE". Ah thanks that's stupid 12:23:57 <TrueBrain> remember that some things need a clean build folder 12:24:01 <TrueBrain> I believe the toolchain is one of them 12:24:08 <TrueBrain> it can only be set when the build folder is empty, basically 12:24:20 <TrueBrain> things like CXXFLAGS etc are the same 12:26:25 *** gelignite has joined #openttd 12:28:35 <TrueBrain> meh, bootstrap also crashes with gameloop-thread :D 12:29:38 <TrueBrain> owh, yeah, it will start 2 game-threads 12:29:40 <TrueBrain> that sounds unneeded 12:33:59 <spnda> ah, clean build folder worked. I learn something everyday 12:35:22 <TrueBrain> CMake assumes the building env doesn't change, basically, so it doesn't retest that every time 12:35:42 <TrueBrain> this is also important if you go from Ubuntu 18.04 to Ubuntu 20.04, for example 12:42:19 <michi_cc> Haven't looked at it yet, but maybe just run bootstrap non-threaded? 12:42:39 <TrueBrain> nah, the solution was to clean up the thread correctly :) 12:42:49 <TrueBrain> I was just leaving the thread to die on its own, instead of joining it in the main thread 12:42:56 <TrueBrain> it was just lazy programming :P 12:43:07 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 12:43:11 <TrueBrain> rebased and with working bootstrap ^^ :) 12:43:33 <spnda> "No such video driver: sdl-opengl".... hm now I'm confused 12:43:59 <TrueBrain> you moved "find_package(SDL2)" in CMakeLists.txt outside the if statements? 12:44:06 <TrueBrain> cmake was detecting SDL2? 12:45:41 <spnda> SDL2 found -- -DWITH_SDL2 -- SDL2::SDL2 and rebuilt aswell 12:45:59 <TrueBrain> michi_cc: ah, the reason I did not pick up on the blitter change, is that it works for OpenGL :D Hihi :) 12:46:06 <TrueBrain> spnda: yeah, that should be enough 12:46:18 <TrueBrain> after building, in Debug is openttd.exe 12:46:44 <TrueBrain> sadly on Windows it is hard to see the output of Debug/openttd.exe -h :D 12:47:21 <michi_cc> TrueBrain: An easy fix for the blitter change is https://gist.github.com/michicc/9552b45ceb74faaf162ce16d41a04c25 12:47:39 <michi_cc> I would've PR'ed hat as it is always good even for no threads, but I found some OSX bugs :D 12:48:05 <TrueBrain> and down the rabbithole he goes! 12:48:14 <TrueBrain> I will integrate that change in my PR :) 12:48:45 <spnda> huh running the same exe from the command line works 12:51:25 <TrueBrain> michi_cc: doesn't a similar problem happen while in fullscreen? 12:51:31 <TrueBrain> as that appears to always create a new window? 12:51:43 <michi_cc> No, because that happens on the main thread in the InputLoop. 12:51:52 <TrueBrain> also during blitter change? 12:52:11 <michi_cc> It is only the blitter reload as that is done via switching game modes on closing the settings window, which is handled in the game loop. 12:52:18 <TrueBrain> yes 12:52:27 <TrueBrain> this->MakeWindow(_fullscreen, false) 12:52:58 <TrueBrain> which runs some code in MakeWindow 12:53:21 *** iSoSyS has joined #openttd 12:53:22 <TrueBrain> like ChangeDisplaySettings 12:53:23 <michi_cc> MakeWindow is totally fine if executed on the thread that initially created the window. Anything that is triggered via InputLoop (i.e. a mouse click or key press) runs on the main thread. 12:53:34 <TrueBrain> yes, I know :) 12:53:39 <TrueBrain> the blitter change is done via the game-thread 12:53:45 <TrueBrain> which runs MakeWindow with _fullscreen 12:53:47 <TrueBrain> which always calls ChangeDisplaySettings 12:53:53 <TrueBrain> so I was wondering if that is fine to be called from the game-thread 12:54:03 <michi_cc> ChangeDisplaySettings doesn't interact with the window, thus is fine. 12:54:12 <TrueBrain> cool 12:54:20 <TrueBrain> I would not expected that from the function name :P 12:54:41 <michi_cc> Do you see any reference to main_wnd there? 12:55:07 <TrueBrain> nope; but I don't understand most of the Win32 functions :P 12:55:10 <TrueBrain> better to ask :D 12:55:51 <TrueBrain> so fullscreen adjusts the whole display 12:55:57 <TrueBrain> makes sense, I guess 12:56:02 <TrueBrain> just didn't expect that :D 12:56:39 <TrueBrain> okay, one more flow: if making the fullscreen fails to change (from 8bpp to 32bpp I guess?), it can call MakeWindow again 12:57:06 <TrueBrain> https://github.com/OpenTTD/OpenTTD/blob/master/src/video/win32_v.cpp#L175 12:57:10 <TrueBrain> should that include "resize" again? 12:57:40 <TrueBrain> it is a very unlikely flow, but okay 12:59:33 <TrueBrain> no, if that happens, more things go wrong 12:59:42 <TrueBrain> as it will also destroy the main window 13:00:02 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 13:00:25 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 13:00:47 <TrueBrain> when-ever you are back from your OSX rabbit-hole, something to look at michi_cc :D No clue what to do with it, honestly 13:02:09 *** iSoSyS has quit IRC 13:08:29 <TrueBrain> I am guessing it is mostly code from the time not all screens could do 32bpp in fullscreen .. 13:08:35 <TrueBrain> not sure that is still a possibility :D 13:12:31 <michi_cc> Okay, that whole SwitchNewGRFBlitter() in the game loop thing is a problem for OpenGL. :( Different thread == GL context problems. 13:12:59 <TrueBrain> so we need to delay it, basically 13:13:17 <TrueBrain> not completely unexpected that some parts of our code assumes these things :D 13:13:49 <michi_cc> You'll not notice it with default settings as the 40bpp-anim blitter will be used for everything, thus no switching. 13:14:07 <TrueBrain> makes sense 13:14:41 <michi_cc> For Win32 and macOS, rebinding the context isn't that big of a problem. Did't look at SDL for that yet. 13:14:49 <TrueBrain> a dirty way to solve it would be to add a queue between the two threads, but .. not sure that is the right way to go 13:15:04 <TrueBrain> why would you want to rebind it? 13:15:22 <TrueBrain> rebind go game-thread, do what is needed, bind it back to main-thread? 13:20:58 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #8820: Fix #8784: using alt+enter didn't update the fullscreen toggle visibly https://git.io/JqIXG 13:22:16 <spnda> im honestly so confused right now.... Is there no other way of forcing sdl videodriver? 13:22:35 <TrueBrain> remove the windows drivers :P 13:22:37 <TrueBrain> bit drastic 13:22:46 <TrueBrain> but if using parameters is too difficult, that is another option :) 13:22:51 <TrueBrain> changing the priorities, also works 13:22:57 <spnda> where would that be 13:23:03 <TrueBrain> but you really have to wonder why using parameters doesn't work 13:23:11 <TrueBrain> sounds like the wrong executable is used? 13:23:37 <michi_cc> Okay, rebinding is a bigger problem than I though. At least for Win32, to bind you need to unbind on the other thread first. At we absolutely do not want to constantly unbind/rebind on the main thread. 13:23:38 <spnda> using vscode debugging the game starts and is like "sdl-opengl not found" and if I open that exact same executable from command line with "-v sdl-opengl" it works fine. 13:23:45 <spnda> checked with processexplorer for details, all the same 13:24:14 <TrueBrain> "args": ["-r 1024x768", "-ddriver=4", "-snull", "-mnull"], 13:24:20 <TrueBrain> example of my vscode args 13:24:33 <TrueBrain> "-vsdl-opengl" "just works" for me 13:25:07 <TrueBrain> https://gist.github.com/TrueBrain/8caed08f0b85d5d3db60e5cb54217f65 13:25:11 <TrueBrain> my complete JSON 13:25:20 <TrueBrain> funny how it is not valid JSON :D 13:25:56 <spnda> well yeah, its got comments 13:26:07 <spnda> they really should standardize commented JSON 13:26:28 <spnda> not just "do as you wish" kinda thing, where some parsers support it while others don't 13:26:41 <TrueBrain> I call it YAML :D 13:27:09 <spnda> ye I love using yaml for spigot plugins or my Dart projects, much nicer 13:27:25 <TrueBrain> as YAML is a superset of JSON, it can read those files just fine :) 13:27:37 <TrueBrain> it is also what I think VSCode is doing :P Just reading it as YAML :D 13:28:05 <TrueBrain> michi_cc: I think we can just queue a signal that AfterBlitterChange needs to be called 13:28:09 <TrueBrain> and call it next draw-tick 13:30:33 *** snail_UES_ has joined #openttd 13:31:23 <TrueBrain> the thing I can imagine going wrong if we do, is if for some reason there is a blitter change AND a screenshot request in the same game-tick 13:31:40 <TrueBrain> as _screen won't be prepared until AfterBlitterChange is called 13:31:44 <michi_cc> Expect for that tiny problem that ::ChangeDisplaySettings could in theory fail, which makes AfterBlitterChange return false, which makes SwitchNewGRFBlitter not restore the old blitter. 13:31:56 <TrueBrain> the old blitter can be in the signal 13:32:16 <TrueBrain> _blitter_changed = old_blitter; 13:32:18 <TrueBrain> or what-ever :P 13:32:53 <TrueBrain> this code is so impossible to trace .. I was trying to get a feel for where SwitchNewGRFBlitter is called from 13:32:58 <TrueBrain> that is .. euh .. yeah .. difficult :D 13:33:59 <michi_cc> Hmm, the blitter things definitly needs to work before merging something. The easiest way to trigger blitter re-selection is to change full animation for non-OpenGL. 13:34:56 <michi_cc> For OpenGL, you basically set 8bppsupport in the config to system or so, start with opengfx and then switch to zbase. On default settings, you'll always use 4bpp-anim and never switch. 13:35:15 <TrueBrain> it just works for SDL :P :P 13:35:24 <TrueBrain> (without OpenGL) 13:35:57 <spnda> TrueBrain: Turns out my working directory was wrong or something, it works now 13:36:02 <TrueBrain> \o/ 13:36:06 <michi_cc> It works for Win32 (without OpenGL) too, if that singular "don't set window size again" patch is applied. 13:38:19 <spnda> Also, turns out my SDL function was in fact working, just SDL was returning crappy data 13:39:03 <spnda> Returing 144Hz and 60Hz for each, eventhough its 144Hz and 72Hz... interesting 13:41:57 <Eddi|zuHause> 4bpp? are we back to CGA or something? :p 13:42:17 <TrueBrain> michi_cc: just to confirm you see the same: Full Animation is done from main-thread, and as such fine, right? 13:42:50 <TrueBrain> similar to language selection 13:43:03 <michi_cc> It should, unless there's some way to cause that not via the input loop (which I don't think there is). 13:43:18 <TrueBrain> so GfxLoadSprites is the only real issue, k 13:43:45 <michi_cc> In my super hacky test, delaying blitter change on Win32 seems to work. 13:45:38 <spnda> TrueBrain what are the different driver=x available? 13:45:53 <TrueBrain> what do you mean, sorry? 13:46:15 <DorpsGek> [OpenTTD/OpenSFX] orudge merged pull request #29: Add 6 translations, fix Finnish header https://git.io/JqTPh 13:46:23 <spnda> command line arguments you posted include "-ddriver=4" for example. What does the 4 mean and what other options are there? 13:47:00 <TrueBrain> 1 .. 9 13:47:01 <TrueBrain> level of debug 13:47:04 <LordAro> debug.h 13:47:11 <TrueBrain> well, 0 .. 9 13:47:13 <TrueBrain> but 0 is not useful :D 13:48:19 <spnda> ah ok thx 13:51:06 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 13:51:07 <TrueBrain> michi_cc: try this ^^ 13:54:57 <spnda> TrueBrain: What extensions/configurations do you have so that the VSCode "IntelliSense" actually works and isnt a pile of crap? 13:55:17 <TrueBrain> C/C++ by Microsoft 13:55:23 <TrueBrain> ms-vscode.cpptools 13:56:14 <TrueBrain> https://gist.github.com/TrueBrain/8caed08f0b85d5d3db60e5cb54217f65 <- together with that JSON for c_cpp_properties 13:57:31 <michi_cc> TrueBrain: Just to be sure, I would actually pass the resize param on to MakeWindow after the ChangeDisplaySettings calls. 13:57:57 <TrueBrain> it is destroying the window anway :P 13:57:59 <TrueBrain> but yeah, will do 13:58:33 <michi_cc> No, it will only destroy if the fullscreen state changed. 13:58:47 <michi_cc> It will not destory if we just want to change bpp from 8 to 32. 13:59:04 <TrueBrain> that MakeWindow is called with "false" 13:59:12 <TrueBrain> while in if (full_screen) 13:59:18 <TrueBrain> so it always changes the fullscreen mode, not? 13:59:26 <TrueBrain> or are we talking about different MakeWindow calls? 13:59:59 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 14:00:21 <TrueBrain> either way, added the "resize", just as that is nicer I think 14:00:30 <TrueBrain> so you can see if we talked about the same MakeWindow :D 14:00:35 <michi_cc> Oops, of course, so if that one is triggered by a blitter change, it's game over. 14:00:44 <TrueBrain> not anymore! :D 14:00:56 <michi_cc> Give me a few minutes and I'll test the blitter thing. 14:01:25 <TrueBrain> I now do the blitter change inside all the locks, so nothing else should be doing anything with the blitter 14:01:30 <TrueBrain> not sure that is really needed 14:01:36 <TrueBrain> but .. this for sure shouldn't give threading issues :P 14:02:11 <TrueBrain> and it now switches completely, delayed .. so that even means that if a screenshot would be made in a game-tick before the next draw-tick, it uses the old blitter 14:03:39 <TrueBrain> hmm ... DoPaletteAnimations via GfxInitPalettes might be a problem 14:04:50 <TrueBrain> no, shouldn't be any issue 14:04:51 *** gelignite has quit IRC 14:05:26 <TrueBrain> it might do a palette animation on the old blitter, where normally it would have done it on the new 14:06:24 <TrueBrain> right, extreme testing ... 1 frame per second 14:09:35 <TrueBrain> and .. crash! :D (when going from 8bpp to 32bpp) 14:17:31 <TrueBrain> okay, that makes sense that it crashes 14:17:40 <TrueBrain> funny, how the code actually works, and how I assumed it was working :D 14:17:52 *** supermop_Home has joined #openttd 14:17:57 <supermop_Home> hello 14:18:06 <spnda> uh, sdl2_opengl_v.cpp includes <SDL.h>, eventhough using vcpkg SDL would be at <SDL2/SDL.h>, intended? 14:18:31 <TrueBrain> spnda: only either SDL1 or SDL2 is in the search path 14:18:36 <TrueBrain> so we include <SDL.h> 14:18:41 <TrueBrain> and let CMake pick the right include-folder 14:18:46 <TrueBrain> no clue if that is intended 14:18:51 <TrueBrain> but that is how SDL2 driver is created 14:18:56 <spnda> hmm ok, would just imagine the SDL2 implementation to directly reference SDL2/SDL.h 14:19:08 <TrueBrain> for some reason the choice is made to not allow SDL1 and SDL2 to coexist 14:19:13 <TrueBrain> no clue what the fundaments of that is :) 14:19:35 <spnda> cause technically that would allow the game to use the SDL2 driver, using SDL2 functions but it *COULD* be SDL1 loaded, invalidating half the functions and most likely leading to a crash 14:19:44 <michi_cc> Bad commit message: "Fix #8808: [OSX, OpenGL] Crash on switching blitters due to double-mapping the video buffer." Any better ideas? 14:20:17 <TrueBrain> michi_cc: depends on the content, but reads fine 14:20:29 <TrueBrain> spnda: no? SDL2 is linked to the binary .. so it cannot load SDL1 14:20:37 <TrueBrain> otherwise linking would fail 14:21:26 <TrueBrain> michi_cc: turns out, delaying the blitter change has some nasty corner cases. When going from 32bpp to 8bpp, there really isn't any problem. All sprites etc can be loaded already, so everything is well. The other way around, however, can mean that the 32bpp sprites couldn't be loaded yet (this is done correctly) 14:21:35 <TrueBrain> after loading the 32bpp blitter, it needs to invalidate everything and that works too 14:21:37 <spnda> ah true, still seems like a weird way of doing things 14:21:51 <TrueBrain> spnda: if you are looking for weird, I am sure you find many more things in the OpenTTD source :) 14:22:12 <spnda> imo should somehow ommit that driver completely if sdl1 is wanted, but yeah, seen a lot of weird stuff 14:23:00 <TrueBrain> michi_cc: but it seems the only safe way is to reload all sprites twice: once when the change is requested, and once when it is really executed 14:23:09 <TrueBrain> as depending on where you come from, the first time might already been enough 14:23:13 <TrueBrain> but sometimes the second is needed :P 14:23:45 <michi_cc> Eh, who cares, just reload until the computer is reloading itself :D 14:24:15 <TrueBrain> they are very rare events, so it shouldn't be any problem 14:25:39 <TrueBrain> my code now reloads the blitter 2 seconds after requested, while everything continues as normal .. that is fun to see :D 14:27:12 <TrueBrain> now I see graphical glitches with zBase .. but no clue if that is my code, or that is just what it is :P 14:27:50 <TrueBrain> mostly, sea is not animating 14:28:13 <TrueBrain> and the black lines between tiles are ... not consistently there 14:29:38 <DorpsGek> [OpenTTD/OpenTTD] michicc opened pull request #8821: Fix 937d60f2: Broken company colours for 40bpp-blitter. https://git.io/JqISc 14:29:41 <DorpsGek> [OpenTTD/OpenTTD] michicc opened pull request #8822: Fix #8808: Crash on switching blitters due to double-mapping the video buffer https://git.io/JqISC 14:30:09 <michi_cc> TrueBrain: Maybe you see #8821. 14:30:15 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 14:30:19 <TrueBrain> no, its on the sea 14:30:34 <TrueBrain> and I don't use OpenGL during development :P 14:30:41 <TrueBrain> (WSL2 doesn't allow me) 14:30:47 <michi_cc> Okay, then you don't see #8821 :) 14:31:03 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #8821: Fix 937d60f2: Broken company colours for 40bpp-blitter. https://git.io/JqISu 14:32:18 <TrueBrain> with my PR, the first change in #8822 shouldn't be needed anymore :P 14:32:32 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #8822: Fix #8808: Crash on switching blitters due to double-mapping the video buffer https://git.io/JqISP 14:32:56 <TrueBrain> and I pushed an update for my PR that fixes crashes when going from 8bpp to 32bpp .. now time to try OpenGL :D 14:35:59 <TrueBrain> owh, joy, the lovely osfile(fh) & FOPEN issue .. 14:36:16 *** nielsm has joined #openttd 14:36:47 <TrueBrain> yeah, can't test this on Windows 14:37:03 <TrueBrain> I really have to check out what the fuck is causing that error 14:38:36 <TrueBrain> DEBUG() is causing it now 14:39:10 <TrueBrain> owh, this might be my mistake :D Might have forgotten to set change_blitter to nullptr :D 14:40:26 <TrueBrain> okay .. so that might also give some clues for the other crashes, I guess 14:41:45 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 14:42:25 <DorpsGek> [OpenTTD/OpenTTD] michicc approved pull request #8819: Add: Option to (dis-)allow accelerated video drivers. https://git.io/JqI9c 14:42:44 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8819: Add: Option to (dis-)allow accelerated video drivers. https://git.io/JqIKE 14:42:47 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed pull request #8816: Add: GUI option to select video driver. https://git.io/JqTba 14:42:50 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed pull request #8812: Add: Option to (dis-)allow accelerated video drivers. https://git.io/JqTSV 14:43:04 <TrueBrain> glx: I closed PRs with merging of a PR! :P 14:43:12 <DorpsGek> [OpenTTD/OpenTTD] michicc merged pull request #8821: Fix 937d60f2: Broken company colours for 40bpp-blitter. https://git.io/JqISc 14:43:27 <DorpsGek> [OpenTTD/OpenTTD] michicc merged pull request #8822: Fix #8808: Crash on switching blitters due to double-mapping the video buffer https://git.io/JqISC 14:43:30 <DorpsGek> [OpenTTD/OpenTTD] michicc closed issue #8808: Die with failed assertion on MacOSX with cocoa-opengl driver https://git.io/JqUHv 14:44:20 <michi_cc> TrueBrain: Could you rebase #8741 again so I can properly test all OSX variations? 14:44:36 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8744: Change: Clarify what effect town interactions have https://git.io/JtFtl 14:45:45 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 14:46:21 <TrueBrain> michi_cc: and you can use https://gist.github.com/TrueBrain/7a323848f09f4a29f84a76576fea8c56 if you like to delay the switch 14:46:29 <TrueBrain> so you can spot any issues in the in-between 14:47:19 <TrueBrain> okay, 1.11 milestone is getting small now .. 14:47:29 <TrueBrain> should be doable to fix most this week 14:47:36 <TrueBrain> some are just boring as fuck .. like a Desktop file 14:47:36 <TrueBrain> ugh 14:47:38 <TrueBrain> who cares :P 14:51:24 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8814: Assertion failed downloading content from BaNaNaS. https://git.io/JqTdZ 14:54:37 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 14:54:57 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqIHq 14:57:26 <spnda> Actually, I think swapping refresh rate and currency could be better, or? 14:58:22 <TrueBrain> I think we should have a single "Display", with resolution, fullscreen, GPU and refresh below it 14:58:37 <spnda> good point 14:58:42 <TrueBrain> or "Graphics" 14:58:48 <spnda> I guess I'll put that in my PR, shall I? 14:59:02 <TrueBrain> I wouldn't mind 14:59:34 <TrueBrain> but, I am just one voice :) 15:01:08 <spnda> I'll see how it looks before saying anything 15:02:43 <TrueBrain> the place OpenTTD crashes in the assertion issue is just weird.. everything is valid 15:02:52 <TrueBrain> yet boooooommmmm 15:03:32 <spnda> ye thought so too. One thing I found online was that the path might have some issues with the function, but don't quote me on that 15:03:54 <TrueBrain> well, I also have this with libpng 15:03:57 <TrueBrain> which uses zlib 15:04:10 <TrueBrain> so I am wondering if there is just not something going wrong with vcpkg, debug builds, etc 15:04:37 <LordAro> seems more likely 15:04:59 <TrueBrain> no, it never enters zlib 15:05:10 <TrueBrain> libpng16d.dll, and then ucrtbased.dll 15:05:12 <TrueBrain> but still 15:05:47 <TrueBrain> spnda: I wonder if it crashes for you too, if you make a "whole map" screenshot 15:05:57 <spnda> I'll try that 15:07:08 <TrueBrain> maybe because they are debug libraries, they do more checking, and that fails somehow? 15:07:10 <TrueBrain> dunno 15:07:18 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8814: Assertion failed downloading content from BaNaNaS. https://git.io/JqTdZ 15:08:05 <spnda> yes it does crash on whole map screenshots 15:08:51 <spnda> infact any screenshots 15:09:04 <TrueBrain> normal viewports sometimes work for me 15:09:09 <TrueBrain> depending on how big I have my window 15:09:48 <spnda> btw, just had the idea of putting "Hardware acceleration" underneath the refresh rate dropdown, as thats basically something that improves the refresh rate, right? 15:10:02 <LordAro> spnda: seems reasonable 15:10:24 <TrueBrain> "improves refresh rate" is a weird way of putting it, but it makes it more likely you reach the refresh rate if you are not :) 15:10:38 <TrueBrain> or it can just make sure you never reach it 15:10:40 <TrueBrain> depending on your GPU 15:11:50 <spnda> also did I just break my opengl drivers? they're reporting as "OpenGL shading language version: 1.50 NVIDIA via Cg compiler" 15:16:24 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 15:20:15 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 15:20:21 <spnda> pls be right this time 15:22:03 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 15:25:35 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 15:25:38 <spnda> im so sorry github for all these things you need to run 15:25:55 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqI7M 15:26:57 <TrueBrain> lines are a bit weird now spnda 15:27:07 <spnda> TrueBrain what, where? 15:27:09 <TrueBrain> like refresh-rate and hardware acceleration are the same thing 15:27:19 <spnda> wait what 15:27:34 <TrueBrain> similar with screen resolution 15:27:39 <TrueBrain> like full-screen is part of the screen resolution 15:27:49 <TrueBrain> would it be possible to have the lines from screen resolution to go below the dropdown 15:27:55 <TrueBrain> between dropdown and fullscreen? 15:27:59 <TrueBrain> same for refresh rate 15:28:38 <DorpsGek> [OpenTTD/OpenSFX] Wuzzy2 closed issue #27: Grab translations https://git.io/Jqf1I 15:29:00 <spnda> TrueBrain: You mean those border lines? 15:29:03 <TrueBrain> yes 15:29:06 <spnda> oh 15:29:18 <TrueBrain> how it is shown now, "Hardware Acceleration" is part of "Display refresh rate" 15:29:19 <TrueBrain> it is not 15:29:41 <TrueBrain> maybe just removing the lines works too btw 15:29:56 <spnda> well that was my idea from earlier 15:29:58 <spnda> "btw, just had the idea of putting "Hardware acceleration" underneath the refresh rate dropdown, as thats basically something that improves the refresh rate, right?" 15:30:14 <TrueBrain> there is a difference between saying words and seeing what you mean :) 15:30:23 *** Flygon has quit IRC 15:30:42 <Wuzzy> OpenSFX looks feature-complete now. 1.0.0 release soon? 🙂 15:30:48 <Wuzzy> (but the date in changelog.txt needs to be updated to include the release date) 15:32:48 <TrueBrain> spnda: but to be clear, what I tried to say earlier: hardware acceleration influences the maximum amount of refresh rate you can reach, but has otherwise nothing to do with refresh rate. Which is similar that lower screen resolutions make it more likely you reach higher refresh rates .. but those shouldn't be linked together either :D 15:33:10 <LordAro> TrueBrain: you're being overly pedantic :p 15:33:17 <TrueBrain> LordAro: I disagree 15:33:25 <TrueBrain> for sure it is bikeshedding 15:33:31 <TrueBrain> but the lines now just look weird 15:35:09 <spnda> To that, using my GPU I can most likely get much more constant frametimes resulting in smoother (possibly slightly higher) framerates. Also, some shitty CPUs could possibly not handle writing so many sprites and might get much lower average fps than your average new GPU. So yes, I totally think hardware acceleration is for FPS, so its also part of the refresh rate. 15:36:11 <TrueBrain> using hardware acceleration also influences the max fast-forward speed 15:36:19 <TrueBrain> that those things influence each other, doesn't make them related 15:36:51 <spnda> and does hardware acceleration have anything to do with resolution? 15:36:53 <TrueBrain> to be clear, I don't mind it being below refresh rate; just the lines make it looks weird :) 15:37:10 <TrueBrain> what master currently has, is also weird 15:37:34 <TrueBrain> so I wonder what happens if you either remove the lines, or bring them back above the two toggles 15:37:38 <TrueBrain> might improve the looks of it 15:37:53 <spnda> I personally think what I have is currently the best solution, as it will look just as good if other options like video driver are implemented beneath. 15:37:59 <spnda> but yes, I'll try and see if that's possible 15:40:31 <supermop_Home> have any of the german's here had any experience with Auer toolboxes? 15:42:06 *** Markk_ has joined #openttd 15:43:00 *** Markk_ is now known as Markk 15:45:30 <michi_cc> TrueBrain: I think there's some kind of memory corruption when switching blitters in the PR, as I can make it crash in random places during painting with nonsense variable values. 15:46:08 <TrueBrain> :( 15:46:47 <TrueBrain> I was afraid the blitter being a problem .. as I mentioned, that I could remove the blitter-locks without (code-wise) issue was already weird. 15:48:06 <TrueBrain> seems we need to carve the blitter stuff out a bit more before this threading works .. 15:48:26 <TrueBrain> but atm I cannot think of a reason why there would be memory corruption as result 15:48:47 <TrueBrain> these flows through the code became so impossible 15:49:05 <michi_cc> I think I can reproduce the problem, so let me check in master first. 15:49:16 <TrueBrain> that is always a nice thing to do :D 15:49:56 <michi_cc> Oh, and you forgot to assign this->is_game_threaded in VideoDriver_Win32GDI::Start. 15:50:11 <TrueBrain> ah, yes, you have 2 Starts there :D 15:51:04 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 15:52:01 <DorpsGek> [OpenTTD/OpenTTD] miltschek opened issue #8823: Linking error fontconfig on Ubuntu, dedicated server https://git.io/JqIFr 15:53:16 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #8823: Linking error fontconfig on Ubuntu, dedicated server https://git.io/JqIFr 15:53:19 <DorpsGek> [OpenTTD/OpenTTD] LordAro closed issue #8823: Linking error fontconfig on Ubuntu, dedicated server https://git.io/JqIFr 15:54:32 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8823: Linking error fontconfig on Ubuntu, dedicated server https://git.io/JqIFr 15:57:06 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #8820: Fix #8784: using alt+enter didn't update the fullscreen toggle visibly https://git.io/JqIb3 15:58:03 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8820: Fix #8784: using alt+enter didn't update the fullscreen toggle visibly https://git.io/JqIXG 15:58:06 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed issue #8784: Alt-Enter to make OpenTTD fullscreen desyncs actual fullscreen state from toggle in Game Options https://git.io/JtpHd 15:58:36 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #8818: Fix: keep NewGRF order for object class sorting https://git.io/JqIbR 15:59:25 <TrueBrain> happy you reviewed that LordAro ; I couldn't make heads nor tails from it :P 15:59:40 <LordAro> most of it is just s/ObjectClass/ObjectClassID/ 16:00:47 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8818: Fix: keep NewGRF order for object class sorting https://git.io/Jqk6R 16:00:50 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed issue #8817: "Place Objects" menu sorts objects alphabetically even when there are no filter string provided. https://git.io/JqkJ5 16:01:20 <michi_cc> TrueBrain: What was your reason that RealChangeBlitter basically does GfxLoadSprites instead of CheckBlitter? 16:04:05 <TrueBrain> michi_cc: because how I read it, CheckBlitter does a small subset of GfxLoadSprites because of the places it is called from 16:04:11 <TrueBrain> but doing everything doesn't hurt 16:04:15 <TrueBrain> I can be wrong, ofc 16:04:27 <michi_cc> It does hurt very much if you have e.g. station NewGRFs active. 16:05:14 <TrueBrain> I was doing that under the assumption those are rare events 16:05:19 <TrueBrain> that a player only does once or twice a month 16:05:36 <michi_cc> I think after GfxInitSpriteMem/LoadSpriteTables you'd have to call ReloadNewGRFData again, and that seems to be quite evil. 16:05:52 <TrueBrain> yeah .. in general I think this is just not right 16:05:55 <michi_cc> Hurt means complete crash. 16:06:02 <TrueBrain> owh, crash is never good :P 16:06:26 <TrueBrain> but I really need to understand the code better to work on this, honestly 16:06:35 <TrueBrain> and it is just a bit of a mess 16:10:24 <TrueBrain> these are moments you wish we already had coroutines 16:10:25 <TrueBrain> or tasks 16:10:27 <TrueBrain> or microthreads 16:10:30 <TrueBrain> or what-ever you want to call them 16:11:07 <TrueBrain> michi_cc: the other dirty solution is to lock the game-thread when requesting the switch 16:11:12 <TrueBrain> wait for the draw-tick to happen 16:11:15 <TrueBrain> and unlock the game-thread again 16:11:25 <TrueBrain> that will not change anything about the current flow 16:11:28 <TrueBrain> so should "just work" 16:11:32 <TrueBrain> just .. dirty as fuck 16:12:16 <spnda> Can I align children in a Nwidget(NWID_HORIZONTAL) to the right, or end, of the widget? 16:13:20 <TrueBrain> I have no clue 16:14:01 <spnda> I only know that if there's two children, the spacing inbetween will be the largest space between all of them 16:14:08 <spnda> So I could hack my way around it with a empty string on the left side 16:14:24 <michi_cc> TrueBrain: As far as I can tell, https://gist.github.com/michicc/0fc9cb542a84906c5b8b25454ff9ef84 should work in general. 16:14:34 <michi_cc> Now on to testing OSX specifically. 16:14:50 <TrueBrain> spnda: I think others do that, with a SPACER on the left 16:15:13 <TrueBrain> michi_cc: when I did that, as I had that initially, I tihnk it crashed when I went from 8bpp to zBase 16:15:20 <TrueBrain> I can be mistaken 16:15:36 <michi_cc> Seems to work for me with win32. 16:16:08 <TrueBrain> I will test it in a bit too :D 16:16:29 *** Progman has joined #openttd 16:16:54 *** gelignite has joined #openttd 16:17:02 <spnda> ok spacer works but the spacing is actually not maximum, its just 0 it seems... 16:17:28 <TrueBrain> SetFill(1, 0) 16:17:33 <spnda> yeah just did that 16:17:41 <TrueBrain> SetMinimalSize(1, 0) 16:17:45 <TrueBrain> is what I try :P 16:17:52 <spnda> honestly still amazed that this game got a nestedwidget system 16:18:27 <spnda> I think this looks good: https://cdn.discordapp.com/attachments/337701432230805505/818517994161569873/unknown.png 16:18:45 <TrueBrain> I think it is a lot cleaner for sure, yes :) 16:23:57 <TrueBrain> some ugly things I came up with: https://cdn.discordapp.com/attachments/337701432230805505/818519058487574538/unknown.png and https://cdn.discordapp.com/attachments/337701432230805505/818518470748143656/unknown.png 16:24:00 <TrueBrain> I like yours a lot more 16:24:08 <TrueBrain> (we are having a conversation on 2 chat applications, it is so lovely :P) 16:24:20 <spnda> lol, I love how you copy the things over to the other one 16:24:46 <TrueBrain> one is publicly indexed, the other is not ;) 16:28:46 <spnda> Could it be that win32-opengl is running OpenGL 1.5? 16:30:42 <michi_cc> No, it's not running OpenGL 1.5. It might run 1.5 + various extensions if for whatever reason your driver can't do real 3.2. It won't run on pure 1.5. 16:31:46 <spnda> it shows "OpenGL driver: bla bla bla (3.2.0 NVIDIA 461.40)" and "OpenGL shading language version: 1.50 NVIDIA via Cg compiler". Like there's no reason this card shouldn't be able to do 4.6 and I think it showed 4.6 / 4.60 when using sdl-opengl 16:33:05 <TrueBrain> michi_cc: you are right, I cannot get it to crash with your change 16:33:26 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 16:33:33 <TrueBrain> it is still code I am widely unsure of, which doesn't happen a lot :P 16:33:48 <michi_cc> OTTD is using 3.2, exactly as intended. SDL might pick a context that is 3.2 or higher, but higher OpenGL versions only mean more guaranteed features, not that anything runs faster or aynthing. 16:34:02 <michi_cc> There's nothing in OpenGL 4.6 that would benefit OTTD. 16:34:17 <spnda> yes, 3 is high enough. was just shocked by 1.50 16:34:50 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 16:35:04 <michi_cc> GLSL version numbers are not identical to GL version numbers (at least they were, they skipped some versions to make them identical for now). 16:36:02 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 16:36:16 <spnda> ah ok 16:37:37 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqIpe 16:40:59 *** andythenorth has joined #openttd 16:41:03 <andythenorth> rather good https://twitter.com/andrewcb/status/1367245083796369409 16:41:39 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqIpC 16:44:14 <TrueBrain> https://github.com/OpenTTD/OpenTTD/pull/8813/files#diff-cd8a93ef47e8471eb2746a718aa41a14822bc5666fb09fde512057f45a5210edL255 <- this reminds me why I hate alignment in code like that ... how am I now to see what changed? :D 16:44:19 <TrueBrain> not your fault spnda 16:44:38 <spnda> yeah I noticed that 16:44:43 <TrueBrain> it is just something stupid (my opinion) what OpenTTD does :D 16:46:19 <LordAro> TrueBrain: tick "hide whitespace changes" 16:46:27 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqIp1 16:46:47 <TrueBrain> LordAro: oooooeeeeehhhhh 16:46:49 <TrueBrain> nice :D 16:46:55 <TrueBrain> does mean I am going to miss people screwing up whitespaces 16:46:59 <TrueBrain> but that does help 16:47:14 <TrueBrain> sometimes GitHub show whitespace changes nicely 16:47:16 <TrueBrain> sometimes it doesn't 16:47:19 <TrueBrain> no clue when it does which yet :P 16:49:03 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqIpp 16:52:09 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqIh8 16:52:34 *** andythenorth has quit IRC 16:53:54 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqIhu 16:54:14 <DorpsGek> [OpenTTD/OpenTTD] michicc commented on pull request #8813: Add display refresh rate game option https://git.io/JqIhz 16:54:29 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqIha 16:55:00 <TrueBrain> no clue why my SDL things my displays are at 0 Hz :D 16:55:15 *** nnyby has quit IRC 16:55:36 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqIhP 16:57:14 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqIhH 16:57:29 <TrueBrain> spnda: rule of thumb: if people complain about coding style, they like the rest of the code just fine :D 16:57:49 <spnda> I'm going through my code right now to adress issues 16:58:01 <TrueBrain> <3 16:58:08 <TrueBrain> I really like your work :D 17:01:18 *** Wormnest has joined #openttd 17:01:51 <michi_cc> TrueBrain: Thread PR seems to work on macOS with one annoying (and one non-annoying) change: https://gist.github.com/michicc/81e1a54901af5837fcb1ddb61aeb886e 17:01:59 <TrueBrain> michi_cc: tnx a lot btw for testing and helping out with this gameloop-thread, that is really appreciated :D 17:02:11 <TrueBrain> did I forget another no_threads 17:02:12 <TrueBrain> lol 17:02:32 <TrueBrain> that second blob you need to explain .. when does that happen? 17:03:29 <michi_cc> Due to the layered drawing stuff we do, OSX can call our drawing routine on its own outside of the event loop. Like for example on NSApp run before we've done like anything. 17:03:41 <TrueBrain> oef 17:04:47 <TrueBrain> so no mouse for you in those cases :D 17:05:11 <michi_cc> It's basically only single frames that all back anyway. 17:05:34 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 17:05:37 <TrueBrain> there you go ^^ 17:05:44 <TrueBrain> I hope I copy/pasted well 17:05:50 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqIjz 17:06:36 <michi_cc> Other than that it seems to work at least as well as my "fix 40bpp screenshots" PR (that absolutely did not need any fix at all :D) 17:07:43 <DorpsGek> [OpenTTD/OpenTTD] LordAro requested changes for pull request #8813: Add display refresh rate game option https://git.io/JqIjy 17:07:46 <TrueBrain> I am still scared shitless to merge something like this :P 17:08:00 <michi_cc> Oh, tiny tiny nitpick: technically you don't need to make LoadSpriteTables() public anymore. 17:08:25 <michi_cc> I.e. gfxinit.h:14 and gfxinit.cpp:163 17:08:32 <TrueBrain> will fix 17:08:39 <TrueBrain> nitpicks are always welcome; as I nitpick myself too :P 17:09:30 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqLee 17:10:13 <TrueBrain> michi_cc: I think UpdateCursorSize also doesn't need calling 17:10:16 <TrueBrain> am I correct in that thinking? 17:10:33 <spnda> LordAro: Why was the conversation about "static const HERTZ" resolved? 17:10:39 <michi_cc> Oh, and RealChangeBlitter doesn't need to use VideoDriver::GetInstance(). 17:11:29 <michi_cc> You are probably right, let's test. 17:13:28 <LordAro> spnda: i didn't mean to resolve anything 17:13:35 <michi_cc> Looks like it, can't find something that would require UpdateCursorSize. 17:13:47 <spnda> oh, so I'll still just fix it. 17:14:30 <TrueBrain> michi_cc: it does feel a lot better that the video driver is now in control about changing the blitter 17:14:32 <TrueBrain> that makes more sense 17:15:53 <TrueBrain> spnda: I would just have made _refresh_rates an unordered_set ;) Hence the comment :) But again, that is really up to you :) 17:17:32 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 17:17:38 <TrueBrain> michi_cc: anything else, just let me know :) From space to WTF ARE YOU DOING HERE, all are welcome :D 17:17:43 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqLew 17:18:33 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqLeo 17:19:44 <TrueBrain> why did I call the variable refresh_rate again? It looks so ugly .. 17:19:48 <TrueBrain> owh yeah, display_hz was already used 17:19:53 <LordAro> :p 17:19:53 <TrueBrain> for something rather unrelated 17:20:11 <TrueBrain> (it set the display Hz for Windows Fullscreen) 17:20:24 <TrueBrain> I removed that variable I believe 17:20:29 <TrueBrain> such bullshit these days :P 17:20:42 <TrueBrain> but so yeah, I cannot reuse it for a while :P 17:20:48 <TrueBrain> fineeee .. shitty variable name it is 17:20:53 <TrueBrain> I like how spnda changed it often into "rates" 17:21:01 <TrueBrain> which is confusing in the context of OpenTTD .. cargo rates? :P 17:21:08 <TrueBrain> but nothing that needs fixing in my opinion :) 17:23:38 <TrueBrain> ugh, I should make dinner .. hungry for over 90 minutes already .. 17:25:26 <spnda> ahhh ive never gotten this amount of code review lol 17:29:21 <TrueBrain> owh, btw, I think the 0Hz is because of the missing "continue" 17:29:24 <TrueBrain> where you have // error 17:29:28 <TrueBrain> so it might not need fixing at all 17:32:04 <heffer> Quick question: Is the installation of .desktop files in CMake going to arrive for 1.11.0? Or do I need to sed my way around it for the Fedora Package? 17:32:20 <LordAro> it's intended to be fixed for 1.11, yes 17:34:12 <spnda> so uh I have no idea what to do with LordAro's suggestion with capturing the rates vector in the lambda 17:34:42 <LordAro> what specifically? 17:35:57 <spnda> I cannot capture anything, otherwise it errors out saying its not compatible with what EnumDisplayMonitors wants 17:36:13 <LordAro> ooh 17:36:16 <LordAro> yeah, that'll happen 17:36:28 <LordAro> don't worry about it then 17:38:41 <heffer> Cool, thanks :) 17:40:11 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 17:40:17 <spnda> I hope that's everything fixed 17:42:36 <LordAro> you left some trailing whitespace ;) 17:43:33 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 17:44:05 <michi_cc> TrueBrain: You've got a conflict, otherwise I'd hit approve :) 17:45:22 <Gustavo6046> I think I am officially openttdicted. 17:46:47 <Gustavo6046> Anyway, how can I share a save? I don't trust the current state of my railways that they won't have issues with trains blocking each other later. 17:47:17 <Gustavo6046> It does have some loaded NewGRFs 17:48:22 <spnda> huh std::inserter was not found... meanwhile working fine on my machine 17:48:51 <LordAro> headers may not include the same headers as they do on your platform :) 17:49:13 <spnda> im on windows, only the windows ones have failed for now 17:49:27 <spnda> linux was successful 17:50:41 <DorpsGek> [OpenTTD/OpenTTD] LordAro requested changes for pull request #8813: Add display refresh rate game option https://git.io/JqLfj 17:51:09 <LordAro> https://en.cppreference.com/w/cpp/iterator/inserter you'll probably need to include the iterator header explicitly 17:51:17 <LordAro> implicit inclusion is a fickle thing 17:52:32 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqLJJ 17:55:36 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqLJZ 17:55:39 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #8813: Add display refresh rate game option https://git.io/JqLJn 17:56:37 <TrueBrain> LordAro: THAT is what looked odd about Hz .. it should be in the language files ofc, with "{NUMBER} Hz", or what-ever prints a number 17:57:07 <LordAro> there's a reason we don't have a lot of constant strings lying about :) 17:57:27 <TrueBrain> happy you added 1 and 1 together, I failed :P 17:58:25 <TrueBrain> "auto& list" or "auto &list"? 17:58:32 <TrueBrain> or is that too pedantic LordAro ? :D 17:58:34 <TrueBrain> :P :P 17:58:47 <michi_cc> auto &list of course 17:58:48 <LordAro> auto &list 17:59:05 <LordAro> same as pointers 17:59:35 <LordAro> even if the reasoning (* is on the variable) doesn't apply at all for auto (or even references?) 17:59:36 <dwfreed> what's funny is in another large C++ codebase, I always see auto& 18:00:02 <TrueBrain> hmm .. is there a reason to use a lambda really in this case? Couldn't it just be a function instead? 18:00:25 <TrueBrain> anyway, coding styyllleeeee >:D 18:00:38 <spnda> Uh what about the english.txt thing with alignment, I don't understand it 18:00:48 <LordAro> spnda: you've got tabs where there should be spaces 18:00:55 <LordAro> TrueBrain: mm, quite possibly 18:01:10 <spnda> oh it was just the last one 18:01:32 *** andythenorth has joined #openttd 18:02:29 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqLJS 18:03:54 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #8813: Add display refresh rate game option https://git.io/JqLJb 18:06:09 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqLUL 18:06:12 <DorpsGek> [OpenTTD/OpenTTD] michicc approved pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JqLUt 18:06:27 <TrueBrain> surprised #include <video/video_driver.hpp> works 18:07:22 <LordAro> adds -Isrc to the include path, just like everything else 18:07:53 <TrueBrain> the < vs " is more a convention than anything real, at this point :P 18:07:57 <LordAro> indeed 18:08:06 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain dismissed a review for pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JqLUt 18:08:07 <LordAro> i think it only affects the order that paths are checked, nothing more 18:08:09 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 18:08:25 <LordAro> or possibly "" only does -I paths, <> does system & -I 18:08:26 <TrueBrain> So happy michi_cc finally approved; always wanted to dismiss a review :P 18:08:34 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqLUn 18:08:36 <TrueBrain> they have other search-paths indeed 18:08:45 <TrueBrain> but using <> works 90% of the time for projects :P 18:10:17 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqLU0 18:11:21 <TrueBrain> has been a while that we all had something to bitch about a PR .. this bikeshed is going to be the best bikeshed out there! :D 18:11:23 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqLU2 18:11:36 <spnda> yeah it's kinda overwhelming now 18:11:41 <spnda> Getting into the small details lol 18:11:53 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqLUV 18:12:06 <TrueBrain> sorry about that spnda , but on the positive side, it does mean it lands in 1.11 :) 18:12:14 <spnda> ye 18:12:28 <TrueBrain> Just keep doing what you are doing, resolving the things you have fixed etc .. and take what-ever time you need 18:12:34 <TrueBrain> don't feel rushed etc :) 18:13:14 <TrueBrain> I love that you ask why our coding style is what it is .. some questions are best not asked :P :P :D 18:13:24 <DorpsGek> [OpenTTD/OpenTTD] michicc approved pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JqLUX 18:13:55 <TrueBrain> ugh ... am I really going to merge this? Ugh ...... :P 18:14:10 <michi_cc> Can't be worse than stuttering OpenGL :D 18:14:26 <spnda> I also love how nitpicking about all these small things makes you overlook a 3 line long absolutely useless piece of code 18:14:26 <TrueBrain> wwweeeeellllllllllll 18:14:39 <TrueBrain> spnda: for that we have you :) 18:14:59 <michi_cc> Now we only need LordAro to merge some crap, then we can all throw a "we broke everything" party :P 18:15:18 <TrueBrain> I removed 1.11 milestone on his "this breaks the game" PR 18:15:23 <TrueBrain> as he hasn't updated it in a while 18:15:28 <TrueBrain> I think he too is too afraid to merge these kind of things 18:15:32 <TrueBrain> shall we force him to update it? :D 18:15:41 <michi_cc> Which PR? 18:15:42 <TrueBrain> (talking about https://github.com/OpenTTD/OpenTTD/pull/8006) 18:16:00 <LordAro> i was gonna say, that's not getting done anytime soon :p 18:16:07 <LordAro> and it's not blocking anything 18:16:23 <TrueBrain> neither is my gameloop-thread PR :P 18:16:26 <Gustavo6046> FIRS is addicting :D 18:17:12 <michi_cc> LordAro: You can merge #8709, then there's also a reason to yell at you :) 18:17:25 <LordAro> too late for the nightly, right? :p 18:17:33 <TrueBrain> nope 18:17:49 <TrueBrain> nice try ;) 18:18:09 <TrueBrain> but yeah, merge it LordAro :D 18:18:48 * LordAro sneezes 18:18:51 <DorpsGek> [OpenTTD/OpenTTD] LordAro merged pull request #8709: Change: Don't show global goals in company goal windows https://git.io/Jt9tF 18:18:54 <LordAro> woops i slipped 18:18:59 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtdUz 18:19:13 <TrueBrain> lol, I was clicking Rebase, and GitHub was : NO! I NEED A MOMENT! I was like: huh? 18:19:18 <TrueBrain> but .. your merge was as that exact moment :D 18:19:21 <LordAro> hehe 18:19:30 <TrueBrain> they did that pretty good 18:19:40 <TrueBrain> so okay ... we now have a broken nightly 18:19:40 <TrueBrain> nice :D 18:19:57 <LordAro> yay! 18:19:59 <LordAro> (why?) 18:20:03 <TrueBrain> I dunno 18:20:04 <TrueBrain> so many changes :P 18:20:11 <TrueBrain> I just assume it is broken 18:20:14 <LordAro> oh, a probably broken nightly 18:20:17 <TrueBrain> means it cannot dissapoint! 18:20:27 <LordAro> not broken due to some CI reason or something 18:20:40 * LordAro goes back to working out how to read a file in Ada 18:20:41 <TrueBrain> we will see :D 18:20:46 <TrueBrain> DONT! 18:20:48 <TrueBrain> COME BACK TO US! 18:20:52 <spnda> Ah I just noticed a good reason *not* to use unordered_set: https://cdn.discordapp.com/attachments/337701432230805505/818548815434612766/unknown.png 18:21:09 <TrueBrain> isn't there an ordered_set? 18:21:11 <michi_cc> Then use a normal set 18:21:13 <LordAro> spnda: how about a 'set' ? :p 18:21:19 <LordAro> jinx. 18:21:21 <TrueBrain> :D 18:21:21 <spnda> yes but then I could also just use a vector lol 18:21:29 <TrueBrain> except that a set deduplicates for you? 18:21:33 <michi_cc> But a set will deduplicate for you. 18:21:34 <spnda> ah yes 18:21:46 <spnda> 2 hrs sleep and been awake for 16 hours this is not turning out good 18:21:46 <LordAro> there's some irony in the duplicate statements 18:21:56 <TrueBrain> spnda: :D We help you, no worries :) 18:22:04 <TrueBrain> LordAro: hahaha, yes :D 18:22:04 <_dp_> you can merge zstd stuff to further increase chances of broken nightly ;) 18:22:15 <_dp_> not by much though I'm afraid... 18:22:24 <TrueBrain> spnda: in good news, it also works with emscripten :) 18:22:33 <TrueBrain> _dp_: did you happen to look at ZSTD1.3? 18:23:06 <spnda> TrueBrain: Though I've thought about if SDL1.2 or Allegro should get support for this, tho I couldn't find any documentation on how one could possibly iterate over displays. 18:23:13 <_dp_> TrueBrain, not rly 18:23:18 <_dp_> but I did handshake instead, no? 18:23:44 <TrueBrain> was curious, how much 1.3 is away from 1.4 :) 18:23:55 <TrueBrain> spnda: SDL1 ... honestly ... I didn't even add OpenGL support for it 18:23:57 <_dp_> at least 10% on compression speed :p 18:24:00 <TrueBrain> I tihnk we should remove it 18:24:08 <TrueBrain> Allegro, hmm, I can take a look 18:24:12 <spnda> Also I've made a quick static inline function to update the _current_refresh_rate_str, that's ok isn't it? 18:24:27 <TrueBrain> do you need a string for that? 18:24:29 *** frosch123 has joined #openttd 18:24:34 <TrueBrain> if _current_refresh_rate is a number 18:24:36 <spnda> TrueBrain: No arguments 18:24:39 <TrueBrain> you can let the language system do the rest 18:24:59 <spnda> It just does _current_refresh_rate_str = std::to_string(_current_refresh_str) + HERTZ 18:25:08 <spnda> The only thing left to do would be the translation for Hz 18:25:12 <spnda> honestly no clue how to do it 18:25:20 <TrueBrain> well, by not using the string to start with :D :D 18:25:24 <TrueBrain> push what you have, we will help you 18:26:54 <spnda> and idk I think I'll just leave the lambda be 18:27:47 <michi_cc> Make WID_GO_REFRESH_RATE_DROPDOWN take a custom new string instead of STR_BLACK_RAW_STRING (with smth like :{BLACK}{COMMA} Hz) and then only SetDParam the number in SetStringParameters. 18:28:39 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 18:28:48 <TrueBrain> well, michi_cc is quicker than I am :D 18:29:43 <TrueBrain> spnda: if you prefer, I also don't mind picking that up and showing you what I changed? I think we asked plenty of you to change, so that would only be fair. But that is fully up to you! 18:30:00 <spnda> i'm up for it tbh 18:30:13 <spnda> if I've already come this far, might aswell finish it aswell 18:30:24 <TrueBrain> :D 18:30:27 <TrueBrain> https://gist.github.com/TrueBrain/aa055052259021ec4d08545663a46eda <- allegro code for you 18:30:38 <michi_cc> It's the full crash course for next time :D 18:30:47 <michi_cc> Oh, I guess macOS can get some stuff as well :) 18:31:02 <spnda> Oh true, could just get the "default" refresh rate of the current monitor 18:31:36 <TrueBrain> michi_cc: would be nice, yes :) 18:31:37 *** jottyfan has joined #openttd 18:32:22 <michi_cc> Could always be another commit, but yes. 18:32:51 <TrueBrain> wow, spnda , that is a lot smaller AddRefreshRatesAndSelect :D 18:33:08 <spnda> yeah it is 18:34:15 <TrueBrain> guess you could remove _current_refresh_rate now and just use _settings_client.gui.refresh_rate :D One less global variable \o/ 18:34:39 <spnda> oh that true 18:35:09 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #8813: Add display refresh rate game option https://git.io/JqLkW 18:35:38 <spnda> yes LordAro, that is exactly what I am working on as part of the making it translatable 18:35:48 <LordAro> :+1: 18:36:30 <TrueBrain> spnda: are the snippets michi_cc gave you enough? Otherwise I can write some clues in the review? 18:37:08 <spnda> wait what 18:37:11 <spnda> which snippets 18:37:14 <spnda> oh 18:37:18 <spnda> yeah should be enough 18:37:24 <TrueBrain> cool! 18:37:55 <LordAro> looking at what the resolution dropdown does should be enough 18:38:09 <TrueBrain> and that means one more global GONE :D 18:38:11 <TrueBrain> I like that :) 18:38:17 <spnda> yxey yes ik 18:39:12 <TrueBrain> right, Desktop file .. like I know how to do that ... eeeeuuuuuuhhhhhhhhhhhhh 18:40:15 *** glx has joined #openttd 18:40:15 *** ChanServ sets mode: +v glx 18:40:50 <TrueBrain> https://github.com/OpenTTD/OpenTTD/blob/release/1.10/media/openttd.desktop.in is what we had 18:40:54 <TrueBrain> https://github.com/flathub/org.openttd.OpenTTD/blob/58c0892805287509d87922629a298db295e78ce8/openttd.desktop 18:40:59 <TrueBrain> is what flathub uses 18:41:05 <TrueBrain> no clue where those translations come from? 18:41:42 <TrueBrain> https://github.com/OpenTTD/OpenTTD/blob/release/1.10/media/openttd.desktop.translation.awk 18:41:43 <TrueBrain> ah 18:41:54 <_dp_> yep, that's how I deal with globals as well, just put them in another global :p 18:42:00 <TrueBrain> so yeah ... hi glx! Mind having some fun with CMake? :P 18:42:17 <glx> where? for what ? 18:42:25 <TrueBrain> awk-script :P 18:42:34 <glx> oh a rewrite 18:42:48 <TrueBrain> there is also https://github.com/OpenTTD/OpenTTD/blob/release/1.10/media/openttd.desktop.filter.awk 18:42:53 <TrueBrain> wtf was going on there :P 18:43:11 <TrueBrain> owh, those files are still in master too 18:43:14 <TrueBrain> just .. unused, I guess 18:43:29 <glx> haha filter is kind of silly 18:44:00 <glx> well at least it's easy to understand 18:44:03 <TrueBrain> I would think it is, but it was written for a reason :P 18:44:25 <spnda> actually on another note, I think I know how to do it in SetStringParameters but I'm too tired to figure out how to do it for DropDownListStringItem. 18:45:08 <spnda> Is there no function like GetLanguageString(StringID stringID); or something? 18:45:14 *** Gustavo6046_ has joined #openttd 18:45:21 <LordAro> TrueBrain: isn't it just "append 'Comment[<code>]=<translation>'" for every language? 18:45:36 <TrueBrain> LordAro: one of them, yes .. but what is the filter for? 18:45:46 <TrueBrain> spnda: the idea is that you do not get the string yourself 18:45:55 <TrueBrain> but you feed the language system the refresh-rate and the string 18:45:58 <TrueBrain> and it takes care of it for you 18:46:00 <glx> filter removes duplicate entries it seems 18:46:09 <TrueBrain> glx: but why are there duplicated entries :D 18:46:20 <glx> good question 18:46:44 <glx> hmm would also need to check old makefile to see how they are called 18:46:59 <spnda> TrueBrain so do I understand correctly I need something like STR_GAME_OPTIONS_REFRESH_RATE_HERTZ with {BLACK}{COMMA}Hz. But I see res does SPECSTR or something 18:47:29 <michi_cc> spnda: You need to use a DropDownListParamStringItem for that 18:47:46 <LordAro> SPECSTR_RESOLUTION_START looks... scary 18:48:40 <michi_cc> I actually think that DropDownListParamStringItem actually makes that crap obsolete. 18:48:42 <TrueBrain> LOL! Resolution is a lovely hack indeed :D 18:48:47 <TrueBrain> pre-dates modern approaches :D 18:49:01 <glx> https://github.com/OpenTTD/OpenTTD/blob/baf5bf29fa68c908e7033e58465562d22ec97a07/Makefile.bundle.in#L85 <-- ok it's an easy one, converting to cmake should not be too hard 18:49:03 <LordAro> i hope so 18:49:06 *** Gustavo6046 has quit IRC 18:49:06 *** Gustavo6046_ is now known as Gustavo6046 18:49:20 <TrueBrain> glx: if you wouldn't mind, that would make me really happy :D 18:49:39 <TrueBrain> so yeah spnda , resolution is a bad example, please don't repeat that :D 18:49:46 <spnda> yeah thought so 18:49:57 <TrueBrain> I wonder if we can replace that ... 18:50:01 <spnda> First of all, SetDParam(0, _current_refresh_rate); is probably wrong 18:50:02 <TrueBrain> also languages 18:50:24 <TrueBrain> that is what I would expect spnda 18:55:49 <TrueBrain> item->SetParam(0, (uint64)(size_t)_languages[i].name); <- that cast for a string .. lolz 18:55:57 <Gustavo6046> I wish my station could distribute its cargo evenly with shared order vehicles 18:56:15 <Gustavo6046> (ie all vehicles with distinct order sets get an even cut, but other vehicles with the same order set will wait) 18:57:06 <_dp_> Gustavo6046, split it with trucks 18:57:23 <spnda> im absolutely lost right now on how to create that dropdown list with a translatable thingy 18:57:44 <TrueBrain> spnda: https://gist.github.com/TrueBrain/8f368ec725ce0b723fc09ef1bc4376b9 <- that is what I just did for resolutions 18:58:02 <Gustavo6046> In particular, I have an airport connected to a dock. I use small boats to distribute cargo (Engineering Supplies) to nearby accepting industries, while Airplanes are meant to transport the surplus of all that cargo away. 18:58:12 <spnda> TrueBrain: Sure both params are index 0? 18:58:28 <TrueBrain> that explains why it wasn't working :P 18:58:32 <TrueBrain> but you only need 1, so you are safe :P 18:58:43 <Gustavo6046> How do I configure the airplane lines to load only "surplus" cargo - ie. to be lower in the cargo loading priority list? 18:58:45 <frosch123> andythenorth: TrueBrain: i start to like the idea to now acknowledge the pending release on the stream: what? tomorrow is april's fool day... 18:58:57 <TrueBrain> now = not? 18:59:03 <glx> but first, dinner 18:59:06 <frosch123> yes :) 18:59:10 <TrueBrain> and yes, the more I was thinking about it, the more I think that would be ideal :D 18:59:57 <TrueBrain> spnda: and as string you can use STR_JUST_INT 19:00:24 <spnda> where when how 19:00:30 <LordAro> TrueBrain: no you can't? needs Hz suffix 19:00:37 <Gustavo6046> _dp_: I could try that, but it might not be efficient enough, and I don't know how effective it'd be at splitting at the end of the day anyway. Keep in mind there is a pretty large volume of this cargo, but I'm trying to "ensure" a small split for small boats, to try to give them a higher "priority" than the large-capacity cargo planes. 19:00:37 <TrueBrain> owh, sorry, doh 19:00:38 <TrueBrain> nevermind 19:00:39 <TrueBrain> stupid 19:00:40 <LordAro> (or not suffix, depending on language) 19:02:59 <_dp_> Gustavo6046, truck carousel can split a lot of cargo, dunno for supplies but for vanilla goods it's like 8k/months on 8 tiles 19:03:01 <michi_cc> spnda: Refresh rate for macOS: https://gist.github.com/michicc/bef02e3dbfd678efae3a141ecb31ec94 19:03:09 <Gustavo6046> Ahh, I see 19:03:14 <andythenorth> frosch123 also new webcam means you'll be on the stream? :) 19:03:14 <spnda> michi_cc: thanks! 19:03:19 <_dp_> Gustavo6046, won't do any priority but priority is a weird thing in a first place 19:03:21 <michi_cc> We never switch display modes on macOS, so I've made it just return the current refresh rate. 19:03:43 <_dp_> Gustavo6046, one day it's "excess" and another you have an empty ship that could've loaded all that 19:03:51 <frosch123> andythenorth: as long as nrt is not the topic :p 19:04:11 <DorpsGek> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://git.io/JqLLU 19:04:12 <DorpsGek> - Update: Translations from eints (by translators) 19:04:13 <andythenorth> it's not, but could we talk about grf spec? 19:04:14 <_dp_> *surplus, whatever :p 19:04:18 <TrueBrain> michi_cc: it doesn't have multi-display support? :D 19:04:21 <andythenorth> and current state etc :P 19:04:22 <TrueBrain> (allegro doesn't btw) 19:04:29 <LordAro> michi_cc: but this setting is only applied on restart? 19:04:41 <LordAro> only returning the current refresh rate isn't particularly useful? 19:04:49 <michi_cc> This code is called when opening the game settings window. 19:05:29 <michi_cc> Unless you specifically go out of your way to change it, macOS will run 60 Hz anyway. 19:06:21 <LordAro> so what was it doing before 60Hz default? 19:07:08 <Gustavo6046> _dp_: hm? 19:07:22 <michi_cc> Huh? That's code for spnda's dropdown. All it does is to make sure the real display refresh rate will be in the drop down in addition to the default list. 19:07:33 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #8824: Codechange: remove special strings for language and resolutions https://git.io/JqLLW 19:07:49 <TrueBrain> spnda: ^^ might help as inspiration 19:08:00 <spnda> thanks a lot 19:08:04 <spnda> the dropdown works already 19:08:06 <Gustavo6046> I mean, as in, if there are N units of cargo, but there are a few small ships (high prio in this example) and a few large airplanes (low prio here), the ships should always load as much as possible, *before* the airplanes. 19:08:08 <TrueBrain> spnda: \o/ 19:08:11 <spnda> Just the default thingy showing up broken as seen on discord 19:08:12 <LordAro> michi_cc: if that's the case, then the function needs renaming 19:08:47 <TrueBrain> spnda: see my PR, in the SetStringParameters 19:08:56 <michi_cc> You've reviewed that PR :) 19:09:31 <TrueBrain> spnda: I had a similar issue for resolution 19:10:15 <spnda> ewwww you made a perfectly beautiful switch with a single line for each case horrible 19:10:23 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8824: Codechange: remove special strings for language and resolutions https://git.io/JqLLW 19:10:24 <TrueBrain> fixed ^^ 19:10:27 <_dp_> Gustavo6046, I guess you can try doing trucks like factory(full load)->dock(unload+load if available)->(airport)unload all 19:10:40 <peter1138> Urgh, another key gone bad :( 19:10:44 <TrueBrain> spnda: it might or might not have triggered my OCD too :P 19:12:00 <Gustavo6046> ahh 19:12:04 <LordAro> TrueBrain: isn't there a SetParamStr that hides^H^H^H^Hfixes the double cast thing? 19:12:07 <Gustavo6046> _dp_: that sounds like a good idea 19:12:14 <TrueBrain> LordAro: for D, yes 19:12:16 <TrueBrain> for this class, no 19:12:24 <TrueBrain> I can add it, if you like 19:12:25 <Gustavo6046> well, the dock in question is kind of a hub, engineering supplies are transfered to it 19:12:26 <LordAro> shame 19:13:23 <spnda> also since the new translation from eints commit, there's a bunch of warnings about translations that don't exist in master 19:13:38 <LordAro> TrueBrain: you're calling GetCurRes twice, might as well pull the variable out of the if else 19:13:39 <TrueBrain> that was not eints :) 19:13:45 <spnda> oh 19:13:49 <TrueBrain> LordAro: yeah, I fucked something else up too 19:13:52 <TrueBrain> give me a sec, will fix :) 19:14:13 <LordAro> also, GetCurRes() == _resolutions.size() seems... off 19:14:27 <LordAro> or is it an index/ 19:14:28 <LordAro> ? 19:14:33 <LordAro> yes 19:14:37 <LordAro> name it better pls 19:14:40 <TrueBrain> existing code, I dunno 19:14:52 <TrueBrain> you give a finger 19:14:53 <spnda> Yeah, confused me too. GetCurResIndex or similar is much better 19:16:25 <TrueBrain> okay, the current code was already weird ... 19:16:32 <TrueBrain> the dropdown always shows "name" 19:16:37 <TrueBrain> but not for the selected language 19:16:41 <TrueBrain> that uses "own_name" 19:16:53 <TrueBrain> so if you click a language, it changes 19:16:56 <TrueBrain> which is oddddddd 19:17:33 <frosch123> it's to avoid showing ???????? for languages that work with the sprite font 19:17:33 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 19:17:41 <TrueBrain> okay 19:17:44 <TrueBrain> well, I leave it in :P 19:19:03 <frosch123> though maybe you can detect missing chars, and use that to decide which name to show 19:19:56 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 19:20:12 <spnda> if this one doesnt error out and looks fine ima sleep 19:20:31 <TrueBrain> :D 19:22:15 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8813: Add display refresh rate game option https://git.io/JqLtv 19:22:20 <TrueBrain> I think it will fail as there is a missing "break", sorry :D 19:22:23 <TrueBrain> but you should go to bed 19:22:25 <TrueBrain> this can wait :) 19:22:40 <TrueBrain> (like that ever worked for me) 19:22:55 <spnda> oh for gods sake 19:23:19 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8824: Codechange: remove special strings for language and resolutions https://git.io/JqLLW 19:23:22 <TrueBrain> LordAro: alllll your wishes in a single PR :D 19:25:55 <TrueBrain> wow, the CI doesn't even error on missing "break"s? 19:25:56 <spnda> clang++ finished without erroring on the missing break; 19:25:59 <TrueBrain> That I did not expect 19:26:01 <spnda> thats interesting 19:26:16 <TrueBrain> they are so pedantic about the little things 19:26:20 <spnda> well whatever my compiler is it didn't complain either and just built fine 19:26:20 <TrueBrain> but this they just completely ignore 19:26:37 <spnda> haha look at them all finish without warning 19:26:43 <TrueBrain> not without warning 19:26:45 <TrueBrain> just without error :P 19:27:03 <TrueBrain> https://github.com/OpenTTD/OpenTTD/pull/8813/files#diff-cd8a93ef47e8471eb2746a718aa41a14822bc5666fb09fde512057f45a5210edR155 <- at least they all pick up on this :D 19:27:12 <spnda> yeah lol 19:27:14 <TrueBrain> can't believe they find that more important than a missing "break" 19:27:34 <TrueBrain> codeflow possibly wrong? NAH! NOT IMPORTANT! NOT USING A VARIABLE OMG OMG OMG OMG OMG 19:27:50 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 19:28:20 <TrueBrain> looking at your first AddRefreshRatesAndSelect and the current is just funny :) 19:28:21 <LordAro> missing break at the bottom of a switch isn't particularly wrong :p 19:28:38 <TrueBrain> LordAro: no, but it is an indication the human meant something else 19:28:38 <spnda> i love how I force-pushed that and then afterwards checked if I actually added that break 19:28:57 <spnda> and commit checker failed 19:29:00 <spnda> i dont want to anymore 19:29:08 <TrueBrain> spaces vs tabs on the break :) 19:29:16 <TrueBrain> commit checker is really punishing in that :P 19:29:29 <TrueBrain> you have no clue how many pushes I did with spaces vs tabs going wrong :P 19:29:43 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 19:29:51 <LordAro> fix yo editor 19:29:59 <spnda> yes especially with VSCode always adding spaces, where VS always did tabs, so I'm confused 19:30:02 <spnda> yeah I will have to 19:30:02 <TrueBrain> yeah .. took me a while for me to do that 19:30:05 <TrueBrain> in VSCode, click on Spaces: 4 19:30:08 <TrueBrain> make it into Tabs 19:30:09 <TrueBrain> and you are done :) 19:30:19 <TrueBrain> anyway, PR looks good to me 19:30:32 <TrueBrain> I have nothing more to bitch :D 19:30:43 <spnda> nah it was worse 19:30:51 <spnda> I had a setting on that converted Tabs into 4 spaces automatically 19:30:56 <TrueBrain> ah :) 19:31:27 <TrueBrain> LordAro: I leave approving to you, as I have nothing further 19:34:08 <Wolf01> Yay, covid test negative 19:34:13 <TrueBrain> \o/ \o/ \o/ 19:34:15 <TrueBrain> gratz dude 19:34:19 <TrueBrain> finally, FREEDOMMMMMM 19:34:21 <TrueBrain> and back to work now 19:34:25 <Wolf01> 50 days 19:34:36 <TrueBrain> damn 19:34:55 <Wolf01> Still a lot of pain on the back, I can't sit, so no work yet 19:35:11 <TrueBrain> :( 19:35:28 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #8824: Codechange: remove special strings for language and resolutions https://git.io/JqLtp 19:35:29 <Wolf01> I need to so some other tests 19:36:15 <michi_cc> spnda: You've missed setting selected_index when setting up the refresh rate dropdown. Look at eg what WID_GO_LANG_DROPDOWN does. 19:36:18 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8824: Codechange: remove special strings for language and resolutions https://git.io/JqLtj 19:36:24 <spnda> oh no 19:37:37 <TrueBrain> lol, first report of crash because of gameloop-thread :D 19:37:38 <TrueBrain> w00p :D 19:38:16 <LordAro> that was quick 19:38:35 <TrueBrain> btw, LordAro , I really think your "find" solution is worse 19:38:40 <TrueBrain> that is hard to read as fuck 19:38:53 <TrueBrain> but I don't like all this C++ magic :D 19:38:59 <LordAro> fair 19:39:05 <TrueBrain> so it means nothing, my opinion there :D 19:40:24 <michi_cc> spnda: Alternate macOS diff that queries all monitors: https://gist.github.com/michicc/9d040e31f6412b8557531df96e0f36a1 (I don't have multiple screens for macOS, so I hope it is correct). 19:41:11 <spnda> Hmm, it is probably better to add that as it was my goal for the function to get it for all monitors. I mean if it works for one it most likely should for more? 19:41:56 <spnda> Also what about an else {} on the MacOSVersionIsAtLeast to use the one we already have with a single monitor? 19:42:30 <spnda> oh that is already a condition for the current implementation 19:42:31 <michi_cc> The code works for one monitor. 19:42:54 <TrueBrain> LordAro: std::distance looks a bit better, I guess 19:43:19 <michi_cc> And 10.5 will run at 60 Hz anyway. 19:44:13 <andythenorth> I have multiple monitors 19:44:20 <andythenorth> but I am not sure if I can compile right now :P 19:44:22 <DorpsGek> [OpenTTD/OpenTTD] JGRennison opened issue #8825: Crash at startup due to #8741 https://git.io/JqLqV 19:44:33 <andythenorth> mostly due to playing tanks :P 19:45:04 <TrueBrain> michi_cc: guess we shouldn't do ClearCursorCache in one of those Gfx functions :D 19:45:49 <spnda> ok small issue, text font for selected item is just black instead of white. 19:46:09 <michi_cc> Yeah, ClearCursorCache from GameThread is a no-no. I've probably not seen it because Win32 OpenGL just silently eats the call. 19:46:15 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8824: Codechange: remove special strings for language and resolutions https://git.io/JqLLW 19:46:28 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8824: Codechange: remove special strings for language and resolutions https://git.io/JqLqy 19:47:25 <michi_cc> It might actually need exactly the same treatment as the blitter change. GfxLoadSprites might not trigger a blitter change, so we can't reuse the existing flag. 19:48:21 <TrueBrain> but clearing the cursor doesn't hurt really, does it, if we do it too often? 19:48:30 <TrueBrain> owh, no 19:48:31 <TrueBrain> nevermind 19:48:33 <TrueBrain> I get what you mean 19:48:40 <TrueBrain> hmm .. we need a queue 19:48:51 <TrueBrain> having too many of these "delay" functions get silly 19:48:52 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #8813: Add display refresh rate game option https://git.io/JqLqF 19:49:38 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #8813: Add display refresh rate game option https://git.io/JqLmv 19:49:41 <TrueBrain> parameters are a bit of an issue hmmmm 19:49:52 <DorpsGek> [OpenTTD/OpenTTD] michicc commented on pull request #8813: Add display refresh rate game option https://git.io/JqLmf 19:50:08 <TrueBrain> I was thinking something like: DRAW_EVENT_CHANGE_BLITTER, put that on a thread-safe-queue, and process it like other events in the draw-thread 19:50:16 <TrueBrain> but I would also need to know to which blitter to change 19:50:36 <TrueBrain> what do you think michi_cc , do we just keep making delayed functions, or a queue with some class-based storage or something? 19:51:08 <michi_cc> spnda: Somewhat disregard my last comment, there's some better way to do it. 19:51:34 <spnda> I was just about to resolve it 19:52:54 <TrueBrain> does std:: have a thread-safe queue? 19:52:55 <michi_cc> spnda: Let me prepare a diff real quick. 19:53:27 <spnda> LordAro: I just checked, one cannot do list.push_back(item); or I'm just really to tired now 19:53:49 <LordAro> i don't see why not.. 19:54:19 <spnda> Also TrueBrain has the same code in 8824 19:55:01 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8825: Crash at startup due to #8741 https://git.io/JqLqV 19:55:12 <LordAro> spnda: ah, it's a vector of unique_ptr 19:55:18 <LordAro> in which case, emplace_back is correct 19:57:45 <michi_cc> spnda: https://gist.github.com/michicc/fbe22bdd77b66e69ef06615be1d90f6d will fix your colour problem in the drop down (also, the space before the Hz is just my personal opinion, your call whether to take it or not). 19:58:11 <LordAro> check what we do with other units 19:58:13 <LordAro> and copy that 19:58:56 <FLHerne> andythenorth: You should compile right now, then you can blame CPU lag if you lose 19:59:46 <andythenorth> I am losing anyway 19:59:49 <TrueBrain> michi_cc: curious, why STRING1 instead of STRING? What is the difference? (I could look it up, but I am lazy) 19:59:58 <andythenorth> due to the phenomenon of MMOG 20:00:03 <andythenorth> moron team-mates 20:00:14 <michi_cc> It indicates that the string in the argument takes one argument itself. 20:00:21 <TrueBrain> ah :) 20:00:22 <TrueBrain> tnx :) 20:00:56 <supermop_Home> it looks like it will cost me at least 90 eur to ship 60 eur worth of stuff from germany 20:01:00 <michi_cc> I think we silently don't care if the param is the last param in the string, but I'd classify that as a bit of 'undefined behaviour'. 20:01:12 <spnda> michi_cc: Thanks, but I don't quite see the reasoning of adding that second black string. Simply removing {BLACK} fixes it 20:02:08 <michi_cc> All other normal GUI text strings are prefixed with {BLACK}. I'm just assuming there's a reason for that. 20:08:03 <michi_cc> TrueBrain: Evil way to solve #8825: https://gist.github.com/michicc/eace438cd7ec37b61a13c1597f032849 20:10:33 <spnda> So to LordAro's request, I think I've implemented a O(n) version for that dropdown creation. *think*, i'll push it in a sec 20:11:15 <TrueBrain> michi_cc: go for it :) 20:11:17 <TrueBrain> feels clean enough 20:11:21 <TrueBrain> but a comment is needed why 20:12:17 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 20:12:22 <spnda> updated my pr.... hopefully all works now and it is finished 20:13:13 <michi_cc> spnda: At least in the end your next PR can be perfect from the start this way XD 20:13:25 <spnda> hopefully lol 20:18:47 <DorpsGek> [OpenTTD/OpenTTD] michicc opened pull request #8826: Fix #8825: [OpenGL] Don't clear cursor cache from the game loop thread. https://git.io/JqLsk 20:20:05 <spnda> do I see a macos compile error 20:20:44 <spnda> oh I think that's just me being bad at applying patches 20:22:11 *** HerzogDeXtEr has quit IRC 20:23:10 <spnda> is github broken? 20:23:31 <spnda> I force pushed a new commit and its not showing up in the PR 20:24:10 <DorpsGek> [OpenTTD/OpenTTD] spnda updated pull request #8813: Add display refresh rate game option https://git.io/JqTS1 20:24:18 <spnda> wow that took 3 minutes 20:24:58 <LordAro> you're slowing github down with all your pushes :p 20:25:21 <spnda> yeah, taking up all the action spaces... I honestly feel kinda bad 20:26:17 <LordAro> eh, GH has lots of hardware 20:26:30 <LordAro> well, fewer macOS boxes, but still 20:29:58 <TrueBrain> hitting https://github.com/aws/aws-cli/issues/5262, as GHA just changed to 20.04 20:29:58 <TrueBrain> ugh 20:30:03 <TrueBrain> need to fix that I guess :D 20:32:08 <spnda> please tell me there's NOTHING left for 8813 thanks 20:33:03 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #8826: Fix #8825: [OpenGL] Don't clear cursor cache from the game loop thread. https://git.io/JqLG8 20:35:40 <DorpsGek> [OpenTTD/OpenTTD] michicc merged pull request #8826: Fix #8825: [OpenGL] Don't clear cursor cache from the game loop thread. https://git.io/JqLsk 20:35:43 <DorpsGek> [OpenTTD/OpenTTD] michicc closed issue #8825: Crash at startup due to #8741 https://git.io/JqLqV 20:37:55 <LordAro> sprite->~OpenGLSprite(); 20:37:55 <LordAro> ew 20:38:19 <Gustavo6046> LordAro: the destruction should come before the access, right? 20:38:23 <Gustavo6046> Or rather 20:38:38 <Gustavo6046> The value resulting from the access should be decoupled from the destruction operation 20:38:52 <Gustavo6046> I dunno, C++ is confusing. Aren't scopes meant to handle this mostly well enough on their own already? 20:38:59 <Gustavo6046> Unless you have lots of stuff in the heap, but then you can just use delete. 20:39:17 *** spnda has quit IRC 20:39:31 <michi_cc> LordAro: Well, all sprite loading uses malloc/free, so.... 20:39:41 <LordAro> i was thinking it should just call delete 20:39:44 <LordAro> but... yeah 20:40:26 <michi_cc> It's placement delete :) 20:41:51 <DorpsGek> [OpenTTD/OpenTTD] J0anJosep updated pull request #8480: Multitile depots https://git.io/JL5Hh 20:51:18 <DorpsGek> [OpenTTD/workflows] TrueBrain opened pull request #13: Fix: awscliv2 need AWS_REGION, even for commands that are not bound to regions https://git.io/JqLZg 20:51:19 <TrueBrain> I hope I did that right .. 20:53:42 <DorpsGek> [OpenTTD/workflows] TrueBrain updated pull request #13: Fix: awscliv2 need AWS_REGION, even for commands that are not bound to regions https://git.io/JqLZg 20:54:44 <TrueBrain> quick review anyone? :D 20:54:54 <TrueBrain> a typical: yeah, what-ever, review :) 20:57:36 <DorpsGek> [OpenTTD/workflows] TrueBrain merged pull request #13: Fix: awscliv2 need AWS_REGION, even for commands that are not bound to regions https://git.io/JqLZg 20:57:38 <TrueBrain> nevermind, found the: I AM ADMIN, button 21:01:51 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #8827: Fix: [Actions] update environment variable for AWS region https://git.io/JqLnn 21:02:14 <DorpsGek> [OpenTTD/OpenTTD] JGRennison opened pull request #8828: Fixes for modal progress and NewGRF scan issues https://git.io/JqLnc 21:18:49 *** frosch123 has quit IRC 21:20:38 *** virtualrandomnumber has joined #openttd 21:20:58 *** virtualrandomnumber has quit IRC 21:27:05 *** erle- has quit IRC 21:35:36 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #8827: Fix: [Actions] update environment variable for AWS region https://git.io/JqLWT 21:37:53 <supermop_Home> bah just got furloughed 21:37:54 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8827: Fix: [Actions] update environment variable for AWS region https://git.io/JqLWG 21:38:09 <supermop_Home> who fires / furloughs people on a Monday? 21:38:09 <TrueBrain> LordAro: that secret is account-wide :) 21:40:35 <orudge> supermop_Home: the Aberdeen FC board apparently 21:57:25 *** Samu has quit IRC 21:57:46 <Gustavo6046> Just wondering 21:57:53 <Gustavo6046> What is the ctrl-click equivalent in the mobile interface? 21:58:02 <Gustavo6046> I recently discovered I can have OpenTTD anywhere I go, and that is marvelous! 21:58:23 <Gustavo6046> But I couldn't figure out certain relatively basic things, e.g. shared orders, which usually would require ctrl-clicks. 21:58:30 <Gustavo6046> Surely there is some sort of pattern that is equivalent to a ctrl-click on a touchscreen? 22:02:56 <FLHerne> Gustavo6046: reddit person says "When launching the game, click the "Change device configuration" button and choose to remap physical keys. I then mapped a physical key to the CTRL button" 22:03:10 <FLHerne> "(for me the volume up button worked best as I never play with sound on my phone and this button is useless to me)" 22:12:34 *** sla_ro|master2 has joined #openttd 22:14:14 <Gustavo6046> Ah, alright 22:15:06 *** andythenorth has quit IRC 22:15:12 *** sla_ro|master has quit IRC 22:18:06 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #8827: Fix: [Actions] update environment variable for AWS region https://git.io/JqL4L 22:22:26 <supermop_Home> i guess i should go ahead and have a beer as now i have no work for at least a month 22:28:16 <NGC3982> thats a lot of beer 22:30:16 <DorpsGek> [OpenTTD/OpenSFX] orudge commented on issue #15: Release 1.0.0 https://git.io/JtrnF 22:31:49 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8827: Fix: [Actions] update environment variable for AWS region https://git.io/JqLnn 22:35:05 *** sla_ro|master has joined #openttd 22:38:32 *** nielsm has quit IRC 22:41:52 *** sla_ro|master2 has quit IRC 22:42:13 *** Westie has quit IRC 22:43:26 *** Progman has quit IRC 22:47:52 *** gelignite has quit IRC 22:52:25 <glx> https://github.com/OpenTTD/OpenTTD/compare/master...glx22:menu <-- WIP (and some unrelated changes) but I think it generates the expected .desktop 23:33:58 *** glx has quit IRC 23:41:14 <DorpsGek> [OpenTTD/OpenSFX] Wuzzy2 commented on issue #15: Release 1.0.0 https://git.io/JtrnF 23:44:24 *** Wolf01 has quit IRC 23:44:47 *** Venemo has quit IRC 23:44:47 *** APTX has quit IRC 23:44:48 *** Venemo has joined #openttd 23:44:48 *** APTX has joined #openttd 23:53:16 *** Alkel_U3 has quit IRC 23:53:29 *** Alkel_U3 has joined #openttd