IRC logs for #openttd on OFTC at 2019-04-06
            
00:01:28 *** Xaroth has quit IRC
00:03:33 *** andythenorth has left #openttd
00:03:37 *** Xaroth has joined #openttd
00:05:17 *** pothyurf[m] has joined #openttd
00:06:05 <DorpsGek_II> [OpenTTD/nml] planetmaker commented on pull request #26: Fix: Allow access to towns (feature 0x12) as parent object https://git.io/fjLiq
00:06:07 <_dp_> sublime is funny, first it annoys the hell of me with its undo bug and just as I'm done asks to buy license
00:06:13 <_dp_> sorry, not in a mood :/
00:06:51 <planetmaker> lol. Sounds like an aweful user experience
00:07:39 <Xaroth> planetmaker: I just had my first asyncio test succeed for my rewrite ... now just to build a completely new 'normal' client :P
00:07:47 <Xaroth> what kind of usecase do you have for it btw?
00:07:58 <Xaroth> so I can ensure that that remains functional
00:09:37 *** sla_ro|master has quit IRC
00:09:46 *** cHawk has joined #openttd
00:09:48 <planetmaker> for asyncio?
00:10:33 <Xaroth> for the lib in general
00:10:34 <planetmaker> My current main use is logging the game which uses both input and output
00:11:25 <planetmaker> The other main use is to actually control the server, especially like loading new games or changing some settings
00:11:42 <Xaroth> so a rcon-ish tool?
00:11:47 <planetmaker> yep. rcon via irc
00:12:28 <planetmaker> and often it's also used to query some game info like date or playercount
00:13:21 <DorpsGek_II> [OpenTTD/nml] PeterN commented on pull request #26: Fix: Allow access to towns (feature 0x12) as parent object https://git.io/fjLiC
00:14:41 <DorpsGek_II> [OpenTTD/nml] planetmaker commented on pull request #26: Fix: Allow access to towns (feature 0x12) as parent object https://git.io/fjLiW
00:20:42 *** Wolf01 has quit IRC
00:23:03 <_dp_> if (CountBits(p2) < 1 || CountBits(p2) > 3) return CMD_ERROR;
00:23:10 <_dp_> great check, much sense
00:23:17 <_dp_> in CmdGoalQuestion
00:23:44 <peter1138> CountBits(p2) < 1 ... p2 == 0
00:23:49 <peter1138> But hey.
00:23:55 <_dp_> peter1138, second part isn't any better
00:24:05 <peter1138> Why?
00:24:12 <_dp_> peter1138, as there is if (p2 >= (1 << GOAL_QUESTION_BUTTON_COUNT)) return CMD_ERROR;
00:24:16 <_dp_> immediately after
00:24:33 <_dp_> oh, nvm, it's flags
00:28:42 <DorpsGek_II> [OpenTTD/nml] PeterN commented on pull request #26: Fix: Allow access to towns (feature 0x12) as parent object https://git.io/fjLii
00:29:05 <glx> so 2 flags, with at least 1 set and only 1 allowed ?
00:31:12 <glx> oh without looking at the code it seems p2 contains clicked button
00:31:30 <glx> as a bitset
00:32:27 <planetmaker> https://newgrf-specs.tt-wiki.net/wiki/VariationalAction2 @ peter1138
00:32:33 <_dp_> glx, not clicked, buttons to show, allows 1-3 buttons of any of 18 types
00:32:53 <glx> was close :)
00:33:08 <DorpsGek_II> [OpenTTD/nml] planetmaker commented on pull request #26: Fix: Allow access to towns (feature 0x12) as parent object https://git.io/fjLiH
00:35:23 <DorpsGek_II> [OpenTTD/nml] PeterN commented on pull request #26: Fix: Allow access to towns (feature 0x12) as parent object https://git.io/fjLid
00:36:15 <Samu> https://github.com/OpenTTD/OpenTTD/pull/7376/conflicts :(
00:42:20 <peter1138> What? Doesn't look hard to fix.
00:43:35 <Samu> so p2 is to become solely for ClientID
00:43:41 <Samu> and p1 is full
00:43:45 <peter1138> p1 isn't full.
00:43:46 <Samu> RIP my PR
00:44:06 <peter1138> p2 was always only for ClientID for this command.
00:44:11 <Samu> 0..15, 16..23, 24..31
00:44:34 <peter1138> I guess it works for you before your command will never come from the network.
00:44:43 <peter1138> s/before/because/g
00:45:13 <peter1138> 24..31 is only used for CCA_DELETE. It even says so.
00:45:20 <peter1138> So you can re-use 24..31 for CCA_NEW_AI
00:45:51 <peter1138> Or 24..27 if you so wish.
00:45:57 <Samu> interesting
00:46:38 <Samu> ok, gonna reuse 24-27 on p1 then
00:47:07 <Samu> or 24-31, because 8 bit is faster or whatever
00:52:26 <_dp_> that pr is such a mess...
00:53:20 <_dp_> why is it starting several ai's with same company id?
00:54:18 <_dp_> how's that ever gonna work
00:55:36 <_dp_> oh, it's never called with valid id, that's how...
00:55:49 <_dp_> shouldn't allow it then
00:56:38 <glx> IIRC only 1 is allowed if there's an id
00:56:51 <glx> at least I remember talking about that
00:57:37 <_dp_> glx, oh, yeah, right...
01:01:56 <_dp_> then it, technically, doesn't even need extra bits
01:02:18 <_dp_> juts one more CompanyCtrlAction and company id can be re-purposed
01:03:02 <_dp_> also 16 bits is way more than CompanyCtrlAction needs with its 3 values
01:03:59 <glx> yeah I used 8 bits for CompanyRemoveReason when 2 were enough ;)
01:04:51 <_dp_> glx, at least you can say it was for... reasons xD
01:04:52 <glx> but we are not short in bits for this command
01:05:28 <glx> so using more than needed is not really an issue
01:06:10 <pnda> How do I set up the include directories and required directories for OpenTTD in VS2017? I only found this: https://github.com/OpenTTD/OpenTTD#70-compiling
01:06:29 <_dp_> glx, well, adding extra action would help readability a lot
01:06:53 <glx> pnda: no need to set them with vcpkg
01:09:26 <glx> pnda: https://github.com/OpenTTD/OpenTTD/blob/master/docs/Readme_Windows_MSVC.md
01:09:40 <pnda> thanks glx
01:11:34 <glx> oh and VS2019 is out now :)
01:11:49 <pnda> I know. Don't have that yet tho
01:12:03 <pnda> And I really just don't want to update everything
01:14:06 <pnda> And especially if I am just a beginner at C++, I should be fine with VS2017
01:16:55 <pnda> VS is complaining about "corecrt.h" not existing. i already hate it
01:17:32 <glx> hmm but that one should be in the SDK
01:18:21 <pnda> it SHOULD but seems to be not
01:18:37 <_dp_> hmm, that for(;;) is surprisingly hard to write in a good way
01:18:50 <_dp_> coz doing - on uints isn't a good idea either...
01:19:18 <glx> and stopping on <0 ?
01:19:30 <Samu> where? my code?
01:21:03 <pnda> Even manually adding corecrt.h into the VC++ Include Directories doesn't do anything.... Just realized I am building 32-Bit and set it for 64-Bit... nvm
01:21:05 <_dp_> glx, what? no, for(i=0; i<min(..,..); i++) if (...(i)) ais_to_start++;
01:22:18 <pnda> Cannot open include file: 'table/strings.h': No such file or directory
01:22:33 <peter1138> Well it won't exist if it can't run strgen.
01:22:36 <glx> this one is created by strgen
01:22:53 <pnda> so I imagine STR_NULL is also?
01:23:14 <glx> all strings are in this table
01:23:56 <pnda> corecrt.h still doesn't exist .....
01:25:10 <glx> something is wrong in your VS, because opening the sln and building the solution should just work
01:26:29 <glx> I switched from 2017 to 2019 2 days ago
01:26:57 <glx> and was on 2015 before 2017 without issues
01:27:02 <pnda> Seems it's because I am missing some old SDK
01:28:07 <glx> I don't think we include corecrt.h, it's included by some system includes
01:29:00 <pnda> Ah now the errors I already know like missing png.h, zlib.h, ft2build.h and izo1x.h....
01:29:09 <pnda> Where do I download those again?
01:29:32 <glx> you just follow the steps on https://github.com/OpenTTD/OpenTTD/blob/master/docs/Readme_Windows_MSVC.md
01:29:44 <peter1138> Oh bah. I want a function where its parameters are evaluated inside the function.
01:29:55 <peter1138> Like, lamba-style, but I'm too dumb right now ;p
01:30:28 <pnda> glx I did follow all those steps
01:30:58 <glx> including .\vcpkg integrate install ?
01:31:02 <pnda> yes
01:31:21 <DorpsGek_II> [OpenTTD/OpenTTD] stale[bot] commented on pull request #7286: Add #2155: newheightmapgame command https://git.io/fjLP3
01:31:26 <DorpsGek_II> [OpenTTD/OpenTTD] stale[bot] closed issue #7041: Cargo flow legend not fully redrawn when station sign is moved https://git.io/fhncf
01:31:28 <DorpsGek_II> [OpenTTD/OpenTTD] stale[bot] closed issue #6562: Stations: extended byte for NewStation ID https://git.io/fjLPs
01:32:03 <glx> VS was running at this time ?
01:32:20 <pnda> glx nvm. Just reran that command to make sure. Seems like I only downloaded them but didn't do that integrate install... thx
01:34:14 <Samu> bah, why don't I fixup everything first, so confusing to rebase individual commits
01:37:43 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick updated pull request #7376: More than max_no_competitors could be created in network games https://git.io/fjvY8
01:38:39 *** erratic has joined #openttd
01:40:34 *** pnda has quit IRC
01:40:37 <Samu> 3241 warnings
01:40:59 <glx> intellisense warnings
01:41:57 <glx> it's over analysing the code
01:42:19 <peter1138> Do I need to use std::function? :/
01:45:42 <Samu> fake warnings then
01:46:23 <glx> no real, but harmless, and mostly suggestions
01:48:48 <glx> https://devblogs.microsoft.com/cppblog/in-editor-code-analysis-in-visual-studio-2019-preview-2/
01:50:00 *** Progman has quit IRC
01:52:40 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #7376: More than max_no_competitors could be created in network games https://git.io/fjLPl
01:52:56 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #7376: More than max_no_competitors could be created in network games https://git.io/fjLP8
01:54:04 <Samu> i feel like that whole thing deserves fixup
01:55:15 *** Supercheese has quit IRC
01:56:16 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick updated pull request #7376: More than max_no_competitors could be created in network games https://git.io/fjvY8
01:57:13 <Samu> TrueBrain author disappeared :(
01:57:21 <Samu> is that bad?
01:57:39 <Samu> due to fixup
01:57:57 <glx> you merged all commits ?
01:58:17 <Samu> i did fixup
01:58:29 <peter1138> That's expected.
01:58:43 <peter1138> Hmm.
01:59:28 <glx> I guess it would have been stashed in the end, so
01:59:37 *** Smedles_ has joined #openttd
01:59:48 <peter1138> Squashed.
01:59:55 <glx> ah yes
02:00:18 <glx> stash is too store changes without commit
02:00:22 <glx> *to
02:00:55 <peter1138> Alright, I still can't figure this out. I want to pass a lambda to a function. What function signature do I need?
02:01:17 <peter1138> Everything I read seems to focus on defining the lambda and then calling it, not passing it somewhere else.
02:01:18 <_dp_> meh... https://paste.openttdcoop.org/pefzfn0mf
02:01:26 *** Smedles has quit IRC
02:01:28 <_dp_> that's improvement... I guess...
02:02:00 <_dp_> peter1138, std::function
02:02:16 <_dp_> peter1138, e.g. typedef std::function<void(bool)> Callback;
02:04:07 *** supermop_Home has joined #openttd
02:04:16 <supermop_Home> yo
02:05:38 <glx> peter1138: https://en.cppreference.com/w/cpp/language/lambda example at the end
02:05:50 <peter1138> Yeah.
02:05:57 <peter1138> It's a bit verbose :(
02:07:24 <peter1138> UpdateCompanyRoadInfrastructure(road_rt, [&]{return road_owner;}, [&]{return -CountBits(GetRoadBits(cur_tile, false));});
02:07:28 <peter1138> :/
02:08:49 <peter1138> That does replace 7 lines, though.
02:10:28 <_dp_> peter1138, that seems to be missing parameter lists
02:10:46 <peter1138> No parameters, just a return type.
02:11:12 <_dp_> lambdas without parameters are weird...
02:11:28 <_dp_> why not just value then?
02:11:44 <peter1138> It's very weird.
02:13:44 <peter1138> Becuase in some cases the parameters would be invalid depending on the other parameters.
02:13:51 <peter1138> I'm aware this is bad style.
02:14:19 <peter1138> This single call replaces 7 lines of code, though, and it's duplicated quite a bit.
02:17:07 <_dp_> peter1138, I still don't get how is it any different from UpdateCompanyRoadInfrastructure(road_rt, road_owner, -CountBits(GetRoadBits(cur_tile, false)))
02:17:36 <peter1138> _dp_, the arguments will not be evaluated unless necessary.
02:18:10 <peter1138> e.g. if road_rt == INVALID_ROADTYPE, there's no bits to count.
02:18:11 <_dp_> uh
02:18:12 <glx> callee execute the lambda if needed
02:18:17 <peter1138> glx, yes.
02:18:46 <_dp_> that... makes sense... I guess...
02:18:54 <glx> it's like a callback
02:19:16 <Samu> _dp_ gonna copy paste ur code into it
02:19:35 <_dp_> Samu, it's not like I tested it or anything xD
02:19:56 <Samu> it touches 2 less files
02:20:16 *** Wormnest has joined #openttd
02:20:33 <glx> wow disabling code analysis reduce cpu usage too
02:20:36 <_dp_> Samu, ai config stuff probably still needs a function in ai
02:20:56 <glx> why did they decide to enable it by default ?
02:21:07 <peter1138> code analysis is very useful.
02:21:38 <glx> yes it's very verbose too :)
02:21:44 *** Wormnest has quit IRC
02:22:04 <glx> openttd is not fully c++ compliant
02:23:09 <_dp_> that callback stuff makes me wonder how on earth is it going to inline those lambdas
02:23:17 <_dp_> coz if it don't it's pretty pointless
02:24:40 <_dp_> ah, those are templates so it goes in h files anyway...
02:25:03 <peter1138> It's not going to be inlined.
02:26:06 <_dp_> peter1138, then you'll waste more on function calls than bit counters
02:26:57 <peter1138> Don't assume I'm doing it for performance.
02:27:40 <peter1138> However, I've undone it all now.
02:27:47 <peter1138> Too uglky.
02:27:49 <peter1138> -k
02:28:05 <glx> but now you know how to do it :)
02:28:12 <peter1138> Yup. Too ugly ;)
02:28:44 <peter1138> I was actually concerned about the arguments causing asserts depending on the other arguments, but I think it won't happen.
02:28:56 <glx> I guess it's nice in some cases
02:29:02 <glx> like in the examples
02:29:02 <peter1138> assert(rt == INVALID_ROADTYPE) kinda thing.
02:30:06 *** tokai|noir has joined #openttd
02:30:06 *** ChanServ sets mode: +v tokai|noir
02:30:46 *** Wormnest has joined #openttd
02:31:13 *** Wormnest has quit IRC
02:32:22 <_dp_> oh, I figured how it inlines, function itself needs to be a template for lambdas to inline;
02:32:40 <_dp_> ffs, two weeks in c++ and now I end everything with ; %)
02:33:07 <glx> hehe
02:34:07 <rubywarden> Hey! I've installed zbase, and now the toolbar is massive. I'm using double scale because otherwise the text is too small on my 170 DPI screen
02:34:12 <rubywarden> any work arounds?
02:34:23 <glx> yes don't use zbase ;)
02:34:26 <peter1138> Yeah, switch back to decent graphics.
02:34:38 <peter1138> TTD original++
02:35:04 <rubywarden> I prefer zbase to OpenGFX
02:35:13 <glx> and text and graphic scale are now separated
02:35:15 <rubywarden> it's too grainy
02:35:27 <rubywarden> Arch is still on 1.8.0 - is that a 1.9.0 thing?
02:35:50 <_dp_> rubywarden, using normal scale with large font would probably be ok then
02:35:56 *** rubywarden is now known as rubenwardy
02:36:02 <_dp_> rubywarden, just not default font, use some ttf
02:36:57 *** tokai has quit IRC
02:37:00 <peter1138> TTD original > OpenGFX > zBase
02:37:06 <rubenwardy> well, the buttons are still small: https://i.rubenwardy.com/Wcq8l.png
02:37:25 <peter1138> Using an old version, ah...
02:37:51 <glx> increase font size in cfg using ttf fonts
02:37:52 <peter1138> And yeah, that looks bloody ugly :(
02:38:18 <peter1138> zbase vehicle offsets are $LOL
02:38:43 <rubenwardy> I think I'll get re-used to OpenGFX for now
02:39:22 <glx> vehicle scale is weird too ;)
02:40:06 <_dp_> yeah, either vehicles are too big or roads too small... either way can't fix that with just offsets :p
02:40:27 <rubenwardy> https://www.reddit.com/r/openttd/comments/3ibpos/keybinding_space_to_pause/
02:40:28 <rubenwardy> hrrr
02:40:45 <rubenwardy> F1 it is
02:40:53 <Samu> AIConfig::GetConfig says something about incomplete type :( probably a missing include?
02:41:22 <_dp_> yeah, hard-coded hotkeys are quite annoying
02:41:25 <glx> 67414 CA warnings, not bad
02:41:39 <DorpsGek_II> [OpenTTD/OpenTTD] nikolas updated pull request #7086: Change #6173: Update SDL driver to use SDL 2.0 https://git.io/fhamZ
02:42:15 <glx> I'll keep that thing disabled :)
02:43:44 <Samu> #include "ai/ai_config.hpp" fixed it
02:45:46 <peter1138> rubenwardy, bear in mind that thread is 3 years old...
02:46:29 <_dp_> peter1138, nothing changed since
02:47:24 <peter1138> Probably not. But there's plenty of opportunity to submit a PR.
02:48:02 <_dp_> peter1138, I tried to fix that at some point but didn't succeed
02:48:20 <_dp_> peter1138, not sure why. I guess they're hardcoded quite deep and I didn't persist
02:55:19 <Samu> _dp_, https://paste.openttdcoop.org/ppazmhk0d
02:55:57 <Samu> unsure about Company::IsValidID vs !Company::IsValidID
02:56:01 <Samu> what looks better?
02:56:40 <peter1138> Avoid unnecessary indentation.
02:56:47 <Samu> ok
02:58:04 <Samu> and the break?
02:58:40 <Samu> GetSetting("start_date") != 0 break? or GetSetting("start_date") == 0 { bla } else { break; }
02:59:08 <Samu> but then I fail at commenting
02:59:16 <Samu> == 0 is easier
02:59:25 <Samu> != 0 i need to reinvent a comment
03:00:49 <_dp_> Samu, AI::GetStartTimeForCompany(cid) and no comment :p
03:02:12 <Samu> that's a new function
03:02:23 <Samu> by default, it needs comments :(
03:03:44 <Samu> but sounds like a good idea
03:05:48 <_dp_> make me wonder though, why are start times set for company ids?
03:06:06 <_dp_> what happens if someone grabs id while command is in queue?
03:06:46 <Samu> magic
03:07:09 <_dp_> Samu, shit happens, not magic :p
03:07:22 <Samu> one is CCA_NEW
03:07:27 <Samu> the other is CCA_NEW_AI
03:07:39 <Samu> i guess nothing bad happens
03:07:52 <Samu> CCA_NEW is the one with the ClientID stuff
03:10:13 <_dp_> GetStartNextTime works by company id
03:10:51 <Samu> oh, i see what you mean
03:11:07 <_dp_> if say only one AI is configured with delayed start and player creates a company ai won't start at all
03:12:03 <_dp_> should count ai companies there
03:13:59 <_dp_> still kinda wonky though
03:14:44 <_dp_> CmdCompanyCtrl should probably check starting time instead
03:15:00 <_dp_> also problem with starting several ais will disappear as well
03:15:25 <Samu> that sounds kinda like I had before
03:16:16 *** Flygon has joined #openttd
03:16:45 <Samu> but was rejected :(
03:17:33 <Samu> TrueBrain called it a "very dirty hack"
03:18:06 <_dp_> so it went full circle huh
03:18:15 <_dp_> well, he might have been wrong
03:19:53 <Samu> the problem was similar, the queue
03:20:29 <Samu> instead of queuing the exact number of AIs, it was queuing the command multiple times
03:20:37 <_dp_> though judging by his comments your implementation was also bad :p
03:20:43 *** erratic has quit IRC
03:22:59 <Samu> nielsm suggested using a bitmask
03:23:09 <Samu> i'm not sure how to do that :/
03:24:34 <peter1138> 1 << x
03:24:44 <peter1138> Or SetBit
03:25:29 <_dp_> Samu, you're starting them immediately though, that doesn't even have to network queue
03:26:11 <Samu> that's only when the first one that's starting on a new game is 0
03:26:54 <Samu> hmm
03:27:12 <Samu> I need 15 bits if using a bitmask
03:27:57 <_dp_> actually no automatic ai start needs to be queued
03:28:01 <_dp_> only manual ones
03:28:05 <_dp_> if that's even a thing
03:29:11 <Samu> first ai could have a start_date of 50, and all the others a start_date of 0
03:29:35 <_dp_> also that, yeah...
03:29:52 <_dp_> I kinda assumed they're sorted coz but apparently not
03:30:14 <Samu> must think of a way to do this the bitmask way
03:31:21 <peter1138> You'll need 15 bits, woo.
03:33:19 <peter1138> CCA does not need to be 16 bits, so...
03:33:35 <_dp_> why bother? MaybeStartNewCompany should just create them directly and be done imo
03:33:48 <_dp_> it's already queued
03:33:59 <_dp_> well, sorta, it's timed but whatever
03:34:16 *** WWacko1976-work has joined #openttd
03:34:31 <Samu> that would desync
03:34:44 <Samu> must go through the network queue :(
03:34:52 <glx> client must start company too
03:34:58 <_dp_> Samu, why? it goes in order already
03:35:05 <_dp_> as it's tick handler basically
03:35:24 <_dp_> glx, client never starts several
03:35:52 <_dp_> glx, and doesn't care about start time afaict
03:35:53 <glx> I mean when server start an AI company, client must also create a company
03:36:25 <_dp_> glx, sure, it's in tick handler
03:36:36 <peter1138> Yeah, about that.
03:37:08 <_dp_> glx, right next to bankrupcy and it works fine
03:37:20 <peter1138> AI settings are not synced between server and client, cos clients don't run the AIs.
03:37:34 <peter1138> So the client does not have the same information as the server.
03:37:36 <peter1138> However.
03:38:22 <Samu> oh right, i also need 4 more bits for the network max companies
03:38:27 <Samu> 15 + 4
03:38:30 <Samu> 19
03:38:58 <glx> why network max company ?
03:39:31 <Samu> it's in the _setting_client category
03:39:48 <_dp_> peter1138, however?
03:40:26 <Samu> it's gonna be a "very dirty hack" again, :)
03:40:31 <_dp_> peter1138, makes no difference imo
03:45:17 <Samu> gonna try keep the same code but use a bitmask instead of ais_to_start number
03:45:38 <Samu> but have no time now, maybe tomorrow
03:45:41 <_dp_> peter1138, oh, I got it
03:45:54 <Samu> take care, cyas
03:46:04 <_dp_> peter1138, well, send ai config to client then?
03:46:10 *** Samu has quit IRC
03:46:37 <_dp_> peter1138, much better than doing shenanigans with queue
03:57:07 <peter1138> - TileArea ta(i->location.tile - ::TileDiffXY(radius, radius), i->location.w + radius * 2, i->location.h + radius * 2);
03:57:10 <peter1138> + TileArea ta = TileArea(i->location).Expand(radius);
03:57:10 <peter1138> Hmm, well.
03:57:18 <peter1138> Shit, 3am.
03:58:12 <peter1138> TileArea ta(i->location);
03:58:15 <peter1138> ta.Expand(radius);
03:58:22 <peter1138> Is the alternative.
04:14:32 <supermop_Home> peter1138 a bit late there no?
04:14:52 <peter1138> Breaking NRT is a full-time job.
04:16:25 <supermop_Home> hopefully you are getting paid time and a half on that free labor
04:18:59 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #7467: Codechange: Replace duplicated code with TileArea::Expand() https://git.io/fjLmR
04:40:55 *** D-HUND has joined #openttd
04:44:14 *** debdog has quit IRC
04:50:44 *** glx has quit IRC
05:05:07 <Eddi|zuHause> "Breaking NRT" sounds like a bad knowckoff TV series
05:28:12 *** Supercheese has joined #openttd
06:39:44 *** Supercheese has quit IRC
06:40:05 *** Supercheese has joined #openttd
06:41:49 *** Pikka has joined #openttd
06:45:27 *** Supercheese has quit IRC
06:45:49 *** Supercheese has joined #openttd
06:48:24 *** Supercheese has quit IRC
07:16:22 *** psilynt has quit IRC
07:26:56 *** Laedek has quit IRC
07:28:16 *** Laedek has joined #openttd
07:41:26 *** nielsm has joined #openttd
07:41:27 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7460: Fix #6222: Advanced sprite layout sometimes showed incorrect railtype ground tile. https://git.io/fjL12
07:55:04 *** Ttech has quit IRC
08:02:52 *** Ttech has joined #openttd
08:05:46 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN approved pull request #7379: Codechange: Use C++11 functions for threading https://git.io/fjL1H
08:11:36 *** synchris has joined #openttd
08:20:41 <peter1138> Hmm.
08:23:11 *** andythenorth has joined #openttd
08:23:36 <peter1138> Hi.
08:28:38 *** andythenorth has quit IRC
08:28:56 *** andythenorth has joined #openttd
08:30:28 <andythenorth> moin
08:30:35 <andythenorth> is it cat?
08:30:55 <peter1138> It is dog
08:31:23 <Pikka> or frog
08:31:31 <andythenorth> log!
08:31:41 <andythenorth> it's log, log, it's big it's heavy it's wood
08:31:50 <andythenorth> also
08:31:58 <andythenorth> always tenderise your yak
08:32:36 <Pikka> yes
08:34:04 <andythenorth> so I deliberately made Steeltown to break your brain
08:34:06 <andythenorth> https://dev.openttdcoop.org/attachments/download/9376/yo_trams.png
08:34:16 <andythenorth> by cramming loads of connected industries together
08:34:29 <andythenorth> now I need some special vehicles to make it easier :x
08:34:46 <andythenorth> what shall I do?
08:35:31 <andythenorth> trams!!
08:35:56 <Pikka> trumz!
08:36:17 <Pikka> why not zellepins?
08:39:40 <andythenorth> that is a good point
08:39:48 <andythenorth> also land-based hovercraft
08:39:55 <andythenorth> peter1138: ^ when are land-ships done?
08:40:04 <peter1138> After NRT.
08:40:27 <andythenorth> definitely after
08:41:36 <peter1138> It's getting there. I'm splitting it up.
08:42:29 * andythenorth wonders about water types
08:42:36 <andythenorth> river: 5mph
08:42:43 <andythenorth> river: dredged: 7mph
08:42:56 <andythenorth> river: dredged, reinforced banks: 9mph
08:43:15 <andythenorth> probably definitely a a good idea
08:47:06 <peter1138> Much gameplay.
08:47:13 <peter1138> Deep water
08:48:20 <andythenorth> submarines!
08:55:33 <Eddi|zuHause> it's a logical idea, but that makes it not necessarily a good one :p
09:01:56 <DorpsGek_II> [OpenTTD/OpenTTD] nocunoct opened issue #7476: Can't Refit Certain NewGRF Trains (undefined string error) https://git.io/fjLM3
09:05:52 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on issue #7476: Can't Refit Certain NewGRF Trains (undefined string error) https://git.io/fjLMs
09:12:57 *** sla_ro|master has joined #openttd
09:13:46 *** erratic has joined #openttd
09:15:54 *** Smedles_ has quit IRC
09:16:19 *** Smedles has joined #openttd
09:20:24 <andythenorth> peter1138: do you want a coverage bug
09:25:05 *** Wolf01 has joined #openttd
09:25:47 <Wolf01> o/
09:27:09 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on pull request #7446: Feature: Show coverage area for existing stations and towns https://git.io/fjLM4
09:33:25 <nielsm> this was slightly funny: http://colinm.org/sigbovik/
09:35:49 <andythenorth> remarkable
09:42:14 <andythenorth> hmm, is time to patch the game?
09:42:58 * andythenorth has some ideas :P
09:44:51 <andythenorth> or maybe I just do it in newgrf
09:45:03 <andythenorth> houses in FIRS?
09:50:27 <Eddi|zuHause> it is surprisingly nontrivial to drive around a planet and not fall into a chasm
09:50:41 <LordAro> peter1138: that makes 2 duplicates now. 1.9.1 is going to have to be a thing quite quickly, isn't it?
09:51:24 <Eddi|zuHause> also "i set this beacon here last time, but which direction is home from here?
09:51:50 <LordAro> and that one shows it's more than just a cosmetic missing string
09:51:50 <nielsm> andythenorth: I think some of those "town industries" that really are retailers for finished goods should be houses yes
09:51:53 <LordAro> Eddi|zuHause: :D
09:52:37 <andythenorth> Eddi|zuHause is that general life advice?
09:52:41 <andythenorth> I suspect it's valid
09:52:50 <Eddi|zuHause> probably
09:52:53 <nielsm> but it could also use a mechanism to ensure towns above a certain size have them and maybe something to try to avoid demolishing them
09:53:07 <andythenorth> there is a missing something somewhere
09:53:08 <peter1138> Biek tiem
09:53:29 <andythenorth> industry newgrf has proper domain over cargos and industries
09:53:35 <andythenorth> and vehicles work fine with that
09:53:41 <andythenorth> but towns are a mess
09:53:55 <andythenorth> industries, cargos, houses, GS
09:53:56 <nielsm> towns need to know what cargos are interesting to accept and they can't
09:54:03 <andythenorth> all have domain overlap
09:54:11 <andythenorth> there's no concept of 'economy'
09:54:17 <nielsm> so houses just accept the bare minimum of pass, mail, goods
09:54:57 <nielsm> also birds don't know how to eat a sandvich, they just explode crumbs all over
09:54:58 <andythenorth> except when they accept carbon steel
09:55:01 <andythenorth> as in my current game
09:55:04 <nielsm> :D
09:55:04 <andythenorth> because goods is missing
09:55:18 <andythenorth> and default houses uses industry num, not label
09:56:48 <nielsm> also birds love cheese
09:56:57 <Eddi|zuHause> there it is again... i saw a glimpse of what i think the home base waypoint was, and next chasm opens
10:03:47 <andythenorth> so what shall I cap scrap yard production to?
10:03:55 <andythenorth> it's proportional to town popn
10:03:59 <andythenorth> 2048t / month?
10:04:28 <andythenorth> 2048t, but scaled by industry production multiplier, which is randomised on build?
10:05:42 <andythenorth> scaled by town popn, but divided by the number of scrap yards in the town?
10:17:05 <nielsm> scaled up by town pop and down by town passenger percentage transported?
10:25:58 <andythenorth> possibly
10:26:36 <andythenorth> whereas industry has had a lot of thought over the years
10:26:43 <andythenorth> ideas about towns are pretty under-developed
10:26:51 <andythenorth> we have GS citybuilders, and some house grfs
10:26:53 <andythenorth> and that's it
10:27:56 <andythenorth> industry, so many different production ideas tried in grf: ECS, Canadian Industries, PBI, FIRS, SPI, Yeti, Manual Industries
10:28:10 <andythenorth> lots of alternatives to evaluate + find what is good
10:32:52 <nielsm> town zones outside just concentric rings (maybe mixed RC zones at 3/1, 2/2, 1/3 ratios, and CI zones), and have houses specify their general function in a way so finished goods can be auto-accepted by appropriate town buildings
10:36:41 <andythenorth> something like this yes
10:52:11 *** erratic has quit IRC
11:06:14 *** nielsm has quit IRC
11:07:17 <andythenorth> scrap production, proportional to goods delivered to town? o_O
11:24:59 <Eddi|zuHause> that might be too direct feedback
11:25:04 *** gelignite has joined #openttd
11:26:04 <Eddi|zuHause> imagine scrapyard more like a port
11:26:29 <andythenorth> there's probably an indirect measure that could be used
11:26:42 <andythenorth> town health / satisfaction level / growth rate etc
11:26:49 <andythenorth> consumption level
11:27:42 <DorpsGek_II> [OpenTTD/OpenTTD] michicc merged pull request #7379: Codechange: Use C++11 functions for threading https://git.io/fjvlz
11:31:53 <michi_cc> Any opinions besides LordAro's on https://github.com/OpenTTD/OpenTTD/pull/7453#discussion_r271173304 ?
11:45:01 <_dp_> andythenorth, there are many CB variations as well: Aphid's CB, Luukland's CB, CityMania CB and bunch of random scripts
11:45:23 <_dp_> andythenorth, considering how little you can actually do with towns that's already a lot
11:46:02 <andythenorth> there are zero economy newgrfs though
11:46:32 <_dp_> andythenorth, what's your definition of economy?
11:46:45 <_dp_> andythenorth, isn't basecosts grf economy?
11:46:48 <andythenorth> control over cargos
11:47:12 <andythenorth> control over industry placement
11:47:17 <andythenorth> control over town growth
11:47:55 <_dp_> andythenorth, well, newgrf can't town growth and industry placement so no wonder ;)
11:48:24 <_dp_> andythenorth, well, I guess it can placement but in a very weird way
11:48:38 <andythenorth> this is why I am considering an OpenTTD fork
11:50:05 <_dp_> andythenorth, servers! :p
11:50:14 <andythenorth> the content APIs are too broken to do this via content
11:50:20 <_dp_> andythenorth, citymania does mapgen and town control
11:50:37 <_dp_> andythenorth, and mb even cargos depending on what you mean by that
11:51:06 <andythenorth> effects of cargos
11:51:25 <andythenorth> only way I can see to control it is a patched client, slaved to FIRS
11:52:08 <_dp_> andythenorth, what effects? CB is a cargo effect in a way...
11:52:34 <andythenorth> baseset houses are broken by FIRS
11:52:38 <andythenorth> wrong cargos
11:52:52 <andythenorth> and GS etc have NFI what cargos are in FIRS
11:52:57 <_dp_> well, yeah, you need to define houses...
11:53:03 <andythenorth> so again, patched client, with a hard-coded list of FIRS cargos
11:53:15 <andythenorth> remap all the baseset houses
11:53:17 <_dp_> andythenorth, GS ofc needs to be updated to new version
11:53:22 <andythenorth> redefine town production
11:53:36 <andythenorth> GS is non-viable for what I want to do
11:54:05 <V453000> what kind of incredible stuff do you have in mind andythenorth ? What's the goal?
11:54:15 *** HerzogDeXtEr has joined #openttd
11:54:22 <andythenorth> V453000 it's not incredible, it's kind of low level dull
11:54:31 <V453000> well yeah ok but what :D
11:54:54 <andythenorth> - baseset houses that aren't broken by FIRS, which I could fix in a newgrf by coping all baseset into it, but meh
11:55:07 <andythenorth> - cargos that affect town when delivered
11:55:30 <andythenorth> - reliable placement of industry in town OR reliable houses-are-fake-industries
11:55:58 <andythenorth> - town growth based on something interesting, not some non-understandable mechanic I have to look up in the wiki
11:56:19 <_dp_> andythenorth, you keep telling me to make grf for every little thing but are too lazy to fix houses after you broke cargos :p
11:56:37 <_dp_> andythenorth, for gods sake, ll grf redefines all houses just to drop authority penalty to 0
11:57:12 <andythenorth> is that on github somewhere?
11:57:26 <andythenorth> I could make 'unfuck-baseset-houses-with-FIRS.grf'
11:57:27 <_dp_> andythenorth, I doubt it even has source anymore...
11:57:39 <V453000> having more interesting town growth sounds like something that could be quite nice
11:57:51 <andythenorth> I just can't be arsed to make yet another grf just to fix houses
11:58:02 <andythenorth> might as well patch base game
11:58:05 <V453000> what's borked?
11:59:01 <andythenorth> if goods isn't defined, houses accept weird stuff
11:59:17 <V453000> ooh
11:59:23 <V453000> (:
11:59:37 <andythenorth> it's a failure of FIRS, it should provide goods cargo always
12:00:19 <V453000> I wonder how YETI handles that
12:00:26 <V453000> I don't think YETI has goods
12:00:45 <planetmaker> o/
12:01:16 <V453000> yo :)
12:01:51 <V453000> yeah it doesn't and towns seem to just accept passengers and mail
12:02:00 <V453000> sooooooo WTF
12:02:45 <andythenorth> with arctic?
12:03:08 <andythenorth> maybe it's this GS doing it
12:03:15 <andythenorth> dunno what GS does tbh
12:04:30 <V453000> I checked temperate but I'll check arctic
12:05:39 <V453000> yeah just passengers and mail, I see nothing wrong
12:07:45 <andythenorth> houses configured to accept goods will accept whatever is in slot 5 (counting from 0)
12:08:09 <_dp_> isn't town effect just a property of cargo?
12:08:22 <_dp_> afaict it picks first cargo with effect TE_GOODS
12:08:43 <_dp_> no idea how that translates to grfs tho
12:09:26 <Pikka> newgrf house acceptance is completely customisable, of course
12:09:51 <_dp_> Pikka, that too
12:09:54 <_dp_> but https://newgrf-specs.tt-wiki.net/wiki/NML:Cargos#Cargo_effects_on_town_growth
12:10:21 *** Progman has joined #openttd
12:10:34 <_dp_> if no cargo has TE_GOODS it won't require anything
12:11:18 * andythenorth explores
12:12:08 <andythenorth> nah
12:12:27 <andythenorth> TE_GOODS is set for Petroleum Fuels, which are defined
12:12:44 <andythenorth> but the houses are accepting Carbon Steel, which has no TE defined
12:12:57 <andythenorth> it's whatever's in slot 5
12:13:24 <_dp_> andythenorth, it may be that if no defined it picks default TE
12:13:31 <V453000> I vaguely remember Sylf was messing with the IDs somehow to make it behave in YETI
12:13:45 <andythenorth> cargos have to be placed in order to not break towns
12:14:25 <andythenorth> https://github.com/andythenorth/firs/blob/master/src/economies/steeltown.py#L4
12:14:27 *** pnda has joined #openttd
12:15:42 <_dp_> hm, yeti just skips id 5...
12:16:28 <andythenorth> then the houses will just drop the cargo
12:16:32 <andythenorth> that makes sense
12:17:28 <V453000> thanks for checking _dp_ I don't even have YETI source checked out here :D
12:18:05 <_dp_> V453000, yeah, i just googled it as well xD
12:18:11 <V453000> xd
12:18:30 <_dp_> https://dev.openttdcoop.org/projects/yeti/repository/entry/src/cargo_definitions.pnml
12:18:48 <V453000> (:
12:20:01 <_dp_> hm... it may actually be a bug...
12:21:49 <_dp_> here https://github.com/OpenTTD/OpenTTD/blob/master/src/town_cmd.cpp#L3339
12:22:10 <_dp_> it iterates cargo effects but then indexes t->received with it which is CargoID
12:23:34 <_dp_> uint32 goal[NUM_TE]; ///< Amount of cargo required for the town to grow.
12:23:35 <_dp_> t->goal[TE_FOOD] = TOWN_GROWTH_WINTER;
12:23:41 <_dp_> that doesn't match either
12:24:42 <_dp_> afaict it's supposed to work by defining cargo effects in grf but implementation is a mess
12:28:04 <_dp_> so it works like that atm: if there is a cargo with TE_FOOD towns require id 5
12:28:08 <_dp_> id 4 for TE_WATER
12:28:19 <andythenorth> just burn the implementation :(
12:28:27 <andythenorth> let me have a newgrf CB to decide growth
12:28:40 <pnda> Does that CB exist yet?
12:28:44 <andythenorth> of course not
12:28:51 <andythenorth> It Must Be Done With GS
12:28:57 <_dp_> actually... I think GS can fix those goals...
12:29:05 <andythenorth> even though GS is non-viable
12:29:35 <andythenorth> at some point I have to stop whining and start patching :(
12:29:36 <andythenorth> oof
12:30:03 <pnda> because I am looking into the code again to add a newgrf vehicle attribute. Where's a good point to start? (I have never done anything with the OpenTTD source code and don't know much C++)
12:30:39 <andythenorth> there's something like ground_vehicle.cmd or so
12:30:43 <andythenorth> which might be helpful
12:30:53 * andythenorth might be wrong
12:31:31 <andythenorth> meanwhile, so much left to connect :x https://dev.openttdcoop.org/attachments/download/9377/Sesdingney%20Falls%20Transport,%2006-04-1992.png
12:31:47 <planetmaker> pnda, and, of course, newgrf.cpp is a good file to look at, too
12:32:19 <_dp_> my bet is newgrf_engine.h/cpp
12:33:00 <pnda> It would be only for trains. So yeah, newgrf_engine.h/cpp would make the most sence.
12:38:11 <pnda> I take it that static uint32 VehicleGetVariable is the function for getting a variable of a vehicle (train), like for example GetGRFID(). Or am I wrong here?
12:55:30 <pnda> So yeah, VehicleGetVariable() gets a variable of a vehicle... Where do these get called and where are the bytes defined that are usable in a GRF file?
12:59:03 <_dp_> hm, I was wrong, received is also indexed by town effect so implementation seems ok
12:59:13 <_dp_> btw, https://github.com/OpenTTD/OpenTTD/issues/3341
12:59:22 <_dp_> andythenorth, and you closed it! :p
13:03:30 <LordAro> if in doubt, andy probably closed it
13:23:18 <_dp_> hm... how do I check in C++ where tf does function come from?
13:23:26 <_dp_> it shouldn't be defined for all I can see
13:23:57 <planetmaker> I generally grep over all source dirs
13:24:15 <_dp_> planetmaker, me too, but it's not there
13:25:28 <pnda> Where is the function that checks if a train is already inside of a station?
13:25:38 *** Gabda has joined #openttd
13:25:42 <Gabda> hi
13:25:46 * peter1138 returns
13:25:58 <DorpsGek_II> [OpenTTD/OpenTTD] GabdaZM commented on pull request #7369: Add: k-d tree element checker function https://git.io/fjLyo
13:27:31 *** gelignite has quit IRC
13:31:11 <_dp_> I guess more correct question would be how tf did that function end up outside of its namespace
13:31:21 <peter1138> Hmm, I need to go out to get lunch.
13:34:31 * andythenorth eating lunch
13:34:38 <andythenorth> _dp_: reopen the ticket!!
13:34:42 <andythenorth> or something
13:34:53 <andythenorth> NewTownStuff
13:35:27 <_dp_> andythenorth, well, I'm not sure what exactly is broken anymore
13:35:49 <peter1138> Station coverage is
13:35:52 <andythenorth> that specific ticket was about variable snowline, as I read it
13:36:08 <andythenorth> peter1138: sorry :( I broke it
13:36:53 <_dp_> andythenorth, also that ticket uses some chinese dialect of nml, I don't speak it :p
13:37:27 <pnda> where tf is there a function checking if a train is in a station?!
13:38:51 <_dp_> andythenorth, snowline was part 1, part 2 seems the same issue you have
13:39:14 <peter1138> Meh, need shower, then I'll get food, then I'll look at it.
13:39:21 <_dp_> andythenorth, if effect is not defined it picks up default so you end up with two effect on two cargos and it only shows first one
13:40:14 <andythenorth> hmm
13:40:38 <andythenorth> so many frigging interactions
13:40:49 * andythenorth changes economy, removes houses newgrf, disables all GS
13:41:06 <andythenorth> yeah no it's a different issue
13:41:41 <andythenorth> houses are hard-coded to accept cargo 5
13:41:54 <andythenorth> it's just gonna break if cargo 5 is not goods
13:42:34 <andythenorth> ok what shall I call my house grf then?
13:42:45 <andythenorth> in fact, I just put the houses in FIRS I think
13:43:26 <andythenorth> or I disable FIRS if the house grf isn't used?
13:43:48 <_dp_> andythenorth, why not just put your cargo in 5th slot?
13:43:59 <TrueBrain> hmm .. why did a commit from michi_cc trigger a 'release' build on the azure pipelines ...
13:44:01 <_dp_> will probably also help compatibility with other house sets
13:44:03 <andythenorth> what happens if I leave the 5th slot empty?
13:44:16 <_dp_> andythenorth, yeti happens
13:44:23 <andythenorth> so I could just add a null cargo
13:45:21 <andythenorth> much lolz all round
13:45:49 <TrueBrain> its a CI build, but it should only happen on tags ... why did this trigger ..
13:46:43 <TrueBrain> very odd
13:46:52 <DorpsGek_II> [OpenTTD/OpenTTD] GabdaZM updated pull request #7025: Add #6887: Option to show zone inside local authority boundary of towns https://git.io/fhsu0
13:50:40 *** HerzogDeXtEr1 has joined #openttd
13:54:00 <DorpsGek_II> [OpenTTD/OpenTTD] GabdaZM updated pull request #7025: Add #6887: Option to show zone inside local authority boundary of towns https://git.io/fhsu0
13:56:19 *** HerzogDeXtEr has quit IRC
13:58:27 <andythenorth> so something something houses
13:58:41 <andythenorth> how about they check cargo labels, not cargo numbers? o_O
13:59:03 <andythenorth> also the default vehicles, while we're here
14:00:14 <DorpsGek_II> [OpenTTD/OpenTTD] GabdaZM commented on pull request #7025: Add #6887: Option to show zone inside local authority boundary of towns https://git.io/fjLSm
14:03:19 <DorpsGek_II> [OpenTTD/OpenTTD] capitalismlab-owner opened issue #7477: 1.9.0 Cannot display language properly. https://git.io/fjLSG
14:04:00 <DorpsGek_II> [OpenTTD/OpenTTD] GabdaZM commented on pull request #7025: Add #6887: Option to show zone inside local authority boundary of towns https://git.io/fjLSZ
14:04:19 <pnda> https://git.io/fjLSG => Those expected and actual results and steps to reproduce are very helpful :p
14:04:58 <_dp_> andythenorth, I think it checks labels actually
14:05:04 <_dp_> andythenorth, mb not for default houses though
14:05:31 <pnda> .. im still searching for the function that checks if a train is in a station ...
14:07:32 <_dp_> andythenorth, yeah, for default ones that's hardcoded
14:10:45 <andythenorth> well that's a thing
14:18:11 <pnda> Is there a track property for a station?
14:18:24 <pnda> Like there's TRACK_BIT_DEPOT for a Depot?
14:27:43 <andythenorth> try looking for gradualloading or so https://newgrf-specs.tt-wiki.net/wiki/VariationalAction2/Vehicles#Modflags_.28FE_and_FF.29
14:27:59 <andythenorth> bit 1 of FE relates to loading
14:30:39 <pnda> Is there a function to get the length of a vehicle on a certain position?
14:46:52 <V453000> hm, I have in my .gitignore a line /gfx/x-script-temp ... I'm expecting that folder to be ignored by git, but it still shows in my working copy :d
14:46:58 <V453000> what could possibly be wrong?
14:47:37 <V453000> oh maybe
14:48:16 <V453000> oh yeah I guess it's because those files were previously commited :)
15:09:21 <andythenorth> is it nap time?
15:13:59 *** Gabda has quit IRC
15:14:58 <peter1138> i back
15:15:35 <peter1138> I forgot the golden rule. Don't go to the supermarket when hungry.
15:19:18 <Pikka> this sounds like a rule which could lead to death from starvation
15:23:45 <andythenorth> it usually leads to over-shopping
15:28:00 <peter1138> Yes
15:28:17 <peter1138> I have to figure out how this station coverage thing works :p
15:35:23 <andythenorth> nearly brilliantly
15:36:35 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
15:37:56 <pnda> maybe c++ openttd development is just nothing for me....
15:38:57 *** Flygon has quit IRC
15:39:22 <peter1138> Hmm?
15:45:40 <pnda> Everytime I play OpenTTD I hate this pathfinder
15:51:15 <TrueBrain> so how am I going to test OSX bundling .. hmm
15:53:58 <_dp_> TrueBrain, just release it and wait for complaints?
15:54:02 <_dp_> that's what I did at least xD
15:54:06 <pnda> good idea
15:54:12 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
15:54:21 <TrueBrain> _dp_: yeah .. I am going to try that once .. if that fails, I will try another method :D
15:54:29 <TrueBrain> as otherwise this becomes VERY spammy :D
15:54:55 <dwfreed> I have a mac, might be able to spin up an OS X VM from Windows to test for you
15:55:06 <TrueBrain> hmm: "include\thr\xthread(238,0): Error C2672: 'std::invoke': no matching overloaded function found"
15:55:06 <dwfreed> or i could reboot into OS X
15:55:16 <TrueBrain> Windows builds are failing on CMak enow ..
15:55:18 <peter1138> https://github.com/OpenTTD/OpenTTD/issues/7470 < seems less than ideal?
15:56:09 <dwfreed> peter1138: pretty normal behavior, though
15:56:19 <peter1138> Not really.
15:56:31 <dwfreed> normal as in happens a lot
15:56:46 <peter1138> That does not make it okay.
15:56:48 <_dp_> well, what user is it supposed to run as then?
15:56:52 <peter1138> So is absolutely irrelevant.
15:57:13 <peter1138> Definitely not an elevated user.
15:57:17 <dwfreed> _dp_: should run without the UAC elevation
15:57:55 <pnda> This is actually making me agressive... Why the hell are these trains just going onto tracks that have nothing to do with where they are ordered to go. I have signalling etc.
15:58:09 <_dp_> dwfreed, is that windows way if sudo?)
15:58:11 <_dp_> of
15:58:47 <Eddi|zuHause> pnda: usual suspects are depot servicing or missing catenary somewhere
15:58:47 <_dp_> pnda, breakdowns?
15:59:35 <pnda> nope. They sometimes go where they're supposed to go, but sometimes just do whatever they want
15:59:54 <pnda> And none of them have broken down yet
15:59:59 <peter1138> Did you add a new "random path" pathfinder or something?
16:00:05 <dwfreed> peter1138: look at runas /trustlevel
16:00:14 <pnda> No this is YAPF
16:00:23 <TrueBrain> michi_cc: https://dev.azure.com/openttd/OpenTTD/_build/results?buildId=2632&view=logs&jobId=a4cabd11-27ec-564d-8b9d-344b84f68eed&taskId=0f0d0c2b-8bbc-5471-4f57-2f0f7cc19169&lineStart=752&lineEnd=753&colStart=1&colEnd=1
16:00:32 <TrueBrain> possibly this is something you understand better than I, what goes wrong here
16:00:39 <peter1138> dwfreed, I have had no input into the installer. I have no idea where any of it lives :P
16:00:48 <milek7> in NSIS it is RequestExecutionLevel user
16:00:51 <_dp_> pnda, if breakdown enabled they can at random time decide they want to go to a depot and pick closest one
16:01:14 <_dp_> well, it's regular intervals but effectively random
16:01:21 <pnda> well sure. but there's no depot on the way they are sometimes going
16:01:32 <peter1138> andythenorth, I have no idea how it *was* working :/
16:01:48 <Eddi|zuHause> did you enable "treat red signals as end of line"?
16:01:49 <peter1138> pnda, post a savegame :p
16:01:53 <TrueBrain> milek7: that is the level the installers runs under
16:01:56 <TrueBrain> the installers needs admin rights
16:01:57 <peter1138> Otherwise it's all just guessing.
16:02:00 <TrueBrain> as it is writing in c:\Program Files
16:02:27 <peter1138> I guess it needs to drop rights when it launches the game, if that's possible.
16:02:29 <TrueBrain> so this ONLY happens if you run OpenTTD as the final step of the installation
16:02:33 <peter1138> If it's not possible, then don't offer?
16:02:40 <TrueBrain> easy solution: no longer offer that option :)
16:02:43 <TrueBrain> exactly :)
16:03:40 <pnda> Using only my GRF "Austrian Trains" v0.1.1. OpenTTD 1.9.0: https://cdn.discordapp.com/attachments/442748131898032138/564087652941561886/Mardwood_Transport_May_9th_3002.sav
16:03:42 <Eddi|zuHause> i'm sure nobody will miss that option :p
16:03:51 <dwfreed> TrueBrain: see runas option i mentioned
16:04:01 <pnda> Eddi|zuHause: No, I can't even find that option "treat red signals as end of line"
16:04:02 <milek7> does it really needs to be in Program Files though?
16:04:17 <milek7> it could be somewhere in AppData/Roaming
16:04:25 <dwfreed> eww
16:04:25 <TrueBrain> it can be in many places :)
16:04:26 <dwfreed> no
16:04:31 <TrueBrain> NSIS does c:\Program Files
16:04:37 <TrueBrain> other installers have more options
16:04:39 <TrueBrain> we welcome PRs :)
16:04:42 <Eddi|zuHause> pnda: yeah, it's a hidden option for a reason :p
16:04:54 <dwfreed> Roaming is the wromg place to put programs
16:05:11 <dwfreed> This is why Chrome installs to Local
16:05:19 <pnda> I am in the Category Expert already and can't find it. Is it really so hidden even "show all settings" doesn't see it? lol
16:05:28 <Eddi|zuHause> yes.
16:05:28 <andythenorth> hmm
16:05:39 <andythenorth> pnda: pathfinder is usually pretty reliable for trains
16:05:57 <pnda> Anyone tested the savegame?
16:05:59 <_dp_> btw, even lost trains sometimes go "right" way
16:06:29 <dwfreed> milek7: you've clearly never been in an AD domain with roaming profiles
16:06:53 <andythenorth> hmm
16:06:57 <andythenorth> so can we fix everything?
16:07:16 <andythenorth> or shall I just draw some trains?
16:07:33 <dwfreed> Nothing like downloading a gigabyte of data just to log into a computer, and upload it again on logout
16:07:34 <TrueBrain> dwfreed: don't be mean; he also is just trying to help with thinking along
16:08:07 <pnda> I FOUND THE REASON
16:08:10 <pnda> MY GOOOOOOOOOOOOOOOOOOOD
16:08:27 <pnda> Next time place a Path Signal instead of a One Way Path Signal my friends
16:08:56 <TrueBrain> okay, creating a bundle in OSX is vastly more complex than I expected ... dsstore .. pinfo.list .. like I know what any of it means :)
16:08:57 <dwfreed> rofl
16:09:20 <peter1138> pnda, excellent.
16:09:30 <_dp_> pnda, better idea for you: learn signaling :p
16:09:39 <pnda> lmao
16:09:56 <andythenorth> yup, that
16:10:06 <peter1138> Path-signals is all you need.
16:10:22 <pnda> Well, most of the times
16:10:31 <_dp_> peter1138, yeah, but if you place them randomly it doesn't always work as you want :p
16:11:05 <peter1138> True. Having them the right orientation helps.
16:11:20 <peter1138> Also making your safe-waiting spaces long enough for your trains helps.
16:14:02 <andythenorth> TrueBrain yo :)
16:15:30 *** Wormnest has joined #openttd
16:18:57 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
16:19:06 <TrueBrain> meh, I was going to push to a different branch ... *fails*
16:24:07 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
16:24:09 <TrueBrain> again, lol .. okay .. guess this will be spammy :P
16:26:48 *** Samu has joined #openttd
16:29:45 <andythenorth> everyone deep in projects :P
16:29:51 * andythenorth has so many unfinished newgrfs :P
16:29:55 <andythenorth> let's break something new!
16:32:02 <TrueBrain> http://devs.openttd.org/~truebrain/openttd-0.1.1-amd64.dmg <- so andythenorth .. how does this look on OSX?
16:32:10 <TrueBrain> pretty sure it is missing dylibs
16:33:01 <TrueBrain> folder structure seems whacked
16:34:28 <andythenorth> "You can’t open the application “OpenTTD.app” because it may be damaged or incomplete."
16:34:33 <TrueBrain> lol
16:34:38 <TrueBrain> does it show an icon on the dmg?
16:35:48 <andythenorth> https://paste.openttdcoop.org/ptmon7ima/wepvxc/raw
16:35:52 <Samu> hi
16:36:05 <andythenorth> TrueBrain: multiple things to say, just digging through it
16:36:27 <TrueBrain> okay, so I need to figure out how to add the dylibs ..
16:36:39 <andythenorth> there is no icon on the dmg
16:37:06 <pnda> I also have a Mac, I can try that later
16:37:09 <andythenorth> the OpenTTD package is there, but shows a no-entry icon because the package is detected as broken
16:37:34 <TrueBrain> tnx andythenorth :) More versions are expected soon :P
16:37:52 <andythenorth> no TrueBrain
16:37:54 <andythenorth> thankyou
16:37:56 <andythenorth> etc
16:38:10 <pnda> Will there also be a installer for Linux? (just wondering)
16:38:34 <andythenorth> did nielsm come back?
16:38:35 <andythenorth> nope
16:47:43 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
16:50:27 <peter1138> Hmm, trying to find some rim tape :/
16:58:48 <LordAro> peter1138: what happened to the previous tape?
16:59:05 <peter1138> It's not tubeless rim tape :)
16:59:25 <Eddi|zuHause> is it gluten free?
17:00:21 <LordAro> oh, derp, rim tape, not bar tape
17:00:48 <peter1138> Ah shit, one local bike shop doesn't have any to sell, but will fit some :/
17:00:54 <peter1138> And the other local bike shop just closed.
17:01:36 <peter1138> And Halfords is just useless.
17:02:05 <andythenorth> Halfords did have a go-kart when I badly needed one
17:02:08 <peter1138> I have 21mm tubeless rim tape, but these rims are 40mm wide, heh.
17:02:15 <andythenorth> and a USB-C cable with power delivery
17:02:47 <peter1138> It might work but I'd need to overlap and I don't have enough for that.
17:02:52 <peter1138> Oh well, online ordering it is.
17:03:31 *** Heiki has quit IRC
17:03:40 *** Heiki has joined #openttd
17:06:05 <TrueBrain> so who said that using dylibs was easier than static linking on OSX?
17:06:21 <andythenorth> not me
17:12:08 *** nielsm has joined #openttd
17:12:09 *** Heiki has quit IRC
17:13:37 <pnda> i wish i understood more of the openttd source code to contribute....
17:15:08 <andythenorth> nielsm: o/ :D
17:15:41 <nielsm> pnda: best way to learn the code is to work with it, set a goal for yourself and take the time to dive in and learn the details required for that goal
17:15:44 <nielsm> imo
17:16:08 <LordAro> it's not like an inate ability
17:16:15 <pnda> nielsm: that's what I have been trying for the last few hours.... nothing has come out yet though
17:16:28 <pnda> And to be honest the goal I have is a bit much I think
17:16:46 <Samu> crap _dp_ code was wrong :(
17:19:43 <nielsm> pnda: otherwise ask some questions and maybe we can direct you to a place in the code to look
17:20:09 *** Heiki has joined #openttd
17:20:17 <andythenorth> nielsm: regions then?
17:20:24 <andythenorth> could we sum population for a region?
17:20:32 <nielsm> probably?
17:20:34 <andythenorth> and count industries of type x in the region?
17:20:50 <andythenorth> could we declare a regional capital?
17:21:05 <andythenorth> and mark it as a city, with the others towns?
17:21:30 <nielsm> one idea I had for it was on a standard mapgen to designate a number of cities as regional capitals and generate regions around those
17:22:07 <_dp_> locks look very weird on titlegame
17:22:14 <andythenorth> I think there are other flexible ways to use regions, but yes
17:22:16 <_dp_> when ships go up and down at the same time
17:22:20 <_dp_> also glitching slightly
17:22:36 <pnda> Well I had these ideas: 1) Having a signal inside a station to allow multiple trains to enter at once. 2) Adding vehicle age factor to station rating. 3 Adding vehicle factor of how much it affects station rating 4) Having times of year, snow in the winter, trees without leaves in autumn etc.
17:22:50 <Samu> ais_to_start++ must be done before getting start_date check
17:24:26 <LordAro> pnda: none of those are simple things, for sure
17:24:31 <nielsm> pnda: 2 and 3 should be doable, 1 requires messing with map array storage and signal logic and would be quite advanced, 4 will require tons of new graphics drawn and implementing new newgrf features which also puts it in the advanced category
17:24:43 <pnda> Yeah 1 and 4 are really not simple
17:24:51 <nielsm> 3 depends on what you mean by vehicle factor
17:25:02 <nielsm> like, some vehicle types are inherently better rated?
17:25:07 <pnda> Yes
17:25:11 <nielsm> since that would probably require newgrf support as well
17:25:16 <pnda> Yes
17:25:32 <_dp_> it's all in game already :p
17:25:33 <nielsm> vehicle age already does play into station rating, iirc
17:25:41 <nielsm> but only for the first 3 years of a vehicle
17:25:45 <nielsm> vehicle's age
17:25:45 <DorpsGek_II> [OpenTTD/OpenTTD] ghisvail commented on issue #6873: Jukebox not working in the flatpak version https://git.io/fjLHg
17:25:49 <andythenorth> what's the fewest number of production cycles in a month? 8?
17:25:56 <andythenorth> or do some Februaries get 7?
17:26:34 <nielsm> yeah a 7 cycle february can happen
17:26:38 <nielsm> 72*28/256 = 7.875
17:26:49 <_dp_> path signal allow multiple trains, age affects rating, ships rating is different
17:27:22 <_dp_> and, snowline moves with seasons
17:27:31 <pnda> path signals allow multiple trains, but not in a station at once, unloading and loading at once. Would be really handy for trams aswell
17:27:45 <pnda> snowlines move with season, but only on arctic climate
17:27:47 <andythenorth> overlapping trains?
17:27:58 <Samu> oh nooo :(
17:28:08 <peter1138> Well, that's tubeless conversion aborted today.
17:28:18 <pnda> ?
17:28:35 <Samu> I just only realise your solution doesn't work :/
17:28:54 <Samu> _dp_
17:29:05 <_dp_> andythenorth, that' also already a thing :p
17:29:22 <andythenorth> overlapping and crashed?
17:29:37 <_dp_> andythenorth, train can't crash into inself
17:29:48 <andythenorth> oh yeah, you can do snake :)
17:29:50 <andythenorth> I forgot
17:29:50 <_dp_> andythenorth, well' I guess that makes it overlapping train (no s)
17:30:27 <_dp_> Samu, told you I didn't test it :p
17:30:38 <_dp_> Samu, that's just a general idea how to make it more readable
17:31:09 <Samu> when that for loop is starting, one company is already starting
17:31:16 <Samu> your code doesn't make that happen
17:31:17 *** gelignite has joined #openttd
17:31:22 <Samu> t.t
17:32:02 <Samu> the next ai starting is not the current that's being iterated, but the next one
17:32:29 <Samu> i can't simply do cid + 1 either
17:32:34 <peter1138> So what does "t.t" mean anyway?
17:32:42 <Samu> sad face :(
17:32:45 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
17:32:55 <peter1138> If it involves middle fingers, that's incredibly rude.
17:32:58 <andythenorth> does this text make sense? https://dev.openttdcoop.org/attachments/download/9378/town_producer_text.png
17:33:06 <Samu> tears in each eye
17:33:09 <andythenorth> and can it be less ugly?
17:33:52 * andythenorth wonders if the game gained a text formatter for arbitrary cargo amounts
17:33:54 * andythenorth looks
17:34:10 <Samu> i'm going back to that count skipping yet again :(
17:35:33 <peter1138> What happened to the bitmap idea?
17:35:36 <andythenorth> hmm, no, there's an arbitrary number of cargos at the industry, using a specific cargo formatter won't work
17:36:12 <Samu> i'm trying to implement it, but was reusing _dp_ code ideas.
17:36:29 <Samu> now i'm reverting
17:36:31 <Samu> t.t
17:36:35 <Samu> erm... :(
17:37:05 <pnda> Are there any simple feature requests/bug fixes I could do/fix as a starting point?
17:37:33 <nielsm> https://github.com/OpenTTD/OpenTTD/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22
17:37:50 <andythenorth> you could bug fix andythenorth
17:38:13 <andythenorth> my wife has a list of my defects
17:38:28 <nielsm> actually also try removing the is:open criteria from that search
17:38:41 <nielsm> since some/many of the closed are only closed because nobody showed interest for a long time
17:39:42 <TrueBrain> nielsm: as a FYI, "good first issues" should not be closed due to stale. So the closed ones should either be fixed or no longer valid
17:39:51 <TrueBrain> lot of "shoulds" there ofc :)
17:40:57 <TrueBrain> hmm .. OSX bundling goes wrong, but it is unclear why
17:41:12 <TrueBrain> it copies the dylibs
17:41:15 <TrueBrain> it fixes the executable
17:41:25 <TrueBrain> then it tries to fix up libfreetype .. which breaks
17:42:10 <andythenorth> better https://dev.openttdcoop.org/attachments/download/9379/town_producer_text_2.png
17:42:24 <andythenorth> it's not building natively on OS X, right?
17:43:06 <TrueBrain> item_substring='/Users/vsts/agent/2.149.2/work/1/s/build/_CPack_Packages/amd64/ZIP/Frameworks/libfreety'
17:43:08 <TrueBrain> that seems broken
17:43:22 * andythenorth way out of depth
17:43:40 <pnda> Which files are responsible for getting all town names and putting them into the town name list?
17:44:06 <andythenorth> TrueBrain: the amd64 in the path, that's not relevant to anything, right?
17:44:11 <TrueBrain> otool -l libfreetype.6.dylib
17:44:14 <TrueBrain> what does that return andythenorth? :)
17:44:19 <TrueBrain> andythenorth: no, it is not :)
17:44:52 <andythenorth> (bin35) firs(v4-development-track)$ otool -l libfreetype.6.dylib
17:45:01 <andythenorth> "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump: 'libfreetype.6.dylib': No such file or directory"
17:45:09 <TrueBrain> with the right path to the dylib ofc :)
17:45:11 <TrueBrain> silly :)
17:45:32 <andythenorth> one pastes commands as given, not with edits :P
17:45:33 <andythenorth> ok
17:45:38 * andythenorth looks
17:45:56 <pnda> I like the ReplaceEnglishWords() function lol
17:46:09 <nielsm> pnda: the GUI towns list is in town_gui.cpp
17:46:56 <pnda> nielsm thanks. Are any strings or names taken from any other file?
17:47:04 <andythenorth> does Apple even ship freetype? :P
17:47:06 * andythenorth looking
17:47:21 <TrueBrain> no
17:47:28 <TrueBrain> but I assumed you had it installed via brew :P
17:47:34 <andythenorth> I do
17:48:38 <pnda> So I take it that TownDirectoryWindow is the town list window?
17:49:39 <andythenorth> TrueBrain: https://paste.openttdcoop.org/pjneubd4q/uset7j/raw
17:49:44 <TrueBrain> ty
17:52:27 <peter1138> pnda, likely :)
17:52:33 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #7446: Feature: Show coverage area for existing stations and towns https://git.io/fjksj
17:52:33 <TrueBrain> andythenorth: this is with -l the output (lowercase L)
17:52:50 <andythenorth> otool -l /usr/local/Cellar/freetype/2.9.1/lib/libfreetype.6.dylib
17:53:03 <peter1138> andythenorth, can you break it again please?
17:53:17 <andythenorth> peter1138: sure
17:53:54 <peter1138> What else was I doing before you interrupted me? :D
17:54:09 <peter1138> Oh yeah, I did the method chaining thing that LordAro suggested.
17:54:15 <andythenorth> when I have a PR fetched, is there any way to update it, except delete and fetch again?
17:54:56 <peter1138> (In #7467)
17:55:08 <_dp_> why is goal question window is marked as construction window?
17:57:21 <TrueBrain> andythenorth; and the same command with -L ? :D
17:57:44 <andythenorth> https://paste.openttdcoop.org/pf4yhqvai/lyvhd2/raw
17:57:58 <TrueBrain> ty!
17:58:18 <TrueBrain> it references itself, funny :D
17:58:47 <DorpsGek_II> [OpenTTD/OpenTTD] Romazoon opened issue #7478: Newobject disapears if company owner get buyed by another company https://git.io/fjLQf
18:01:34 <LordAro> peter1138: nearly everyone i'm following on strava did a (not insignificant) ride today. i feel left out
18:01:47 <peter1138> I only did 50-odd.
18:01:49 *** Romazoon has joined #openttd
18:02:00 <LordAro> #7478 is interesting
18:02:05 <LordAro> is it a new issue?
18:02:11 <LordAro> i.e. not in 1.8
18:02:44 <peter1138> Dunno, I have never used newobjects.
18:02:52 <Romazoon> i think it s not so new
18:03:18 <Romazoon> i experienced it months ago, if not a year ago
18:03:31 <LordAro> interesting
18:03:41 <andythenorth> oh I can build next to competitor stations now?
18:03:52 <peter1138> I bet the code for changing owner is not updated for newobjects at all.
18:04:07 <peter1138> Yeah, it'll change the ownership of owned land, and statues.
18:04:11 <peter1138> Otherwise it'll remove.
18:04:14 <andythenorth> peter1138: so if I open station construction, any coverage on any station is toggled off?
18:04:19 <andythenorth> expected?
18:04:29 <peter1138> Before newobjects, that "otherwise" would be only company HQ.
18:04:40 <peter1138> andythenorth, yeah, it uses the same variable :s
18:05:10 <Samu> static int GetStartNextTime(uint count = 0, CompanyID *company = (CompanyID *)INVALID_COMPANY);
18:05:15 <Samu> does that make sense?
18:05:21 <peter1138> No.
18:05:24 <Samu> :(
18:05:37 <Samu> i need to get both the start time and the company id
18:05:40 <Samu> what to do?
18:05:51 <peter1138> Why use a default value?
18:06:09 <Samu> because it complains about ... sec, brb
18:06:25 <_dp_> getting start time by company id makes no sense imo
18:06:30 <Samu> default argument not at end of argument list
18:06:31 <_dp_> should be by amount of ais
18:07:02 <peter1138> _dp_, it feels like this whole thing needs scrapping and being written by someone who knows a bit about process control and logic...
18:07:14 <peter1138> _dp_, but nobody else actually cares about the functionality :p
18:07:30 <Samu> i want to get the company id for the bitmask
18:07:34 <_dp_> peter1138, thing is, unless you send ai starts to client there is no good way to do it
18:07:34 <andythenorth> what are we scrapping now? o_O
18:07:50 <_dp_> peter1138, coz there is no place with complete info
18:07:56 <peter1138> multiple ai starting in multiplayer.
18:08:15 <_dp_> peter1138, tick handler can't predict future and command handler runs on client, so both have incomplete info
18:08:59 <peter1138> andythenorth, the coverage button even toggles as the station is highlighted, heh.
18:09:23 <andythenorth> peter1138: yes, it's all very 'correct' :D
18:09:37 <peter1138> andythenorth, maybe it should be separate and not touch each other.
18:09:38 <andythenorth> it's totally consistent afaict
18:09:43 <andythenorth> just maybe a bit weird
18:09:51 <peter1138> But then you'd get 2 stations highlighted, and then what?
18:10:02 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
18:10:48 <andythenorth> peter1138: I think it's probably fine
18:10:53 <andythenorth> merge it, await feedback
18:11:00 <peter1138> I can't merge it :p
18:11:08 <andythenorth> get LordAro to merge it
18:11:14 <Samu> company is a @param [out] thing
18:11:25 <peter1138> Samu, have you heard of NULL?
18:11:33 <Samu> NULL is 0
18:11:38 <Samu> 0 is a valid company :(
18:11:47 <peter1138> No
18:12:04 <peter1138> As it's a pointer, NULL is NULL, not a CompanyID.
18:12:22 <peter1138> If you dereference the pointer, it becomes a CompanyID, and you can't dereference NULL.
18:13:45 <Samu> static int GetStartNextTime(uint count = 0, CompanyID *company = NULL);
18:14:10 <Samu> like that?
18:14:10 <peter1138> Why are you even using default parameters?
18:14:34 <Samu> because GetStartNextTime is called in different manners
18:14:43 <Samu> GetStartNextTime()
18:14:57 <Samu> GetStartNextTime(ais_to_start)
18:15:03 *** Romazoon has quit IRC
18:15:10 <Samu> GetStartNextTime(ais_to_start, &company) or so
18:15:24 <Samu> or is it *
18:15:27 <peter1138> Have you considered you are probably doing it wrong?
18:15:32 <Samu> no
18:15:36 <peter1138> Well you should.
18:15:37 <_dp_> rofl
18:16:00 *** synchris has quit IRC
18:18:24 <_dp_> somewhat ok implementation would be to send ai number and start time to CmdCompanyCtrl at let it decide what to do with it
18:18:34 <_dp_> and forget about starting multiple in same command
18:18:38 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
18:18:43 <peter1138> Starting multiple AIs is the whole point.
18:18:59 <peter1138> If you don't want to start multiple AIs in one go, then the original code already worked.
18:19:20 <_dp_> peter1138, I bet it didn't work too well
18:19:43 <_dp_> peter1138, command handler needs start time, what if someone started ai manually right before it?
18:19:57 <andythenorth> why do we need to start AIs together?
18:20:11 <andythenorth> aren't they supposed to be desynchronised, for gameplay reasons?
18:20:12 <TrueBrain> I have been thinking about this .. the whole approach is basically wrong. Better would be to rename 'start_date' to something like 'delay_days', and on startup create 'start_date' with real dates when the AI should start ..that would heavily simplify a lot of other code, I guess
18:21:01 <peter1138> andythenorth, we don't need it, it's Samu's toy.
18:21:18 <peter1138> Okay, Windows 3.11 theme for Gtk3.
18:21:19 <_dp_> TrueBrain, how would that change anything?
18:21:20 <TrueBrain> the biggest mindfuck so far is that 'start_date' is really not a date that the AI starts :P
18:21:47 <TrueBrain> it would fix the problems, make the code more readable, and make the PR clean?
18:21:52 <TrueBrain> weird question
18:22:26 <_dp_> TrueBrain, as I see it you can easily get real date from start date and vice versa
18:22:36 <TrueBrain> no, not really
18:22:39 <TrueBrain> not how it currently works at least
18:22:41 <andythenorth> can we even start all the AIs in the same tick?
18:22:44 <TrueBrain> it is very wonky
18:22:55 <TrueBrain> andythenorth: yes and no
18:22:58 <TrueBrain> not in the way you would think
18:23:12 * andythenorth is not a programmer, but seems weird
18:23:36 <TrueBrain> for sure the current code is not designed to start multiple AIs in the same tick
18:23:53 <TrueBrain> so what-ever you try with the current design, the code will get really messy
18:25:08 <_dp_> TrueBrain, if (_next_competitor_start == 0) _next_competitor_start = AI::GetStartNextTime() * DAY_TICKS;
18:25:17 <TrueBrain> well, more exact, you currently can't start more than one AI safely within N ticks, where N depends a lot on the multiplayer settings :D
18:25:19 <_dp_> TrueBrain, seems easy enough to recalculate to whatever
18:25:42 <TrueBrain> _dp_: except that that value hitting 0 doesn't mean an AI will start
18:25:44 <TrueBrain> just that it will try
18:26:12 <TrueBrain> so start_date is just: try-to-start-after-N-days-since-the-last-time-you-tried
18:27:31 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
18:28:11 <TrueBrain> and that btw is the whole issue .. and keeping that as-is, and trying to solve things around it, just constantly painfully points out that the real issue is the way AIs are trying to get started
18:28:29 <TrueBrain> meaning you get weird functions with Company * etc :P
18:29:06 <TrueBrain> sometimes proper solution require a step back :)
18:29:31 <_dp_> TrueBrain, well, whatever, even if you know start_date it still won't help much if client doesn't know it
18:30:09 <Samu> error C2101: '&' on constant
18:30:16 <Samu> how do I de-const?
18:31:30 <Samu> this bitmask thing is becoming a pain
18:31:37 <TrueBrain> right, so far any attempt on a constructive conversation :)
18:32:33 <andythenorth> seriously not making progress :P
18:32:45 * andythenorth back to playing OpenTTD
18:33:48 <milek7> Samu: what bitmask?
18:34:17 <Samu> given what TrueBrain is saying, it's still the wrong approach
18:34:44 <milek7> you shouldn't cast const away, but declare it also const in parameter
18:35:59 <peter1138> Hmm, is it dinner time yet?
18:36:11 <peter1138> Wait, no, I had dinner about 3 hours ago!
18:36:17 <peter1138> I mean lunch.
18:36:17 <Samu> but it's not a const
18:36:26 <Samu> must remove the const
18:36:29 <TrueBrain> andythenorth: http://devs.openttd.org/~truebrain/openttd-0.1.1-amd64.dmg <- possibly this version works a bit better. Still pretty sure it fails
18:36:37 <TrueBrain> as I think the LD path is not set correctly
18:36:37 <Samu> CompanyID is a const for some reason
18:36:44 <TrueBrain> but in Frameworks are the dylibs at least
18:36:50 <TrueBrain> not sure what the correct folder is ..
18:39:18 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
18:39:20 <Samu> INVALID_COMPANY is a const ?
18:39:45 <Samu> can't use NULL, can't use INVALID_COMPANY, what can I use then..
18:39:57 <milek7> ah, it constant
18:39:58 <milek7> like 5
18:40:09 <milek7> you cannot take pointer directly to it
18:40:25 <milek7> you must declare it in variable before
18:40:31 <milek7> but this looks like bad code anyway
18:40:31 <_dp_> milek7, you can but it will be const pointer ;)
18:40:40 <andythenorth> TrueBrain: the binary in that second dmg works if launched from shell
18:40:46 <andythenorth> the package is obvs. fail
18:41:03 <dwfreed> so bad plist
18:41:09 <dwfreed> or missing
18:42:53 <dwfreed> milek7: you can't take a pointer to a literal; you can take pointers to variables declared const just fine
18:43:19 <dwfreed> (const char * is very common in C)
18:43:47 <milek7> yes, but Samu want to use INVALID_COMPANY, which is literal 0xFF?
18:44:07 <peter1138> Yes but just because Samu wants to use something doesn't mean it's the right thing to do.
18:44:22 <dwfreed> *snerk*
18:44:33 <milek7> i know ;)
18:44:46 <Samu> static int GetStartNextTime(uint count = 0, uint &company); doesn't work
18:44:55 <Samu> static int GetStartNextTime(uint count = 0, uint &company = INVALID_COMPANY); doesn't work
18:45:04 <Samu> static int GetStartNextTime(uint count = 0, uint &company = NULL); doesn't work
18:45:13 <_dp_> Samu, try lambdas, at least you'll learn something new :p
18:45:15 <Samu> also tried CompanyID
18:45:23 <Samu> also tried *
18:45:51 <peter1138> So you're using a reference instead of a pointer now?
18:45:58 <peter1138> Pretty sure you can have a reference with a default value.
18:46:05 <Samu> i have no idea, i'm trying anythning to get one that works
18:47:17 <_dp_> Samu, code that works but you don't know why is even worse than code that doesn't work at all :p
18:47:41 <_dp_> at least latter can't do any harm xD
18:47:44 <milek7> why it isn't just CompanyID (maybe with INVALID_COMPANY as default)?
18:48:05 <dwfreed> a reference needs to refer to another variable, not a literal
18:48:06 <Samu> because, i need it to return 2 things
18:48:55 <dwfreed> there are other ways to return 2 things
18:49:45 <_dp_> main problem here is that he's implementing wrong idea in a wrong way
18:49:52 <_dp_> not that he needs to return 2 values :p
18:50:11 <dwfreed> why don't you start with what you're actually trying to do?
18:50:39 <peter1138> Hmm, ok. I rebase NRT and it now fails to compile.
18:50:44 <peter1138> In music.cpp.
18:51:24 <dwfreed> peter1138: 99 bugs in the code...
18:51:30 <LordAro> peter1138: lol
18:52:30 *** glx has joined #openttd
18:52:30 *** ChanServ sets mode: +v glx
18:53:37 <andythenorth> this has taken 46 years :P
18:53:57 <andythenorth> still 8 cargos to deliver / collect in this area
18:54:09 <andythenorth> and Sendchurch still hates me :D
18:54:56 <andythenorth> https://dev.openttdcoop.org/attachments/download/9380/Sesdingney%20Falls%20Transport,%2014-11-1996.png
18:58:11 <peter1138> Dependency hell.
18:58:23 * peter1138 fires up the OBS live-coding-stream ;p
18:58:39 <peter1138> And lolling at comments.
18:59:09 * andythenorth watches the 5 minute twitch adroll
19:00:01 <andythenorth> ^ also, maps only need to be 128 * 128 ^^^^
19:00:06 <Samu> static CompanyID GetStartNextCompany(uint count = 0);
19:00:10 <Samu> new function
19:00:19 <Samu> also known as repeating code
19:00:37 <peter1138> andythenorth, I tend to test with 64x64.
19:00:41 <peter1138> But 128x128 is good too.
19:01:40 <pnda> Will 32x32 exist?
19:01:41 <andythenorth> https://dev.openttdcoop.org/attachments/download/9381/Unnamed,%2001-01-1940.png
19:01:54 * andythenorth considers 64^2 game
19:02:18 <glx> probably not, 64x64 is sometimes too small to get all industries
19:02:28 <nielsm> lol that map
19:02:41 <andythenorth> FIRS Steeltown has high cargo count, but not high industry count
19:02:42 <nielsm> maybe you could get two stations in and then just have a circle trains run around in?
19:02:47 <Samu> https://paste.openttdcoop.org/prhtd41fx
19:02:50 <andythenorth> auto refit? :P
19:02:57 <Samu> you see the repetition
19:03:18 <andythenorth> 26 industries, 41 cargos
19:03:27 <peter1138> So anyway the comment for "GetRoadTotal()" was "all owned tram bits"
19:03:31 <peter1138> And vice versa o_O
19:04:45 <andythenorth> nielsm: I used recent features :D https://dev.openttdcoop.org/attachments/download/9382/new_features_are_new.png
19:04:56 <andythenorth> with careful choices, it works really well
19:05:15 <andythenorth> it's also really hard to fit 5 pickup stations around a bulk terminal :P
19:05:29 <nielsm> nice
19:05:47 <peter1138> Why do you need 5?
19:05:57 <glx> Samu: can't you just pass a CompanyID reference in AI::GetStartNextTime() ?
19:06:08 <nielsm> the multiple different port "industries" in FIRS always seemed silly
19:06:25 <nielsm> combining them is the logical thing to do
19:06:35 <peter1138> Variety.
19:06:50 <Samu> I can't (read I don't know how to do it)
19:07:44 <glx> int AI::GetStartNextTime(uint count, CompanyID *cid)
19:08:02 <glx> that's the pointer version
19:08:30 <andythenorth> every cargo needs a dedicated pickup station
19:08:33 <andythenorth> because cargo sprites
19:08:46 <peter1138> Oh that old chestnut.
19:08:51 <peter1138> "Needs" is perhaps rather a strong word.
19:08:51 <andythenorth> we could fix it :P
19:08:57 <glx> then you can do if (cid != NULL) *cid = c;
19:09:27 <andythenorth> it could be fixed in grf, but I don't understand the nfo in CHIPS
19:09:34 <peter1138> Ok so AIs can play with NRT.
19:09:37 <andythenorth> or we could assign blocks of tiles to cargos
19:09:38 <glx> but using reference should work too
19:09:45 <milek7> or use std::pair
19:09:46 <peter1138> Except they don't know about additional road types so it's not really playing with NRT :p
19:09:50 <andythenorth> ha ha
19:10:15 <peter1138> They just play with ROADTYPE_ROAD and ROADTYPE_TRAM.
19:10:16 <andythenorth> stations will usually only have a few cargos, so we could divide tiles between n cargos, in some kind of pattern
19:10:39 <_dp_> glx, milek7 he doesn't want to change existing calls so only pointers
19:11:05 <glx> well pointer works well for that :)
19:11:15 <glx> with default to NULL
19:11:51 <peter1138> IMHO if it's rewritten as intended, there won't be any other existing calls...
19:12:20 <peter1138> The only place that calls it is... OnTick_Companies()
19:14:11 <Samu> ahem...
19:14:16 <peter1138> andythenorth, they do build different roads than towns, though :D
19:14:26 <Samu> also on open_ttd.cpp
19:14:26 <michi_cc> TrueBrain: You need the compiler option /Zc:rvalueCast. No idea why, but the linked log doesn't have it, the project files do, and if I remove it they fail as well.
19:14:27 <_dp_> peter1138, there are at least 3 people with different solutions already so god knows what's intended here :p
19:14:30 <Samu> openttd.cpp
19:14:49 <peter1138> You added that call yourself, in that PR.
19:15:05 <Samu> yes
19:15:19 <peter1138> So it doesn't count as an existing call.
19:15:56 <Samu> :)
19:16:04 <andythenorth> eh I should do some NRT trucks https://www.youtube.com/watch?v=UV_ecZ8HiQQ
19:16:10 <andythenorth> that engine noise also
19:16:16 <peter1138> Nice.
19:16:22 <peter1138> Put truck running sounds in.
19:16:34 <Samu> it was so because OnTick_Companies was reverted
19:16:38 <peter1138> Should I replace the existing NRT with this new no-sub-types version?
19:16:59 * andythenorth thinks so
19:17:03 <andythenorth> does it break much?
19:17:10 <peter1138> Eh...
19:17:17 <peter1138> I should fix up all the comments. rtids doesn't exist :D
19:17:26 <peter1138> andythenorth, it makes it much simpler, if you mean that...
19:20:14 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on issue #6873: Jukebox not working in the flatpak version https://git.io/fjL7R
19:20:39 <Samu> aha, im making progress at last
19:21:22 <LordAro> so... anyone know what #7477 is about?
19:21:27 <LordAro> is the language just incomplete?
19:22:08 <Samu> this is what the for loop looks like atm https://paste.openttdcoop.org/pdsesmvi1
19:22:30 <glx> I think it's chinese, and maybe langfile is broken
19:22:43 <milek7> "RshqWWG 41<13" doesn't looks right, even for chinese
19:23:05 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on issue #7477: 1.9.0 Cannot display language properly. https://git.io/fjL72
19:23:39 <TrueBrain> michi_cc okay :) Tnx, I will have to add that in my CMake branch :D
19:24:19 <nielsm> yeah no text on that screenshot makes sense in any language
19:24:28 * andythenorth shoul draw the cryo plant
19:24:31 <andythenorth> should *
19:24:41 <nielsm> it's a mix of various different character sets
19:24:41 <V453000> :D
19:25:01 <michi_cc> "If /Zc:rvalueCast is specified, the compiler follows section 5.4 of the C++11 standard ..." Yes, we do want C++11 :)
19:25:07 <peter1138> I dunno, I can understand the "OpenTTD" part :D
19:26:19 <_dp_> great, now I know two bugs with no particular reason
19:26:24 <_dp_> that I already have workaround for
19:26:38 <_dp_> is "just weird" a valid reason to file a bug?
19:27:35 <LordAro> nielsm: judging by the other user's repos, i think they must be Chinese, but i cannot reproduce the issue on linux with either chinese language
19:27:41 <andythenorth> this cryo plant? o_O http://www.chinaairseparation.com/wp-content/uploads/2018/06/cryogenic-nitrogen-plant-6.jpg
19:27:41 <LordAro> could be a uniscribe thing, perhaps?
19:27:48 <V453000> while cleaning up my repositories and creating a git repo for RGBA EATER, I added a probability-based alpha to 8bpp results :) https://dev.openttdcoop.org/attachments/download/9383/tree-shadow-probability.png screenshot is 8bpp
19:28:04 <V453000> on bright terrain it's a bit much but on normal dark gray it's ok
19:28:07 <Eddi|zuHause> i heard that "chinese" input is left-hand/right-hand alternating characters
19:28:08 <andythenorth> V453000: wat?
19:28:15 <andythenorth> what is probability based alpha? o_O
19:28:16 <V453000> 8bpp trees with shadow
19:28:25 <V453000> well I have some gradient from 32bpp
19:28:26 <Eddi|zuHause> but that might only be one of many input methods
19:28:33 <V453000> black colour, alpha gradient
19:28:38 <V453000> (aka the shadow)
19:28:45 <andythenorth> super
19:28:54 <andythenorth> does it need to stay inside same tile?
19:28:58 <V453000> the RGBA EATER needs to decide whether to keep the pixel for 8bpp or not, so now it is probability based
19:29:02 <V453000> I don't think it does
19:29:18 <nielsm> LordAro yeah probably Simplified Chinese user
19:29:22 <glx> it's not chinese, tested both in master
19:29:33 <V453000> if it went to the tile behind it too much ( away from player ), it could look a little weird
19:29:42 <V453000> but the front things overdraw it anyway
19:29:45 <nielsm> it looks most like a decoding error from the lang files to me
19:29:53 <LordAro> could be some sort of issue with the actual release?
19:30:23 *** Wormnest has quit IRC
19:30:23 <nielsm> no idea... what kind of sanity checks are made on lang files loaded?
19:30:34 <V453000> haha I could actually give it a different colour for cacti and snow capped trees
19:30:41 <V453000> damn :) will do
19:31:28 <nielsm> https://0x0.st/zZAD.png
19:31:40 <nielsm> works just fine here if I set language to chinese (simplified), quit, and start again
19:31:43 *** D-HUND is now known as debdog
19:32:54 <Eddi|zuHause> nielsm: the ticket seems to be other chinese
19:33:29 <nielsm> Eddi|zuHause: I looked at the user's other repositories and those look like they're written in simplified
19:33:47 <nielsm> (I don't really know either language but can mostly tell them apart by the characters used)
19:34:00 <glx> traditional works here too
19:34:36 <Samu> I need bits... - bits 0..15: CompanyCtrlAction is too fat atm :(
19:34:43 <nielsm> but that screenshot contains characters from all over the CJK block in unicode, and some outside it, it makes no sense at all
19:34:46 <Samu> glx, mind if i reduce it?
19:34:54 <glx> Samu: you can shuffle bits
19:34:54 <Eddi|zuHause> nielsm: but there is little to no overlap between the two screenshots
19:35:19 <Samu> there's only 8 free, and i need 15
19:35:31 <nielsm> as I wrote in the comment, it's mojibake, it's not reading the correct text, or it's doing some kind of wrong text encoding conversion
19:35:50 <glx> reduce CCA, and move other
19:36:15 <Eddi|zuHause> nielsm: so it's maybe some system library interfering?
19:36:16 <glx> you can do whatever you want as long the comment and the code match
19:36:47 <nielsm> Eddi|zuHause: yeah either some other software/configuration on the machine is interfering, or the user's download is corrupted
19:38:04 <glx> I think we use some kind of autodetect font mechanism
19:38:13 <nielsm> nah it's not font
19:38:23 <glx> but yeah the font seems right
19:38:25 <nielsm> if it was choosing a bad font you'd just be seeing blocks
19:38:35 <nielsm> or other replacement characters
19:38:41 <glx> blocks or '?' ;)
19:38:43 <peter1138> CCA only needs 2 bits.
19:39:49 <glx> same for CCR
19:39:59 <peter1138> Yeah but that doesn't conflict.
19:40:12 <glx> it's all in p1 ;)
19:41:46 <Samu> my idea: bits 0..7 : CompanyID
19:42:00 <Samu> bits 8..9 : CompanyCtrlAction
19:42:18 <Samu> bits 10..whatever : CompanyRemoveReason or my bitmask
19:42:28 <milek7> location of latin chars is preserved (OpenTTD, NewGRF)
19:42:45 <milek7> and case too
19:43:01 <Samu> or
19:43:23 <Samu> bits 10..11 CompanyRemoveReason
19:43:40 <Samu> bits 12..26 bitmask
19:43:59 <glx> how many bits do you need ?
19:44:02 <Samu> 15
19:44:16 <milek7> nielsm: looks like all codepoints are +3
19:44:19 <Samu> maybe 19, depending on the situation
19:44:23 <Samu> but for now, 15
19:44:34 <glx> 0..3 CCA, 4..7 CCR, 8..15 CompanyID
19:44:44 <glx> you have 16 bits frre
19:44:47 <glx> *free
19:45:26 <nielsm> milek7 that's really weird
19:46:14 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
19:47:14 <Samu> reserving 4 bits, huh?
19:47:16 <Samu> ok then
19:47:51 <glx> well 0..1 and 2..3 would work too
19:48:18 <glx> but if you need only ~16 bits it's better to use a nibble
19:48:25 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain commented on issue #7477: 1.9.0 Cannot display language properly. https://git.io/fjL5T
19:48:36 <Samu> nibble? *googles
19:48:40 <glx> 4bits
19:48:41 <TrueBrain> I see some people don't get the template :D
19:49:26 <glx> :) (OS seems to be windows)
19:49:41 <TrueBrain> I would guess that too, but while asking questions, I thought, lets be sure :D
19:51:11 *** pnda has quit IRC
19:53:01 <glx> hmm I think I need to modify yaml for cmake, I set it to Release but probably should be RelWithDebInfo
19:53:46 <glx> that's what VS use for release in json
19:54:26 <Samu> * @param p1 various functionality
19:54:26 <Samu> * - bits 0..3: CompanyCtrlAction
19:54:26 <Samu> * - bits 4..7: CompanyRemoveReason (With CCA_DELETE)
19:54:26 <Samu> * - bits 8..15: CompanyID
19:54:26 <Samu> * - bits 16..31: Bitmask of AI companies to start (with CCA_NEW_AI)
19:54:28 <Samu> * @param p2 ClientID
19:56:11 <glx> oh you can also use 0..3 CCA 4..11 CompanyID 12..15 CCR 12..31 bitmask if you need more bits
19:56:33 <glx> CCR and bitmask can share bits as they are mutually exclusive
19:56:34 <peter1138> 16..31 is mroe than enough.
19:57:04 <peter1138> But it makes sense to be to reuse the same bits when CCA is different.
19:57:13 <peter1138> They are exclusive after all.
19:57:48 <andythenorth> dunno about the big square tower http://www.chinaairseparation.com/wp-content/uploads/2018/06/cryogenic-nitrogen-plant-6.jpg
19:57:53 <andythenorth> square might look weird
19:58:34 <DorpsGek_II> [OpenTTD/OpenTTD] ldpl opened issue #7479: Changing client name closes construction windows https://git.io/fjL5Z
19:58:58 <TrueBrain> glx: what is the difference? :)
19:59:17 <glx> one gives a pdb, the other doesn't
19:59:23 <TrueBrain> so yeah ;)
20:00:29 <DorpsGek_II> [OpenTTD/OpenTTD] ldpl commented on issue #7479: Changing client name closes construction windows https://git.io/fjL5c
20:00:35 <TrueBrain> CPack doesn't like how we solved version detection
20:01:11 <glx> can't CPack run our version detection cmake ?
20:01:20 <TrueBrain> it wants the version to be known when cmake is running
20:02:20 <TrueBrain> think I know a nice 'workaround'
20:02:31 <glx> well we could just fix it in the cmake files
20:02:44 <glx> like we did with nsis
20:03:03 <glx> just need to update the files after each release
20:03:08 *** andythenorth has left #openttd
20:03:13 *** andythenorth has joined #openttd
20:03:13 <TrueBrain> not sure what you mean with NSIS?
20:03:21 <TrueBrain> owh, current NSIS?
20:03:21 <glx> the old NSIS
20:03:23 <TrueBrain> ah, yes
20:03:27 <TrueBrain> I really would like to avoid that :D
20:03:32 <TrueBrain> as it is so easy to forget stuff :P
20:05:29 <TrueBrain> okay, how to do versions .... dev, pre-release, release ..
20:05:29 <TrueBrain> hmm
20:05:36 <TrueBrain> dev always 0.0.0 for CPack sounds fine
20:05:41 <TrueBrain> as ... nobody should ever be doing that? :P
20:05:45 <TrueBrain> what about nightlies
20:05:47 <TrueBrain> okay, fair point
20:05:47 <TrueBrain> hm
20:07:00 <TrueBrain> almost unavoidable to do something manual
20:08:22 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #6811: Feature: Add NotRoadTypes (NRT) https://git.io/vhlfg
20:08:24 <peter1138> Welp, that's road subtypes gone :p
20:08:37 <andythenorth> awesome
20:08:44 <peter1138> I didn't remove cargo subtypes though.
20:08:49 <peter1138> Seem unrelated.
20:08:53 <andythenorth> well
20:09:02 <andythenorth> _probably_ best
20:09:11 <andythenorth> one day we could :P
20:09:31 <andythenorth> I've just added Alloy Steel, Carbon Steel, and Stainless Steel to wiki :D
20:09:56 <andythenorth> I am supposed to do Steel (Alloy), Steel (Carbon) and Steel (Stainless) of course :P
20:10:10 <andythenorth> by abusing the 'livery' subtype property
20:10:19 <andythenorth> when everyone knows it's really for liveries
20:14:43 * andythenorth has an idea :D
20:15:07 <peter1138> What, test NRT?
20:15:26 <peter1138> Yay, build fails
20:15:41 <peter1138> I bet I forgot to update project files :D
20:15:49 <peter1138> Yup, I did.
20:15:50 <TrueBrain> soon you won't have that issue anymore :D
20:16:12 <andythenorth> maybe I should make an NRT vehicle grf
20:16:23 <andythenorth> NotRoadHog
20:16:38 <andythenorth> NotRoadTurtle
20:16:52 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #6811: Feature: Add NotRoadTypes (NRT) https://git.io/vhlfg
20:17:34 <andythenorth> ok curry
20:17:42 <andythenorth> then I fetch that PR :P
20:17:47 <andythenorth> hope it doesn't break my savegame :P
20:17:55 <peter1138> If you've played with NRT, yes.
20:18:16 <peter1138> But seeing as there's been savegame bumps in master anyway...
20:18:25 <peter1138> Hmm, maybe I should cook dinner.
20:19:12 <peter1138> It's now 5+ hours after lunch.
20:19:14 <andythenorth> my savegame is 7446 :P
20:19:21 <peter1138> Heh
20:19:28 <andythenorth> and yes, the correct food interval is 4 hours
20:19:41 <peter1138> Well that should be fine.
20:19:54 <peter1138> Ideally 7446 would be merged.
20:19:59 <peter1138> But you keep finding issues ;D
20:19:59 *** pnda has joined #openttd
20:20:46 <andythenorth> someone merge it
20:21:00 <andythenorth> https://github.com/OpenTTD/OpenTTD/pull/7446
20:21:08 <peter1138> Hmm, I think the final fix needs to be fixup'd
20:21:35 <pnda> AHHHHH my PC crashed again and everything I did is gone .-.
20:21:48 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on pull request #7446: Feature: Show coverage area for existing stations and towns https://git.io/fjL51
20:22:23 <peter1138> Gonna rebase to upstream/master while I'm at at.
20:23:36 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #7446: Feature: Show coverage area for existing stations and towns https://git.io/fjksj
20:24:15 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7446: Feature: Show coverage area for existing stations and towns https://git.io/fjL5D
20:25:42 <TrueBrain> openttd-20190406-cmake-m9e44414a60-windows-amd64.zip
20:25:44 <TrueBrain> that looks right
20:26:12 <TrueBrain> no no, amd64 is wrong
20:28:03 *** pnda has quit IRC
20:28:51 <Samu> DoCommandP(0, CCA_NEW_AI | ai_debug_company << 4 | (1 << ai_debug_company) << 12, 0, CMD_COMPANY_CTRL);
20:28:55 <Samu> this looks ugly
20:30:28 <TrueBrain> hmm, version is very tricky, it turns out ..
20:30:35 <TrueBrain> latest 'tag' in master is 1.9.0-beta3
20:30:40 <TrueBrain> because .. the other tags are in a branch :D
20:31:07 <TrueBrain> so I guess we need a file somewhere that mention what the current version is or something
20:31:52 *** pnda has joined #openttd
20:33:23 <TrueBrain> all the different installers .. all different rules :D
20:34:06 <planetmaker> what for do we need such file, TrueBrain ?
20:34:11 <planetmaker> and... finger :P
20:34:37 <TrueBrain> I see you picked up on some random context and ran with it ;)
20:35:32 * planetmaker is hungry... no good time read lots
20:35:36 <TrueBrain> :D
20:35:49 <TrueBrain> easy fix: fix hungryness :)
20:35:54 <TrueBrain> hungriness?
20:35:55 <TrueBrain> what-ever :P
20:36:10 <planetmaker> hunger? :P
20:36:23 <TrueBrain> doesn't have the same ring to it tbh
20:37:10 <planetmaker> yep... but I guess I need to fix that conditions soonish... whatever its name
20:37:14 <pnda> TrueBrain: It's hungriness
20:37:35 <TrueBrain> yes; that was the reason I corrected myself. Thank you for confirming what I already did.
20:38:17 <TrueBrain> so Debian names things different from NSIS, different from rpm
20:38:19 <TrueBrain> yippie \o/
20:38:59 <pnda> What does this do? return t->larger_town ? STR_TOWN_DIRECTORY_CITY : STR_TOWN_DIRECTORY_TOWN; That just returns the name of a City/Town right?
20:39:47 <nielsm> it selects between two strings depending on the "is a city" (grows double speed) flag
20:40:01 <nielsm> basically whether to show (City) after the name in the list
20:40:17 <nielsm> go look in src/lang/english.txt and find those two strings
20:40:22 <pnda> Ah ok, so nearly what I thought. thanks
20:40:25 <Samu> im starting to regret this bitmask approach
20:42:16 <Samu> DoCommandP(0, CCA_NEW_AI | INVALID_COMPANY << 16 | (1 << AI::GetStartNextCompany()) << 12, 0, CMD_COMPANY_CTRL);
20:42:21 <Samu> lel
20:42:46 <Samu> it's not even << 16
20:43:05 <Samu> it's 4
20:45:34 <Samu> btw, glx, line 1203 of console_cmds.cpp, you forgot a space between 0,CMD_COMPANY_CTRL
20:46:39 * andythenorth outrageously full of curry
20:47:35 <andythenorth> what was I testing?
20:47:42 <nielsm> I'm just preparing a cup yakisoba here, ate a large hamburger meal for lunch
20:47:51 <andythenorth> I might test lying on the sofa
20:47:52 <andythenorth> being full
20:48:58 <TrueBrain> openttd-20190406-cmake-m9e44414a60-windows-win32.exe <- grr, its not win32 .. pure hate
20:50:52 <TrueBrain> openttd-20190406-cmake-m9e44414a60-windows-win64.zip there we go :)
20:51:46 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
20:51:49 <pnda> Yis I managed to fix issue/6666
20:55:25 <peter1138> I appear to have made enough dinner for tomorrow as well.
20:56:44 <pnda> Is this correct now? https://media.discordapp.net/attachments/442748131898032138/564161497769443328/unknown.png
20:57:18 <andythenorth> I have eaten enough dinner for tomorrow
20:57:18 <pnda> Referencing to https://github.com/OpenTTD/OpenTTD/issues/6666
20:57:23 <andythenorth> I think I win
20:57:37 <nielsm> yeah that looks correct
20:58:05 * andythenorth can't move
20:58:06 <nielsm> did it involve any code changes? because I think I have a fix for it that does not need any code changes
21:00:20 <TrueBrain> glx: I will pick up the RelWithDebInfo thingy btw; cleaning up those files anyway :)
21:02:41 <glx> ok
21:03:49 *** Pikka has quit IRC
21:03:54 <DorpsGek_II> [OpenTTD/OpenTTD] spnda opened pull request #7480: Fixed arabic town directory strings (Issue #6666) https://git.io/fjLdR
21:04:37 <nielsm> pnda: https://wiki.openttd.org/Coding_style#Commit_message
21:04:38 <nielsm> :)
21:05:27 <pnda> Right yes.... Only did that to the name of the PR
21:05:38 <pnda> Wait so what now
21:05:55 <nielsm> you'll need to "git commit --amend", change the commit message, and git push --force
21:07:10 <_dp_> shouldn't translations be changed in webtranslator though?
21:07:21 <nielsm> yeah, they really should
21:07:28 <DorpsGek_II> [OpenTTD/OpenTTD] spnda updated pull request #7480: Fix #6666: arabic town directory strings https://git.io/fjLdR
21:07:41 <LordAro> given this isn't a translation issue as such, i'd be ok with it
21:11:57 <peter1138> Alright, do I have any dessert?
21:12:54 <pnda> Something sweet is always nice
21:13:11 <pnda> Why are these checks taking so loooong
21:13:22 <peter1138> Cos Azure.
21:14:42 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
21:15:09 <TrueBrain> peter1138: that is not really fair
21:15:15 <TrueBrain> correct answer is: because Microsoft
21:15:19 <TrueBrain> MSVC takes twice as long :P
21:15:55 <Samu> glx, lines 1125 and 1131 of network_server.cpp, the cp.p1 tests seem ... maybe incorrect, not sure, do you know what is this part of the code supposed to be doing?
21:16:01 <pnda> Btw, what do those checks even do? Check if the code compiles without any errors?
21:18:03 <pnda> And checks have all passed
21:20:04 <TrueBrain> okay, it seems I have a way to work with versions and installers without hardcoding it anywhere .. that would make releasing new versions a lot easier
21:20:15 <TrueBrain> WITH_ASSERT is also set correctly (only on stable releases)
21:20:24 <TrueBrain> means we only have to update changelog.txt on release, it seems :)
21:22:29 <LordAro> :o
21:22:30 <nielsm> pnda: yes the checks tries to compile with various compilers on various platforms, and then runs the regression test suite
21:22:44 <pnda> Ah ok
21:22:47 <TrueBrain> andythenorth: https://devs.openttd.org/~truebrain/openttd-20190406--g569cb9af50-macosx.dmg
21:22:55 <TrueBrain> hopefully this now "just works"
21:22:57 <peter1138> Mmm, prunes in natural yoghurt.
21:22:58 * andythenorth is some kind of testing bot
21:23:04 <peter1138> I know how to treat myself :)
21:23:08 <TrueBrain> you are andythenorth :)
21:23:20 <pnda> It took 2 checks 9m to check everything... my pc compiles OpenTTD in 14 seconds.... like that's slooowww
21:23:48 <TrueBrain> yeah ... no
21:23:52 <LordAro> pnda: i'd be very surprised if your PC could do a complete rebuild in 14 seconds
21:24:00 <andythenorth> he has 128 thread units
21:24:06 <LordAro> even then
21:24:07 <andythenorth> it lives in large freezer
21:24:08 <TrueBrain> his IO would starve
21:24:17 <andythenorth> he has it all in RAM
21:24:30 <TrueBrain> 20GHz cores
21:24:34 <TrueBrain> yeah, that is possible
21:24:43 <LordAro> guess what, i can rebuild OTTD in 1.7s
21:24:47 <LordAro> if i touch a single file
21:24:58 <TrueBrain> I have a patch that can make OpenTTD compile in 1s indeed
21:25:01 <TrueBrain> it is HUGE
21:25:04 <LordAro> :D
21:25:04 <andythenorth> TrueBrain: "just works" ®
21:25:12 <TrueBrain> andythenorth: anything odd about it?
21:25:13 <pnda> LordAro: full 44 seconds for a complete rebuild
21:25:20 <andythenorth> TrueBrain: only its author
21:25:46 <TrueBrain> and this should work without the brew stuff installed
21:25:48 <LordAro> pnda: what CPU you got?
21:25:51 <TrueBrain> but that is I guess a bit harder to test
21:25:53 <andythenorth> yeah I can't test that
21:25:57 <pnda> LordAro 9600K, stock
21:26:00 <TrueBrain> what is the author ...
21:26:09 <LordAro> (& OS)
21:26:10 <andythenorth> my wife's mac is not here so I can't test on that either
21:26:17 <pnda> Win 10 1809
21:26:18 <andythenorth> TrueBrain: the author is you!
21:26:43 <TrueBrain> hmm, found one bug in the Info.plist
21:26:47 <LordAro> pnda: i guess that just about makes sense
21:26:48 <TrueBrain> and how am I the author .. lol
21:26:57 <TrueBrain> andythenorth: screenshot?
21:27:02 <LordAro> my 6600k takes 55s for a complete rebuild (Linux)
21:27:27 <LordAro> pnda: did you also clean all projects when timing your rebuild?
21:27:54 <LordAro> but anyway, yes, Azure has fewer processing cores, and they're clocked lower, and the IO is more limited
21:28:01 <LordAro> the speed of the CI is not a major concern
21:28:14 <LordAro> as you're supposed to have done the bulk of the work yourself locally
21:28:16 <TrueBrain> it is the fastest CI we ever had :D
21:28:31 <michi_cc> And still the cheapeast.
21:29:11 <TrueBrain> meh; Apple needs the version before it is available .. what-to-do about that ..
21:29:20 <pnda> LordAro: With cleaning the solutions it's 52 seconds
21:29:39 <LordAro> pnda: :)
21:30:15 <pnda> let me just take this CPU to it's max..... 5.2ghz..
21:30:39 <pnda> probably won't change much
21:30:43 <LordAro> hmm, master is 1m17s, which includes all the std::vector & std::thread stuff
21:30:49 <LordAro> (previous was 1.9)
21:31:01 <Samu> who can take a look at this with me? if (!(cp.cmd == CMD_COMPANY_CTRL && cp.p1 == 0
21:31:14 <Samu> I think it's not right to do cp.p1 == 0
21:31:33 <nielsm> hmm I should derail a valley or two, try out the new shunter remote
21:31:50 <DorpsGek_II> [OpenTTD/OpenTTD] LordAro approved pull request #7480: Fix #6666: arabic town directory strings https://git.io/fjLdx
21:32:06 <Samu> should be getting the bits and then == CCA_NEW
21:32:11 <Samu> don't you think?
21:33:17 <Samu> checking the entire p1 if it's == 0 doesn't look correct, but I dunno
21:33:56 <peter1138> Would you like to specify the source file and line, rather than just the snippet of code?
21:34:04 <Samu> I did
21:34:11 <Samu> glx, lines 1125 and 1131 of network_server.cpp, the cp.p1 tests seem ... maybe incorrect, not sure, do you know what is this part of the code supposed to be doing?
21:34:59 <pnda> Just wanted to note that the german translations seem to be old. 35 strings missing and it's telling me to read the "readme.txt" which has been changed to "README.md"
21:36:20 <_dp_> Samu, 1125 stops clients from impersonating other players
21:36:46 <pnda> Also why is there this second window opening? https://cdn.discordapp.com/attachments/442748131898032138/564171544805244928/unknown.png
21:36:58 <_dp_> though there are plenty of comments around...
21:37:07 <LordAro> pnda: debug mode means you get a console app, iirc
21:37:25 <pnda> I thought I was in Release.... ok then
21:40:54 <V453000> is there a way to put inline an attachment from a different post? https://www.tt-forums.net/viewtopic.php?f=26&t=73374&p=1220222#p1220222
21:40:56 <glx> and clients can only use CMD_COMPANY_CTRL with CCA_NEW IIRC
21:42:00 <pnda> Can someone give me access to the Web Translator?
21:42:35 <LordAro> pnda: if you follow the proper process for requesting to be a translator, probably
21:43:45 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
21:43:58 <glx> hmm I can generate project files with cmake since I uninstalles VS2017
21:44:03 <glx> *uninstalled
21:44:07 <glx> *can't
21:44:54 <TrueBrain> I had the same issue when I installed VS2017 (don't ask)
21:45:00 <TrueBrain> it lost track of where MSBuild was or something weird
21:45:11 <TrueBrain> also, with latest cmake, you can use -G'Visual Studio 16 2019'
21:45:18 <TrueBrain> (not the one that comes with vcpkg, I believe)
21:45:33 <TrueBrain> I had to add "-DCMAKE_GENERATOR_INSTANCE="c:\Program Files (x86)\Microsoft Visual Studio\2017\Community""
21:45:45 <TrueBrain> possibly that is of any help
21:45:57 <Samu> I was thinking this: (CompanyCtrlAction)GB(cp.p1, 0, 4) == CCA_NEW
21:46:06 <Samu> instead of cp.p1 == 0
21:46:20 <glx> ==0 is ok there
21:46:35 <Samu> 0, 4 in my case, in master it's 0, 16
21:47:04 <glx> clients can only use CCA_NEW and no other bits are required then
21:49:11 <pnda> Ok I got the confirmation on my PR (https://github.com/OpenTTD/OpenTTD/pull/7480) btw. The "مدينة" I added in the arabic_egypt.txt file, is correct and means "City".
21:52:02 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
21:52:44 <TrueBrain> okay .. that should support bundles now :)
21:52:53 <TrueBrain> means all that is left is validating validating validating
21:52:58 <TrueBrain> most likely I missed stuff :P
21:53:10 <TrueBrain> like updating READMEs etc
21:53:21 <TrueBrain> and .. the PR needs some cleanup to become reviewable :)
21:53:34 <glx> so API stuff will wait for after the merge
21:53:35 <TrueBrain> 295 changed files, lol
21:53:44 <TrueBrain> possibly just make it a commit in the PR
21:53:47 <TrueBrain> but that is up to you
21:54:09 <glx> cmake PR is already huge
21:54:14 <TrueBrain> yup
21:54:23 <TrueBrain> I will see what I can do to make it more readable in terms of review
21:54:52 <TrueBrain> which possibly is: break everything for a few commits to build it back up :)
21:55:41 <peter1138> That might be bigger than NRT ;)
21:55:52 <TrueBrain> and the impact is higher too, most likely :P
21:56:00 <glx> hmm my cmake is 3.13.4, let's upgrade to 3.14.1
21:56:21 <nielsm> btw is a 1.9.1 happening?
21:57:14 <TrueBrain> if you do a 1.9.1, please fix the changelogs of GS and AI :) They have 1 line too much :P
21:57:42 <Eddi|zuHause> is 1.9.0 so broken or can we let the dust settle a bit on the issues coming in? :)
21:57:50 <TrueBrain> +3,318 −30,524 <- cmake branch
21:57:51 <TrueBrain> lol
21:58:14 <Eddi|zuHause> how many man-years is 30k lines?
21:58:17 <glx> well all project files removed
21:58:18 <pnda> We can let some issues come in in the next few months, fix those, release 1.9.1
21:59:02 <peter1138> 1.9.0 breaks NewGRFs a bit :/
21:59:31 <TrueBrain> releasing is cheap :)
21:59:31 <Eddi|zuHause> that's fine, only 1% of the users use NewGRFs :p
21:59:53 <pnda> What is the screen that comes up showing the top companies at the end of the game?
22:00:02 <peter1138> High scores.
22:00:13 <peter1138> Hmm, sort of?
22:00:36 <pnda> That screen doesn't show anything for me and one other user, don't know if anyone else also has this error
22:00:50 <Eddi|zuHause> i don't think i've seen that screen since i switched over from TTO to TTD
22:01:06 <Eddi|zuHause> which is like 15 years ago?
22:01:22 <Eddi|zuHause> maybe a bit earlier
22:01:38 <Eddi|zuHause> TTDPatch 1.6 or 1.7?
22:02:01 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain updated pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fhbqc
22:02:17 <pnda> What's the top toolbar gui .h/.cpp file?
22:02:46 <Eddi|zuHause> which seems to be around 2001/2002
22:02:47 <TrueBrain> glx: as usual, I did not test how Mingw / cygwin / <other weird targets> react on the latest cmake :)
22:03:43 <pnda> Why are there sprites shown next to Rail and Road when selecting in the toolbar? I don't remember that being like that
22:03:51 <andythenorth> and then a faster NML!
22:04:25 <michi_cc> pnda: Progress :)
22:04:56 <V453000> uhmmm
22:05:00 <pnda> Well then why are there no next to Water and AirPorts?
22:05:01 <V453000> how do I generate a map with a specific seed?
22:05:25 <peter1138> Cos they don't have different types.
22:05:28 <TrueBrain> -G ?
22:05:30 <TrueBrain> can't remember :P
22:05:37 <peter1138> newgame <seed>
22:05:49 <peter1138> Or, indeed, -G <seed>, yes.
22:05:56 <V453000> thanks :)
22:06:01 <TrueBrain> \o/
22:06:04 <TrueBrain> I am not useless!
22:06:13 <V453000> I used newgame<seed> :P
22:06:15 <V453000> sorry!
22:06:19 <TrueBrain> time to watch some telly :)
22:06:24 <TrueBrain> I forgive you V453000 :)
22:06:34 <peter1138> I have Netflix on. On another screen.
22:07:09 <glx> I have tv in a corner of my screen
22:07:12 <peter1138> Got Age of Ultron on. The CGI is a bit crap.
22:09:56 <peter1138> Hmm, AIs like to build side-by-side roads. Maybe that's a bug in NRT.
22:10:09 <pnda> peter1138 by default there is also only one road types.
22:10:21 <peter1138> There's tram too.
22:10:32 <pnda> It's not shown by default though
22:10:51 <pnda> You'd have to have a NewGRF with a tram loaded for it to show up
22:11:09 <peter1138> So we could have an icon for the water construction menu.
22:11:18 <peter1138> But there's no single-tile type thing for airports.
22:11:35 <pnda> That is true
22:12:53 <pnda> Uhm.... You guys can see how fast this is running right? https://cdn.discordapp.com/attachments/442748131898032138/564180664514117643/unknown.png
22:13:02 <Eddi|zuHause> we could be splitting airport construction into small/large/seaplane types?
22:13:13 <pnda> Yeah that could be an idea
22:14:23 <peter1138> Eddi|zuHause, could be
22:14:41 <peter1138> Hmm, okay, even without NRT AIs build duplicate roads everywhere. Not my problem :D
22:14:44 <peter1138> Except I need a piss.
22:14:46 <andythenorth> they do
22:17:51 *** dag[m] has joined #openttd
22:19:45 <Eddi|zuHause> the old AI was a pain, removing buildings even though there was a road right on the next tile
22:20:17 <Eddi|zuHause> unremovable road bits is one of the reasons i never play with AIs
22:20:45 <peter1138> pnda, heheh, turn on "full animation" and it should slow down a bit.
22:21:15 <pnda> I actually quite enjoyed that speed tbh
22:23:57 <Eddi|zuHause> i'm not sure what i'm doing wrong (might be my computer closing in on 9 years), but i can't get it that fast :p
22:26:30 <pnda> It's blazing fast
22:26:42 <pnda> It crashed :D
22:27:53 <Eddi|zuHause> congratulations.
22:28:01 <pnda> Assertion failed at line 2965 of d:\projects\c++\openttd\src\window.cpp: HasModalProgress() || IsLocalCompany()
22:30:03 <Eddi|zuHause> a backtrace might be useful
22:30:54 <pnda> strack trace?
22:33:30 <LordAro> pnda: yes
22:33:58 <LordAro> (and also an actual issue on GH, assuming you're running an unmodified version)
22:34:24 <pnda> I am running master
22:36:13 <pnda> I've got a pastebin with the full crash.log file: https://pastebin.com/C9Zrgb64
22:36:31 <pnda> Ok happened again... Seems to be reproducable
22:37:40 <andythenorth> why is FIRS Lime Kiln so small?
22:37:46 <andythenorth> only 2x3
22:37:50 <andythenorth> who makes this stuff?
22:42:25 <LordAro> pnda: put it on github please
22:42:45 <pnda> LordAro as an issue?
22:42:51 <glx> yes
22:43:41 <glx> steps to reproduce will help a lot too
22:47:16 <pnda> I'm seeing what the steps are that also reproduce it
22:48:14 <pnda> oml the game is running at 6400x speed........ it's just flashing
22:49:38 <pnda> Is bankruptcy not a thing anymore? https://cdn.discordapp.com/attachments/442748131898032138/564189872747708437/unknown.png
22:50:53 <LordAro> not in singleplayer
22:55:07 *** nielsm has quit IRC
22:55:10 <peter1138> Hmm.
22:55:41 <pnda> This time it was a different error which occured hmm
22:55:58 <pnda> Not window.cpp, but rather kdtree.hpp
22:57:56 <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on pull request #7270: Introduce CMake (and removing all other project-related code) https://git.io/fjLFb
22:58:30 <glx> window.cpp assert is triggered when GUI is freezed I think
22:59:07 <glx> but we still don't know why
22:59:13 <pnda> in kdtree.hpp it asserts when changing an element of a subtree
22:59:19 <pnda> Maybe these are just operating to fast
22:59:32 <glx> kdtree has bugs :)
23:00:03 <pnda> My game speed was 2875,63x but was reaching over 6000x before. So I'd say that's not really the issue
23:00:20 <LordAro> pnda: "too fast" isn't really a thing that's a problem
23:00:29 <LordAro> pretty much everything is single threaded
23:00:59 <glx> maybe main thread assert on kdtree then gui thread triggers mouse assert in window.cpp
23:04:18 <glx> in the crash log you posted earlier I see the window.cpp assert being triggered at least 6 times before it's really handled
23:04:27 <glx> that's weird
23:05:22 <Samu> oh, ppl getting kdtree crashes!
23:06:07 <Samu> kdtree crashes first, then window.cpp spams u
23:06:37 <pnda> good? https://cdn.discordapp.com/attachments/442748131898032138/564194236879208503/unknown.png
23:06:54 <Samu> the reason why window.cpp spams is because _local_company isn't currently the same as _current_company
23:07:10 <LordAro> pnda: an autosave from just before the crash would be nice
23:07:11 <Samu> it's executing the gameloop as owner_none
23:07:23 <Samu> and you're currently a spectator
23:07:50 <Samu> something like that
23:08:15 <glx> I think window.cpp assert is unrelated, it's just a side effect of the initial kdtree crash
23:08:32 <pnda> So can I just remove that?
23:08:49 <glx> no keep everything in the report
23:08:49 <pnda> LordAro: doesn't seem like there was a autosave created
23:09:22 <Samu> were u spammed? pnda?
23:09:32 <LordAro> pnda: don't worry then, issue can always be updated
23:10:23 <pnda> Samu: no, in the first log there was 4 errors by window.cpp and in the second window.cpp isn't even in there.
23:10:39 <glx> different threads I think
23:10:56 <glx> so different call stack
23:10:58 <Samu> 4? lucky you
23:11:12 <Samu> I was spammed enough to get a bsod :|
23:11:26 <pnda> oh wow
23:11:52 <dwfreed> *doubt*
23:12:00 <LordAro> Samu: you just aren't getting the message that that was impossible, are you?
23:12:17 <Samu> well, I am not
23:12:46 <Samu> it filled the whole screen with that error
23:13:12 <Samu> so windows was maybe like "ENOUGH! and bsods me"
23:13:53 <Samu> it was so quick
23:13:55 <dwfreed> i doubt it was directly related
23:14:24 <Samu> all i remember was that i saw the kdtree crash, then i grab my mouse and the rest was spam
23:14:43 <Samu> and bsod was like in 1 second of moving mouse or so
23:14:59 <DorpsGek_II> [OpenTTD/OpenTTD] spnda opened issue #7481: Changing elements of subtree while fast forwarding crashes the game https://git.io/fjLbJ
23:15:04 <glx> yes moving the mouse above the openttd window triggered the window.cpp assert
23:15:40 <glx> but it's weird it can be triggered multiple times, as an assert should abort, and then display crashlog
23:19:21 <glx> maybe asserting in HandleMouseEvents() is not a good idea
23:21:35 <pnda> I am currently just testing this.... this seems to only happen when a bus route is built inside of one city
23:22:04 <pnda> Just put up a game with a train from one city to another, and it until now, year 2270 does not crash
23:23:55 <peter1138> I doubt it's the speed that causes it, just makes it happen sooner.
23:25:28 <pnda> Ok I was wrong. Same error at kdtree.hpp in year 2369 with trains.... Just took much longer
23:25:47 <LordAro> possibly not related to vehicle type
23:26:00 <pnda> OH GOD it just opened like 20 error windows with "window.cpp"
23:26:11 <pnda> Thank god for alt+f4 existing
23:26:15 <peter1138> :D
23:26:20 <LordAro> i feel like that's a separate issue
23:26:29 <peter1138> This is was Samu was moaning about, but he was unable to express it clearlky.
23:26:32 <peter1138> -k
23:26:45 <glx> hmm would mead the kdtree crash happen in a thread
23:26:47 <peter1138> Yes, the error windows are due to the earlier kdtree error.
23:26:59 <glx> maybe linkgraph then
23:27:02 <peter1138> Ooh, not thread safe.
23:27:36 <glx> that's the only possibility I can see
23:29:34 <pnda> I updated my issue https://github.com/OpenTTD/OpenTTD/issues/7481
23:29:46 <LordAro> aha, got the crash
23:31:12 <LordAro> now to recompile with debugging!
23:31:31 <dwfreed> which will make it go away
23:31:39 <LordAro> of course
23:31:48 <LordAro> and make it much slower to reproduce as well
23:32:32 <glx> LordAro: you just follow the steps ?
23:32:41 <pnda> Also seems like Buses decrease the time it takes until it crashes. Using trains took 200 years longer for me
23:33:25 <glx> I have a debug build, let's try to reproduce here too
23:34:34 <LordAro> glx: i built a bus route
23:34:41 <LordAro> and waited 300 years
23:34:46 <glx> ok
23:36:53 <LordAro> interestingly, i think it's spawning a new thread every month for autosaving, even when autosave is disabled/less frequent
23:37:00 <pnda> It takes only 100-150 years for me
23:37:02 <LordAro> there are a lot of threads starting and exiting, anyway
23:37:20 <DorpsGek_II> [OpenTTD/OpenTTD] stale[bot] commented on pull request #7272: Change: [NPF] Add path cache for ships. https://git.io/fjLbB
23:39:38 <pnda> I am trying this on 1.9.0. Doesn't seem to occur
23:39:54 <LordAro> kdtree is not a thing in 1.9.0
23:39:58 <LordAro> so no, it wouldn't
23:40:16 <pnda> Oh, didn't know that
23:43:05 <peter1138> Hmm, new docking
23:44:14 <pnda> LordAro: Is the label "backport requested" anything I have to do? I read that it's a request for implementing this PR into the current stable.
23:44:30 <LordAro> pnda: nothing you need to worry about
23:44:46 <LordAro> just that it's been requested to be backported into the stable branch (i.e. 1.9.x)
23:45:14 <peter1138> Hmm, so. Should it be another option?
23:45:55 <LordAro> peter1138: ?
23:46:09 <pnda> The new docking he mentioned above
23:46:28 <LordAro> ...
23:52:18 <peter1138> http://fuzzle.org/~petern/ottd/docks16.png
23:52:19 <peter1138> vs
23:52:23 <peter1138> http://fuzzle.org/~petern/ottd/docks17.png
23:53:17 <peter1138> Could keep it like the first one and leave the extra stuff for newgrf docks.
23:53:35 <glx> 17 but some spots should not be allowed
23:54:25 <glx> like half land and lock
23:56:00 <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on issue #7481: Fast forwarding very fast can cause window.cpp/kdtree.hpp crash https://git.io/fjLba
23:56:37 <glx> oh oil platform then
23:56:48 <LordAro> i was just thinking that
23:56:50 <Eddi|zuHause> peter1138: the docking tiles on the half-shores next to the upper dock section seems wrong
23:56:54 <LordAro> industry + station
23:56:58 <glx> only industry with a station
23:57:03 <peter1138> Well, half-land is allowed currently.
23:57:27 <Eddi|zuHause> peter1138: i just wouldn't consider the upper dock tile
23:57:36 <Eddi|zuHause> just the tiles adjacent to the lower one
23:58:09 <LordAro> glx: things being removed in the wrong order, perhaps?
23:58:34 <Eddi|zuHause> or alternatively, have a valid trackbit that is adjacent to the dock tile (would also exclude the lock tile)
23:59:35 <glx> need to restart my test game, 64x64 is too small to get an oil platform ;)
23:59:46 <andythenorth> hovercraft need to dock on the land :P
23:59:50 <andythenorth> "just saying"
23:59:52 <peter1138> http://fuzzle.org/~petern/ottd/docks18.png
23:59:53 <LordAro> glx: creating & destroying an oil rig in scenario editor doesn't trigger anything
23:59:57 <peter1138> Well...