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

Powered by YARRSTE version: svn-trunk