Log for #openttd on 26th March 2019:
Times are UTC Toggle Colours
00:00:54  <Samu> number 7 showcases big planes on small airports
00:01:28  <LordAro> Samu: nah, it showcases crashing aircraft ;)
00:01:39  <Samu> or that
00:01:53  <peter1138> Standard title screen has crashing planes too.
00:01:59  <peter1138> (On a large airport, no less)
00:08:34  *** Supercheese has quit IRC
00:13:51  <DorpsGek_II> [OpenTTD/OpenTTD] rofl0r commented on issue #6896: game crashes on first autosave if compiled without lzo but with lzma
00:15:37  <LordAro> oh lord, musl
00:16:44  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on issue #6222: Stations: using property 1A sometimes shows incorrect railtype ground tile
00:17:00  <peter1138> Yup, bad string.
00:17:13  <peter1138> I mean, that shouldn't crash, but still :p
00:17:23  <LordAro> :)
00:18:56  <Samu> okay, for me 5 is the best
00:19:09  <Samu> if I were to vote, it would be 5
00:24:23  <LordAro> good news, you can vote!
00:25:11  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on issue #6667: Incorrect costs in bridge list after joining an AI company
00:30:24  <Samu> who could help me here?
00:31:46  <LordAro> Samu: at the absolute minimum, you can add your descriptions of the variable names to the code somewhere
00:31:51  <LordAro> but that still wouldn't be a good solution
00:32:13  <LordAro> lock_middle, lock_upper, lock_lower would be a good start
00:37:51  <Samu> they're not lock tiles, they're offsets :(
00:38:34  <Samu> the lock was just for visualizing where the checks would be done in relation to a possible lock
00:38:45  <Samu> but there is no lock
00:39:08  <LordAro> well, possible_lock_middle/lower/upper then
00:39:22  <LordAro> lock_corner
00:39:23  <Samu> eww, you sure?
00:39:25  <LordAro> lock_upper_upper
00:39:27  <LordAro> idk
00:39:40  <LordAro> just anything other than 4 meaningless letters
00:40:49  <LordAro> tile_delta_mid_1_delta_side_1 would be awful, but still better than what you've got at the moment
00:41:19  <LordAro> code efficiency NEVER EVER means shortest code
00:47:17  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro opened pull request #7417: Group hierarchy improvements (by 3298)
00:50:02  <Samu> visual studio 2019 launching in 7 days... hmm "k"
00:50:18  <peter1138> vim only takes a few milliseconds.
00:54:48  <Samu> I really need a SSD :(
00:54:50  *** supermop_Home_ has joined #openttd
00:56:48  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on issue #6564: Crash: loading save
01:01:25  <Eddi|zuHause> ... but code golf?
01:01:57  <peter1138> Hmm?
01:02:09  <Eddi|zuHause>  <LordAro> code efficiency NEVER EVER means shortest code
01:02:26  <peter1138> Oh
01:05:45  <Eddi|zuHause> there was this one time in school, when the teacher threw away his master solution for the test, and used my solution as the new base solution. because it was both clearer and shorter than his one
01:06:30  <LordAro> Eddi|zuHause: yeah sure, but Samu
01:06:52  <Samu> my code is very efficient!
01:07:27  <Samu> endsarcasm :Unknown command
01:10:24  <Samu> just doing a rebase to make it up to date, no changes yet
01:11:27  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick updated pull request #7073: Feature: Generate lock ready rivers upon world generation
01:12:57  *** Flygon has joined #openttd
01:16:05  <Samu> gonna try... reusing the variable name, instead of having multiple variables
01:16:09  <Samu> what do you think?
01:32:00  *** Supercheese has joined #openttd
01:32:58  <Samu> tile_offset
01:33:12  <Samu> 1 variable, multiple definitions
01:34:37  *** Thedarkb-X40 has joined #openttd
01:35:59  <Samu> assert(IsPossibleLockLocationRecursively(end) == IsPossibleLockLocationRecursivelyOneVariable(end));
01:36:05  <Samu> testing if i still get the same results
01:47:49  <Samu> success
01:51:55  *** tokai has joined #openttd
01:51:55  *** ChanServ sets mode: +v tokai
01:58:30  *** tokai|noir has quit IRC
02:22:07  <DorpsGek_II> [OpenTTD/OpenTTD] bentley commented on issue #6842: Heap overflow leading to crash
02:24:43  <Samu>  /* Create additional river tiles around possible lock locations to connect them. */
02:24:48  <Samu> give me a function name for this
02:24:59  <Samu> ConnectPossibleLocks?
02:25:28  <Samu> ConnectPossibleLocksWithRivers?
02:25:38  <Samu> CreateRiverTiles?
02:34:37  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick updated pull request #7073: Feature: Generate lock ready rivers upon world generation
02:39:26  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #7073: Feature: Generate lock ready rivers upon world generation
02:43:54  <Samu> bah, damn visual studio else if automation
02:44:20  <glx> that's configurable
02:45:37  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick updated pull request #7073: Feature: Generate lock ready rivers upon world generation
02:46:25  <Samu> really? where do I change that?
02:47:39  <Samu> int side_counts[] = { 0, 1, -1 }; is this with spaces or without spaces?
02:47:40  <glx> options, text editor
02:53:04  <Samu> aha, place else on a new line, yeah disabling this
02:54:26  <Samu> what's the correct style?
02:54:28  <Samu> int side_counts[] = { 0, 1, -1 };
02:54:35  <Samu> int side_counts[] = {0, 1, -1};
02:58:58  <Samu> hmm searching the code sometimes I see with a space, sometimes without
02:59:02  <Samu> no consensus
03:00:26  <Samu> I'm going with "it doesn't matter"
03:01:42  *** cHawk has joined #openttd
03:02:37  *** cHawk has joined #openttd
03:02:59  *** cHawk has joined #openttd
03:05:05  *** cHawk has quit IRC
03:05:15  *** cHawk has joined #openttd
03:05:29  <Samu> hah, this one is both styles
03:14:36  *** supermop_Home_ has quit IRC
03:24:21  *** dirtyroshi has joined #openttd
03:33:06  *** dirtyroshi has quit IRC
04:01:13  *** debdog has joined #openttd
04:04:37  *** D-HUND has quit IRC
04:46:27  *** Supercheese has quit IRC
04:46:49  *** Supercheese has joined #openttd
05:10:53  *** Hexus_One has joined #openttd
05:11:35  <Hexus_One> hello :) i'm looking to write patches for the citymania client - should I branch off the tip or am I okay to branch from the 1.8.0 release commit?
05:21:49  *** glx has quit IRC
05:26:14  <Samu> I think I found a bug
05:26:45  <Samu> ge->rating = rating = or_ + Clamp(Clamp(rating, 0, 255) - or_, -2, 2); station_cmd.cpp line 3412
05:27:31  <Samu> or not
05:27:36  <Samu> it's fine
05:30:05  *** Samu has quit IRC
06:24:43  *** andythenorth has joined #openttd
06:31:08  *** Hexus_One has quit IRC
06:45:51  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on issue #7347: Save overwrite confirmation doesn't respond to enter key
06:54:42  *** Hexus_One has joined #openttd
06:56:43  *** Hexus_One has left #openttd
07:18:07  *** Supercheese has quit IRC
08:06:48  *** andythenorth has quit IRC
08:29:28  *** Pikka has joined #openttd
08:30:42  <DorpsGek_II> [OpenTTD/OpenTTD] eekee commented on issue #7347: Save overwrite confirmation doesn't respond to enter key
08:37:28  <Pikka> but
08:43:47  *** Thedarkb-X40 has quit IRC
09:12:48  <peter1138> So are we scrapping NRT for a rethink, or going to merge it?
09:26:29  <Pikka> yes
09:29:43  <planetmaker> moin
09:30:03  <planetmaker> <peter1138> Standard title screen has crashing planes too. <-- I consider it a feature :) Action is what people want to see
09:30:17  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN requested changes for pull request #7417: Group hierarchy improvements (by 3298)
09:30:56  <peter1138> planetmaker, yes :)
09:31:28  <peter1138> I think Samu is still upset that we went the opposite way on the plane crash cheat/setting.
09:31:32  <planetmaker> the parcel with my cpu fan sped-up over night and is supposed to arrive today, too... good :)
09:34:14  <peter1138> Nice.
09:36:00  <planetmaker> 2x faster OpenTTD compilation :P
09:36:39  <peter1138> More cores?
09:36:49  <planetmaker> yep. ryzon 7 2700x
09:37:02  <peter1138> I still need to update my GPU. It got stalled by the mining crap.
09:37:15  <planetmaker> the GPU needs triggered all this :P
09:37:42  <peter1138> Is that 8 cores?
09:37:45  <peter1138> I only have 6 ;(
09:37:47  <planetmaker> yep, 8 with HT
09:38:00  <peter1138> I use -j 6 though.
09:38:01  <planetmaker> or SMT how AMD calls it
09:38:05  <peter1138> Maybe I should time it with -j 12?
09:38:10  <planetmaker> currently I have 4 with HT
09:38:21  <planetmaker> you'd gain something for sure
09:38:28  <peter1138> Although it's in a VM so I dunno if it will.
09:38:31  <planetmaker> depending on whether it supports hyperthreading
09:38:45  <planetmaker> ... VMs... make use of the "virtual" cores
09:38:52  <planetmaker> so it won't help
09:39:10  <peter1138> Well, it might depending on the setting.
09:39:26  <planetmaker> at least my linux announces 8 cores where it is 4 with hyperthreading. So... not sure
09:39:27  <peter1138> I switched to full Windows since I was mostly just gaming.
09:39:43  <planetmaker> he... no linux no more?
09:39:45  <peter1138> I've been deving on OpenTTD so much I'm kinda tempted to dual boot again.
09:39:59  <peter1138> I have Linux in a VM on Windows for OpenTTD dev :)
09:40:14  <peter1138> I really can't get on with VS for OpenTTD.
09:40:36  <planetmaker> I've dual boot... but mostly I just boot to linux. Only recently sometimes booted to windows... for factorio which refused to run decently on my linux due to... graphics driver issues
09:41:01  <peter1138> Hmm, 30 seconds at -j6 (debug build)
09:41:07  <planetmaker> gain?
09:41:15  <planetmaker> or total?
09:41:16  <peter1138> Total.
09:41:19  <planetmaker> nice
09:41:24  <peter1138> Trying -j12
09:41:30  <planetmaker> cold start? that's incredibly fast
09:41:48  <peter1138> make clean, at least.
09:41:59  <peter1138> 30 seconds for -j12 as well.
09:42:12  <planetmaker> I should time on my current machine and compare that to my new then :)
09:42:27  <peter1138> It's an i7 8700k, I'd hope it's fast :-)
09:42:46  <peter1138> It upgraded my old q6600, so a worthwhile upgrade.
09:42:54  <planetmaker> dunno what kind of i7 I have at home
09:43:08  <planetmaker> definitely
09:43:14  <planetmaker> but it's an old i7 I have
09:43:17  <peter1138> And I have VR so I wanted the best. And then I waited on the GPU and couldn't afford a good one suddenly :(
09:43:40  <planetmaker> the crypto-hype is over... so more affordable now?
09:44:12  <peter1138> No, they released the RTX-hype instead.
09:44:18  <planetmaker> hehe ,yeah
09:44:25  <planetmaker> but it's promising
09:44:26  <peter1138> I nearly got a 1080ti for £600 new, but then it went out of stock.
09:45:02  <planetmaker> well, I decided that 220€ is enough for a graphics card. I rarely use extremely graphics-heavy stuff
09:45:44  <planetmaker> radeon rx580
09:49:43  <planetmaker> especially I hope for better linux graphics support than by nvidia
09:49:57  <peter1138> Good luck with that.
09:50:02  <planetmaker> yeah :|
09:54:25  <planetmaker> the 1060ti or 1070ti would have been my nvidia choice
10:12:38  <planetmaker> hmm... src/build_vehicle_gui.cpp:1167:25: warning: enumeral and non-enumeral type in conditional expression [-Wextra]
10:12:38  <planetmaker>    CargoID cargo = refit ? this->cargo_filter[this->cargo_filter_criteria] : CT_INVALID;
10:14:53  <peter1138> planetmaker, there's an open PR that addresses that.
10:15:16  <peter1138> clang did not complain :-/
10:16:43  * peter1138 tries with -Wextra -Wno-unused-parameter... and still no warning.
10:17:03  <planetmaker> gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
10:17:16  *** Hexus_One has joined #openttd
10:17:52  *** debdog has quit IRC
10:18:00  <planetmaker> src/build_vehicle_gui.cpp:1423:28 has the same warning
10:18:53  *** debdog has joined #openttd
10:19:12  <Hexus_One> can I get some help compiling the CityMania client? I get the error"Severity	Code	Description	Project	File	Line	Suppression State Error	MSB3073	The command "cscript "C:\Users\Conrad\source\repos\cmclient\projects\/determineversion.vbs"" exited with code -1.	version	C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.MakeFile.Targets	44	"
10:19:21  <Hexus_One> oops
10:19:38  <Hexus_One> can I get some help compiling the CityMania client? I get the error
10:19:46  *** circ-user-3HYVs has quit IRC
10:19:59  <Hexus_One> "source\repos\cmclient\projects\/determineversion.vbs"" exited with code -1."
10:20:20  <planetmaker> so you muddled with version detection in your patch and screwed up
10:20:45  <Hexus_One> oh, but this is a fresh fork?
10:21:02  <Hexus_One> or as far as i know i just forked -> cloned from the tip
10:21:11  <peter1138> planetmaker, it's not his patch :)
10:21:13  <planetmaker> you're compiling clean OpenTTD code
10:21:16  <planetmaker> ?
10:21:34  <_dp_> Hexus_One, that doesn't seem to be related to citymania client though, did you try compiling vanilla?
10:21:38  <Hexus_One> i'm compiling the citymania openTTD client
10:21:46  <Hexus_One> i'll try compile vanilla
10:21:51  <planetmaker> I should not talk about windows-errors :) err-no-windows-found :P
10:21:59  <Hexus_One> haha
10:22:02  <_dp_> Hexus_One, also, yeah, join citymania discord let's not spam this channel xD
10:22:16  <Hexus_One> :0 thank you
10:22:50  <Hexus_One> lemme grab the 1.9.0-RC1 source
10:22:54  <peter1138> planetmaker, <-- I approved but did not merge in case anyone else had comments. You could fix that error ;)
10:25:25  <planetmaker> :P
10:26:13  <peter1138> And yes, it comes up with gcc.
10:26:36  <peter1138> Maybe I need multiple build dirs as well as my make regression push hook?
10:26:36  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7417: Group hierarchy improvements (by 3298)
10:27:53  <planetmaker> Without more thought, I don't understand the changes to refit
10:28:53  <planetmaker> CT_INVALID seems to have been removed from the possible cargoes
10:29:16  <peter1138> planetmaker, basically I didn't realise that it was an aliased CargoID already, so CF_NONE is already CT_INVALID.
10:29:25  <peter1138> Or maybe CT_NO_REFIT, or something.
10:30:32  <planetmaker> hm right
10:30:51  <planetmaker> first lunch
10:31:01  <peter1138> 10:30, bit early :)
10:31:13  <peter1138> Unless you mean *first* lunch, and a *second* lunch later.
10:41:04  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7417: Group hierarchy improvements (by 3298)
10:57:57  <Hexus_One> Q: In the settings, is the option "Show tooltips: Hover for 250 seconds" meant to say "Hover for 250 milliseconds
10:57:59  <Hexus_One> "??
10:58:01  *** andythenorth has joined #openttd
11:01:46  <peter1138> Yes, it does, but apparently Australians are different.
11:02:03  <peter1138> It's milliseconds in the GB and US lang files.
11:02:08  <Hexus_One> Ah, interesting
11:06:07  *** andythenorth has quit IRC
11:10:54  *** circ-user-3HYVs has joined #openttd
11:12:04  <planetmaker> peter1138, UTC+1 here. And... yes, we go to lunch very early
11:17:57  <Hexus_One> Hmm I should implement a road-planner before doing a rail-planner
11:24:45  <peter1138> I don't know. Did RC1 compile?
11:29:56  <Hexus_One> yeah it compiled fine :)
11:30:25  <Hexus_One> i was having issues with the version-checker-something while compiling the citymania client
11:31:27  <_dp_> it's a bit weird that determineversion.vbs returned an error since cmclient doesn't modify that script
11:31:35  <_dp_> but doesn't happen on vanilla so whatever
11:39:24  <peter1138> r/win 36
11:48:11  <planetmaker> going to be a long afternoon now... packet delivered to packing station... :)
11:48:45  <planetmaker> _dp_, depends... version determination changed completely between 1.8 and 1.9
12:00:14  <Eddi|zuHause> "bethesda gives away Elder Scrolls 3 when you sign up to their store"... yeah. not doing that.
12:04:34  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7165: [core] Implement SmallVector using std::vector
12:04:38  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7165: [core] Implement SmallVector using std::vector
12:09:08  *** sla_ro|master has joined #openttd
12:35:41  <Eddi|zuHause> the internet apparently is now dead.
12:36:15  <peter1138> Oh?
12:43:00  <Hexus_One> Q: are there map accessor functions to check if a given TileIndex contains a tunnel/bridge head? - and then functions to get information about said tunnel/bridge?
12:44:14  <Eddi|zuHause> yes.
12:44:33  <Hexus_One> cool :) where can I find them?
12:44:54  <Eddi|zuHause> probably in a file called tunnelbridge_something.h
12:45:21  *** circ-user-3HYVs has quit IRC
12:45:44  <peter1138> Hexus_One, yeah, <something>_map.h
12:45:52  <Hexus_One> sweet thanks :)
12:46:51  <Hexus_One> oh i didn't realise there was already a MP_TUNNELBRIDGE tiletype
12:50:17  <peter1138> What happened to your tree-planting PR?
12:51:05  <peter1138> Tree removing, rather.
12:52:52  <Hexus_One> oh i submitted it to the citymania client :)
12:53:05  <Hexus_One> i've yet to learn about how to manipulate the actual map setters
12:53:50  <peter1138> What was the issue with the suggested changes?
12:54:54  <Hexus_One> I'm lazy :^) and personally i'm happy with the function of the current code
12:55:34  <Hexus_One> although yeah I do like the changes you suggested :) but for now I want to work on this instead
13:00:27  <LordAro> Hexus_One: out of interest, is there a particular reason you're targeting citymania instead of actual OTTD?
13:01:39  <Hexus_One> oh not really I guess, but i just started off patching with network-compatible features
13:01:54  <Hexus_One> i'm not familiar with modifying the codebase under that
13:02:52  <Hexus_One> and so when I submitted my treedozer/treedemo PR to trunk, peter suggested i create a new CommandType which i don't know how to do
13:04:03  <Hexus_One> and then another user suggested I submit my PR to the citymania client, which I happen to use as my preferred OTTD client
13:04:05  <peter1138> Yeah but actually modifying the existing clear tile command looks pretty simple.
13:04:59  <peter1138> (Rather than creating a new one)
13:05:13  <Hexus_One> if you can teach me how, i'm all ears :) but for now i'm just doing things I understand
13:08:09  <Hexus_One> also tbh i'm really only making these patches for myself, for immediate use. submitting them as PRs is more or less a side thing and isn't really my main priority
13:08:31  <peter1138> Best way is to delve in.
13:08:44  <peter1138> *_cmd.cpp are not scary :)
13:09:30  <Hexus_One> lmao i'm but a novice coder
13:09:52  <peter1138> But yeah, submitting a PR signals a clear intent that you think it should be included in OpenTTD, and we obviously have strict requirements. Being "network compatible" with old servers is definitely not an objective because you can't connect to old servers anyway
13:10:04  <Hexus_One> it took me two weeks to understand how to grab tiletypes, how to send DoCommandP, how to fetch tile slopes and such
13:10:26  <peter1138> Don't fret about that. You made an effort, that's what counts :)
13:11:22  <Hexus_One> oh the way I saw it was that submitting PRs was the new way to submit client patches, vs distributing diffs via TT-forums
13:11:44  <Hexus_One> HAHA
13:12:51  *** Flygon has quit IRC
13:13:47  <peter1138> Only way to get better is to delve in and try things. Still takes up ages.
13:14:51  <peter1138> s/up/us/
13:15:03  <Hexus_One> can you give me some pointers on where to start? for example I'm aware of the #CommandProc table but I don't know where the function leads after that
13:18:50  <peter1138> So the network command that you used is CMD_CLEAR_AREA. In src/command.cpp, this is linked to the function CmdClearArea, which is in src/landscape.cpp.
13:19:14  <peter1138> (Oddly, and inconsistently, not landscape_cmd.cpp)
13:20:02  <peter1138> At the beginning of that function there's a little documentation about how the parameters are packed.
13:21:10  <Hexus_One> Oh i see
13:21:40  <Hexus_One> so I can read off bits from p1 or p2 (I remember you suggested p2?), and then add a conditional structure inside the tile iterator
13:22:00  <Hexus_One> and the 'continue' for undesired tiles based on my flags
13:22:05  <peter1138> Yup.
13:22:25  <peter1138> Right before the first DoCommand call.
13:22:38  <peter1138> No need to handle diag/orth cos that's already done.
13:22:56  <Hexus_One> sweet :) thank you
13:23:03  <planetmaker> <Hexus_One> lmao i'm but a novice coder <-- I started exactly that way. :) Making a PP. Making a client...
13:23:43  <planetmaker> it proved to me more rewarding in shipping it to more people. Yet it also proved to need more effort as it requires more thorough coding and meeting other peoples expecations
13:24:32  *** supermop_work has joined #openttd
13:24:42  <planetmaker> also... your own PP get easier to maintain the more of it you can ship to OpenTTD master :D
13:24:50  <planetmaker> kinda... was my motivation back then
13:24:53  <peter1138> Hehe
13:25:07  <peter1138> We need JGR to start pushing more bits :)
13:25:18  <planetmaker> well, he does already, I think
13:25:40  <planetmaker> requesting more PRs from him probably is beyond what one can reasonably do in free time
13:25:53  <Hexus_One> btw is there an easy way to prototype GUI layouts? eg creating custom toolbars and such
13:26:04  <planetmaker> no(t that I know)
13:26:16  <planetmaker> copy&paste existing
13:26:36  <Hexus_One> i'm aware of the NWidgetPart code blocks within all the rail_gui.cpp, road_gui.cpp etc files
13:26:42  <planetmaker> the widget system is not bad though. ^^
13:27:05  <Hexus_One> so I just have to stick to copy-pasting and messing with those values?
13:27:08  <Hexus_One> okay :)
13:27:39  <planetmaker> well, if you understand a bit the idea behind the widget system, it probably is as easy to write from scratch than to adopt an existing
13:27:52  <planetmaker> but yes...
13:28:37  <planetmaker> I'd need to write at least add one window to be able to do so again :)
13:29:14  <peter1138> Widget system is complex but probably necessarily so. It's not HTML & CSS by any means.
13:29:29  <planetmaker> ^^
13:29:29  <peter1138> Shall I have a caramel Whip or not?
13:29:41  <Hexus_One> yes
13:29:46  <planetmaker> with a piece of lettuce to sooth the concience?
13:29:48  <Hexus_One> idk what that is but yes
13:32:18  <peter1138> I already ate the lettuce ;)
13:33:15  <planetmaker> a lettuce a day... keeps the bad concience at bay :P Then go for it
13:33:41  <planetmaker> personally I cannot say no to sweets :P
13:34:01  <peter1138>
13:34:07  <peter1138> One of them, heh.
13:35:08  <supermop_work> well you can eat 14 of them a day
13:35:58  <peter1138> I can't because I only have one.
13:42:41  <_dp_> peter1138, you say it like html&css is any simpler :p
13:43:18  <_dp_> but yeah, I've been patching openttd for like 5 years or smth and still can't write gui from scratch...
13:43:25  <_dp_> rarely do gui though
13:44:07  *** sla_ro|master has quit IRC
13:45:24  <peter1138> Isn't yours the client with tons of buttons on the intro window?
13:45:55  <_dp_> peter1138, nope, that's btpro one
13:46:22  <_dp_> but we have some extra windows
13:46:31  <peter1138> Ahhh
13:49:17  <_dp_> now that I think of it I actually did more patches for master lately than for cmclient xD
13:49:33  <_dp_> that thing I mostly just keep updated
13:51:45  *** supermop_work_ has joined #openttd
13:52:51  <peter1138> 13:24 <@planetmaker> also... your own PP get easier to maintain the more of it you can ship to OpenTTD master :D
13:52:55  <peter1138> _dp_, ^^
13:54:23  <Hexus_One> signals-on-bridges in trunk when
13:54:29  <_dp_> peter1138, idk, doesn't quite work for me
13:54:51  <_dp_> peter1138, probably coz I don't move stuff from cmclient to master
13:55:17  <_dp_> peter1138, i just write new stuff for master directly
13:55:31  <planetmaker> well, that's about the same thing
13:55:52  <planetmaker> PP usually never shrink. Unless, ofc, you move patches into master. Then they might
13:56:00  <Hexus_One> what's a PP
13:56:06  <planetmaker> PatchPack
13:56:10  <Hexus_One> oh i see
13:57:05  <_dp_> planetmaker, mmm... not really, thing with compatible clients is that most gameplay patches can't be done compatibly
13:57:32  <planetmaker> well... for that reason those patches have priority in getting into master :P
13:57:45  <planetmaker> you can ofc do much more with patches which can be more than client-side
13:58:36  *** supermop_work has quit IRC
14:00:30  <_dp_> I'd like to move more stuff into master but not much of it seems to be needed there
14:00:34  <_dp_> like all the cb stuff
14:01:29  <_dp_> hm, polyrail though...
14:01:42  <_dp_> polyrail is like 1/4 of cmclient value)
14:02:04  <planetmaker> _dp_, what defines "needed"?
14:02:12  <_dp_> it does feel somewhat suboptimal though
14:02:21  <_dp_> I'd like to see pf-based building tools
14:02:30  <_dp_> but too lazy to write them xD
14:02:33  <planetmaker> obviously everything you have in your patches, both server and client-side certainly has some value somewhere, I guess? :)
14:05:59  <_dp_> planetmaker, well, it definitely has value for citymania but not sure for anywhere else
14:06:38  <_dp_> planetmaker, especially server, that's kind of a thing in itself, most of it won't even work without db and admin port and what else we have there.
14:07:29  <planetmaker> well, admin port is a master thing, is it?
14:08:09  <planetmaker> as to the DB... ideally the admin port should probably do the communication between game and DB
14:08:35  <planetmaker> so if admin port is missing stuff: that definitely is stuff which could be upstreamed
14:08:55  <planetmaker> after all: there's not many users for it. And you're basically *the* audience for that feature
14:10:10  <_dp_> planetmaker, yeah, admin is master thing in theory but I have extentions to it and then another binary data format on top :p
14:10:20  <Hexus_One> :0 have you seen my pathfinder-track builder
14:11:23  <_dp_> planetmaker, and yeah, it would probably be better for admin thing to do DB but we've started with luuk server and it does everything directly in mysql
14:12:13  <_dp_> Hexus_One, I saw some reddit post, was you the one who made it?
14:12:30  <Hexus_One> yeah :)
14:12:40  <_dp_> Hexus_One, that thing was definitely a step in right direction but far from being finished
14:12:51  <Hexus_One> i'm starting from scratch again though so it may take a while
14:12:57  <Hexus_One>
14:14:42  <planetmaker> _dp_, I really am curious as to whether it can work through the official channel / admin port. Or if not: what is missing. And to see patches to add what's missing
14:15:02  <planetmaker> And to offer a kinda reference implementation to interested people
14:15:56  <planetmaker> (and I know that it feels like lots of work for no benefit when the server already works with all you need / want)
14:16:03  <Hexus_One> _dp_ i need your opinions on this gui layout
14:16:12  <planetmaker> yet I think OpenTTD as a whole would definitely profit
14:16:42  <Hexus_One> (check discord)
14:16:58  <planetmaker> which indirectly would add positive feedback to your server's audience
14:17:10  <_dp_> planetmaker, well, first of all, supposed way of working with adming port is with gamescript and gamescript sucks
14:17:14  <_dp_> planetmaker, so need to start there
14:18:00  <_dp_> planetmaker, and it's not like our servers work nicely and have all I need xD
14:18:42  <_dp_> planetmaker, so I'd rather fix that, so probably won't ever have time to do it properly
14:19:22  <planetmaker> eh, admin port not necessary needs game script support
14:19:47  <planetmaker> and tbh... yes, it currently does work via game script to post things to admin port
14:19:56  <planetmaker> Personally I consider that quite a hack myself
14:20:11  <planetmaker> And would personally rather see the admin port have access to those things directly
14:20:30  <planetmaker> so that the game script is free for just that: a game script which manages / alters the game
14:20:46  <planetmaker> and not doing logging and passing around variables
14:21:09  <planetmaker> (just my personal 2ct)
14:24:39  <planetmaker> At least I find it quite a hindrance to have to decide between a goal script and admin port support. Or to have to rewrite the whole GS
14:26:32  <peter1138> I've never used the admin port.
14:28:54  <planetmaker> Well, if you run a server which is frequented by more than a hand-select people, you want to run it. At least for some logging, and possibly for some easier remote-management
14:29:04  <_dp_> curiously luukland's server didn't use it as well, everything went directly to db or via irc %)
14:29:39  <planetmaker> of course... you can implement your own interface. But that's just... the same stuff as admin port in different colour
14:30:08  <planetmaker> admin port was implemented so that you do not have to re-invent the wheel. And so that you can actually run a decently-managed server out-of-box
14:30:19  <planetmaker> or so the idea behind it
14:30:33  <_dp_> planetmaker, I suspect ll server was done before admin port
14:30:46  <planetmaker> I think so, yes
14:31:00  <_dp_> planetmaker, I'm switching it to admin port slowly but I'm not sure where I'm going with it
14:31:00  *** Wormnest has joined #openttd
14:31:20  <planetmaker> I'm not criticising :)
14:31:26  <planetmaker> It's possibly a stony path
14:31:31  <planetmaker> Dear, I know
14:33:04  <planetmaker> it was you who forked soap, or do I err?
14:33:14  <planetmaker> or was that the reddit people?
14:33:19  <planetmaker> or is it the same? :P
14:33:36  <_dp_> planetmaker, soap? you mean some admin port thingy?
14:33:47  <_dp_> planetmaker, wasn't me I wrote my own from scratch :p
14:34:19  <planetmaker> yes... it's an admin port client and irc-connector for openttd
14:34:34  <planetmaker> the one coop uses
14:35:01  <planetmaker> a bit unmaintained the recent years...
14:35:21  *** sla_ro|master has joined #openttd
14:38:19  <planetmaker> though as far as I can tell... coop consists of me... and happy being around. Hard to call "coop" :P All others meanwhile left the community and moved on :(
14:39:07  <planetmaker> luckily I own the server. So it'll be around as long as I pay the bill...
14:39:45  <_dp_> planetmaker, it's pretty much the same for citymania
14:39:46  <planetmaker> and as long as dihedral pays for the domain name
14:40:47  <_dp_> planetmaker, some stuff broke and I couldn't find time to fix for half a year
14:41:01  <_dp_> planetmaker, took players few months to notice servers are gone xD
14:41:07  <planetmaker> been there, done that...
14:41:14  <planetmaker> wow... that's sad :(
14:47:44  *** nielsm has joined #openttd
14:57:49  <peter1138> Afternoon.
15:01:15  *** Alberth has joined #openttd
15:01:15  *** ChanServ sets mode: +o Alberth
15:03:21  <planetmaker> \o/
15:07:26  <planetmaker> so... first PR for OpenGFX already. And merged
15:08:19  <peter1138> Nice, PR #1 :-)
15:08:35  <peter1138> I wonder if DorpsGek_II will get in on the action? :)
15:09:27  <planetmaker> I wonder, too. Doesn't look like
15:10:06  <planetmaker> Also... how does one enable commit message style checking? It's not much, but could be enabled for both, nml and OpenGFX. Doesn't need to build anything for that
15:11:02  <peter1138> I... think the commit hooks are done by the CI.
15:11:33  <peter1138> Linux commit-checker
15:11:46  <peter1138> So it still goes off to Azure.
15:11:53  *** gareppa has joined #openttd
15:12:43  <planetmaker> yes... but... needs not much build time. Dunno how that billing works there
15:13:36  *** gareppa has quit IRC
15:14:15  <peter1138> It's all in the azure-pipeplines directory in OpenTTD, I guess.
15:15:15  <peter1138> Well, apart from the docker images.
15:16:26  <Alberth> o/
15:16:51  *** Pikka has quit IRC
15:21:14  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on issue #6564: Crash: loading save
15:27:32  *** glx has joined #openttd
15:27:32  *** ChanServ sets mode: +v glx
15:29:10  <glx> peter1138: I found the same conclusion for #6564
15:38:14  <peter1138> As I say "I have a patch" ;)
15:38:39  <glx> we could also make utf8 function null proof
15:42:01  <peter1138> Doesn't help. The null only happens because it's reached the end of the argument stack, but it could have treated any random value as a point before hand.
15:43:02  <glx> but will prevent crash even with invalid station name, because it tried to read station index as a string id
15:43:46  <peter1138> Nope. That doesn't return null.
15:44:07  <peter1138> We'd need to check the argument type matches what is expected.
15:44:33  <glx> for now it seems argument type is set on read
15:46:39  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN opened pull request #7418: Fix: Validate control-codes in NewGRF strings
15:46:40  <peter1138> ^^
15:48:19  <peter1138> So I'm guessing there are checks missing and/or wrong.
15:48:37  <peter1138> It does work for this particular case.
15:49:32  <peter1138> Should probably also weed out default vs NewGRF strings.
15:53:36  *** supermop_work_ has quit IRC
15:56:13  *** rocky11384497 has quit IRC
16:00:25  *** Samu has joined #openttd
16:00:26  <Samu> hi
16:01:53  <peter1138> glx, but maybe I should focus on the side where it's actually happening and validate the argument type.
16:02:17  <peter1138> SetDParam would require some mega changes :/
16:02:43  <glx> and we don't always use it
16:02:53  <peter1138> We don't?
16:03:04  <peter1138> Oh, for substrings, yeah.
16:03:17  <glx>                     int64 args_array[] = {STR_TOWN_NAME, st->town->index, st->index};
16:03:17  <glx>                     StringParameters tmp_params(args_array);
16:03:25  <glx> that's for station name
16:03:50  <glx> first  works well
16:04:20  *** Progman has joined #openttd
16:07:16  <glx> hmm it should be possible to set type array in these cases
16:09:13  <glx> I can try something
16:10:42  <Samu> int64?
16:10:52  <glx> oh for SCC_DEPOT_NAME type array is provided
16:12:54  <DorpsGek_II> [OpenTTD/OpenTTD] stale[bot] closed pull request #7120: Codechange: Improve performance of closest town lookups with cache
16:12:56  <DorpsGek_II> [OpenTTD/OpenTTD] stale[bot] commented on issue #6603: Insert XDG_DATA_DIRS into data loading path
16:16:25  <Samu> aren't those numbers always positive?
16:16:32  <Samu> should be uint, but I dunno
16:16:50  <glx> you may want to display a negative value
16:17:03  <glx> so args are int64
16:24:50  <peter1138> Wow, £245 for a(n admittedly decent) cast iron frying pan.
16:27:22  <glx> ok with type, an assert is triggered, not sure it's better than a crash ;)
16:27:45  <peter1138> Easier to diagnose ;)
16:28:11  *** Supercheese has joined #openttd
16:35:38  <glx>
16:35:43  <glx> quick test :)
16:39:31  <peter1138> I... didn't know that existed.
16:39:45  <peter1138> So less changes than I was thinking.
16:40:31  <glx> indeed no real need to change SetDParam as we assume our strings are valid
16:41:21  <peter1138> This is probably more reliable that my original idea.
16:41:47  <glx> but validating grf strings on load makes sense too
16:42:45  <peter1138> If strings are returned by callbacks (is that a thing) then correct validation on load seems tricky.
16:43:30  <Eddi|zuHause> i definitely composed strings via switches
16:43:31  <glx> maybe instead of assert it should return 0
16:43:50  <Eddi|zuHause> extra newgrf text in purchase menu
16:43:51  <glx> and a debug message
16:44:00  <peter1138> glx, abort string formatting and yes, a debug message.
16:44:05  <Eddi|zuHause> (what was that, CB23?)
16:44:44  <Eddi|zuHause> yeah
16:49:11  <Samu> can you try join this game without dropping or timeout, just wanna make sure I've set up enough time for such a huge map
16:52:19  <nielsm>  trying
16:52:35  <nielsm> 41.3 MB game data to download
16:52:36  <nielsm> timed out