Times are UTC Toggle Colours
00:48:23 *** glx has quit IRC 01:59:51 *** HerzogDeXtEr has joined #openttd 02:02:26 *** didac has quit IRC 02:07:37 *** supermop_Home has quit IRC 02:11:11 *** Wormnest has quit IRC 02:16:04 *** didacp has joined #openttd 02:18:14 *** tokai|noir has joined #openttd 02:18:14 *** ChanServ sets mode: +v tokai|noir 02:23:16 *** D-HUND has joined #openttd 02:25:07 *** tokai has quit IRC 02:26:33 *** debdog has quit IRC 03:39:45 *** Flygon has joined #openttd 04:10:43 *** snail_UES_ has quit IRC 05:29:34 *** tokai has joined #openttd 05:29:34 *** ChanServ sets mode: +v tokai 05:36:33 *** tokai|noir has quit IRC 05:53:32 *** andythenorth has joined #openttd 05:53:51 <peter1138> o 05:57:02 <didacp> 0 05:59:03 <LordAro> O 06:00:13 <peter1138> 'clock 06:13:38 *** didacp has quit IRC 06:21:33 *** sla_ro|master has joined #openttd 06:39:45 *** erle- has joined #openttd 07:04:55 <andythenorth> yo 07:05:15 <andythenorth> goes it add an air leg penalty to cdist? https://arstechnica.com/cars/2021/04/france-bans-air-travel-that-could-be-done-by-train-in-under-2-5-hours/ 07:45:47 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened issue #9035: No obvious way to change player name during multiplayer session https://git.io/JOmiO 07:48:46 *** FLHerne has joined #openttd 08:01:46 *** erle- has quit IRC 08:02:26 <dih> hej hej 08:04:05 *** erle- has joined #openttd 08:11:29 <DorpsGek> [OpenTTD/OpenTTD] James103 commented on issue #9031: Rivers going uphill are nearly impossible to distinguish from flat river https://git.io/JOq2J 08:20:49 <DorpsGek> [OpenTTD/OpenTTD] andythenorth commented on issue #9031: Rivers going uphill are nearly impossible to distinguish from flat river https://git.io/JOq2J 08:33:20 *** WormnestAndroid has quit IRC 08:33:33 *** WormnestAndroid has joined #openttd 08:35:30 <DorpsGek> [OpenTTD/OpenTTD] orudge commented on issue #8056: OpenTTD's Windows installer should be signed https://git.io/Jvbkk 08:35:42 *** andythenorth has quit IRC 08:40:30 <DorpsGek> [OpenTTD/OpenTTD] Eddi-z commented on issue #9031: Rivers going uphill are nearly impossible to distinguish from flat river https://git.io/JOq2J 08:42:49 <DorpsGek> [OpenTTD/team] Saran-S-Menon opened issue #191: [ta_IN] Translator access request https://git.io/JOm91 08:52:49 <TrueBrain> ugh, having so many files in "src" makes navigating in VSCode often very annoying .. I have to scroll a lot to get to the few folders we have :P 08:54:18 *** Wolf01 has joined #openttd 08:56:25 <LordAro> are the folders not at the top like every other file browser ever? 08:56:27 <LordAro> but yes 08:58:01 <TrueBrain> they are 08:58:04 <TrueBrain> but if I am at the bottom 08:58:09 <TrueBrain> ... :D 08:58:17 <TrueBrain> https://www.tt-forums.net/viewtopic.php?p=1243653#p1243653 <- fucking gatekeepers 09:02:23 <TrueBrain> related to #9035, I cannot believe nobody redesigned the Client List over the years :P It is such a weird window that doesn't fit the game really :) 09:03:24 <Wolf01> \o/ OpenTTD updated on msstore too 09:03:26 *** tokai has quit IRC 09:03:37 <TrueBrain> Wolf01: yup .. turns out if you fix URLs, it actually works :P 09:03:51 <TrueBrain> stupid we didn't got an email about it, honestly 09:04:14 <TrueBrain> talking about emails, last nightly failed for stupid reasons not in our control 09:07:11 <LordAro> :( 09:07:43 <Wolf01> https://www.microsoft.com/store/productId/9P3FW12KF4D8 nice game, at least I like the graphics 09:07:58 *** tokai has joined #openttd 09:07:58 *** ChanServ sets mode: +v tokai 09:09:48 *** iSoSyS has joined #openttd 09:10:40 <Timberwolf> Sun coming from the left? That'll never catch on. 09:19:29 <Wolf01> I was thinking about a section on the game options to tell where is the current base directory and maybe the ability to select the global or the game folder, and even set the current config as global or vice versa 09:19:52 <TrueBrain> what are you trying to solve? 09:20:24 <Wolf01> Confusion between different installations of OpenTTD 09:21:05 <Timberwolf> Oh, I have this - my portable installs (D:\Games\OpenTTD_dev and similar) pick up content from the Steam install, because they look in c:\users\blah\Documents\OpenTTD regardless. 09:21:24 <TrueBrain> all games ALWAYS look in Documents\OpenTTD too 09:21:29 <TrueBrain> (it is in addition too btw) 09:21:44 <Wolf01> I usually use global for stable versions, so steam and msstore, and game folder for the development ones 09:21:49 <LordAro> being able to properly work out where things are coming from would be beneficial 09:21:54 <Timberwolf> I "fixed" it by moving all the content files to the Steam install's folder, so there's no Documents folder for anyone. 09:21:57 <LordAro> an "open containing folder" button 09:23:49 <Wolf01> <Timberwolf> Oh, I have this - my portable installs (D:\Games\OpenTTD_dev and similar) pick up content from the Steam install, because they look in c:\users\blah\Documents\OpenTTD regardless. <- this changed? I used to have a portable install too, but it always worked fine, not sure now for dev versions 09:25:52 <Timberwolf> No idea, I never had any files in Documents\OpenTTD until Steam. 09:26:39 <TrueBrain> if you have an openttd.cfg next to your openttd.exe, it will write new files there, instead in the Documents\OpenTTD 09:27:02 <TrueBrain> Wolf01: maybe good to know, OpenTTD has more than just "local" and "global" folder. I believe it has 5 search paths it uses :) 09:32:11 <peter1138> TrueBrain, that appImage stuff points to a repo that is basically a GHA for creating the appImage. 09:32:45 <peter1138> I was also going to write a sarky reply but actually, if it's possible to integrate that then why not. 09:33:00 <TrueBrain> peter1138: we had some long talks about that 09:33:12 <TrueBrain> the author tried to merge the AppImage stuff in OpenTTD 09:33:25 <TrueBrain> but .. similar with flatpak and snap support: all of a sudden we have to maintain it 09:33:30 <TrueBrain> also have to deal with the support etc 09:33:33 <peter1138> There is that. 09:33:39 <TrueBrain> I think it is far better for us to let an external person deal with it 09:33:46 <peter1138> If it was already discussed, then fine :) 09:33:52 <TrueBrain> for example, the flatpak dude does a really good job listening to user-requests 09:34:11 <peter1138> The appImage build appears to be very Ubuntu-centric. 09:34:20 <TrueBrain> it is also only x86_64 09:34:28 <TrueBrain> all these "single file formats" are .... ugh 09:34:31 <TrueBrain> they are not there yet 09:34:36 <peter1138> And indeed it is actually build from the .deb file... d'oh 09:35:09 <TrueBrain> there is also the matter of the huge filesize in relation to our other download 09:35:46 <peter1138> I assume it works by bundling the shared libs, so yeah. 09:35:49 <TrueBrain> basically, AppImage / flatpak, they pick what soundfont you get 09:36:37 <TrueBrain> flatpak's sizes are not as big as appimage, but that is because flatpak just ships common binaries once 09:36:40 <TrueBrain> and make others depend on it 09:36:59 <TrueBrain> basically, how I see it: this is still an ongoing battle :P 09:37:27 *** EER has joined #openttd 09:38:23 <Eddi|zuHause> the way i see it, we should treat appimage/flatpak/whatever the same way we treat a distribution: let the maintainers manage it 09:38:43 <LordAro> ^ 09:39:31 <peter1138> tbh, I was naïve and assumed the GHA would be building from source and all nice & tidy... 09:40:21 <TrueBrain> I am the same with Dockerfiles btw 09:40:31 <peter1138> LordAro, legs not dead this time, though they were feeling it on the last hill... 09:40:35 <TrueBrain> some people want us to add a Dockerfile in our source too, but it is far better imo to let others deal with it 09:40:38 <LordAro> peter1138: :) 09:45:08 <peter1138> In the client list, you get a menu (when you left click, of course!) that lets you "Speak to company" 09:45:23 <peter1138> Does that speak to the client's company, or your own? 09:45:43 <TrueBrain> I hope the first 09:45:53 <TrueBrain> we should rename it to "Speak to a manager" :D 09:46:17 <peter1138> Seems to be yes, that's good. 09:46:40 <EER> This reminds me that I haven't played proper multiplayer in over a decade 09:46:51 <TrueBrain> no worries, neither have we :P 09:47:04 <EER> not since WWOTTDGD/2 I think 09:47:14 <peter1138> I can also "Speak to company" when the client has no company (and even the server!) I wonder where that goes. 09:48:22 <TrueBrain> spectators, I would think 09:52:43 <TrueBrain> how ever I twist this, servers will need to have a persistent invite code I think .. otherwise this will be really frustrating for users: they join, say, reddit server 09:52:45 <TrueBrain> they play 09:52:48 <TrueBrain> the server restarts 09:52:53 <TrueBrain> now they have to find it back in the list 09:53:01 <TrueBrain> they cannot add it to their favorites 09:53:06 <TrueBrain> that sounds annoying 09:53:17 <TrueBrain> hmm .. hash the public ip + server name or something to deduce an invite code 09:53:39 <LordAro> seems reasonable 09:54:11 <TrueBrain> ideally we have some secret on a server he can use 09:54:16 <LordAro> assuming you can't get any collisions 09:54:18 <TrueBrain> but ... that makes portable builds annoying 09:54:27 <dih> wwottdgd? :-D 09:54:27 <LordAro> or at least, they're handled sanely 09:54:28 <dih> wow 09:54:40 <TrueBrain> LordAro: SHA1 collisions with only a-z .. not sure that is likely :) But yeah, it did crossed my mind too 09:55:00 <LordAro> ideally the invite code would be shorter than a SHA1 hash :p 09:55:13 <TrueBrain> copy/paste ftw 09:55:22 <LordAro> yeah, but it's still not very user friendly 09:55:33 <TrueBrain> no invite code is user friendly :P 09:55:48 <TrueBrain> but I doubt anyone ever typed Discord invite codes :) You just copy/paste :) 09:55:57 <LordAro> perhaps 09:56:03 <TrueBrain> but yeah, SHA1 might be a bit long anyway 09:56:12 <TrueBrain> the other approach I was considering, that servers can register somewhere 09:56:17 <TrueBrain> to get their own custom invite code 09:56:21 <TrueBrain> with a secret they have to enter in the server 09:56:47 <TrueBrain> so something like OPENTTD_MULTIPLAYER_COOKIE=abc OPENTTD_MULTIPLAYER_JOIN_KEY=reddit ./openttd -D 09:56:51 <TrueBrain> or what-ever 09:57:03 <dih> after sponsoring with 5 EUR ? 09:57:07 <TrueBrain> no 09:57:18 <TrueBrain> but it cannot be something that is stored in openttd.cfg, as people will copy/paste that, I think :D 09:57:25 <TrueBrain> maybe just another .cfg file just for this? 09:57:40 <LordAro> maybe should ask some existing server owners :p 09:57:55 <dih> what exactly are you wanting to accomplish? 09:58:19 <peter1138> 1080x1920 portrait is... not very good. 09:58:23 <TrueBrain> LordAro: I tried in the past, and it is pretty difficult to reach them .. we can reach 1, basically 09:58:35 <TrueBrain> which is a rather high bias :) 09:58:40 <LordAro> mm 09:59:23 <DorpsGek> [OpenTTD/OpenTTD] xelnod opened issue #9036: Game crashes while opening Towns directory on OS X, 1.11.0 Steam https://git.io/JOmpA 10:00:09 <TrueBrain> I will trucker on for now, but I already find this annoying, so I am sure it needs some resolving sooner or later :P But first, other shit to fix :D 10:00:28 <DorpsGek> [OpenTTD/OpenTTD] xelnod commented on issue #9036: Game crashes while opening Towns directory on OS X, 1.11.0 Steam https://git.io/JOmpA 10:01:10 <peter1138> Heh, I can sort by rating, but becuase I'm a spectator I have no rating, so it makes no odds. 10:01:23 <peter1138> And sort direction makes no difference either. 10:01:59 <dih> TrueBrain what if the master server holds that data? 10:02:01 <peter1138> That suggests it's either ignored, or there's no backup sorter. 10:02:13 <TrueBrain> dih: without a secret the server knows, that is not of much use 10:02:35 <peter1138> Isn't there an existing secret, already stored in the .cfg? 10:02:46 <TrueBrain> not that I know of 10:02:59 <TrueBrain> we used to do that .. people copied the cfgs ... many servers had the same unique id :P 10:03:02 *** Smedles has quit IRC 10:03:12 <peter1138> network_id 10:03:27 <peter1138> maybe that's just an old value that's left in my ancient config... 10:03:42 <peter1138> Nope, still referenced in the code. 10:03:57 <TrueBrain> never heard of it, so lets see what it does 10:04:08 <dih> register with master server, get a session cookie from there 10:04:09 <TrueBrain> hash of a random number + a fixed string 10:04:40 <TrueBrain> used for password hashing (?!) 10:06:45 *** Smedles has joined #openttd 10:07:04 <peter1138> Yeah. I always thought it was to do with master server regstration, but it turns out not to be :-) 10:07:50 <TrueBrain> added in 2007 10:07:51 <TrueBrain> lol 10:08:23 <TrueBrain> but yeah, that is only meant to prevent clear-text passwords on the wire 10:08:29 <TrueBrain> so it is okay if other servers use the same network-id 10:08:35 <TrueBrain> they don't have to be unique, in that sense 10:08:39 <TrueBrain> just better if they are 10:08:54 <TrueBrain> interesting find peter1138 , never knew :) 10:11:16 <dih> what if it is the client that authenticates against the master server and is given a session cookie - that session cookie is then passed from the client to the server they whish to connect to and the server can verify against master 10:11:37 <TrueBrain> sorry, I have no clue what problem you are solving :D 10:11:44 <dih> pffft 10:11:56 <TrueBrain> I am trying to see if we can find a way to know a server is a server 10:12:21 <dih> ah - that way round :-D 10:12:59 <dih> ssl certificate 10:13:05 * dih hides 10:14:29 <dih> and you run a CA 10:15:13 <TrueBrain> yeah, no :P 10:15:36 <dih> hehe 10:15:40 <TrueBrain> anyway, a problem for later, not now :) Lets first finish the rest of this 10:16:08 <dih> define rest and define this :-P 10:16:37 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding (using STUN) https://git.io/JOk7C 10:18:03 <dih> you could always again with registration have a user register ip:port and get a uniqe id for that which has to be placed in the config. and the id is only valid if it matches with the registered ip:port 10:23:45 *** erle- has quit IRC 10:40:08 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding (using STUN) https://git.io/JOk7C 10:46:44 <Wolf01> I have a nice router which is extremely STUN resistant if you want :P 10:47:37 <Wolf01> Because my provider blocked the voip port used by STUN and I'm not even able to use it for anything else, for example I can't play destiny 2 with it 10:57:30 *** nielsm has joined #openttd 11:00:34 <EER> dih: it's been a long while, at the time I was also playing a bit on coop and some other servers, but then I started working full time ;-) 11:04:07 *** spnda has joined #openttd 11:33:41 <milek7> TrueBrain: btw, what do you think about tcp encryption? 11:33:41 <milek7> ie. whether to use simple library like libhydrogen, or pull whole TLS (with openssl or something) 11:36:24 <milek7> https://github.com/OpenTTD/OpenTTD/commit/d3653710d35e44c63397601e67c31d2c10f9a0ae 11:37:58 <spnda> I think I found an issue with 8964, but not sure 11:38:00 <milek7> here it is implemented with libhydrogen, but I'm not sure about layering too 11:38:00 <milek7> in this I used existing packet system, and added special PACKET_CIPHERTEXT which encapsulates other encrypted packets 11:39:19 <milek7> but it might also be done by not touching existing packets and stacking another protocol below tcp_game 11:42:58 <peter1138> Yeah, that's a bad way to do it. 11:49:03 <peter1138> Encryption should always be the outer-most layer. 11:49:41 *** jeremy[m] has quit IRC 11:53:52 <milek7> one issue is that company-info query is now version independent, layering another protocol would break that 11:54:15 <milek7> though does this is used by anybody? 11:58:23 <peter1138> Unmanaged OpenTTD server is surprisingly full... 11:58:54 *** glx has joined #openttd 11:58:54 *** ChanServ sets mode: +v glx 12:11:02 <spnda> by convention, should I name local variables by camelCase or snake_case? 12:21:09 *** sauntheninja has joined #openttd 12:26:45 <glx> https://wiki.openttd.org/en/Development/Coding%20style 12:27:40 <spnda> I can never find that link... should bookmark it 12:45:20 *** tokai|noir has joined #openttd 12:45:20 *** ChanServ sets mode: +v tokai|noir 12:52:19 *** tokai has quit IRC 12:57:40 *** snail_UES_ has joined #openttd 13:08:47 <TrueBrain> yippie, caused a double-free in the window system 13:08:51 <TrueBrain> no clue why, BUT I DID IT! :) 13:10:43 <TrueBrain> seems to be because I open a window from the OnQueryTextFinished 13:11:11 <TrueBrain> yeah .. 13:11:21 <LordAro> gj 13:11:39 <TrueBrain> well, more specific, if I close a window from it 13:16:40 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #9036: Game crashes while opening Towns directory on OS X, 1.11.0 Steam https://git.io/JOmpA 13:22:07 <TrueBrain> I find so many unrelated issues that are hard not to address 13:23:16 <glx> LordAro: weird part is the stack trace 13:23:32 <LordAro> OSX stacktraces have been meaningless for a while 13:23:43 <glx> ah wrong thread 13:26:45 <sauntheninja> hey i want to work on a beginner issue but no one has responsed to it? 13:28:50 *** D-HUND is now known as debdog 13:29:40 <LordAro> sauntheninja: i'll bite, which one? 13:30:46 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding (using STUN) https://git.io/JOk7C 13:32:09 *** erle- has joined #openttd 13:36:33 <glx> sauntheninja: #8252 ? 13:39:38 <glx> usually if code is the same in different location you can put it in a common function that will be called instead 13:52:29 <sauntheninja> https://github.com/OpenTTD/OpenTTD/issues/8252 13:55:15 <sauntheninja> ok thanks 13:55:43 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding (using STUN) https://git.io/JOk7C 13:55:49 *** sauntheninja has quit IRC 13:56:43 <TrueBrain> okay .. getting there 13:56:46 <TrueBrain> GUI is mostly done 13:56:55 <TrueBrain> totally transparent when STUN is used and not 13:57:05 <TrueBrain> so that is nice, I guess 13:57:21 <TrueBrain> about 10 TODOs left, and some features to add 13:57:29 <TrueBrain> slowly but steadily :) 13:57:33 *** y2kboy23_ has joined #openttd 14:00:48 *** HerzogDeXtEr1 has joined #openttd 14:01:19 *** gnu_jj has quit IRC 14:01:40 *** Samu has joined #openttd 14:01:48 *** gnu_jj has joined #openttd 14:01:51 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding (using STUN) https://git.io/JOk7C 14:01:54 *** HerzogDeXtEr has quit IRC 14:01:59 *** sauntheninja has joined #openttd 14:02:23 *** y2kboy23 has quit IRC 14:02:26 <TrueBrain> I now need to figure out a way to allow multiplayer without the game-coordinator (so by IP/port) to work as well 14:02:30 <TrueBrain> which is not completely trivial 14:04:45 <glx> maybe you can try normal connexion, and then game-coordinator if it failed 14:05:12 <TrueBrain> yeah, the main problem is in a dual-setup 14:05:24 <TrueBrain> what should it do if the server is also publishing itself to the game-coordinator 14:05:33 <TrueBrain> join-keys now win, basically 14:05:40 <TrueBrain> so I need to find a code-wise elegant way to solve that 14:06:29 <TrueBrain> servers basically have to be dualstack :D 14:06:35 <TrueBrain> the code is there .. just .. glueing it together .. meh :D 14:06:49 <TrueBrain> (as I think IP:port should win from join-keys) 14:09:11 <milek7> keep flag in master-server whether server is reachable directly? 14:10:11 *** gnu_jj has quit IRC 14:12:19 <TrueBrain> owh, and in my PR servers no longer need to have their UDP port open, and they no longer will be sprayed with UDP packets for every client that hits Search Internet \o/ :D 14:12:38 <TrueBrain> especially that last one was the goal 14:18:23 <spnda> to this day, after countless hours in developing for #7955, I cannot wrap my head around Station, BaseStation etc. 14:19:00 <glx> BaseStation is the common part 14:20:11 <spnda> It is the common part from my understand aswell, but it's just really weird to see it having stuff like the StationSpecList as a property and the area of the train station etc. 14:21:06 <glx> then you have SpecialisedStation 14:23:05 <glx> to distinguish waypoints and stations 14:23:27 <glx> and StationSpec is used for both 14:24:49 <Rubidium> it mostly has to do with waypoints being (special) train stations in the NewGRF specification, so there is a superclass of everything that needs to be shared between a proper Station and a Waypoint for NewGRF purposes 14:25:53 <Eddi|zuHause> have we had a discussion about road waypoints recently? 14:26:19 <spnda> people requested that for me to add with #7955 and make them newgrf compatible out of the box 14:27:41 <spnda> so does RoadStop inherit BaseStation? 14:28:20 <peter1138> No, road stops are separate. Road stops belong to a station. 14:30:33 <DorpsGek> [OpenTTD/OpenTTD] xelnod commented on issue #9036: Game crashes while opening Towns directory on OS X, 1.11.0 Steam https://git.io/JOmpA 14:34:53 *** WormnestAndroid has quit IRC 14:35:44 *** WormnestAndroid has joined #openttd 14:35:58 <glx> maybe split RoadStop in a similar way as Stations 14:37:25 <spnda> I'd be up for it after #7955 is merged (I hope it's not closed :D) 14:37:42 <DorpsGek> [OpenTTD/OpenTTD] auge8472 commented on issue #9031: Rivers going uphill are nearly impossible to distinguish from flat river https://git.io/JOq2J 14:37:53 <glx> or maybe no need to split, but add a template arg 14:38:31 <spnda> I feel like the Station classes can do a bit of reworking in general 14:39:32 <peter1138> stations are only split because waypoints behave differently. it's nothing to do with newgrf though. 14:40:31 <glx> but I think you may end to move some stuff from RoadStop to StationBase if they are used for stations and waypoints 14:40:45 <peter1138> Basically if you're dealing with 7955, I don't think you need to care about Station vs BaseStation 14:41:00 <peter1138> Unless you're also doing road waypoints. 14:41:19 <spnda> I'm trying to understand how they work and how the saveload code works in relation to it 14:42:04 <peter1138> One is subset of the other... 14:42:41 <Eddi|zuHause> spnda: if we're talking about the general design, you should organize your roadstations similar to airports 14:42:45 <glx> saveload code uses a list of fields 14:43:17 <spnda> Eddi|zuHause: Are you mentioning that in regard to have FEAT_ROADSTOP_TILE and FEAT_ROADSTOP seperately to get multi-tile stops? 14:43:29 <Eddi|zuHause> yes 14:44:00 <peter1138> Wait for the unspecified statemachine to be brought up... 14:44:12 <Eddi|zuHause> i was trying to avoid that topic. :p 14:44:13 <spnda> I'm still not sure if one *really* needs it, as usually single stops are totally sufficient but if we decide it is necessary, yes, that's what I wanted to do 14:47:03 <Eddi|zuHause> like i said yesterday. you don't have to implement it, but it should be prepared properly, or it'll all have to be ripped out again 14:47:22 <spnda> yes definitely 14:47:36 <peter1138> spnda, the saveload magic is that _waypoint_desc and _station_desc are separate, and have the magic SLE_ST_INCLUDE() macro that isn't used anywhere, which includes all the common parts. 14:47:43 <peter1138> *anywhere else 14:48:08 <Eddi|zuHause> the strictest requirements for proper preparation would be in the NewGRF specs, because those are notoriously difficult to be corrected 14:48:34 <spnda> peter1138: And that macro includes _base_station_desc, or what fields does it include? 14:48:36 <glx> if road waypoints are added later it would be easier to just use another newgrf feature 14:48:45 <spnda> yeah probably that 14:49:10 <glx> to not end up having the same situation as rail station and rail waypoints 14:49:18 <Eddi|zuHause> code can be changed. specs can only be amended 14:49:45 <glx> IIRC for rails it happenend because stations were abused as waypoints before waypoints were added 14:49:51 <peter1138> spnda, it includes that, yes. 14:50:11 <spnda> ok thx 14:50:12 <peter1138> spnda, station_sl.cpp:460 tells you what it includes 14:50:32 <glx> so newgrf station existed before waypoints 14:50:59 <spnda> oh right, VSCode just pointed me into oblivion for those macros... so I couldn't find exactly what meant what 14:51:12 <peter1138> Yeah, newgrf waypoints == stations becuase ttdpatch. 14:51:17 <spnda> SLE_ST_INCLUDE went to SLV_MAX_VERSION for whatever reason 14:51:49 <peter1138> Hah, it does. Weird. 14:52:18 <peter1138> saveload.h:510 14:52:26 *** FLHerne has quit IRC 14:52:27 <peter1138> Oh, there's one for vehicles too :-) 14:52:51 <peter1138> Serialize to json, see how big the saves would be 14:54:05 <spnda> oh and the long loading times: See GTA V's recent loading time fix 14:54:20 <spnda> one small error and it took minutes to serialize some JSON file 14:55:01 <peter1138> Have they actually pushed that out to regular GTA V? 14:55:11 <spnda> Yeah they have, guy got 10K$ for it too 14:55:27 <peter1138> I heard they'd paid the developer, and that it was going to be used for something in the future, but that didn't specify also patched GTA V 15:02:25 *** supermop_Home_ has joined #openttd 15:08:13 *** y2kboy23_ has quit IRC 15:08:51 *** EER has quit IRC 15:09:01 <DorpsGek> [OpenTTD/OpenTTD] reldred commented on pull request #8480: Feature: Multitile depots https://git.io/JOY7X 15:09:36 *** y2kboy23 has joined #openttd 15:11:22 *** y2kboy23 has quit IRC 15:12:09 <milek7> c++ is weird 15:12:24 *** andythenorth has joined #openttd 15:13:48 <andythenorth> so pikka showed up in discord 15:14:12 <andythenorth> who else do we await? 15:14:14 <andythenorth> alberth? 15:14:26 <DorpsGek> [OpenTTD/OpenTTD] Milek7 opened pull request #9037: Fix: Add virtual destructor to link graph Path. https://git.io/JOYdm 15:14:58 *** y2kboy23 has joined #openttd 15:16:13 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9037: Fix: Add virtual destructor to link graph Path. https://git.io/JOYdr 15:16:17 <DorpsGek> [OpenTTD/OpenTTD] notjoshno commented on issue #9035: No obvious way to change player name during multiplayer session https://git.io/JOmiO 15:16:58 <LordAro> get told, peter1138 15:17:10 *** jottyfan has joined #openttd 15:18:56 *** sla_ro|master has quit IRC 15:20:59 <reldred> andythenorth: he did? I do actually need to touch base with him. 15:21:14 <andythenorth> reldred he did, as DavidD 15:21:20 <andythenorth> in main openttd channel 15:21:23 <andythenorth> will be in logs 15:22:09 <reldred> Ahh neat 15:22:34 <spnda> DavidD? Can't find them 15:25:08 <reldred> They’re hiding down with the whitetext’s 15:25:23 <reldred> It’s late though, I’ll bother him tomorrow. 15:25:40 <spnda> Btw regarding saveload. Can I not just do ReadUint8() 2x to get the class id and the spec id, then assign the specs using those values? 15:25:43 <reldred> He’s half an hour ahead of me iirc 15:25:51 <spnda> Ah, reldred: Yeah, took a while to load all members 15:26:44 <reldred> I need to ask him about whether he’ll let me release/maintain the houses and landscape changes from the old old old pineapple set. 15:27:06 <reldred> I split them out into their own grf’s for my own use. 15:27:15 <spnda> reldred: Why not ask now, they are online and marked as online? 15:27:37 <spnda> and if not they'll get back tomorrow 15:27:59 <reldred> It’s an unreasonable hour of the day and if they do respond back immediately I should be in bed :P 15:28:13 <reldred> It’s a tomorrow problem :-) 15:28:23 <spnda> well then 15:28:41 <andythenorth> reldred he's in the channel now :) 15:28:53 <andythenorth> (discord) 15:29:45 <andythenorth> he / they /s 15:33:02 <spnda> is it cheating to have a SaveLoad description with just two values put into a std::pair and then later using those values in Load_ROADSTOP / Save_ROADSTOP? 15:34:27 *** Flygon has quit IRC 15:42:27 *** jottyfan has joined #openttd 15:45:34 <peter1138> Hi 15:45:47 <peter1138> spnda, are the class id / spec id stored in the road stop? 15:54:30 <peter1138> Cool, my player name issue got downvoted. 15:54:49 <glx> and the comment is not nice 15:55:29 <peter1138> I probably shouldn't be used the issue tracker as a "remember this suggestion for later" but... that is a common usage for them :p 15:55:34 <peter1138> *using 15:56:59 <spnda> peter1138: No, in the RoadStopSpec struct, which then is part of RoadStop. 15:57:25 <peter1138> Hm. Why? 15:57:39 <spnda> Was the best solution that came to my mind. 15:57:48 <peter1138> RoadStop is all the data for a single road stop 15:58:28 <peter1138> StationSpecList is only a thing because rail station tiles don't have separate storage (well, apart from the map) 15:59:11 <spnda> Yeah, but NewGRFClass requires you to give it a struct, which in my case resulted in me making a RoadStopSpec class, as most if not all other features do. 15:59:23 <spnda> StationSpecList also has a StationSpec* spec in it 16:02:05 <peter1138> That's just a reference, it's not storage. 16:02:15 <peter1138> StationSpec comes from the NewGRF. 16:03:56 <peter1138> speclist is the saveload part, and that's only done that way because it's a separate array from the main station. 16:05:48 <peter1138> Right, bike or not. 16:06:21 <peter1138> Thinking I might try alternate days to start with though. 16:06:35 <peter1138> So I don't totally kill my legs. 16:16:39 *** Synck has joined #openttd 16:20:23 *** Synck has quit IRC 16:25:59 *** Progman has joined #openttd 16:31:31 *** FLHerne has joined #openttd 16:34:03 *** WormnestAndroid has quit IRC 16:34:40 *** WormnestAndroid has joined #openttd 16:45:17 *** FLHerne has quit IRC 16:45:27 *** FLHerne has joined #openttd 16:45:29 *** gelignite has joined #openttd 16:48:40 *** sla_ro|master has joined #openttd 16:49:21 *** Gubben has joined #openttd 17:02:07 <spnda> I'd really love some more comments around saveload. There's literally 0 comments in airport_sl.cpp 17:03:47 <nielsm> https://www.tt-forums.net/viewtopic.php?p=1243682#p1243682 <-- someone needs help with their bananas account 17:09:07 *** Compu has joined #openttd 17:09:16 *** Compu has quit IRC 17:21:57 *** qwebirc11132 has joined #openttd 17:22:28 <Rubidium> spnda: that file does not much more than define some chunks to be put into the savegame (the last table) with the identifier of the chunk, the routine to call to save and load it, some things you'll likely not need (the nullptrs) and some data to describe how the data is saved / mark the last element in the array 17:23:15 <Rubidium> in the case of airports it is also only the NewGRF mapping/configuration, all other information about the airport (like location) is somewhere else 17:24:24 <spnda> Yeah, I understood that. Just clueless at to what the NewGRF mappings/configs actually do? 17:24:48 <spnda> Like why does saving/loading airports want to load/save those mappings, what do they contain etc.? 17:27:21 <Rubidium> oh, NewGRFs have their internal IDs for things, but OpenTTD uses its own 1 byte IDs (instead of storing by 4 byte GRFID and 1 byte NewGRF local ID). However, these IDs might change depending on the order NewGRFs are loaded and the likes, so the mapping should be saved 17:27:30 <peter1138> It's part of ensuring that the correct internal newgrf references are retained. 17:27:32 <peter1138> Yeah ^ 17:28:06 <spnda> So as I am integrating my own newgrf feature, I guess I should also implement the same functions as industries/airports use? 17:28:12 <spnda> Save_NewGRFMapping etc. 17:29:30 <peter1138> For rail stations it was done differently, basically before all that infrastructure existed. 17:30:16 <peter1138> AfterLoadStations() handles the mapping from grfid and localidx, but it goes straight to the StationSpec reference instead of an intermediate id. 17:31:32 <peter1138> Put up a little piece of wood to shield my external thermometer from the Sun. It dropped from 18 to 12 deg C... 17:58:56 *** Synck has joined #openttd 18:11:29 <andythenorth> if you take it down, does the day get hotter? 18:11:51 <TrueBrain> so peter1138 is the one causing all this snow 18:12:04 <TrueBrain> please remove your piece of wood from between the sun and earth ktnx 18:19:35 <peter1138> Damn 18:20:50 *** HerzogDeXtEr1 has quit IRC 18:21:34 *** Gustavo6046 has quit IRC 18:22:13 *** Gustavo6046 has joined #openttd 18:35:51 <Synck> The release build has all the asserts removed I guess? So no checks in the distributed game? 18:36:23 *** iSoSyS has joined #openttd 18:36:57 *** qwebirc11132 has quit IRC 18:37:29 *** otetede has joined #openttd 18:37:59 <FLHerne> Synck: yes 18:45:50 *** Progman has quit IRC 18:46:37 *** Progman has joined #openttd 18:47:14 <Synck> Is it project policy/style to not use exceptions? 18:47:43 <nielsm> lots of the code is not exception safe at all 18:48:00 <nielsm> lots of manual memory management and global state around 18:48:53 <DorpsGek> [OpenTTD/OpenTTD] michicc merged pull request #9037: Fix: Add virtual destructor to link graph Path. https://git.io/JOYdm 18:50:06 *** otetede has quit IRC 18:53:33 <Synck> is there interest in adding (unit)test? #7796 gave it a try but was abandoned waiting for cmake 18:53:51 <nielsm> yes 18:53:55 <Synck> with cmake and vcpkg it should be easy to add a test framework 18:53:59 <nielsm> there are lots of candidate code for testing 18:54:46 <Synck> I'll give it a try with catch2 framework 18:57:52 <Xaroth> I see nielsm volunteers for building unit tests. 18:59:52 *** urdh has quit IRC 19:02:02 <Synck> if I make changes to ci-build.yml, will they be used for the pull-request build? 19:04:20 *** urdh has joined #openttd 19:05:12 <Xaroth> I would hope not 19:05:35 <LordAro> yes 19:05:52 <LordAro> Xaroth: technically a security issue, yes, but not our infrastructure, so not our problem 19:06:05 <LordAro> and makes it an awful lot easier to test changes 19:09:05 <Synck> to test workflow changes, creating a PR is the easiest I guess? or can I try them locally or on my fork? 19:09:22 <glx> you can create a PR on your fork 19:09:37 <glx> should run CI 19:10:39 <glx> so you can force push a lot as you test things, without generating spam here ;) 19:12:06 <glx> that's our usual way when we modify workflows 19:13:25 <glx> and the only option to test workflows if they are not yet implemented in upstream 19:14:43 <Synck> great, I'll try to get a prototype running 19:16:28 <Synck> what does the current regression test do? 19:16:33 <peter1138> Hmm, can I tell VS Code what defines are set? 19:16:45 <TrueBrain> yup 19:16:51 <TrueBrain> no clue how anymore :D 19:17:24 <TrueBrain> .vscode/c_cpp_properties.json 19:17:30 <TrueBrain> is a JSON file, configurations -> defines 19:17:35 <glx> regression test runs an AI to check some functions 19:18:28 <glx> mainly to make sure a change in code doesn't modify expected behaviour 19:19:55 *** Synck has quit IRC 19:20:27 *** Gubben has quit IRC 19:28:48 *** Gustavo6046 has quit IRC 19:29:11 *** Gustavo6046 has joined #openttd 19:58:00 <DorpsGek> [OpenTTD/OpenTTD] J0anJosep updated pull request #8480: Feature: Multitile depots https://git.io/JL5Hh 19:59:48 *** Gustavo6046_ has joined #openttd 20:00:10 *** Gustavo6046 has quit IRC 20:00:10 *** Gustavo6046_ is now known as Gustavo6046 20:01:53 <DorpsGek> [OpenTTD/OpenTTD] J0anJosep commented on pull request #8480: Feature: Multitile depots https://git.io/JOOKH 20:27:35 *** FLHerne has quit IRC 20:32:11 *** FLHerne has joined #openttd 20:35:42 *** gnu_jj has joined #openttd 20:44:39 *** gnu_jj has quit IRC 20:53:51 *** Samu has quit IRC 20:53:55 *** Synck has joined #openttd 21:09:41 <andythenorth> can python files be edited in github? 21:09:45 * andythenorth could just try 21:09:54 <andythenorth> considering web-based Iron Horse grf builder 21:10:37 <glx> they are text files so yes 21:11:09 <andythenorth> so fork, edit -> something builds it? 21:11:12 <andythenorth> o_O 21:12:12 *** Progman has quit IRC 21:12:33 *** iSoSyS has quit IRC 21:13:56 <LordAro> if you turn that edit into a PR 21:14:02 <LordAro> or just edit & commit directly 21:14:57 *** Synck has quit IRC 21:16:49 <andythenorth> discord user wanted to turn off wagons but keep engines 21:16:53 <andythenorth> no parameter for that 21:16:58 <andythenorth> but easy python 21:28:35 *** Wormnest has joined #openttd 21:47:17 *** gelignite has quit IRC 21:47:30 *** Wolf01 has quit IRC 21:47:33 *** andythenorth has quit IRC 21:53:19 *** FLHerne_ has joined #openttd 21:59:14 *** FLHerne has quit IRC 22:04:53 <DorpsGek> [OpenTTD/OpenTTD] perezdidac commented on pull request #8749: WIP Feature: Setting to loop the same year forever https://git.io/JOO9y 22:05:40 <DorpsGek> [OpenTTD/OpenTTD] perezdidac commented on pull request #8749: WIP Feature: Setting to loop the same year forever https://git.io/JOO9d 22:07:03 <DorpsGek> [OpenTTD/OpenTTD] perezdidac commented on pull request #8749: WIP Feature: Setting to loop the same year forever https://git.io/JOO9x 22:09:02 *** erle- has quit IRC 22:11:14 *** nielsm has quit IRC 22:21:44 *** jottyfan has quit IRC 22:29:03 *** sla_ro|master has quit IRC 23:03:50 <DorpsGek> [OpenTTD/OpenTTD] LC-Zorg commented on pull request #9002: Change cargo age to have more effect on cargo payment. https://git.io/JOObe 23:28:04 *** Gustavo6046 has quit IRC 23:30:41 *** FLHerne_ has quit IRC 23:35:41 <DorpsGek> [OpenTTD/OpenTTD] LC-Zorg commented on issue #8101: (Streetcar) vehicles do not use all open stations/gates https://git.io/JfmVJ 23:37:56 *** Gustavo6046 has joined #openttd