Config
Log for #openttd on 27th February 2021:
Times are UTC Toggle Colours
00:00:53  <_dp_> TrueBrain, https://en.cppreference.com/w/cpp/language/types
00:01:32  <TrueBrain> I was  not the one who cared about any of this :)
00:02:19  <_dp_> ... ok, I'll just use %u :p
00:04:19  <TrueBrain> https://user-images.githubusercontent.com/1663690/109367913-b52dbb00-7897-11eb-8885-f4bf3cc6792f.png
00:04:26  <TrueBrain> that is my mouse in OpenTTD with Windows / OpenGL :D
00:04:54  <TrueBrain> can't reproduce it :(
00:05:15  <_dp_> TrueBrain, they asked for hardware mouse, not hardcore :p
00:05:16  <TrueBrain> owh, I can
00:07:37  <_dp_> oh, c++20 gets std::format
00:07:43  <TrueBrain> seems to be related to my PR
00:07:48  <TrueBrain> so that makes it interesting ..
00:08:35  <DorpsGek> [OpenTTD/OpenTTD] ebla71 opened pull request #8752: Update german.txt https://git.io/JtNuh
00:09:28  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtNze
00:09:31  <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #8752: Update german.txt https://git.io/JtNzv
00:09:34  <DorpsGek> [OpenTTD/OpenTTD] LordAro closed pull request #8752: Update german.txt https://git.io/JtNuh
00:09:48  <TrueBrain> wow, quick close
00:18:11  <TrueBrain> https://lgtm.com/projects/g/OpenTTD/OpenTTD/?mode=list <- 182 .. welp
00:18:48  <TrueBrain> most about size
00:19:33  <TrueBrain> " Comparison is always true because sel >= 0."
00:19:33  <TrueBrain> lol
00:20:25  <peter1138> I want a screen resolution that overflows int...
00:22:18  <TrueBrain> LordAro: ps: certbot :D
00:22:52  <LordAro> TrueBrain: maybe this weekend :)
00:23:02  <TrueBrain> \o/
00:27:15  <TrueBrain> okay, tested my PR on all systems I can easily test it on .. have to ask a macOS user to confirm it runs correctly on native hardware too :)
00:27:38  <TrueBrain> time to get some sleep now
00:27:40  <peter1138> Wake up andythenorth
00:32:19  <DorpsGek> [OpenTTD/OpenSFX] Wuzzy2 opened issue #23: Package description https://git.io/JtNgT
00:37:47  <DorpsGek> [OpenTTD/OpenTTD] ldpl opened pull request #8753: Change: Improve console warnings on invalid network commands https://git.io/JtNgZ
00:37:57  *** Progman has quit IRC
00:39:12  <DorpsGek> [OpenTTD/OpenTTD] glx22 opened pull request #8754: Fix: [CMake] incorrect libpng could be detected for macos https://git.io/JtNgW
00:39:35  *** HerzogDeXtEr has quit IRC
00:42:29  <_dp_> my player names are better than most people's passwords :p
00:48:43  <DorpsGek> [OpenTTD/OpenTTD] glx22 updated pull request #8754: Fix: [CMake]  libpng header/library mismatch for macos https://git.io/JtNgW
00:48:49  <glx> better message
00:50:39  <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #8754: Fix: [CMake]  libpng header/library mismatch for macos https://git.io/JtNgo
00:51:07  <DorpsGek> [OpenTTD/team] ebla71 opened issue #144: [de_DE] Translator access request https://git.io/JtNgP
00:51:10  <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #8753: Change: Improve console warnings on invalid network commands https://git.io/JtNgX
00:52:02  <TrueBrain>  glx: like Mono?
00:52:14  <TrueBrain> Too much copy/paste?
00:52:21  <LordAro> i did wonder
00:52:24  <glx> mono is installed on CI
00:52:31  <DorpsGek> [OpenTTD/OpenTTD] ebla71 commented on pull request #8752: Update german.txt https://git.io/JtNgM
00:52:36  <glx> and may be installed on user machine
00:52:48  <LordAro> i stole it from here https://developer.blender.org/rBbb872b25f219d1a9bc2446228b6dc7a9248d7f20 :p
00:52:48  <TrueBrain> But it fixed libpng
00:53:06  <TrueBrain> That comment is confusing as fuck :p
00:53:35  <glx> anyway some framework may provide outdated headers
00:53:55  <glx> and cmake will find them before the expected one
00:54:20  <glx> while the right lib is used
00:54:40  <TrueBrain> I get what it does, but Mono triggered me .. like, why do we care about c#
00:56:06  <DorpsGek> [OpenTTD/team] LordAro commented on issue #144: [de_DE] Translator access request https://git.io/JtNgP
00:56:17  <TrueBrain> It doesnt help that Framework is a macOS thing
00:58:55  <glx> Mono is just an example, other framework can cause the issue
00:59:37  <TrueBrain> Okay, the command really influences how macOS Frameworks are searched
01:00:03  <TrueBrain> Capital is important funny enough :D
01:01:01  <glx> I can fix the capital
01:01:49  <TrueBrain> Somehow that Mono still doesnt sit right .. seems the important part for us is that it deprioritises Framework over unix package
01:02:03  <TrueBrain> Every macOS has libpng insfalled
01:02:14  <TrueBrain> Has little to do with Mono
01:02:44  <TrueBrain> That is why I am a bit confused by that comment
01:03:01  <glx> I can also remove the Mono part
01:04:00  <DorpsGek> [OpenTTD/OpenTTD] glx22 dismissed a review for pull request #8754: Fix: [CMake]  libpng header/library mismatch for macos https://git.io/JtNgo
01:04:03  <DorpsGek> [OpenTTD/OpenTTD] glx22 updated pull request #8754: Fix: [CMake]  libpng header/library mismatch for macos https://git.io/JtNgW
01:05:46  <TrueBrain> Nah, it is not so much that, it is more that I try to understand it :D
01:06:26  <TrueBrain> But Mono.Framework also installs libpng
01:06:34  <TrueBrain> That I did not expect
01:06:56  *** ad5twoknebor[m] has quit IRC
01:07:05  *** ad5twoknebor[m] has joined #openttd
01:07:09  <TrueBrain> And for Blender it was picking up that version
01:07:21  <TrueBrain> Lovely odd
01:08:53  <glx> well it does too for us ;)
01:09:24  <glx> the main issue with blender is they check header version matches lib version
01:09:45  <glx> (we don't, else we would have noticed)
01:09:54  <TrueBrain> Ghehe
01:10:11  <TrueBrain> But okay, that was the link I was missing
01:10:54  <TrueBrain> It was not a random example; the comment read like it was :)
01:11:23  <TrueBrain> Sorry glx, took a bit to understand why Mono was involved :p
01:12:26  <TrueBrain> That macOS abuses common words like Framework does not help :D
01:12:45  *** didac has joined #openttd
01:13:49  <TrueBrain> I would have said: Mono.Framwork as example contains libpng
01:13:58  <TrueBrain> But that is just me
01:14:09  <TrueBrain> This is fine too :)
01:15:42  <TrueBrain> Can't approve on mobile, sorry :(
01:21:41  <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #8754: Fix: [CMake]  libpng header/library mismatch for macos https://git.io/JtN2D
01:23:37  <DorpsGek> [OpenTTD/OpenTTD] glx22 merged pull request #8754: Fix: [CMake]  libpng header/library mismatch for macos https://git.io/JtNgW
01:32:19  *** rptr has joined #openttd
01:34:23  <DorpsGek> [OpenTTD/OpenTTD] EdisonDD commented on issue #8670: Crash on macOS Big Sur after downloading graphics to 200% https://git.io/JtiPZ
01:37:36  <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #8670: Crash on macOS Big Sur after downloading graphics to 200% https://git.io/JtiPZ
01:37:39  <DorpsGek> [OpenTTD/OpenTTD] LordAro closed issue #8670: Crash on macOS Big Sur after downloading graphics to 200% https://git.io/JtiPZ
01:44:50  *** WormnestAndroid has quit IRC
01:45:03  *** WormnestAndroid has joined #openttd
01:51:23  *** jgr has quit IRC
01:54:53  <didac> has anyone tried to make road vehicles yeld?
01:54:56  *** karoline[m] has quit IRC
01:55:00  *** karoline[m] has joined #openttd
01:55:02  <didac> yield*
01:56:00  *** udo[m] has quit IRC
01:56:08  *** udo[m] has joined #openttd
01:58:24  *** nolep[m] has quit IRC
01:58:30  *** nolep[m] has joined #openttd
01:58:40  *** ist5shreawf[m] has quit IRC
01:58:46  *** ist5shreawf[m] has joined #openttd
01:59:12  *** labs[m] has quit IRC
01:59:15  *** labs[m] has joined #openttd
01:59:28  *** dude[m]1 has quit IRC
01:59:32  *** dude[m]1 has joined #openttd
02:01:04  *** glothit7ok[m] has quit IRC
02:01:08  *** glothit7ok[m] has joined #openttd
02:03:22  *** didac has quit IRC
02:03:44  *** albert[m] has quit IRC
02:03:51  *** albert[m] has joined #openttd
02:12:06  *** Flygon has joined #openttd
02:20:32  *** patrick[m]2 has quit IRC
02:20:37  *** patrick[m]2 has joined #openttd
02:34:07  *** Wormnest has quit IRC
02:35:06  *** glx has quit IRC
02:43:48  *** Wuzzy2 has quit IRC
02:44:18  *** Wuzzy2 has joined #openttd
02:54:34  *** Wuzzy2 has quit IRC
02:59:00  <DorpsGek> [OpenTTD/OpenTTD] btzy commented on pull request #8715: Fix: Vehicle list windows did not update when this year's profit changed https://git.io/JtNoi
03:01:36  *** christoph[m]2 has quit IRC
03:01:40  *** christoph[m]2 has joined #openttd
03:18:49  *** D-HUND has joined #openttd
03:22:12  *** debdog has quit IRC
03:31:11  *** muffindrake1 has joined #openttd
03:33:02  *** muffindrake has quit IRC
03:53:52  *** linda[m] has quit IRC
03:53:54  *** linda[m] has joined #openttd
03:57:05  *** WormnestAndroid has quit IRC
03:57:18  *** WormnestAndroid has joined #openttd
04:07:44  *** Aileen[m] has quit IRC
04:07:48  *** Aileen[m] has joined #openttd
04:08:00  *** cjmonagle[m] has quit IRC
04:08:03  *** cjmonagle[m] has joined #openttd
04:08:16  *** aperezdc has quit IRC
04:08:18  *** aperezdc has joined #openttd
04:12:03  *** WormnestAndroid has quit IRC
04:12:20  *** WormnestAndroid has joined #openttd
04:40:59  *** Flygon_ has joined #openttd
04:47:52  *** Flygon has quit IRC
05:14:00  *** Flygon__ has joined #openttd
05:20:52  *** Flygon_ has quit IRC
05:52:52  *** snail_UES_ has quit IRC
06:02:00  *** Flygon_ has joined #openttd
06:08:52  *** Flygon__ has quit IRC
06:12:30  *** Flygon__ has joined #openttd
06:14:56  *** Westie has quit IRC
06:15:28  *** Westie has joined #openttd
06:19:22  *** Flygon_ has quit IRC
06:26:29  *** Flygon_ has joined #openttd
06:33:22  *** Flygon__ has quit IRC
06:34:29  *** Flygon__ has joined #openttd
06:41:22  *** Flygon_ has quit IRC
06:46:22  *** rptr has quit IRC
06:54:56  *** berndj has quit IRC
06:56:31  *** berndj has joined #openttd
06:57:20  *** milek7_ has quit IRC
06:57:21  *** milek7 has joined #openttd
07:00:10  *** jottyfan has joined #openttd
07:07:28  *** Timberwolf has quit IRC
07:07:31  *** Timberwolf has joined #openttd
07:08:53  *** masse[m] has joined #openttd
07:10:29  *** rptr has joined #openttd
07:10:30  *** didac has joined #openttd
07:16:31  *** masse[m] has left #openttd
07:22:15  *** didac has quit IRC
07:37:04  *** welterde has quit IRC
07:37:40  *** welterde has joined #openttd
07:39:28  *** SmatZ has quit IRC
07:39:59  *** SmatZ has joined #openttd
07:40:13  *** andythenorth has joined #openttd
07:50:30  *** sla_ro|master has joined #openttd
08:00:13  *** nielsm has joined #openttd
08:02:47  *** k-man has quit IRC
08:10:13  *** andythenorth has quit IRC
08:21:14  *** Progman has joined #openttd
08:24:16  *** grossing has quit IRC
08:24:18  *** grossing has joined #openttd
08:28:32  *** tonyfinn[m] has quit IRC
08:28:35  *** tonyfinn[m] has joined #openttd
08:40:35  *** Wolf01 has joined #openttd
08:41:18  *** andythenorth has joined #openttd
08:51:28  *** k-man has joined #openttd
08:57:04  *** LordAro has quit IRC
08:57:04  *** LordAro has joined #openttd
09:05:36  *** skrzyp has quit IRC
09:05:49  *** skrzyp has joined #openttd
09:07:31  <andythenorth> yo
09:07:37  <Wolf01> Oy
09:16:48  *** osvaldo[m] has quit IRC
09:16:51  *** osvaldo[m] has joined #openttd
09:18:34  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8751: Disconnecting clients affect other clients in the queue https://git.io/JtN8c
09:21:36  *** JamesRoss[m] has quit IRC
09:21:42  *** JamesRoss[m] has joined #openttd
09:32:36  <_dp_> yeah, it sends pings for queued clients when first finishes dowloading but not while it's still going
09:32:58  <TrueBrain> you are not the only one who can find bugs :P
09:33:23  <_dp_> I saw that bug yesterday, just didn't get to reporting it yet :p
09:33:28  <TrueBrain> sure sure
09:33:55  <TrueBrain> :P
09:34:42  <_dp_> btw, a interesting detail: most of the map waiting these days is due to server compressing the map, not the network speed
09:35:01  <TrueBrain> the world changed, that is for sure :)
09:35:13  <TrueBrain> it is fully optimized for 2004 Internet
09:35:46  <Eddi|zuHause> we used to have a setting to tweak compression speed
09:36:00  <_dp_> there is a setting but it changes between slow and too slow :p
09:36:35  <Eddi|zuHause> you can set it to uncompressed :p
09:37:33  <_dp_> uncompressed feels like such a waste with all the megabytes of 0s openttd is writing
09:38:33  <_dp_> there should be some faster compression libraries
09:38:39  <_dp_> that at least do some rle xD
09:39:05  <TrueBrain> who was going to implement zstd again?
09:42:24  *** yur3shmukcik[m] has quit IRC
09:42:31  *** yur3shmukcik[m] has joined #openttd
09:42:48  <TrueBrain> funny, the problem is in fact a bit bigger, your ticket
09:42:55  <TrueBrain> the server keeps on saving/sending while the client disconnected
09:43:04  <TrueBrain> not until that is done, the next client can go :P
09:43:55  <_dp_> wow zstd looks awesome
09:43:58  <TrueBrain> so servers running big maps can be DoS'd this way
09:44:09  <_dp_> yeah, queueing has a lot of room for improvement xD
09:44:15  <TrueBrain> yeah, zstd is awesome. Someone a while ago came in and was going to implement it, at least, that was suggested
09:44:41  <_dp_> why can't it send map to several clients at once?
09:44:42  <TrueBrain> speed of L4 compression with the size of any decent compression
09:44:45  <_dp_> it can even be the same map
09:44:52  <TrueBrain> the stagger-issue
09:45:02  <TrueBrain> say, you join a new client at the end when the last finished
09:45:09  <TrueBrain> so you can keep using the same map over and over
09:45:16  <TrueBrain> at the end, the queue to catch up would be HUGE
09:45:20  *** Eddi|zuHause has quit IRC
09:45:28  <_dp_> well, yeah, there should be some threshold
09:45:40  <TrueBrain> so a threshold of 1 is a lot easier to implement :D
09:45:59  *** Eddi|zuHause has joined #openttd
09:46:13  <_dp_> but then one slow but persistent client nearly blocks the entire server :p
09:46:28  <TrueBrain> yes
09:46:53  <TrueBrain> wouldn't make a difference for servers that pause during join anyway
09:46:56  <TrueBrain> (which is the default)
09:47:23  <_dp_> it's nearly unplayable for any significant number of clients
09:48:09  <TrueBrain> okay, solved the primary issue of your ticket
09:48:18  <TrueBrain> the desync is more annoyed, as I am pretty sure it is this one packet that can skip queue
09:48:49  <TrueBrain> so first, solving that "server doesn't respond" issue .. hmm
09:52:03  *** rptr has quit IRC
09:52:21  <TrueBrain> I just send a packet to all clients that are waiting every second
09:52:29  <TrueBrain> should be more than enough to avoid that problem, without wasting bandwidth
09:52:30  <DorpsGek> [OpenTTD/OpenTTD] michicc commented on pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtNQj
09:52:40  <_dp_> there are some other issues with clients being out of the queue, I think I talked about it before
09:53:30  <TrueBrain> if I get a penny every time you mention something like "there is somewhere here possible there somewhere an issue with the network", I wouldn't have to find a job ;)
09:53:40  <TrueBrain> sorry :D
09:53:47  <_dp_> xD
09:53:58  <TrueBrain> you have to be a bit more specific ;)
09:54:13  <TrueBrain> you complain a lot about network, but mostly not in words I can digest :) This ticket is very useful, as that is actionable :)
09:55:00  <TrueBrain> so if you have anything more, spill! :D
09:56:06  <_dp_> well, I have this in my notes: https://dpaste.org/zhQo
09:58:24  <_dp_> mistimed company reset is a citymania issue but the rest should be openttd
09:59:39  <TrueBrain> it is very difficult to understand what is happening there :P
09:59:43  *** Progman has quit IRC
09:59:46  <TrueBrain> but let me fix the desync issue first
09:59:53  <_dp_> well, yeah, that's why it's not a ticket yet
10:00:02  <_dp_> hard to repro that kind of stuff
10:00:21  <TrueBrain> chain-of-events is often enough to understand what is going on :)
10:00:25  <TrueBrain> that is the most work, honestly
10:01:06  <TrueBrain> okay, the desync is just a stupid bug
10:01:21  <_dp_> well, that's all I have on those issues :P
10:02:03  <_dp_> server log and some speculations basically...
10:03:28  <_dp_> you can see that kind of stuff on redding server all day long, doesn't really much unfortunately :(
10:03:34  <_dp_> *reddit
10:03:41  <_dp_> *help
10:06:04  <TrueBrain> right, lets see if there are other commands that can create a desync in the same way as company-ctrl could
10:06:29  <TrueBrain> 4 commands that get the client-id
10:06:36  *** rptr has joined #openttd
10:07:47  <TrueBrain> no, none of them will cause a similar issue
10:08:18  <TrueBrain> GoalScript has one instance
10:11:05  <TrueBrain> same issue, just no chance on desync
10:11:06  <TrueBrain> still, lets fix that
10:11:22  <_dp_> GoalScript?
10:11:28  *** Heiki[m] has quit IRC
10:11:32  *** Heiki[m] has joined #openttd
10:11:34  <TrueBrain> GS
10:11:43  <TrueBrain> GS Goal
10:11:54  <TrueBrain> don't think you are the only one who can't type today :P
10:12:03  <TrueBrain> CmdGoalQuestion to be really exact
10:12:25  <TrueBrain> right, now that is solved, lets see about your dpaste ..
10:13:52  <_dp_> I can try to confirm some of it with a python client...
10:14:46  <TrueBrain> that paste might make sense to you, but to me it reads as: client was joining a company that got reset, and he got kicked for that
10:14:56  <TrueBrain> which doesn't really seem so much as a bug
10:14:59  <TrueBrain> more just poor timing
10:16:49  <_dp_> poor timing isn't exactly a good reason for kicking clients :p
10:17:09  <TrueBrain> there is also not really a lot that can be done in such situations, and on normal servers this should be ultra rare
10:17:12  <TrueBrain> like super dupah rare
10:20:30  <TrueBrain> so there are 2 ways a client can be forced to become a spectator (which happens out-of-band, from the maps point of view):
10:20:42  <TrueBrain> 1) when while joining, the new company you requested could not be made
10:20:48  <TrueBrain> 2) when the company you were joining is sold off
10:20:52  *** jgx has quit IRC
10:21:09  *** jgx has joined #openttd
10:21:13  <TrueBrain> the first shouldn't be any problem, as you shouldn't have any command queued after that
10:24:00  <TrueBrain> the second also shouldn't be an issue, as there too you shouldn't have had any commands queued up
10:27:48  <TrueBrain> well, no, the second could potentially be an issue, when you send a DoCommand to the server at the EXACT moment he moves you to spectator
10:28:01  <TrueBrain> there is 1 game-tick delay between those two
10:28:28  <TrueBrain> so if your server removes companies when a new client joins, like a garbage collection situation
10:28:36  <TrueBrain> you make it a lot more likely to trigger this issue
10:29:03  <TrueBrain> client joins, sends a command, takes a tick for the server to pick up on that
10:29:14  <TrueBrain> server, on client join, does garbage collection, removes company, receive docommand
10:29:18  <TrueBrain> something like that
10:32:05  *** HerzogDeXtEr has joined #openttd
10:36:17  <_dp_> I'll test it some more...
10:36:24  <_dp_> was pause on join always a non-gui setting?
10:36:35  <_dp_> I could've sworn I changed it from gui yesterday...
10:37:25  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtN5X
10:37:35  <TrueBrain> I really wouldn't know :)
10:37:45  <TrueBrain> I wasn't here when they made this new setting GUI
10:38:32  <TrueBrain> well that squashes 4 bugs, of which I am pretty sure 2 date back to the invention of the new network protocol
10:38:52  <_dp_> I actually tested pause on join interacts with connecting clients yesterday
10:38:59  <_dp_> wtf was I clicking then... xD
10:39:16  <TrueBrain> if you don't mind testing my PR _dp_ , that would be appreciated
10:39:20  *** andythenorth has quit IRC
10:39:36  <_dp_> TrueBrain, yeah, I'll do
10:41:00  <TrueBrain> cheers
10:42:59  <_dp_> NetworkServerNewCompany checks for _network_server so that if is kinda redundant
10:43:18  <TrueBrain> it is, but it makes the function a whole lot more readable that _ci is only used when _network_server is set
10:43:42  <_dp_> yeah, I guess...
10:44:48  <_dp_> though could mb use a comment before someone optimizes it out :p
10:49:14  <peter1138> mb?
10:50:00  <TrueBrain> he is very lazy and doesn't want to type aye
10:50:11  <TrueBrain> sn h wll tlk lk ths
10:51:07  <_dp_> TrueBrain, I didn't do any tests yet but I don't quite like your solution tbh
10:51:27  <_dp_> by checking _network_server you just flipped the issue around, not solved it afaict
10:51:39  <TrueBrain> huh?
10:51:42  <_dp_> server and client should success or fail synchronously
10:51:46  <TrueBrain> no
10:51:48  <_dp_> but they can't if client info is desynced
10:51:53  <TrueBrain> server validates all DoCommands first
10:52:41  <TrueBrain> remember this only happens for queue packets during map download
10:52:42  <_dp_> isn't company_ctrl always valid?
10:53:02  <_dp_> well, cca_new case I mean
10:53:16  <TrueBrain> the whole if-statement can most likely be removed, as it became bull
10:53:27  <TrueBrain> but I didn't want to go that far yet, as "it might be there for some reason or another"
10:53:31  <TrueBrain> anyway, see my commit messages
10:53:37  <TrueBrain> I think I explain the reasoning there pretty well
10:55:24  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8741: Move GameLoop into a thread (and no longer run Paint in a thread) https://git.io/JtNdr
10:57:11  <_dp_> TrueBrain, server checks whether that client exist after it already queued the that command for all clients afaict
10:57:30  <_dp_> non-existing client creating a company is a much rare cases I guess but should still be posible
10:57:38  <TrueBrain> no; server first validates all commands before it sends them out to the rest
10:58:19  <TrueBrain> the server doesn't blindly broadcasts every DoCommand
10:58:22  <TrueBrain> that would be rather bad :D
10:58:40  <dwfreed> DoCommand blowupeverything()
10:59:03  <_dp_> that validation will stop here https://github.com/OpenTTD/OpenTTD/blob/master/src/company_cmd.cpp#L821
10:59:13  <TrueBrain> and yes, very very strictly speaking, you have 1 tick to leave the server when you created a new company
10:59:52  <TrueBrain> as the only clients that can issue a command, are ones the server know about
11:00:00  <TrueBrain> so that check during testing is never going to fail, like, ever
11:00:08  <TrueBrain> then there is 1 tick delay before everyone executes it
11:00:20  <TrueBrain> except for clients that are joining
11:00:40  <TrueBrain> as I mentioned, the if() could just as well be removed
11:01:14  <_dp_> if it's removed it will create companies twice :p
11:01:32  <TrueBrain> huh?
11:02:18  <_dp_> one on validation, one on execution
11:02:50  <TrueBrain> you .. just pointed out the line that prevents that from happening?
11:02:56  <TrueBrain> the if() around ci doesn't do that
11:03:42  <TrueBrain> https://github.com/OpenTTD/OpenTTD/commit/f8f7febe41311ff3562c57a10672e3a62174104b <- this is the commit introducing the bug
11:04:02  <TrueBrain> it changed from a "is this ID valid" to a "it has to exist"
11:04:05  <TrueBrain> which is wrong
11:04:09  <_dp_> ah, you meant removing if (ci == nullptr) ?
11:04:16  <TrueBrain> yes
11:04:46  <TrueBrain> so it is a 13 year old bug
11:04:50  <_dp_> something will probably crash
11:04:57  <_dp_> oh, wait, that may actually crash your pr
11:05:17  <TrueBrain> and we are back to the "somethings" :P
11:05:46  <_dp_> it takes more than 3 seconds to test stuff involving 3 openttd instances :p
11:07:02  <_dp_> but now I know what to test first ;)
11:12:28  <Eddi|zuHause> we should prevent this guy https://www.tt-forums.net/viewtopic.php?f=32&t=88566 from ever meeting samu. the world might implode
11:13:20  <_dp_> haha, yeah, I just ignored it in hope this stupidity never reaches the github :p
11:14:10  <TrueBrain> that you read all that
11:14:31  <_dp_> that's just literally turning half of the game into https://i.imgur.com/oJnGlTm.png
11:15:08  <Eddi|zuHause> exactly. it puts even more emphasis on station walking
11:15:19  <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
11:16:32  <Eddi|zuHause> TrueBrain: i didn't strictly read "all" of it, but i tried hard to find the parts that would explain any motivation. didn't find it.
11:18:56  *** cawal[m] has quit IRC
11:19:01  *** cawal[m] has joined #openttd
11:20:00  <Eddi|zuHause> what's really the problem with long-distance routes is that there's no simulation of what the receiving industry is willing to pay
11:20:32  *** nartir[m] has quit IRC
11:20:34  *** nartir[m] has joined #openttd
11:21:21  <TrueBrain> because OpenTTD has no concept of economy, not really anyway
11:24:25  <_dp_> I guess I'd say that optimal route being too long on default settings is not ideal
11:24:38  <_dp_> would probably be better to have cargo payment rates slightly different
11:24:53  <_dp_> and you can do with newgrfs ofc... but no one does
11:25:37  <Eddi|zuHause> there's loads of things wrong with payment rates. but if you're just tweaking random calculations without a bigger plan, you're just shifting the problems around instead of solving them
11:26:31  <_dp_> yeah, that's for sure
11:26:40  <_dp_> default stuff mb not ideal but it kinda works
11:26:50  <peter1138> Michael Blunck?
11:27:27  <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #8753: Change: Improve console warnings on invalid network commands https://git.io/JtNFy
11:30:20  <DorpsGek> [OpenTTD/OpenTTD] ldpl commented on pull request #8753: Change: Improve console warnings on invalid network commands https://git.io/JtNFd
11:31:24  *** Samu has joined #openttd
11:32:05  <Eddi|zuHause> peter1138: my exact same thought every single time.
11:32:15  <TrueBrain> I have to admit, me too :D
11:32:49  <TrueBrain> michi_cc: hmm, ClearSystemSprites() is a bit different than any other call, and I am not sure how to solve it properly .. basically, normally when we exit UpdateWindows, we can freely draw
11:32:54  <TrueBrain> nothing is going to influence that anymore
11:33:03  <TrueBrain> GameLoop cannot make a single change, that would make what we want to draw invalid
11:33:07  <TrueBrain> EXCEPT for ClearSystemSprites :D
11:33:29  <TrueBrain> and I am not sure how to solve that properly
11:33:39  <michi_cc> Hmm, maybe set a flag somehwere and then check that before starting drawing?
11:33:47  <TrueBrain> and skip the frame?
11:34:07  <TrueBrain> (only the next UpdateWindows will correct the cursor_cache)
11:34:17  <michi_cc> Why skip it, or is loading a sprite from disk not possible then?
11:34:39  <TrueBrain> DrawMouseCursor is called from UpdateWindows, which is filling the cache
11:35:41  <michi_cc> But DrawMouseCursor is completely a no-op if the video driver draws the cursor.
11:36:17  <TrueBrain> DrawMouseCursor creates the OpenGL sprite, if it is not there yet
11:36:51  <TrueBrain> which seems to be the problem, if I get this right: DrawMouseCursor is called, everything is swell, and everything prepares for drawing. GameLoop runs, clears the cache, and OpenGL is told to render a sprite that is removed
11:37:25  <michi_cc> Oh, you meant OpenGLBackend::DrawMouseCursor? Because that is create the OpenGL sprite and only called on Paint.
11:37:31  *** nielsm has quit IRC
11:37:38  <TrueBrain> called on Paint? Hmm, now that is interesting ..
11:37:50  <TrueBrain> DrawMouseCursor is normally called from UpdateWindows
11:38:19  <TrueBrain> ah, OpenGL calls it again
11:38:22  <michi_cc> First line in ::DrawMouseCursor is "if (VideoDriver::GetInstance()->UseSystemCursor()) return;";
11:38:28  <TrueBrain> yeah, okay
11:38:38  <TrueBrain> so why is the mouse corrupted in that case, as then this should be fine
11:38:38  <TrueBrain> hmmm
11:38:44  <TrueBrain> threads ... you got to hate them :D
11:38:49  *** jottyfan has quit IRC
11:39:00  <TrueBrain> you are right michi_cc , tnx :)
11:39:17  <TrueBrain> functions with the same name called at different times confused me there :D But I knew this ...
11:39:52  <michi_cc> ::DrawMouseCursor and OpenGLBackend::DrawMouseCursor are not the same C++ name :D
11:40:12  <TrueBrain> :D
11:40:21  <TrueBrain> can you delete a texture from another thread, with OpenGL?
11:40:25  <TrueBrain> can that be the cause of a problem?
11:40:50  <michi_cc> No, all OpenGL functions depend on a valid context, and that is always thread-specific.
11:41:10  <TrueBrain> so I should set a flag and delay clearing the cursor cache .. lets try
11:41:17  <michi_cc> So, no, you may not call ClearSystemSprites from a different thread.
11:41:20  *** Progman has joined #openttd
11:43:05  <TrueBrain> nope, still the same problem
11:43:06  <TrueBrain> grr
11:51:28  *** pothyurf[m] has quit IRC
11:51:34  *** pothyurf[m] has joined #openttd
11:51:44  *** bkilm[m] has quit IRC
11:51:49  *** bkilm[m] has joined #openttd
11:52:31  <TrueBrain> some debugging later, and it is all done from the same thread for sure
11:52:34  <TrueBrain> so that is not the issue .. hmm
11:53:55  <DorpsGek> [OpenTTD/OpenTTD] michicc opened pull request #8756: Fix #8750: [OpenGL] Line drawing did not set proper RGB/mask colours. https://git.io/JtNAx
11:54:54  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #8756: Fix #8750: [OpenGL] Line drawing did not set proper RGB/mask colours. https://git.io/JtNxe
11:57:16  <TrueBrain> owh, so maybe the problem is not so much OpenGL with threads, but our own GetRawSprite
11:57:33  <TrueBrain> that it is flushing the sprites in GameLoop, while DrawMouseCursor() is making it into a OpenGL sprite
11:58:06  <TrueBrain> GetRawSprite reads from the game-state, ofc
11:58:32  <michi_cc> Mutex!
11:58:43  <TrueBrain> well, the problem is, it is a difficult mutex to create
11:58:48  <TrueBrain> we want things to draw while GameLoop continues
11:58:52  <TrueBrain> that is the whole point
11:59:19  <TrueBrain> so I think I am better off making a "PrepareCursorCache" or something
11:59:25  <TrueBrain> and do that while the state is still locked
11:59:46  <TrueBrain> the thing that might be tricky there, is that an LRU is used
12:00:01  <TrueBrain> so strictly seen, it could be possible, that it constantly needs to use GetRawSprite?
12:00:16  <TrueBrain> (if _cursor.sprite_count is bigger than LRU size?)
12:00:55  *** roadt__ has joined #openttd
12:01:08  <michi_cc> Yes, that way it could happen. It will not be default, no idea if NewGRFs can somehow define an animated cursor with a zillion frames.
12:01:37  <TrueBrain> so OpenGL violates the: do not touch game state during Draw .. so I can blame you, job's done :D :D <3
12:02:01  <michi_cc> I was never threading OpenGL drawing :P
12:02:14  <TrueBrain> so I got to clean up, pffft :D
12:02:16  <TrueBrain> no, it is totally fine
12:02:22  <TrueBrain> just a bit short on ideas how to solve it
12:03:17  <TrueBrain> you can have at most 16 sprite sequences
12:03:53  <michi_cc> I don't really know if that LRU is really necessary. General advice on Google is to not create textures "often", but I'm not sure if our cursor switching frequency counts as often.
12:04:12  <michi_cc> So it might be totally fine to just create textures for exactly the set cursor when it is set.
12:04:33  <TrueBrain> you got to love words like "often"
12:04:37  <TrueBrain> how do you quantify it?
12:04:39  <TrueBrain> well .. just .. you know
12:04:51  <TrueBrain> for a 3D game, I can imagine people do 1000 new textures every frame
12:04:53  <TrueBrain> that is bad
12:05:02  <TrueBrain> but indeed .. that new sprite once every blue-moon for us
12:05:27  <TrueBrain> 		if (_cursor.sprite_count + seq.count > lengthof(_cursor.sprite_seq)) break;
12:05:35  <TrueBrain> so sprite_count is limited to the length of sprite_seq
12:05:36  <michi_cc> The unfortunate truth for 3D game stuff is usually: measure for each vendor, each GPU and the ten most common driver versions.
12:05:37  <TrueBrain> which is 16
12:05:56  <TrueBrain> so the 40 LRU cache is sufficient to keep all sprites for at least a single frame
12:06:32  <michi_cc> Or just get popular enough with your game, then the driver vendors will put in special optimizations for you into their drivers :D
12:06:59  *** roadt_ has quit IRC
12:09:41  <DorpsGek> [OpenTTD/OpenTTD] michicc merged pull request #8756: Fix #8750: [OpenGL] Line drawing did not set proper RGB/mask colours. https://git.io/JtNAx
12:09:44  <DorpsGek> [OpenTTD/OpenTTD] michicc closed issue #8750: Graph point connector lines are transparent https://git.io/JtNWv
12:11:38  <TrueBrain> there, problem solved \o/
12:11:40  <TrueBrain> tnx michi_cc :D
12:11:42  <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:22:39  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtN5X
12:22:48  <TrueBrain> _dp_: looked it over again, and indeed, that if() statement can just be removed
12:23:03  <TrueBrain> also resolves the very very unlikely chance someone disconnects in a single frame after creating a company :P
12:24:07  *** frosch123 has joined #openttd
12:25:36  <TrueBrain> _dp_: mainly what I forgot, that the server sets the ClientID on broadcast to everyone
12:25:44  <TrueBrain> so this value is only set at DC_EXEC
12:25:48  <TrueBrain> and valid at the time of setting it
12:25:52  *** Exec has quit IRC
12:25:53  *** Exec has joined #openttd
12:25:59  <TrueBrain> so what-ever the latency was, it is irrelevant, and the company should be created
12:26:05  <TrueBrain> updated commit message etc to match that
12:34:24  *** Strakaty has quit IRC
12:34:29  *** Strakaty has joined #openttd
12:34:33  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtN5X
12:35:52  <_dp_> you're updating it faster than I can test :p
12:39:11  *** sla_ro|master has quit IRC
12:44:34  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8704: Change: Move toolbar button for cargo payment graph under industries https://git.io/JtNhy
12:44:42  <TrueBrain> _dp_: because I am not lazy :P :P :D
12:44:44  <TrueBrain> <3
12:45:23  <TrueBrain> that last ticket feels like it is a change just for the shake of changing .. curious if there is more to it :)
12:45:39  <TrueBrain> shake? Lol
12:45:39  <DorpsGek> [OpenTTD/OpenTTD] kiwitreekor updated pull request #7575: Feature: Industry production graph https://git.io/fjc3i
12:45:42  <TrueBrain> yes, lets go with shake
12:46:15  <DorpsGek> [OpenTTD/OpenTTD] kiwitreekor commented on pull request #7575: Feature: Industry production graph https://git.io/JtNh9
12:49:27  <LordAro> TrueBrain: thoughts on RC1 today/tomorrow?
12:49:53  <TrueBrain> I would prefer that
12:50:05  <_dp_> TrueBrain, you want me to spam github with every little weird thing I found? :p
12:50:20  <TrueBrain> _dp_: I do not want anyone to spam any system
12:50:29  <TrueBrain> but if they are things worth mentioning, collect them in a single place, yes
12:50:31  <_dp_> funnily enough when I wanted to screenshot some weird thing I actually found kind of a bug))
12:50:34  <_dp_> https://i.imgur.com/SzCU5Gf.png
12:50:51  <_dp_> client_7 never had a join message
12:50:54  <TrueBrain> just make sure I can either reproduce it, or get what the fuck you are showing :P
12:52:07  <TrueBrain> LordAro: do we also want to branch already, in that case? I ask, as I never really like branching, but I get why we do it :P
12:52:43  <TrueBrain> backporting is just annoying, basically
12:52:43  <LordAro> TrueBrain: it'd save effort to wait until we actually do the release :p
12:52:51  <LordAro> otherwise i'd have to backport the network fixes or whatever :p
12:52:58  <TrueBrain> exactly
12:53:07  <TrueBrain> so we can try that this release, just branch a few days before the release
12:53:10  <TrueBrain> instead of at RC, I guess
12:53:10  <LordAro> also review the remaining "feature" PRs, as they won't get backported otherwise
12:53:13  <_dp_> well, I'm pretty much stress testing it with python atm so reproing stuff logically is a bit tricky :p
12:53:39  <LordAro> _dp_: what do your python scripts look like?
12:54:03  <TrueBrain> LordAro: we could collect the PRs we want in 1.11, and just not merge any others for the next 2 weeks or so, branch after?
12:54:26  <_dp_> LordAro, ehm... this? https://i.imgur.com/H2tctFt.png
12:54:41  <_dp_> and whole bunch of code behind it
12:55:17  <michi_cc> If we'd want to stay consistent, calling it beta2 would match not branching right now.
12:55:36  <TrueBrain> michi_cc: fair point
12:55:52  <TrueBrain> ugh, GameSpeed window .. I guess that should be done for 1.11
12:55:56  <LordAro> _dp_: ah, properly faking the client
12:55:58  <michi_cc> I mean, there's no law to require is to do RC1-5 before release :)
12:55:59  <TrueBrain> as otherwise FFWD really is pointless
12:56:00  <LordAro> TrueBrain: ideally, yes :)
12:56:16  <TrueBrain> okay, so lets do a beta2 :)
12:56:25  <TrueBrain> so .. who is doing the changelog? :D
12:56:42  <LordAro> i wasn't expecting anyone else to do it :p
12:56:51  <TrueBrain> happy you offer :D
12:57:18  <_dp_> beta2 after merging desync fixes pls
12:57:25  <_dp_> so I can actually try to see if that help
12:58:10  <_dp_> though it only fails with many clients usually so may not be happening on beta2 :(
12:58:51  <TrueBrain> https://github.com/OpenTTD/OpenTTD/milestone/3 is what I found for 1.11
12:59:02  <LordAro> _dp_: move all your servers to beta2, simple :p
12:59:10  <DorpsGek> [OpenTTD/OpenTTD] frosch123 opened pull request #8757: Fix: Issues with cursors consisting of multiple sprites https://git.io/JtNjw
12:59:21  <frosch123> ^^ just leaving that here, but have to go now :)
12:59:29  <_dp_> LordAro, yeah, and have empty servers :p
13:00:23  *** andythenorth has joined #openttd
13:00:45  <TrueBrain> andythenorth: my dearest macOS tester! How great to see you today! :D
13:01:40  <TrueBrain> if you have any chance in the next few days to test some macOS related stuff, I would love to know if https://github.com/OpenTTD/OpenTTD/pull/8741 works, and that you don't see anything odd when loading game, fast-forward, generate a 2kx2k map, and change font-size in-game. You should see zero difference
13:03:32  <TrueBrain> LordAro: guess we should also fix OpenGFX missing 2 sprites soon :D
13:03:32  *** Progman has quit IRC
13:03:57  <LordAro> ideally before release, yes :p
13:04:26  <LordAro> TrueBrain: but first, can i break a bananas server?
13:04:59  <TrueBrain> LordAro: staging, yes, always
13:05:03  <TrueBrain> what are you planning?
13:05:15  <LordAro> certbot :p
13:05:23  <LordAro> difficult to mess up one without the other
13:05:27  <LordAro> as they're the same server
13:06:55  <DorpsGek> [OpenTTD/OpenTTD] ldpl commented on issue #8751: Disconnecting clients affect other clients in the queue https://git.io/JtN8c
13:07:33  <LordAro> TrueBrain: should also do things like opensfx & nml releases
13:08:28  *** andythenorth has quit IRC
13:08:28  <TrueBrain> I poked the translators
13:08:34  <_dp_> 8093 vs 8751 nicely illustrates the difference between weird thing and fixable bug :p
13:08:51  <TrueBrain> LordAro: ah .. euh .. yeah, just go for it .. do it on one of the two first if you can
13:09:19  <LordAro> oh for sure, i wouldn't break both at once :p
13:09:26  <LordAro> (though it should handle that anyway, right?)
13:09:35  <TrueBrain> it does
13:09:38  <TrueBrain> just costs more :P
13:10:54  <frosch123> nml still has a PR pending :p
13:11:05  <frosch123> i was going to look into the missing ogfx sprites this weekend though
13:11:33  <TrueBrain> \o/
13:11:42  <_dp_> well, I guess 8093 helped with vehicle pr, it just didn't fix all of the "regular desync" issues
13:12:11  <TrueBrain> I like that we can now just poke the translators :D
13:12:51  <TrueBrain> 26 languages without translator
13:13:06  <TrueBrain> out of 63
13:13:08  <TrueBrain> that is not bad
13:13:42  <LordAro> i had it in mind to put a "reminder" in the news post
13:14:54  <TrueBrain> yeah, might be good for the beta post to mention the empty teams
13:15:00  <TrueBrain> just to see if that drags in a few more people :)
13:15:45  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #8757: Fix: Issues with cursors consisting of multiple sprites https://git.io/JtAeB
13:23:34  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8099: UI elements (incl. news message) do not resize properly, causing graphical glitches https://git.io/JftoL
13:26:40  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8099: UI elements (incl. news message) do not resize properly, causing graphical glitches https://git.io/JftoL
13:28:55  <_dp_> progress of testing #8755 so far: bugs in OpenTTD - 0, bugs in Python - 1 :p
13:29:07  <TrueBrain> :D
13:31:27  *** andythenorth has joined #openttd
13:35:32  <TrueBrain> tempted to gamify "fix bugs out of the issuelist"
13:35:36  <TrueBrain> most are just "out there"
13:35:41  <TrueBrain> should just RNG which to pick up
13:35:44  <DorpsGek> [OpenTTD/OpenTTD] James103 commented on issue #8099: UI elements (incl. news message) do not resize properly, causing graphical glitches https://git.io/JftoL
13:35:54  <TrueBrain> or live-stream it, ofc
13:36:00  <Eddi|zuHause> TrueBrain: you're going to send andy on a rampage
13:36:42  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #8099: UI elements (incl. news message) do not resize properly, causing graphical glitches https://git.io/JftoL
13:38:05  <LordAro> TrueBrain: first step of any minor change, completely refactor it :)
13:38:20  <TrueBrain> oh-oh :P
13:38:39  <TrueBrain> hmm .. fixing many of these bugs is only fun when you are comms with people joking about it, honestly
13:39:07  <TrueBrain> tracking down the bug itself just is not fun at all, so finding a way to make it more fun would be good
13:39:56  <michi_cc> Okay, let's see if I can properly butcher frosch's PR :)
13:40:15  <DorpsGek> [OpenTTD/OpenTTD] michicc updated pull request #8757: Fix: Issues with cursors consisting of multiple sprites https://git.io/JtNjw
13:40:18  <DorpsGek> [OpenTTD/OpenTTD] James103 commented on issue #8099: UI elements (incl. news message) do not resize properly, causing graphical glitches https://git.io/JftoL
13:41:07  <DorpsGek> [OpenTTD/OpenTTD] michicc approved pull request #8757: Fix: Issues with cursors consisting of multiple sprites https://git.io/JtAvw
13:41:22  <TrueBrain> I like how you used one of my tricks :D
13:41:24  <TrueBrain> nice michi_cc :D
13:42:52  <TrueBrain> the news message error seems to be the same as most of the others: reflowing doesn't change height/width of the UIs already active
13:43:21  <TrueBrain> I guess that is done only once, which would make sense
13:46:10  <andythenorth> yo
13:49:31  *** iSoSyS has joined #openttd
13:51:16  <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #8704: Change: Move toolbar button for cargo payment graph under industries https://git.io/JtAfu
13:52:14  <DorpsGek> [OpenTTD/OpenTTD] michicc merged pull request #8757: Fix: Issues with cursors consisting of multiple sprites https://git.io/JtNjw
14:15:44  <_dp_> you can still easily dos the server just by spamming join and map begin packets...
14:16:35  <_dp_> quiz time, find all the bugs on this screenshot :P  https://i.imgur.com/pR0iJLf.png
14:25:14  <_dp_> oh, got a better screenshot: https://i.imgur.com/lf1hlnv.png
14:29:37  *** Gustavo6046 has quit IRC
14:30:33  *** Gustavo6046 has joined #openttd
14:31:19  <LordAro> TrueBrain: wait, what
14:31:21  <LordAro> i already did this refactor
14:31:26  <LordAro> i have zero memory of this
14:31:45  <TrueBrain> You are not that old .....
14:31:54  <TrueBrain> You sleeping well? :D
14:32:11  <DorpsGek> [OpenTTD/aws-infra] LordAro opened pull request #8: Refactor & certbot renewal via webroot https://git.io/JtAUL
14:32:14  <LordAro> i mean, what
14:32:17  <LordAro> look at #7
14:32:22  <LordAro> i replicated it almost exactly
14:33:08  <TrueBrain> You never merged it, lol
14:33:19  <LordAro> clearly
14:33:19  <TrueBrain> Well, merge it now and rebase :)
14:33:36  <LordAro> rebasing it going to be a pain :p
14:34:36  <DorpsGek> [OpenTTD/aws-infra] LordAro merged pull request #7: Lots of refactoring https://git.io/JIZzH
14:34:40  <DorpsGek> [OpenTTD/aws-infra] LordAro pushed 1 commits to master https://git.io/JtAU8
14:34:41  <DorpsGek>   - Codechange: Reorganise playbook into an actually defined role that we call before certbot/nginx (by LordAro)
14:35:32  <TrueBrain> silly LordAro
14:35:38  <LordAro> TrueBrain: even down to the names of the role
14:35:43  <LordAro> 'standard-setup'
14:35:48  <TrueBrain> at least you are consistent :D
14:36:51  <TrueBrain> so you have that going for you :)
14:47:11  <DorpsGek> [OpenTTD/aws-infra] LordAro updated pull request #8: Refactor & certbot renewal via webroot https://git.io/JtAUL
14:48:00  <_dp_> join-map begin-disconnect dos: https://imgur.com/a/IyrZgxM
14:48:12  <_dp_> savegame reuse is a must for dos protection
14:48:29  <_dp_> also why does it show 30 ms on graphics rendering?
14:49:13  <_dp_> it's way below 1ms without connecting clients
14:49:22  <DorpsGek> [OpenTTD/aws-infra] LordAro updated pull request #8: Refactor & certbot renewal via webroot https://git.io/JtAUL
14:49:37  <_dp_> well, just 1 ms, not way below
14:55:45  <frosch123> aw, i kind of expected michi_cc to completely rewrite my fix
14:56:54  <frosch123> not enough opengl magic :)
14:56:56  <michi_cc> Sorry to disappoint :D
15:00:38  <DorpsGek> [OpenTTD/aws-infra] LordAro updated pull request #8: Refactor & certbot renewal via webroot https://git.io/JtAUL
15:00:41  <LordAro> TrueBrain: ready for review :)
15:04:30  <_dp_> TrueBrain, "If we are transfer a map to this client" #8755
15:05:35  *** nielsm has joined #openttd
15:13:20  *** Wormnest has joined #openttd
15:14:36  <TrueBrain> _dp_: you understand that you talk in riddles, right?
15:14:47  <TrueBrain> LordAro: already deployed, I assume? :P
15:15:02  <LordAro> TrueBrain: to bananas-1, yes
15:15:12  <LordAro> not touched bananas-2 yet
15:16:35  <_dp_> TrueBrain, only riddle should be that screenshot :p
15:16:46  *** supermop_Home has quit IRC
15:16:56  <_dp_> TrueBrain, if you meant last msg it doesn't seem like a correct english
15:17:12  <_dp_> TrueBrain, sholudn't it be "transferring" ?
15:17:42  *** Flygon__ has quit IRC
15:18:36  <TrueBrain> _dp_: context is everything, but you are giving me little to go on here. If you see something wrong in a PR, mention it there, not here please
15:18:41  <TrueBrain> this is just a guessing game at this point
15:19:22  <TrueBrain> (sometimes people forget I cannot know what they are doing / seeing / busy with, so the context switch for me becomes HUGE :P)
15:19:53  <_dp_> I was going to do if you missed it here :p
15:20:16  <DorpsGek> [OpenTTD/aws-infra] TrueBrain approved pull request #8: Refactor & certbot renewal via webroot https://git.io/JtAIJ
15:20:23  <TrueBrain> LordAro: I see no reason not to deploy this to -2 too
15:21:04  <TrueBrain> and you didn't even trigger an error on the server, nice :D
15:21:21  <LordAro> yeah, was quite pleased with that
15:21:30  <TrueBrain> you should be :)
15:28:26  *** _2TallTyler has joined #openttd
15:32:12  <_2TallTyler> TrueBrain: I'd like to have #8688 ready before 1.11. The only thing keeping it in draft is my question (in the PR) about the title feeling cramped. If someone can answer that, it'll be ready for review.
15:33:35  <DorpsGek> [OpenTTD/master-server] TrueBrain opened pull request #25: Add: ability to blacklist certain servernames and blacklist "elitegameservers.net" https://git.io/JtALq
15:33:37  <TrueBrain> ugh, I really have to PR this now
15:33:45  <TrueBrain> I really did not want to .. but the next month is almost there
15:34:08  <TrueBrain> I cannot side-stream a patch every month :)
15:34:46  <TrueBrain> comments on wording etc are welcome
15:35:14  *** supermop_Home has joined #openttd
15:35:18  <supermop_Home> hello
15:36:20  <TrueBrain> _2TallTyler: marked the PR for 1.11
15:37:12  <_2TallTyler> Perhaps I'm searching the wrong thing in the server menu, but I don't see any servers by that name?
15:37:44  <TrueBrain> look at the commit dates in that PR _2TallTyler :)
15:37:52  <TrueBrain> there might be a relation between those 2 events
15:38:32  <DorpsGek> [OpenTTD/OpenTTD] ldpl commented on pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtALa
15:39:04  <DorpsGek> [OpenTTD/OpenTTD] supermop commented on issue #8647: Road and Tramway Catenary Drawn Incorrectly / Unsorted https://git.io/JtALK
15:40:36  <_2TallTyler> I'm a bit lost. If the commits aren't merged, why has the problem been fixed?
15:40:43  <TrueBrain> magic!
15:40:49  <TrueBrain> :D
15:41:02  <TrueBrain> I really really did not want to PR this
15:41:07  <TrueBrain> but I also see no other way
15:41:12  <TrueBrain> as I am not going to hide it for another month :)
15:41:33  <TrueBrain> and in case you are still not picking up on it: this PR is already running in production
15:41:36  <_2TallTyler> Oh, I understand now
15:41:41  <TrueBrain> :)
15:41:43  *** rptr has quit IRC
15:42:31  <_2TallTyler> Perhaps a screenshot of the problem, if you previously captured one, would help explain for those looking at the PR now?
15:43:19  <_2TallTyler> For example, I don't understand what you mean by "fake server that can't be played on"
15:43:25  <TrueBrain> what I tried to balance is the fine line between making clear we don't appreciate this effort of theirs, and talking bad about them. I think a screenshot would be more in the latter than in the first :)
15:43:42  <TrueBrain> it is a server that is in the serverlist that you cannot play on
15:43:44  <TrueBrain> fake
15:43:45  <TrueBrain> :)
15:43:50  <TrueBrain> better wording is welcome
15:44:09  <_2TallTyler> What happens if you try to join a fake server? It just doesn't connect?
15:44:18  <TrueBrain> they are always full
15:44:36  <TrueBrain> the servers were not meant to be played on
15:44:40  <TrueBrain> as in: client 1/1
15:44:43  <TrueBrain> all day every day
15:45:17  <_2TallTyler> Oh, I see. Perhaps that brief explanation would be helpful in the PR :)
15:45:40  <_dp_> not that you can't try too join a full server but no one bothered I guess
15:45:59  <TrueBrain> I tried; I couldn't
15:46:16  <DorpsGek> [OpenTTD/master-server] frosch123 approved pull request #25: Add: ability to blacklist certain servernames and blacklist "elitegameservers.net" https://git.io/JtAtY
15:46:24  <_dp_> interesting, they were actually joinable when it just started
15:46:33  <TrueBrain> yup
15:46:35  <_dp_> ran like crap but joinable
15:46:36  <TrueBrain> also with 0/1 clients
15:46:43  <TrueBrain> from where I saw them first
15:46:49  <TrueBrain> like .. a multiplayer server with max 1 client, that is just odd
15:47:30  <TrueBrain> anyway, really don't want to speak bad about them, they most likely have a great service etc etc
15:47:35  <TrueBrain> their way of advertisement is just in poor taste
15:47:56  <DorpsGek> [OpenTTD/master-server] TrueBrain merged pull request #25: Add: ability to blacklist certain servernames and blacklist "elitegameservers.net" https://git.io/JtALq
15:48:20  <TrueBrain> sorry _2TallTyler , I don't want to go in further detail in that PR why it all exactly means .. it just doesn't feel right .. feels like kicking them or something
15:48:34  <TrueBrain> I understand why you ask, but not all details always have to be told to the world in these cases :)
15:49:02  <TrueBrain> the reason I also didn't go for banning IPs etc, is because I am sure they deliver a great service to people
15:49:42  <_2TallTyler> No worries, I trust your judgement more than mine on this matter :)
15:50:54  <TrueBrain> I just hope they write us an email saying they are sorry and that they did not consider if it would be in poor taste or not, and will stop doing it
15:50:59  <TrueBrain> so I can revert this code :)
15:51:28  <TrueBrain> first time in, what, 14 years, we had to deal with something like this .. meh
15:52:24  <_dp_> TrueBrain, is it normal that graphics rendering time increases on the server when clients join?
15:52:38  <_dp_> I get there is a lock on game state but shouldn't count as rendering time, no?
15:53:17  <TrueBrain> first guess: the chat takes more time to render
15:53:18  <TrueBrain> ?
15:53:36  <_dp_> no, it's like 1 ms to 30 ms
15:53:44  <TrueBrain> so? :)
15:53:59  <_dp_> chat doesn't lag that much ;P
15:54:06  <TrueBrain> how do you know?
15:54:41  <_dp_> it doesn't lag normally?..
15:55:25  <TrueBrain> see, that is a better argument. As I said, first guess :)
15:55:53  <_dp_> my guess is just that waiting for a lock counts as rendering time
15:56:28  <TrueBrain> run the game with no threads and you know
15:58:30  <_dp_> and how do I do that?
15:59:12  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtN5X
15:59:12  <TrueBrain> either compile with NO_THREADS
15:59:25  <TrueBrain> or run with -v<yourvideodriver>:no_threads to only run without drawing threads
16:00:09  <_dp_> damn, I was close xD
16:00:31  <_dp_> doesn't help that it accepts -v sdl:anycrap silently :p
16:01:13  <TrueBrain> oops, "lag" doesn't reset if the server sends a command
16:01:14  <TrueBrain> lalalaa
16:01:41  <TrueBrain> happy I decided to add a debug statement to be sure
16:02:24  <_dp_> haha, I was just checking that as well
16:06:09  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtN5X
16:06:12  <DorpsGek> [OpenTTD/OpenTTD] frosch123 commented on pull request #8688: Feature: Hide block signal GUI by default https://git.io/JtAqz
16:07:40  <peter1138> Feature: Remove block signals.
16:08:23  <_2TallTyler> Pretty much, but without breaking old savegames or starting a community uproar :) Also signal priorities still need presignals.
16:09:08  <peter1138> "Path signals are the only signals needed by the majority of players"
16:09:27  <peter1138> I don't know who you are but you are welcome for a pint or two.
16:10:22  <LordAro> https://gist.github.com/LordAro/1701f5a7d4ee5e2e0f6d036aea0bd9f6 how's this?
16:10:39  <DorpsGek> [OpenTTD/OpenTTD] frosch123 commented on pull request #8688: Feature: Hide block signal GUI by default https://git.io/JtAq9
16:11:38  <peter1138> I just an error window pop up and the text of the button to close it is... "I see"
16:11:49  <TrueBrain> _dp_: for me, the chat window adds 3ms to graphics rendering. Othewise, client or no client, no difference on a server for me
16:12:11  <frosch123> LordAro: cleary there are too few PR references on the first line
16:12:22  <TrueBrain> LordAro: "Feature: configurable refresh-rate" -> "Feature: configurable display refresh-rate"
16:12:23  <LordAro> :)
16:12:43  <LordAro> frosch123: i thought about adding all the ones that fixed things in previous PRs, but decided against it
16:13:26  <frosch123> is the second line a OCD test? how many get upset by the lowercase?
16:13:31  <TrueBrain> Fix: [AI] Allow estimating CloneVehicle if short on money <- strictly seen not only "AI"; also for humans. I am fine with this message btw
16:13:48  <TrueBrain> the one lower case makes it funny frosch123 :)
16:13:57  <LordAro> TrueBrain: btw, something weird with the framerate window for me - video output displaying quite a high ms
16:14:07  <DorpsGek> [OpenTTD/OpenTTD] nielsmh commented on pull request #8704: Change: Move toolbar button for cargo payment graph under industries https://git.io/JtAme
16:14:09  <LordAro> FF will go up to 400x, so it's clearly not actually taking that long
16:14:12  <LordAro> https://i.imgur.com/sxQjHJG.png
16:14:20  <TrueBrain> LordAro: run -ddriver=4 and show output plz :)
16:15:25  <TrueBrain> wauw, that is a long list for a beta2 .. damn .. looks good other than the 2 mentions
16:15:30  <TrueBrain> and the capital, ofc
16:15:47  <LordAro> TrueBrain: https://pastebin.com/Y6vtyjHE
16:16:05  <peter1138> Ooof, UKRS running sounds... such a delight.
16:16:12  <TrueBrain> wow, an OpenGL that takes 10ms ? That sounds ... weird
16:16:41  <LordAro> TrueBrain: like i say, it's clearly not taking that long, seems more like the measurement is in the wrong place?
16:16:45  <TrueBrain> something michi_cc might be interesting in
16:17:00  <TrueBrain> how do you know it is not taking that long?
16:17:26  <TrueBrain> do you have a screenshot from FF?
16:18:01  <LordAro> https://i.imgur.com/O8WWVTD.png
16:18:20  <TrueBrain> video output gets faster if you fast-forward? Lol
16:18:35  <LordAro> ooh, the viewport isn't resizing either
16:18:37  <LordAro> that's odd
16:19:15  <_dp_> TrueBrain, holy crap, that actually is chat window... I can make it go from 3 ms to 15 just by spamming in chat %)
16:19:20  <_dp_> never expected it to be THAT slow
16:19:27  <TrueBrain> _dp_: and you didn't believe me ... tssk
16:19:34  <TrueBrain> never assume, always measure :)
16:19:37  * _dp_ should also probably test release build
16:20:04  <LordAro> viewport is red herring, looks like it got confused about fullscreen
16:20:13  <TrueBrain> pfew
16:21:02  <LordAro> video output also drops when moving around the screen
16:21:06  <LordAro> without FF
16:21:22  <TrueBrain> can you try this branch? https://github.com/OpenTTD/OpenTTD/compare/master...TrueBrain:gameloop-thread
16:21:38  <TrueBrain> https://github.com/OpenTTD/OpenTTD/pull/8741
16:21:41  <TrueBrain> if that is easier :D
16:23:04  <LordAro> no change to video output measurement
16:23:06  <TrueBrain> LordAro: I guess you have full animation off?
16:23:11  <TrueBrain> if you turn that on
16:23:14  <LordAro> i did, yes
16:23:45  <LordAro> no change if it's turned on, though graphics frame rate sometimes drops to ~55
16:24:02  <LordAro> FF seems to boost to ~450-550x in this branch though
16:24:17  <TrueBrain> yeah, so it is really taking so much time
16:24:24  <LordAro> :/
16:24:25  <TrueBrain> that branch multithreads exactly that part
16:24:36  <LordAro> this is native Linux/SDL2
16:24:50  <LordAro> nvidia 980ti + mesa
16:24:52  <TrueBrain> for me, in a VM I have to admit, it is lightning fast
16:24:59  <TrueBrain> but I have a 1080
16:25:03  <TrueBrain> so there might be something there
16:25:06  <LordAro> heh
16:25:35  <TrueBrain> if you click the video output
16:25:36  <TrueBrain> the graph
16:25:42  <TrueBrain> is it constantly high?
16:25:51  <TrueBrain> or are there very few datapoints
16:26:20  <LordAro> constantly high (still in your branch)
16:26:31  <LordAro> it seems to switch between ~12ms & ~10ms though
16:26:37  <TrueBrain> but many datapoints?
16:26:41  <LordAro> yeah
16:26:41  <TrueBrain> or just like a few per second?
16:26:44  <TrueBrain> hmm
16:26:47  <LordAro> lots
16:26:55  <TrueBrain> yeah, the framerate window doesn't measure when it is not called a tick
16:27:02  <TrueBrain> so if you call it once every 10 ticks with expensive stuff
16:27:06  <TrueBrain> it shows higher than it really is :D
16:27:10  <TrueBrain> hence the question ;)
16:27:12  <LordAro> is there a good pre-GL commit i can try?
16:27:21  <TrueBrain> run with -v sdl
16:27:28  <TrueBrain> no need to go back in commits :)
16:28:02  <peter1138> Why does the framerate graph keep speeding up?
16:28:07  <peter1138> (& slowing down)
16:29:24  <LordAro> ^ it does seem to keep doing that
16:29:55  <TrueBrain> yeah, the framerate window wants to estimate how many seconds it shows
16:30:01  <TrueBrain> but with the 60fps
16:30:02  <LordAro> video output is about 2ms with sdl
16:30:05  <TrueBrain> it often ends on this border of scale
16:30:09  <TrueBrain> so it keeps jumping around
16:30:23  <TrueBrain> LordAro: did FF get faster too?
16:30:34  <LordAro> about the same, 450x ish
16:30:36  <LordAro> (still your branch)
16:30:43  <TrueBrain> and in master?
16:30:44  <LordAro> let me try rebooting, i did install a load of updates earlier
16:30:48  <TrueBrain> it should remain 450
16:30:57  <TrueBrain> but it sounds like your OpenGL is acting up, really
16:31:27  <peter1138> Falling back to software rendering?
16:31:44  <LordAro> maybe closer to 350-400x in master
16:31:53  <LordAro> which is about what i got with GL
16:31:58  <TrueBrain> so it really is spending 10ms, I think LordAro :)
16:32:05  <LordAro> hmm
16:32:10  <LordAro> like i say, i'll try a reboot
16:32:19  <TrueBrain> let's hope that solves it :D
16:33:04  <LordAro> and i'm back
16:33:08  <TrueBrain> that is quick
16:33:16  <TrueBrain> _dp_: somehow I am not really surprised drawing chat takes time
16:33:21  <peter1138> Got my graphics showing on Discord, that is hard to see with all the jumping about.
16:33:25  <peter1138> *graphs
16:33:27  <TrueBrain> if you just look at the code .. boy
16:33:35  <LordAro> i'd say NVMe, but that's my windows install :p
16:33:41  <LordAro> linux is on a plain old boring SSD
16:33:50  <_dp_> TrueBrain, idk, it's horrendously slow
16:33:56  <_dp_> 1ms to 10ms on release
16:34:00  <TrueBrain> peter1138: yeah, I know the problem you refer to; will see if I can understand the framerate window code enough to fix it :)
16:34:09  <_dp_> and that isn't even the max amount of text it can get...
16:34:33  <LordAro> no change :/
16:34:44  <LordAro> it's not particularly an issue, just a bit odd
16:35:00  <TrueBrain> LordAro: this is the moment I have to hand you over to michi_cc , I am sure he has knobs he knows to turn to see what part of OpenGL is being slow :)
16:35:30  <TrueBrain> but with OpenGL, we can expect more of these :D
16:35:33  <peter1138> Is it vsync?
16:35:46  <TrueBrain> vsync is off by default; you can enable it via -vsdl-opengl:vsync, I believe
16:36:04  <TrueBrain> yeah
16:36:19  <LordAro> nothing
16:36:20  <peter1138> Oh, so it's not vsync if it's off by default
16:36:39  <LordAro> peter1138: well, who knows with opengl
16:36:44  <LordAro> being all magic as it is
16:36:53  <TrueBrain> LordAro: possible it is one of those persistent buffer thingies
16:36:57  <TrueBrain> I know on AMD this was a thing
16:37:07  <peter1138> vsync can be forced on, I suppose.
16:37:18  <LordAro> i suppose i could try installing the nouveau driver
16:37:23  <LordAro> but i quite like my system actually working
16:37:25  <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #8688: Feature: Hide block signal GUI by default https://git.io/JtDJs
16:37:40  <TrueBrain> LordAro: src/video/opengl.cpp line 573
16:37:47  <TrueBrain> make sure that variable always get false
16:37:52  <TrueBrain> who knows, maybe it is the same problem as AMD
16:37:57  <TrueBrain> I have  no clue, to be clear, about any of this
16:38:02  <TrueBrain> just .. making .. slightly-educated guesses here
16:38:16  <TrueBrain> so put this->persistent_mapping_supported = false; outside of the if-block or something
16:38:41  <peter1138> "Video output" goes high for me with vsync turned on.
16:38:51  <TrueBrain> peter1138: that is fully to be expected, yes
16:39:03  <LordAro> TrueBrain: nope
16:39:09  <TrueBrain> LordAro: I am out of ideas :)
16:39:18  <TrueBrain> tried different blitters?
16:39:20  <TrueBrain> (I lied)
16:43:00  <michi_cc> LordAro: NVidia has performance debugging tools (Nsight), but I'd suspect they only work for their own Linux 3D driver, not mesa.
16:43:26  <michi_cc> Debugging 3D performance by trial and error is a pain in the butt.
16:43:40  <LordAro> 8bpp-simple is ~9ms, 32bpp-simple is ~7ms, 32bpp-sse4-anim is ~7ms
16:44:04  <TrueBrain> 8bpp-optimized? and 40bpp-anim?
16:44:05  <LordAro> faster, but i suppose that's expected
16:44:09  <TrueBrain> doubt it matters, really
16:45:00  <LordAro> 7ms & 12ms respectively
16:45:54  <michi_cc> Okay, according to Google, llvmpipe is the Mesa software renderer. If that really is the case, we should blacklist that. Using the OpenGL code path with a software emulated backend is never a good idea.
16:46:06  <TrueBrain> haha, lol, no
16:46:07  <LordAro> oh hang on, nvidia driver is already installed
16:46:08  <LordAro> hmm
16:46:16  <TrueBrain> so he is simulating OpenGL :D
16:47:08  <LordAro> well that's not especially helpful
16:47:20  <LordAro> 	Kernel driver in use: nvidia
16:48:42  *** glx has joined #openttd
16:48:42  *** ChanServ sets mode: +v glx
16:49:51  <LordAro> michi_cc: let me know if you want anything testing
16:50:57  <TrueBrain> your case makes it worth the while to merge the gameloop-thread for 1.11 :P
16:51:06  <TrueBrain> not sure we should, honestly :)
16:51:22  <TrueBrain> possibly better to wait merging that till after branch :D
16:51:34  *** Progman has joined #openttd
16:52:21  <peter1138> Will the gameloop-thread fix vsync making everything run slow? (rather than just the UI)
16:52:42  <TrueBrain> sorry, I don't understand that sentence
16:52:56  <michi_cc> TrueBrain: Am I missing something or is the SDL GL video driver not setting any SDL_GL_SetAttribute?
16:53:11  <TrueBrain> michi_cc: what attributes should it set?
16:53:31  <TrueBrain> and no, you are not missing something :D
16:54:10  <TrueBrain> the defaults looked sane enough to my untrained eye :D
16:54:22  <peter1138> Currently if you enable vsync, the pause waiting for vsync causes everything to stop, so ffwd becomes pretty limited.
16:54:35  <TrueBrain> ah, yes, peter1138 , my gameloop-thread "fixes" that :)
16:54:40  <peter1138> Cool :)
16:54:42  <TrueBrain> try it, if you like
16:54:44  <TrueBrain> would love the input
16:54:55  <peter1138> I don't have a build environment, sorry.
16:55:01  <TrueBrain> and I don't have a build ready :(
16:55:04  <TrueBrain> no worries :)
16:55:08  <michi_cc> Possibly SDL_GL_ACCELERATED_VISUAL for LordAro (not sure that works for this specific case, though). Maybe also SDL_GL_DEPTH_SIZE, and red, green, blue sizes.
16:55:22  <TrueBrain> the default rgb makes 8bpp
16:55:31  <michi_cc> I might actually also add those to Win32, just to prevent totally stupid drivers from fucking up.
16:55:34  <TrueBrain> what depth-size would you assign?
16:55:34  <glx> TrueBrain: a build should be easy to trigger ;)
16:55:37  <michi_cc> 0
16:55:46  <TrueBrain> owh, of course, lol
16:56:04  <peter1138> This game is missing a Glide driver.
16:56:16  <michi_cc> And at least for SDL, the docs say the default is 16, which would waste a bit performance as we don't use depth at all.
16:56:32  <TrueBrain> michi_cc: indeed
16:56:43  <peter1138> So... sprite sorting? ;-)
16:56:43  <TrueBrain> rgb all 3 to 8?
16:56:54  <michi_cc> Basically everything from SelectPixelFormat(HDC dc, bool fullscreen)
16:57:14  <TrueBrain> michi_cc: which is impossible to read for me :D
16:57:49  *** snail_UES_ has joined #openttd
16:58:12  <DorpsGek> [OpenTTD/aws-infra] LordAro dismissed a review for pull request #8: Refactor & certbot renewal via webroot https://git.io/JtAIJ
16:58:15  <DorpsGek> [OpenTTD/aws-infra] LordAro updated pull request #8: Refactor & certbot renewal via webroot https://git.io/JtAUL
16:58:16  <LordAro> TrueBrain: ansible run on both servers
16:58:37  <TrueBrain> sweet
16:58:38  <DorpsGek> [OpenTTD/aws-infra] TrueBrain approved pull request #8: Refactor & certbot renewal via webroot https://git.io/JtA3V
16:59:34  <michi_cc> Going by the list on https://wiki.libsdl.org/SDL_GL_SetAttribute we want 8 bit RGB, don't care about back-buffer alpha and don't need depth/stencil/accum.
17:00:38  <michi_cc> We probably only want accelerated, maybe a core context profile, and potentially a SDL_GL_CONTEXT_DEBUG_FLAG in SDL_GL_CONTEXT_FLAGS for "_debug_driver_level >= 8".
17:00:54  <TrueBrain> wait, we have levels up to 8? :D
17:01:04  <michi_cc> we have 9 actually :)
17:01:13  <LordAro> you should try -d9 :p
17:01:42  <TrueBrain> but you are the master here michi_cc , what do you want .. "maybe"s don't really help me :D
17:02:14  <TrueBrain> for starters, LordAro , can you test this: https://gist.github.com/TrueBrain/9d8a4de2cdf589af977b3ed273b68901
17:02:15  <michi_cc> For the OpenGL backend specifically, driver=8 is enable GL debug output, and driver=9 tells GL to spam any message it can.
17:02:18  <TrueBrain> I did not test this yet :P
17:02:52  <TrueBrain> okay, added the debug too
17:02:55  <TrueBrain> core context profile yes/no?
17:03:09  <michi_cc> TrueBrain: I want all of it, unless SDL on Linux makes crap out of one of the settings :D I don't really know to what all the settings actually map to on GLX/EGL.
17:03:46  <TrueBrain> okiedokie boss-man
17:04:04  <michi_cc> Win32 is trying to get a Core profile 3.2 context first and falls back to any context it can get second. I don't think that fallback is possible with SDL.
17:04:14  <TrueBrain> LordAro: https://github.com/OpenTTD/OpenTTD/compare/master...TrueBrain:sdl-opengl-settings <- in case you are lazy :)
17:04:41  <TrueBrain> owh, I made a boo-boo
17:05:13  <TrueBrain> michi_cc: well, I can set 3.2 as minimum, try to make context, if fails, try any
17:05:22  <TrueBrain> LordAro: try link above again plz :D
17:05:30  <TrueBrain> I should set the stuff before making the context, lol
17:05:57  <michi_cc> You probably need to move the SDL_GL_CONTEXT_FLAGS as well.
17:06:18  <TrueBrain> whistles innocent
17:06:31  <LordAro> no obvious change
17:06:37  <LordAro> glxinfo also says llvmpipe
17:06:45  <LordAro> so maybe there is just something screwed up with my graphics driver
17:06:59  <TrueBrain> huh? It allows a software renderer?
17:07:06  <TrueBrain> we explicit ask for hardware ..
17:07:06  *** rptr has joined #openttd
17:07:19  <TrueBrain> you did use the version where I put the SetAttribute before CreateContext, to double-check?
17:07:25  <michi_cc> LordAro: Is it still loading sdl-opengl? If yes, the SDL_GL_ACCELERATED_VISUAL seems to be not very useful.
17:07:45  <LordAro> yeah
17:07:59  <TrueBrain> lovely odd
17:08:24  <TrueBrain> "set to 1 to require hardware acceleration, set to 0 to force software rendering; defaults to allow either"
17:09:47  <TrueBrain> LordAro: based on https://wiki.libsdl.org/SDL_GL_SetAttribute, maybe fiddle a bit with these attributes?
17:09:50  <TrueBrain> see if it helps?
17:10:11  <TrueBrain> it should either fall back to non-opengl, or pick another profile, I would guess
17:10:59  <LordAro> [     4.174] (EE) NVIDIA: Failed to load module "glxserver_nvidia" (module does not exist, 0)
17:11:02  <LordAro> hmm
17:11:33  <TrueBrain> michi_cc: I can check after the context if the context is hardware accelerated, I guess
17:11:41  *** sla_ro|master has joined #openttd
17:11:47  <michi_cc> That, or also https://gist.github.com/michicc/fb6496a8a7fa2c2431e4b33f7ee1e6d7
17:11:49  <TrueBrain> LordAro: just as a FYI, we have 2 problems here: 1) your system, 2) us accepting the context :D
17:12:06  <TrueBrain> that is a better solution :D
17:12:38  <michi_cc> Until they invent mmwnpipe :)
17:13:46  <TrueBrain> looking in the code, SDL_GL_ACCELERATED_VISUAL is of little use indeed
17:14:02  <TrueBrain> it needs an extension before it does anything to start with
17:14:02  <peter1138> Software accelerated counts?
17:16:27  <DorpsGek> [OpenTTD/OpenTTD] michicc opened pull request #8758: Fix: [OpenGL] Don't use OpenGL on MESA software renderers. https://git.io/JtAGl
17:16:43  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #8759: Fix: [SDL2] set GL attributes to get the best GL context possible https://git.io/JtAG4
17:16:55  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #8758: Fix: [OpenGL] Don't use OpenGL on MESA software renderers. https://git.io/JtAGB
17:17:15  <TrueBrain> tested it in my VM, does what I expect
17:17:16  <peter1138> No way to force if you felt like it?
17:17:17  <TrueBrain> doesn't mean a lot :P
17:17:20  <DorpsGek> [OpenTTD/OpenTTD] michicc approved pull request #8759: Fix: [SDL2] set GL attributes to get the best GL context possible https://git.io/JtAGR
17:19:55  *** jottyfan has joined #openttd
17:20:20  <DorpsGek> [OpenTTD/OpenTTD] michicc dismissed a review for pull request #8758: Fix: [OpenGL] Don't use OpenGL on MESA software renderers. https://git.io/JtAGB
17:20:23  <DorpsGek> [OpenTTD/OpenTTD] michicc updated pull request #8758: Fix: [OpenGL] Don't use OpenGL on MESA software renderers. https://git.io/JtAGl
17:20:40  <michi_cc> Okay, added a pure compile time flag to allow software backend for development.
17:22:29  <DorpsGek> [OpenTTD/OpenTTD] ldpl commented on pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtAG7
17:24:33  <_dp_> "new company" connection button is definitely my most hated openttd feature :/
17:25:20  <_dp_> can we just remove it? :p
17:27:05  <_dp_> weirdest part is that connecting with "new company" is not the same as connecting as spectator and immediately starting a new company
17:27:19  <_dp_> has same effect for user but different implementation
17:28:49  <glx> maybe it can be fixed to connect as spectator then create company when client actually finished joining
17:28:51  <LordAro> OpenGL renderer string: GeForce GTX 980 Ti/PCIe/SSE2
17:28:53  <LordAro> success
17:29:04  <Eddi|zuHause> _dp_: so you should reimplement it, to use the same code paths?
17:29:38  <LordAro> TrueBrain: video output now 0.15ms :)
17:29:42  <_dp_> well, implementation is only half of the problem
17:29:58  <_dp_> other part is that players use it instead of "spectate button"
17:30:20  <glx> that's a player issue ;)
17:30:34  <Eddi|zuHause> not sure why that is a problem
17:30:44  <LordAro> TrueBrain: on a related note, i now need to resize my EFI partition
17:31:09  <_dp_> spamming server with useless companies
17:31:27  <DorpsGek> [OpenTTD/OpenTTD] James103 commented on pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtAZ8
17:32:16  <_dp_> ^^ can I just ignore that question? :/
17:34:04  <TrueBrain> Yes
17:36:05  <_dp_> also having new company button pretty much only helps players who don't know a thing about the game and can't do anything productive
17:36:17  <_dp_> so they just end up messing with other players anyway :(
17:42:40  *** _2TallTyler has quit IRC
17:44:55  *** erle- has joined #openttd
17:48:34  <DorpsGek> [OpenTTD/aws-infra] LordAro merged pull request #8: Refactor & certbot renewal via webroot https://git.io/JtAUL
17:48:43  <DorpsGek> [OpenTTD/aws-infra] LordAro pushed 6 commits to master https://git.io/JtAnY
17:48:44  <DorpsGek>   - Change: Use debian user directly (by LordAro)
17:48:45  <DorpsGek>   - Fix: Split up apt commands so that they actually all work (by LordAro)
17:48:46  <DorpsGek>   - Fix: Missing handler from previous role moves and move files into proper place (by LordAro)
17:48:47  <DorpsGek>   - Change: Use tags for existing roles (by LordAro)
17:48:48  <DorpsGek>   - Codechange: Move firewall-related commands into its own role (by LordAro)
17:48:49  <DorpsGek>   - Change: Do certbot renewal via webroot (by LordAro)
17:48:50  <LordAro> aahh
17:48:56  <glx> spam
17:49:40  <TrueBrain> A bit overtuned :D
17:51:05  <TrueBrain> and glad OpenGL works for you LordAro :D
17:51:24  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8759: Fix: [SDL2] set GL attributes to get the best GL context possible https://git.io/JtAG4
17:51:31  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #8758: Fix: [OpenGL] Don't use OpenGL on MESA software renderers. https://git.io/JtAnc
17:51:41  <TrueBrain> and helped us avoid this situation for others :D
17:51:56  <LordAro> :)
17:52:09  <TrueBrain> lets see what _dp_ broke this time
17:53:38  <TrueBrain> I cannot reproduce your short description
17:53:48  <TrueBrain> I started a server, 2 clients, go to multiplayer, hit join game, hit newgame on both at the same time
17:53:49  <TrueBrain> joins fine
17:54:02  <_dp_> hm... try 4kx4k map
17:54:13  <TrueBrain> the transfer was still busy
17:56:24  *** Wuzzy has joined #openttd
17:56:41  <peter1138> 17:24 < _dp_> "new company" connection button is definitely my most hated openttd feature :/
17:56:58  <TrueBrain> his hatred changed by the day, nothing to worry about
17:57:02  <TrueBrain> depends on where he is looking at
17:57:08  <peter1138> IIRC in the early days company switching wasn't possible, so that's how it was done. It does seem an odd way to do things now.
17:57:09  <TrueBrain> but the summary is: everything is broken :)
17:57:38  <_dp_> TrueBrain, but some stuff more broken then other! :p
17:57:59  <TrueBrain> can you reproduce your own issue?
17:58:08  <_dp_> TrueBrain, try with 4k map few times it doesn't seem to be 100% reliable but I get about 50%
17:58:25  <TrueBrain> how does map-size come into play here?
17:58:59  <peter1138> Takes longer to compress/download?
17:59:12  <TrueBrain> it takes me 20s to download the map; I tihnk that should be enough :P
18:01:38  <DorpsGek> [OpenTTD/OpenTTD] michicc merged pull request #8758: Fix: [OpenGL] Don't use OpenGL on MESA software renderers. https://git.io/JtAGl
18:01:52  <TrueBrain> _dp_: I think you need to give more context, like your settings etc
18:02:13  <_dp_> yeah, I'll try to think what affects it
18:02:45  <TrueBrain> begin with pause-on-join etc
18:03:26  <_dp_> yeah, I checked that one already
18:03:44  <TrueBrain> I added delays in the join process at the most annoying places, but nothing breaks
18:04:21  * _dp_ removed openttd.cfg
18:04:25  <_dp_> wtf is this game? xD
18:04:35  <TrueBrain> -x -c bla.cfg, works really well these days :)
18:04:42  <TrueBrain> -x prevents changes from being written
18:04:51  <TrueBrain> -c changes all important folders to your local cwd
18:04:55  <TrueBrain> while, reading bla.cfg
18:05:22  <_dp_> normally I overwrite openttd.cfg each time anyway so whatever
18:07:06  <_dp_> but it's really weird what started without config: https://i.imgur.com/XVET45f.png
18:07:18  <_dp_> it's tiny
18:07:22  <_dp_> and zbase, wut?
18:07:31  <TrueBrain> you are in too many discord servers
18:07:51  <_dp_> and all but one are openttd :p
18:08:07  <_dp_> that one is mashinki xDD
18:09:36  <_dp_> oh, not even zbase, freaking abase :/
18:10:20  <TrueBrain> funny how the server is SAVING GAME for the full time a client is joining
18:14:16  <_dp_> interesting, so on default settings I get this: https://i.imgur.com/LUgEzSi.jpg
18:14:18  <TrueBrain> _dp_: if you can still reproduce it, knowing what packet fails is handy after all ;)
18:14:25  <_dp_> it's a freaking localhost!!! :p
18:14:33  <TrueBrain> stop sending such hug emaps
18:15:10  <TrueBrain> did not know there is another upper limit; I guess that makes sense
18:16:16  <TrueBrain> so after they got the map, it took them more than 500 ticks to acknowledge that fact
18:16:19  <TrueBrain> that is .. impressive
18:16:27  <TrueBrain> @calc 500 / 33.3
18:16:28  <DorpsGek> TrueBrain: 15.015015015015017
18:16:31  <TrueBrain> 15 seconds to load the map?
18:17:36  <_dp_> no, it gets kicked just as it finishes downloading the map
18:17:58  <TrueBrain> owh, downloading is inclusive
18:17:59  <TrueBrain> how nice
18:18:37  <TrueBrain> either way, very little to do with my PR
18:18:57  <_dp_> yeah, but still a bug kinda
18:19:04  <TrueBrain> and there will be 100 more
18:19:13  <_dp_> is that 500 tick limit even adjustable?
18:19:22  <TrueBrain> max_join_time, ofc it is
18:19:36  <TrueBrain> but that brings us to the question: that new company error you reported, is that also happening in master?
18:20:16  <_dp_> TrueBrain, on master it was desync
18:20:54  <TrueBrain> hmm, I guess
18:21:05  <TrueBrain> but so it is likely the problem was already there, my PR only makes it visible in a new way
18:21:06  <_dp_> or, no, I mean desync if one left
18:21:17  <TrueBrain> true
18:21:23  <TrueBrain> so can you reproduce this on master in the same way?
18:21:35  <TrueBrain> (not the timeout, the protocol error)
18:21:48  <_dp_> well, I can't even on your pr now))
18:21:58  <_dp_> let me figure out what's going on
18:28:37  <supermop_Home> is there an opengfx nightly?
18:29:18  <TrueBrain> there should, but it might be that the schedule is cancelled by GitHub :D
18:29:36  <TrueBrain> I enabled it again :)
18:29:38  <supermop_Home> ah ok
18:29:56  <TrueBrain> runs at 21:00 UTC
18:30:28  <supermop_Home> i am trying to test my log flumes, and as long as i am in mountainous arctic land anyway, might as well look at my hotel sprites
18:39:30  <supermop_Home> because my flume 'rear catenary' is drawn over the log due to #8647, I can't see the log to get it aligned...
18:40:06  <supermop_Home> my workaround is to include a chunk of flume on the log itself for now just to line it up: https://imgur.com/a/kKBYauS
18:55:23  <DorpsGek> [OpenTTD/OpenTTD] ldpl approved pull request #8755: Fix: several bugs related to joining a network server https://git.io/JtAWy
19:00:59  * peter1138 grumbles about image alignment on the main menu
19:01:15  <DorpsGek> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://git.io/JtAlY
19:01:16  <DorpsGek>   - Update: Translations from eints (by translators)
19:01:36  <peter1138> IIRC that was baked-in offsets in the sprites which aligns them, but of course only at 1x size.
19:02:32  <DorpsGek> [OpenTTD/OpenTTD] perezdidac commented on pull request #8733: Feature: Build train locomotive filter https://git.io/JtAls
19:02:40  *** didac has joined #openttd
19:08:16  <_dp_> that bug was crazily lucky, it's just a new company join but I hit some weird timings with that map size
19:08:30  <_dp_> I change tree generator to original and it already doesn't repro
19:09:56  <TrueBrain> good :)
19:10:04  <andythenorth> new trees!
19:13:14  <supermop_Home> trees?
19:13:22  <supermop_Home> NotTreeTypes?
19:15:18  <andythenorth> ProcTrees
19:15:30  <Wolf01> BinaryTrees
19:15:51  <_dp_> feels like it hits max_join_time but at a weird state as it's exactly 15 seconds since join
19:15:54  <supermop_Home> andy i had a bad idea for steeltown the other day
19:16:55  <TrueBrain> _dp_: well, I have said it a few times already, but we should just make a new protocol version
19:17:02  <TrueBrain> and fix a ton of issues and old tardiness
19:17:15  <_dp_> yeeeshhh, burn it! xD
19:17:17  <TrueBrain> that is one of the things we can put on the pile
19:17:19  <TrueBrain> not burn
19:17:29  <TrueBrain> but the protocol is old, and designed for another Internet
19:19:11  <_dp_> funny talk for a game that somewhat predates internet xD
19:19:29  <TrueBrain> we already replaced the network completely once
19:19:34  <TrueBrain> as the original network was .. euh ..
19:19:37  <TrueBrain> not meant for Internet :P
19:19:47  <andythenorth> supermop_Home ? o_O
19:19:54  <TrueBrain> desync-heaven, basically :)
19:26:55  <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #8753: Change: Improve console warnings on invalid network commands https://git.io/JtNgZ
19:28:45  <supermop_Home> andythenorth i was testing cable cars in 1895,
19:29:27  <supermop_Home> and thought my steam trucks pulling trailers full of 1970s looking pickups looked a little odd
19:30:14  <supermop_Home> so thinking, before 1900-ish maybe i should draw little steam engines / tractors / boilers as vehicles cargo
19:31:26  <supermop_Home> so i thought, what if like the assembly plant doesn't exist before like 1905, and there is a locomotive works, or boiler shop or something before that
19:34:24  <andythenorth> teslas!
19:36:17  <peter1138> Too expensive. I have a diesel Citroen instead.
19:37:16  <supermop_Home> hmm none pf the sound effects seem appropriate for a log
19:38:59  <supermop_Home> is there much chance that 8647 will get any attention before april?
19:44:22  <DorpsGek> [OpenTTD/OpenTTD] ldpl opened issue #8760: Game asserts/crashes when closed during newgrf scan https://git.io/JtA4c
19:45:48  <Wolf01> "do not close the game or shutdown your computer while a progress bar is displayed"
19:52:15  <LordAro> :D
19:56:34  <peter1138> Stupid variety distribution... how do you get a hilly map...
19:57:40  <andythenorth> you can't TrueBrain banned them!
19:59:48  <Eddi|zuHause> peter1138: turn it completely off, and you get a uniformly hilly map
20:00:09  <peter1138> Yes, it's one extreme to the other.
20:00:10  <supermop_Home> hmm andythenorth also i am getting mostly sawmills on top of hill and forests at the bottom in arctic basic... which makes log flumes a little useless
20:00:34  <Wolf01> I noticed that too ^
20:01:03  <andythenorth> not sure what to say :)
20:01:06  <andythenorth> uphill log flume?
20:11:39  *** gelignite has joined #openttd
20:18:02  <supermop_Home> for gui sprites, do i provide large and small versions?
20:20:41  <peter1138> For engine preview?
20:21:00  *** rptr has quit IRC
20:21:22  *** rptr has joined #openttd
20:27:13  *** jottyfan has quit IRC
20:32:31  <supermop_Home> for construction toolbar
20:37:45  <supermop_Home> once i get these in think log flume grf is pretty much set, except for the part where it is broken by the caternary
20:49:47  <peter1138> I suppose you could but it won't fit in.
21:04:52  <andythenorth> I have done no OpenTTD
21:04:54  <andythenorth> just played Blitz
21:15:46  *** gelignite has quit IRC
21:20:33  <frosch123> supermop_Home: interface zoom level will use the zoomed gui sprites, if you provide them
21:20:50  <frosch123> so you can provide 2x and 4x gui sprites
21:22:25  <peter1138> Yup. There was a fad at one point of providing 2x sprites but identifying them as 1x, to make a "big gui" ... but eurgh.
21:35:24  <FLHerne> new Gronk paint https://www.flickr.com/photos/sparrowhawk7/50976335626/in/dateposted-public/
21:36:26  <supermop_Home> FLHerne looks too america
21:36:37  <DorpsGek> [OpenTTD/OpenTTD] ldpl opened issue #8761: Client gets kicked for invalid packet when joining large map with a new company https://git.io/JtAzv
21:42:45  <andythenorth> gronk!
21:45:59  <frosch123> did someone leak the author of rocket gronk?
21:51:28  *** erle- has quit IRC
21:55:37  *** snail_UES_ has quit IRC
21:55:37  *** Wormnest has quit IRC
21:55:37  *** nielsm has quit IRC
21:55:37  *** WormnestAndroid has quit IRC
21:55:54  *** WormnestAndroid has joined #openttd
21:56:02  *** nielsm has joined #openttd
21:56:05  *** snail_UES_ has joined #openttd
21:56:11  *** Wormnest has joined #openttd
21:56:45  *** Samu has quit IRC
21:57:02  *** didac has quit IRC
22:01:31  <supermop_Home> all lined up: https://imgur.com/uBCcVe0
22:06:44  <supermop_Home> do i change sprites based on drive side via a cb or a parameter?
22:10:30  <frosch123> no idea what you mean
22:10:59  <frosch123> you can check the drive-side in a switch() expression
22:24:05  *** rptr has quit IRC
22:24:33  <FLHerne> andythenorth: This old BR advert is 100% Horse/FIRS https://www.youtube.com/watch?v=EsyyJaX0j3Y
22:25:51  * andythenorth watches
22:26:49  <andythenorth> it really is
22:27:07  <andythenorth> pacer!
22:27:12  <andythenorth> no pacer in Horse
22:30:04  <FLHerne> It would need a special sound effect for going round corners
22:30:15  *** Wolf01 has quit IRC
22:30:17  <FLHerne> SKREEEEEE!
22:45:37  <supermop_Home> andythenorth much 43 porn
22:45:59  <supermop_Home> espescially the last shot of all the cabs in the terminal
22:47:51  <andythenorth> yair
22:47:53  * andythenorth bed
22:47:57  <andythenorth> bye :)
22:47:58  *** Wuzzy2 has joined #openttd
22:48:01  *** andythenorth has quit IRC
22:49:12  *** Wuzzy has quit IRC
22:59:11  *** frosch123 has quit IRC
23:25:53  <DorpsGek> [OpenTTD/OpenTTD] mattkimber opened issue #8762: Alignment issues dragging articulated vehicles in depot https://git.io/JtAVK
23:48:27  <DorpsGek> [OpenTTD/OpenTTD] stormcone commented on issue #8762: Alignment issues dragging articulated vehicles in depot https://git.io/JtAVK
23:53:55  *** nielsm has quit IRC
23:59:52  *** Progman has quit IRC

Powered by YARRSTE version: svn-trunk