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
16:52:52  <nielsm> after around a third
16:53:50  <Samu> t.t
16:54:24  <Samu> okk
16:54:40  <Samu> 500 ticks is too short
16:54:41  <Heiki> same here, got to about 11.3 MB
16:56:30  <Samu> just set network.max_join_time to 2000
16:56:33  <Samu> try again plz
16:57:57  <nielsm> 41.5 MB all downloaded and joined
16:58:18  <Samu> there were 2 guys queued
16:58:22  <Samu> one was dropped :(
16:59:07  <Samu> hmm my ethernet only using 5 Mbps :(
16:59:16  <Samu> i got a upload of 10 Mbps
17:00:03  <Samu> t.t Heiki
17:00:22  <Samu> openttd not ready for 4k maps
17:00:43  <nielsm> never will be, the data size is too large
17:01:18  <Samu> need big servers to upload data at much greater speeds
17:01:20  <nielsm> or more like, residential internet needs to improve massively
17:01:21  *** HerzogDeXtEr has joined #openttd
17:02:02  <Heiki> Samu: yes, I got dropped (tried twice)
17:02:28  <Heiki> also only 5 Mbps here
17:03:20  <Samu> I should disable trees next time
17:03:30  <Heiki> (but that should be enough for a client, shouldn’t it?)
17:04:16  <Samu> for such a map size, I guess so
17:04:31  <Samu> I mean no
17:04:33  *** andythenorth has joined #openttd
17:05:12  <Samu> brb
17:05:21  <glx> <-- seems to work, but lot of stuff in debug window :)
17:07:11  <Samu> max_join_time 32000 ticks
17:07:21  *** Hexus_One has quit IRC
17:07:32  <Samu> this should tell me how many ticks a client takes to join
17:07:42  <Samu> openttd should tell me*
17:08:31  <Heiki> ooh, now I got in
17:08:41  <Samu> meh, it just says the client joined, but doesn't tell me how long it took, maybe a suggestion
17:13:55  <Samu> eww my AI is slowing down
17:14:05  <Samu> 15 ms trying to find a spot for airpot
17:14:32  <Samu> must figure out why
17:15:33  <Heiki>   PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
17:15:36  <Heiki>  8741 h         20   0 1493128 637352  10660 R 193,3  16,3  12:43.08 openttd
17:15:54  <Samu> average ms from my AI is bad
17:16:41  <Heiki> that just as a spectator, probably trying to play would not be much fun on this computer (:
17:17:11  <planetmaker> spectator or player: no difference for OpenTTD
17:17:18  <DorpsGek_II> [OpenTTD/OpenTTD] btzy commented on pull request #7028: Feature: Option to group vehicle list by shared orders
17:17:49  <Heiki> framerate when zoomed out is around 8
17:18:18  <Eddi|zuHause> don't zoom out, then
17:18:43  <Eddi|zuHause> (i only ever zoom out when paused)
17:18:48  <Samu> oh, they made fully zoom out on 4k maps slower in a recent change
17:18:55  <Samu> some months ago
17:19:33  <Heiki> and autosave lasts a week
17:19:45  <Samu> change to lzo
17:28:13  <Samu> sometimes I wonder... what is the point of Valuators if all they do is stall
17:32:32  <Heiki> well yes, the game is playable as long as I don’t zoom out too much
17:32:58  <Heiki> at least more or less
17:33:07  *** Alberth has left #openttd
17:34:47  <Samu> it's my AI that's making it stutterfest
17:34:58  <Samu> pink
17:35:58  <Samu> I have an idea how to fix this
17:36:04  <Samu> Remove all Valuators
17:36:10  <Samu> turn them into for loops
17:38:18  <Samu> must iterate backwards
17:38:28  <Samu> i wanna remove items while iterating
17:39:35  <Samu> looks like i can't do this :(
17:40:25  <Samu> maybe I can, but the code will look uglier than ever
17:40:41  <Samu> it's my code so it doesn't matter
17:40:51  *** Wormnest has quit IRC
17:54:31  <DorpsGek_II> [OpenTTD/OpenTTD] btzy updated pull request #7028: Feature: Option to group vehicle list by shared orders
18:03:01  <DorpsGek_II> [OpenTTD/OpenTTD] btzy commented on pull request #7028: Feature: Option to group vehicle list by shared orders
18:07:47  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 opened pull request #7419: Fix #6564: enforce types of arguments for station name strings
18:16:36  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
18:26:23  <peter1138> Hi
18:28:05  * peter1138 tests 7419
18:28:14  <DorpsGek_II> [OpenTTD/OpenTTD] eekee commented on issue #7347: Save overwrite confirmation doesn't respond to enter key
18:28:42  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
18:29:14  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
18:30:55  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
18:32:40  <peter1138> Yeah, that's nice.
18:32:53  <peter1138> It's to the point and fixes the issue.
18:35:43  <Samu> I have a task:
18:36:00  <Samu> replace all those valuators with a single for loop
18:36:08  <Samu> who can help?
18:36:21  <Samu> should remove all the stutterfest
18:36:40  <peter1138> Valulators should be pausable :/
18:37:34  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
18:38:08  <glx> valuators are computed by openttd itself
18:39:39  <glx> IIRC
18:40:00  <peter1138> Yup
18:41:12  <glx> but we kill the script if it takes too long
18:42:23  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on issue #7347: Save overwrite confirmation doesn't respond to enter key
18:45:27  <glx> maybe we could force sleep at the end of each valuate call
18:46:30  <glx> seems Valuate() counts 5 ops per item
18:53:01  <peter1138> Hmm.
18:54:03  <glx> but we can't sleep in the middle of Valuate() of course
18:54:19  <peter1138> That's a shame.
18:55:03  <peter1138> I wonder if we can provide a better cost estimation, instead of just 5 per item.
18:57:49  <DorpsGek_II> [OpenTTD/OpenTTD] M3Henry commented on pull request #7165: [core] Implement SmallVector using std::vector
19:00:53  <DorpsGek_II> [OpenTTD/OpenTTD] M3Henry commented on pull request #7165: [core] Implement SmallVector using std::vector
19:01:33  *** m3henry has joined #openttd
19:01:41  <peter1138> Hi.
19:01:49  <peter1138> I guess I don't know how emplace is meant to work :(
19:03:38  <m3henry> emplace constructs the element in place by forwarding constructor arguments
19:03:43  <peter1138> Yes.
19:04:15  <m3henry> If there's no constructor defined, it won't be able to use it
19:04:54  <peter1138> Right, so it needs a proper constructor, not rely on initialization-type stuff.
19:05:23  <m3henry> Yeah, emplace_back can call a default initializer
19:05:37  <m3henry> But not perform memberwise initialization
19:05:51  <m3henry> default-constructor*
19:06:34  <peter1138> Could add constructors or just not bother, indeed.
19:07:28  <m3henry> I wonder what should be done about the temporary constructors I added for a few structs
19:07:50  <m3henry> 1) make them permanent
19:08:28  <m3henry> 2) leave them there as indication that there is need for improvement
19:11:12  <m3henry> Which would you pick?
19:11:36  <LordAro> m3henry: depends how long it's going to take you to write PRs that remove them :p
19:12:14  <m3henry> Cannot decode solution
19:12:57  <Eddi|zuHause> if only one had a vision...
19:13:20  <Eddi|zuHause> (is that a meme now?)
19:13:25  * LordAro slaps Eddi|zuHause
19:13:27  <peter1138> :)
19:13:36  <planetmaker> @fish
19:13:40  <planetmaker> hm :)
19:13:44  <planetmaker> !fish
19:13:57  <Eddi|zuHause> probably wrong channel :p
19:13:57  * peter1138 slaps Eddi|zuHause around a bit with a trout
19:13:58  <LordAro> planetmaker: it'd be @ if anything :p
19:14:21  <planetmaker> yes :)
19:15:11  <peter1138> Oh, the depots patch is conflicting again.
19:15:20  <peter1138> s/patch/PR/
19:17:14  <m3henry> I guess I'll just remove the comments
19:17:32  <LordAro> m3henry: they're easy enough to find again, when C++17 happens
19:17:42  <LordAro> and given that probably won't be for a while... :p
19:18:37  *** supermop_work has joined #openttd
19:18:41  * peter1138 considers dinner.
19:19:09  *** Wolf01 has joined #openttd
19:19:52  *** frosch123 has joined #openttd
19:19:54  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro updated pull request #7417: Group hierarchy improvements (by 3298)
19:19:59  <Wolf01> o/
19:21:11  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro updated pull request #7417: Group hierarchy improvements (by 3298)
19:21:43  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7417: Group hierarchy improvements (by 3298)
19:21:55  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro dismissed a review for pull request #7417: Group hierarchy improvements (by 3298)
19:21:59  <peter1138> LordAro requested a review from PeterN 23 seconds from now
19:22:04  <LordAro> :D
19:22:10  <peter1138> "23 seconds... FROM now" ?
19:22:32  <peter1138> "28 seconds ago"
19:22:34  <DorpsGek_II> [OpenTTD/OpenTTD] M3Henry updated pull request #7165: [core] Implement SmallVector using std::vector
19:22:38  <peter1138> That's more sensible.
19:23:20  <m3henry> upd
19:26:59  <peter1138> Hm, which road types should be available in the scenario editor?
19:28:12  <Wolf01> All
19:29:00  <Wolf01> It's a scenario editor, I would like to place even single houses :P
19:37:13  <planetmaker> I agree with wolf. I'd like to be able to do everything
19:37:18  <planetmaker> and... also exchange NewGRF
19:37:26  <planetmaker> at the cost of re-generating the part they touch
19:42:02  <Samu> not trams
19:45:04  <Wolf01> Even trams
19:45:45  <LordAro> trams can share tracks currently, can't they?
19:45:53  <LordAro> if so, then yes, even trams
19:46:04  <LordAro> *trams from different companies
19:46:07  <Wolf01> Yes, they are like roads, and you can build them with owner 0
19:50:59  *** Lejving_ has quit IRC
19:51:11  <Samu> in scenario editor you're OWNER_NONE
19:51:58  *** Gustavo6046 has quit IRC
19:52:04  *** Lejving has joined #openttd
19:57:08  <Samu> WormAI also has some stutters when trying to build airport on huge maps
19:57:08  <peter1138> Dinrar is maded
20:01:53  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN approved pull request #7417: Group hierarchy improvements (by 3298)
20:02:47  *** supermop_work_ has joined #openttd
20:05:25  *** Lejving_ has joined #openttd
20:08:12  <peter1138> So, let's say... in general, we're happy with std::vector, right?
20:08:43  <LordAro> i think so
20:09:16  *** supermop_work has quit IRC
20:10:17  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN approved pull request #7165: [core] Implement SmallVector using std::vector
20:10:22  <LordAro> :o
20:10:25  <LordAro> \o/
20:10:56  <Samu> inb4 conflicts with my stuff
20:11:02  <peter1138> Oh. Your review needs to be dismissed
20:11:44  <LordAro> Samu: this will conflict with almost everyone's stuff
20:12:26  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro approved pull request #7165: [core] Implement SmallVector using std::vector
20:13:02  *** Lejving has quit IRC
20:16:00  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN merged pull request #7165: [core] Implement SmallVector using std::vector
20:16:31  <LordAro> \o/
20:16:48  <Samu> my AI is less spiky when finding places to put airports now
20:17:01  <Samu> but also slower :(
20:17:03  <Samu> booo
20:18:19  <peter1138> Well it would be.
20:18:19  <Samu> uh oh, i guess I spoke too early
20:18:37  <Samu> had an average peak of 8 ms suddenly
20:18:40  <Samu> at least it's not 15
20:19:11  <peter1138> Chocolate icecream cookie sandwich. That's kinda decadent.
20:19:25  <m3henry> \o/
20:20:00  <peter1138> m3henry, now we'll probably get loads more bug reports, but that's kinda the point :
20:20:19  <peter1138> (Well, probably, it was good)
20:20:33  <Samu>
20:20:42  <Samu> the code with // is being replaced
20:20:57  <m3henry> Woo, #15 contributor!
20:21:23  <Samu> no more Valuate stuff slowing down
20:21:49  <LordAro> m3henry: of those that have put their email addresses into GH :p
20:22:09  <peter1138> Yay, conflicts :D
20:22:56  <m3henry> :D
20:23:31  <glx> hmm updating cmake branch or not
20:33:01  <glx> D:\developpement\GitHub\glx22\OpenTTD [cmake ↓180 ↑225]>
20:33:13  <glx> and only one conflict :)
20:38:43  <DorpsGek_II> [OpenTTD/OpenTTD] M3Henry closed pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
20:38:44  <DorpsGek_II> [OpenTTD/OpenTTD] M3Henry updated pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
20:38:58  <m3henry> eh?
20:41:09  <DorpsGek_II> [OpenTTD/OpenTTD] M3Henry updated pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
20:41:10  <DorpsGek_II> [OpenTTD/OpenTTD] M3Henry reopened pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
20:41:17  <peter1138> Weird :p
20:41:29  <m3henry> Lol, forgot to commit after reset --hard to master
20:41:52  <peter1138> Oh!
20:45:46  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 updated pull request #7270: Introduce CMake (and removing all other project-related code)
20:46:15  <glx> waiting for CI to see if I need to readd -Wno-c++11-extensions
20:47:55  <frosch123> that nullptr PR also touches 3rdparty/
20:48:02  <frosch123> do we want to modify that stuff?
20:48:16  <glx> we try to do minimal changes in 3rdparty IIRC
20:48:20  <m3henry> probably not
20:50:37  <DorpsGek_II> [OpenTTD/OpenTTD] michicc updated pull request #7379: Codechange: Use C++11 functions for threading
20:51:39  *** supermop_work has joined #openttd
20:51:40  * peter1138 tests
20:52:35  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #6811: Feature: Add NotRoadTypes (NRT)
20:53:02  <peter1138> Priorities :p
20:53:56  <peter1138> LordAro, sorry !
20:54:05  <peter1138> (#7417 needs updating)
20:54:33  *** supermop_work__ has joined #openttd
20:54:43  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN closed issue #6592: Missing symbols while linking with MinGW and LTO
20:54:44  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN merged pull request #7415: Some warning fixes
20:55:51  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN requested changes for pull request #7419: Fix #6564: enforce types of arguments for station name strings
20:57:29  <LordAro> peter1138: figures :p
20:58:04  <glx> ok no need for -Wno-c++11-extensions in cmake branch it seems
20:58:10  <peter1138> Nice.
20:58:15  <peter1138> What does that do anyway?
20:58:23  *** supermop_work_ has quit IRC
20:58:29  <glx> suppress some warnings
20:58:45  <LordAro> clang used to warn about using c++11 stuff
20:59:20  <LordAro> probably prior to the codebase being c++11 anyway, but i'm pretty sure it's done nothing since clang3.something anyway
20:59:27  <glx> I guess     set(CMAKE_CXX_STANDARD 11) takes care of that
20:59:31  <LordAro> mm
20:59:42  *** supermop_work has quit IRC
21:00:12  <glx> no the warning was added to config.lib after the last rebase
21:00:20  <glx> well the flag :)
21:00:46  <glx> that was the only conflict I add during the rebase
21:01:11  <DorpsGek_II> [OpenTTD/OpenTTD] M3Henry updated pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
21:02:00  <m3henry> fixed touching 3rdparty
21:02:29  <glx> oh no new warnings for MSVC builds
21:02:46  <glx> read: oh nooo
21:04:47  *** frosch123 has quit IRC
21:07:34  *** rocky11384497 has joined #openttd
21:07:39  *** sla_ro|master has quit IRC
21:08:29  <peter1138> Oh.
21:08:54  <glx> I'll fix them
21:13:04  <glx> haha 3 warnings for win32, 181 for win64, not bad ;)
21:17:35  *** andythenorth has quit IRC
21:17:53  *** andythenorth has joined #openttd
21:18:48  <LordAro> lol woops
21:19:06  <LordAro> glx: do enable -Werror on the cmake branch if feasible :>
21:19:09  <peter1138> Stange.
21:19:18  <peter1138> Yeah, I kinda don't check for warnings :/
21:19:20  <glx> I think it's enabled
21:19:21  <peter1138> s/kinda/
21:19:33  <peter1138> If it's green it feels like it should be god.
21:19:35  <peter1138> ...
21:19:35  <peter1138> good
21:20:02  <peter1138> rgb company colours still works :D
21:20:20  <glx> ha no -Werror is not enabled
21:20:49  <glx> we have -Wall
21:21:12  <peter1138> It'd fail on the OS X build.
21:21:18  <glx> true
21:21:21  <LordAro> mm, that's the issue
21:21:45  <glx> and for mingw too (even if we don't check it on CI)
21:22:48  <peter1138> Is there no -Wno-deprecated-crap or something? :D
21:23:21  <LordAro> glx: disabling that warning on mingw doesn't seem unreasonable
21:23:36  <LordAro> (do you also have -Wextra & -pedantic? )
21:23:53  <glx> -Wextra is enabled yes
21:25:53  <glx>
21:25:57  *** andythenorth has quit IRC
21:26:02  <glx> you can check the flags here :)
21:26:43  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro updated pull request #7417: Group hierarchy improvements (by 3298)
21:26:44  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro dismissed a review for pull request #7417: Group hierarchy improvements (by 3298)
21:26:55  * LordAro makes use of shiny std::vector functions
21:27:03  <LordAro> well, algorithm functions, i guess
21:28:07  <peter1138> :-)
21:30:16  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 updated pull request #7419: Fix #6564: enforce types of arguments for station name strings
21:33:06  <DorpsGek_II> [OpenTTD/OpenTTD] PeterN approved pull request #7419: Fix #6564: enforce types of arguments for station name strings
21:42:30  *** supermop_work has joined #openttd
21:49:18  *** supermop_work__ has quit IRC
21:50:59  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 merged pull request #7419: Fix #6564: enforce types of arguments for station name strings
21:51:05  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 closed issue #6564: Crash: loading save
21:51:09  <m3henry> :D
21:54:50  <Samu> im getting tons of warnings..
21:55:14  <Samu> conversion from 'size_t' to 'uint'
21:55:20  <glx> known
21:55:22  <Samu> what happened
21:55:54  <glx> the vector PR has been merged
21:57:19  <Samu> 181 warnings:)
21:57:47  <Samu> but it builds!
21:58:55  *** circ-user-3HYVs has joined #openttd
22:01:48  <DorpsGek_II> [OpenTTD/OpenTTD] stormcone opened pull request #7420: Fix #7165: Missed 'Append() --> push_back()' replacement
22:02:20  <LordAro> does that build
22:02:30  <LordAro> or rather, how did it build?
22:03:00  <LordAro> ah, haiku
22:03:02  <LordAro> it didn't :p
22:03:42  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro approved pull request #7420: Fix #7165: Missed 'Append() --> push_back()' replacement
22:05:31  *** circ-user-3HYVs has quit IRC
22:06:32  *** Smedles has quit IRC
22:07:24  *** Smedles has joined #openttd
22:12:44  <Samu> crash
22:12:57  <Samu> that vector thing wasn't really tested, was it?
22:13:27  <glx> it's in master to be tested :)
22:14:10  <LordAro> Samu: less complaining, more bug reporting please
22:14:24  <Samu> can't dereference value-initialized vector iterator
22:14:37  <Samu> just run it, you can't even get to main menu
22:14:41  <LordAro> that's meaningless on its own
22:14:48  *** supermop_work has quit IRC
22:15:09  <LordAro> and it works for Linux, and the Windows CI
22:15:21  <LordAro> it'll be a VS debug build thing again, i suspect
22:20:59  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro merged pull request #7420: Fix #7165: Missed 'Append() --> push_back()' replacement
22:22:00  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick opened issue #7421: Can't dereference value-initialized vector iterator
22:22:37  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on issue #7421: Can't dereference value-initialized vector iterator
22:24:15  <LordAro> m3henry: so looks like VS debug vectors don't like dereferencing end()
22:25:59  <LordAro> "This element acts as a placeholder; attempting to access it results in undefined behavior"
22:27:38  * glx is putting size_t everywhere :)
22:28:13  <nielsm> yeah it's an error to deref end()
22:28:23  <nielsm> since it's literally one past the final valid element
22:28:45  <LordAro> data() + size() would probably work around the VS assertion
22:28:48  <LordAro> but ew
22:29:14  <nielsm> if you make a pointer of it and deref that you're just invoking undefined behaviour instead
22:30:57  <LordAro> mm
22:31:06  <LordAro> it worked before because the pointer was never dereferenced
22:31:27  <nielsm> why is it being dereferenced now when it wasn't before?
22:31:40  <LordAro> technically SmallMap::End() should never be dereferenced either, but actually getting it means it's dereferenced
22:31:57  *** Progman has quit IRC
22:32:47  <m3henry> Why is it being dereferenceD?
22:34:02  <LordAro> return &*std::vector<Pair>::end();
22:34:23  <LordAro> because SmallMap "must" return a Pair*
22:35:08  <peter1138> So, er, smallmap -> std::map?
22:35:30  <LordAro> peter1138: i can't really see any easy alternative
22:36:15  <peter1138> Well, I was right.
22:36:30  <peter1138> 20:20 <@peter1138> m3henry, now we'll probably get loads more bug reports
22:36:33  <peter1138> ;)
22:37:10  <LordAro> ^^
22:37:38  <Samu> it reaches main menu in release x64 build
22:37:41  <Samu> no crash
22:38:06  <LordAro> yeah, that assertion is only enabled in debug build
22:39:24  <LordAro> Samu: if you find SmallMap::End (both of them) in src/core/smallmap_type.hpp and replace the body with "return std::vector<Pair>::data() + std::vector<Pair>::size();", and then recompile in debug mode, does that allow the game to run?
22:40:19  <Samu> gonna try
22:40:34  <peter1138> Why do I have a chainring imprint on my trousers?
22:41:14  <LordAro> peter1138: i often find myself asking the same question
22:41:35  <LordAro> i found 2 gashes in my overshoes last week, that i think must have been from my pedals
22:41:55  <peter1138> Yeah but ... this is upper thigh area, on the front of them.
22:42:07  <LordAro> interesting
22:42:28  <m3henry> getting a pointer to a dereferenced iterator shouldn't actually perform a memory access
22:42:46  <Samu> it works, reached main menu
22:42:53  <LordAro> cool
22:43:14  <m3henry> I'm guessing MSVC stdlib puts some checking code in there because they want to be extra careful
22:43:18  <LordAro> yup.
22:43:22  <m3henry> :v
22:43:29  <m3henry> damn microsoft
22:44:16  <m3henry> But hey, I guess that reverts the change you requested xD
22:44:20  <Samu> im starting a 4096x4096 map, in debug mode, will wait 10 min
22:45:08  <Samu> with so many changes, I don't even know what to test
22:45:40  <peter1138> Everything.
22:45:44  <LordAro> Samu: you can pull request that change, if you like
22:45:59  <LordAro> works as in interim fix
22:46:11  <m3henry> And remove SmallMap::End()
22:46:24  <LordAro> hmm?
22:46:50  <m3henry> I had to add SmallMap::End() to change away from `data() + size()`
22:47:39  *** nielsm has quit IRC
22:48:24  <LordAro> hmm
22:48:33  <LordAro> well, doing it in one place is cleaner, imo
22:48:46  <m3henry> Spose
22:48:48  <peter1138> +1
22:49:21  <glx> until SmallMap is replaced ;)
22:50:12  <m3henry> I guess I can look at that after I've done nullptr, tinyEnum and AutoDeleteVector
22:52:25  <Samu> nice
22:52:40  <Samu> took 8 minutes, was slightly faster
22:54:50  *** drac_boy has joined #openttd
22:55:05  <drac_boy> hi there
22:55:25  <Samu> strange, taking too long to load a savegame
22:55:57  <drac_boy> had to wonder but is there some unlisted 'standardization 2.0' tracktypes that I missed or its not just me wondering why someone wants to use the letter 'V' which doesn't exist in the current scheme?
22:57:10  <Samu> it loaded
22:57:16  <Samu> feels slower in some parts
22:57:20  <Samu> faster in others
22:59:30  <peter1138> Not impossible.
22:59:36  <peter1138> debug or release build?
22:59:45  <Samu> debug
22:59:58  <Samu> i had to wait about 3 minutes to loading
23:00:01  <peter1138> Ok.
23:00:08  <peter1138> Then we don't care.
23:00:14  <Samu> orly?
23:00:15  <Samu> ok
23:00:16  <peter1138> debug == not optimized.
23:01:23  <Eddi|zuHause> drac_boy: the "standard" scheme always allowed for extensions
23:02:03  <peter1138> If there's a performance regression in release build, then we can discuss it.
23:02:20  <Samu> do I create a PR? I guess not
23:02:26  <Samu> will leave it to m3henry
23:02:51  <peter1138> 22:45 <@LordAro> Samu: you can pull request that change, if you like
23:03:57  *** Gustavo6046 has joined #openttd
23:04:06  <Samu> it will be fixed in another manner, from what I could gather, so pointless
23:04:40  <LordAro> eventually, yes
23:04:45  <LordAro> but that might take some time
23:04:54  <peter1138> LordAro, better do it ourselves... this one's being awkward.
23:05:00  <LordAro> as ever
23:05:10  <peter1138> But I'm going to bed.
23:07:01  *** Wolf01 has quit IRC
23:10:29  *** Gustavo6046 has quit IRC
23:15:30  *** Gustavo6046 has joined #openttd
23:28:48  *** m3henry has quit IRC
23:58:23  <Samu> im doing a small experiment
23:58:45  <Samu> AIs in 1.8.0 seem to fastforward faster
23:58:50  <Samu> than in 1.9.0-RC2
23:58:55  <Samu> at least my AI
23:59:19  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro opened pull request #7422: Fix #7421: Don't (directly) dereference std::vector::end() in SmallMap

Powered by YARRSTE version: svn-trunk