IRC logs for #openttd on OFTC at 2018-10-31
            
00:00:56 *** Wolf01 has quit IRC
00:25:14 *** Progman has quit IRC
00:40:21 *** Laedek has quit IRC
00:44:57 *** NGC3982 has quit IRC
00:46:57 *** frosch123 has quit IRC
01:14:09 *** debdog has quit IRC
01:14:09 *** blathijs has quit IRC
01:14:09 *** Markk has quit IRC
01:14:09 *** crem has quit IRC
01:14:09 *** Heiki has quit IRC
01:14:09 *** FLHerne has quit IRC
01:14:09 *** mikegrb has quit IRC
01:14:09 *** peter1138 has quit IRC
01:14:09 *** juzza1 has quit IRC
01:14:09 *** orudge has quit IRC
01:14:09 *** Westie has quit IRC
01:14:09 *** SpComb has quit IRC
01:14:09 *** ZirconiumX has quit IRC
01:14:09 *** Osai has quit IRC
01:14:09 *** berndj has quit IRC
01:14:09 *** Hirundo has quit IRC
01:14:09 *** Yotson has quit IRC
01:14:09 *** tneo has quit IRC
01:14:09 *** TrueBrain has quit IRC
01:14:09 *** SmatZ has quit IRC
01:14:09 *** michi_cc has quit IRC
01:14:09 *** funnel has quit IRC
01:14:09 *** Hobbyboy has quit IRC
01:14:09 *** glx has quit IRC
01:14:09 *** dvim has quit IRC
01:14:09 *** Stimrol has quit IRC
01:14:09 *** Alkel_U3 has quit IRC
01:14:09 *** Thedarkb1-X40 has quit IRC
01:14:09 *** MasseR has quit IRC
01:14:09 *** argoneus has quit IRC
01:14:09 *** Exec has quit IRC
01:14:09 *** tyteen4a03 has quit IRC
01:14:09 *** Mazur has quit IRC
01:14:09 *** Jyggalag has quit IRC
01:14:09 *** DorpsGek_II has quit IRC
01:14:09 *** Ammler has quit IRC
01:14:09 *** KenjiE20 has quit IRC
01:14:09 *** V453000 has quit IRC
01:14:09 *** yellyFish has quit IRC
01:14:09 *** TheMaster has quit IRC
01:14:09 *** Gustavo6046 has quit IRC
01:14:09 *** rocky11384497 has quit IRC
01:14:09 *** quiznilo has quit IRC
01:14:09 *** Guest1524 has quit IRC
01:14:09 *** rocky1138 has quit IRC
01:14:09 *** greeter has quit IRC
01:14:09 *** acklen has quit IRC
01:14:09 *** ccfreak2k has quit IRC
01:14:09 *** Tharbakim has quit IRC
01:14:09 *** dwfreed has quit IRC
01:14:10 *** urdh has quit IRC
01:14:10 *** Sacro has quit IRC
01:14:10 *** Ttech has quit IRC
01:14:10 *** Maarten has quit IRC
01:14:10 *** HeyCitiz- has quit IRC
01:14:10 *** innocenat has quit IRC
01:14:10 *** Vadtec has quit IRC
01:14:10 *** reldred has quit IRC
01:14:10 *** Extrems has quit IRC
01:14:10 *** k-man has quit IRC
01:14:10 *** hph^ has quit IRC
01:14:10 *** OsteHovel has quit IRC
01:14:10 *** colde has quit IRC
01:14:10 *** murr4y has quit IRC
01:14:10 *** ST2 has quit IRC
01:14:10 *** Antheus has quit IRC
01:14:10 *** lethosor_ has quit IRC
01:14:10 *** TinoDidriksen has quit IRC
01:14:10 *** Smedles_ has quit IRC
01:14:10 *** techmagus has quit IRC
01:15:22 *** SmatZ has joined #openttd
01:15:22 *** Hirundo has joined #openttd
01:15:22 *** Osai has joined #openttd
01:15:22 *** TrueBrain has joined #openttd
01:15:22 *** Westie has joined #openttd
01:15:22 *** funnel has joined #openttd
01:15:22 *** Yotson has joined #openttd
01:15:22 *** SpComb has joined #openttd
01:15:22 *** michi_cc has joined #openttd
01:15:22 *** tneo has joined #openttd
01:15:22 *** Hobbyboy has joined #openttd
01:15:22 *** ZirconiumX has joined #openttd
01:15:22 *** berndj has joined #openttd
01:15:22 *** orudge has joined #openttd
01:15:22 *** juzza1 has joined #openttd
01:15:22 *** glx has joined #openttd
01:15:22 *** yellyFish has joined #openttd
01:15:22 *** dvim has joined #openttd
01:15:22 *** TheMaster has joined #openttd
01:15:22 *** Gustavo6046 has joined #openttd
01:15:22 *** HeyCitiz- has joined #openttd
01:15:22 *** hph^ has joined #openttd
01:15:22 *** Smedles_ has joined #openttd
01:15:22 *** rocky11384497 has joined #openttd
01:15:22 *** quiznilo has joined #openttd
01:15:22 *** Stimrol has joined #openttd
01:15:22 *** debdog has joined #openttd
01:15:22 *** blathijs has joined #openttd
01:15:22 *** Alkel_U3 has joined #openttd
01:15:22 *** Thedarkb1-X40 has joined #openttd
01:15:22 *** urdh has joined #openttd
01:15:22 *** dwfreed has joined #openttd
01:15:22 *** OsteHovel has joined #openttd
01:15:22 *** Guest1524 has joined #openttd
01:15:22 *** rocky1138 has joined #openttd
01:15:22 *** Extrems has joined #openttd
01:15:22 *** ccfreak2k has joined #openttd
01:15:22 *** acklen has joined #openttd
01:15:22 *** FLHerne has joined #openttd
01:15:22 *** Heiki has joined #openttd
01:15:23 *** peter1138 has joined #openttd
01:15:23 *** charon.oftc.net sets mode: +vovo michi_cc orudge glx peter1138
01:15:23 *** Mazur has joined #openttd
01:15:23 *** mikegrb has joined #openttd
01:15:23 *** greeter has joined #openttd
01:15:23 *** Tharbakim has joined #openttd
01:15:23 *** techmagus has joined #openttd
01:15:23 *** crem has joined #openttd
01:15:23 *** Markk has joined #openttd
01:15:23 *** Exec has joined #openttd
01:15:23 *** KenjiE20 has joined #openttd
01:15:23 *** argoneus has joined #openttd
01:15:24 *** Maarten has joined #openttd
01:15:24 *** DorpsGek_II has joined #openttd
01:15:24 *** MasseR has joined #openttd
01:15:24 *** Ammler has joined #openttd
01:15:24 *** tyteen4a03 has joined #openttd
01:15:24 *** V453000 has joined #openttd
01:15:24 *** Jyggalag has joined #openttd
01:15:24 *** Sacro has joined #openttd
01:15:24 *** Ttech has joined #openttd
01:15:24 *** Antheus has joined #openttd
01:15:24 *** TinoDidriksen has joined #openttd
01:15:24 *** lethosor_ has joined #openttd
01:15:24 *** reldred has joined #openttd
01:15:24 *** ST2 has joined #openttd
01:15:24 *** Vadtec has joined #openttd
01:15:24 *** k-man has joined #openttd
01:15:24 *** murr4y has joined #openttd
01:15:24 *** innocenat has joined #openttd
01:15:24 *** colde has joined #openttd
01:15:46 *** ChanServ sets mode: +v orudge
01:15:46 *** ChanServ sets mode: +o SmatZ
01:17:44 *** rocky11384497 has quit IRC
01:26:13 *** argoneus has quit IRC
01:53:13 *** funnel has quit IRC
01:58:32 *** funnel has joined #openttd
02:35:12 *** snail_UES_ has joined #openttd
02:47:38 *** triolus has joined #openttd
02:48:15 *** yellyFish has left #openttd
02:48:18 *** yellyFish has joined #openttd
02:59:33 *** sim-al2 has joined #openttd
03:16:21 *** snail_UES_ has quit IRC
03:17:55 *** snail_UES_ has joined #openttd
03:28:33 *** snail_UES_ is now known as Guest1836
03:28:34 *** snail_UES_ has joined #openttd
03:37:06 *** sim-al2 has quit IRC
04:14:22 *** yellyFish has quit IRC
04:20:06 *** yellyFish has joined #openttd
04:21:31 <yellyFish> finally. i was getting 0.7 speed. now i get 0.8 :D
04:23:07 <yellyFish> about 14% increase in speed
04:23:25 <yellyFish> simulation rate
04:26:17 <yellyFish> or maybe i am measuring wrong :D
04:26:17 *** TheMaster is now known as Unit193
04:35:55 *** glx has quit IRC
05:24:20 *** dvim has quit IRC
05:32:20 *** snail_UES_ has quit IRC
06:41:02 *** yellyFish has quit IRC
08:13:14 *** glavinics has joined #openttd
08:13:25 *** glavinics has quit IRC
09:02:34 *** nielsm has joined #openttd
09:24:23 *** andythenorth has joined #openttd
09:51:54 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh approved pull request #6954: Doxygen update and warning fixes https://git.io/fxFXo
09:58:22 *** andythenorth has quit IRC
10:00:37 *** andythenorth has joined #openttd
10:05:53 *** matt21347 has joined #openttd
10:15:50 *** andythenorth has joined #openttd
10:16:21 *** andythenorth has quit IRC
10:17:47 *** andythenorth has joined #openttd
10:28:01 *** andythenorth has quit IRC
11:24:18 *** andythenorth has joined #openttd
11:24:24 *** andythenorth has left #openttd
11:43:16 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #6935: Add: EnsureNoShipFromDiagDirs https://git.io/fxFdU
11:45:57 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #6935: Add: EnsureNoShipFromDiagDirs https://git.io/fxFdm
12:29:14 *** frosch123 has joined #openttd
12:35:58 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 merged pull request #6954: Doxygen update and warning fixes https://git.io/fxdxf
12:41:41 <LordAro> :)
12:41:43 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 approved pull request #6948: Various minor code cleanups found by scan-build https://git.io/fxFxs
12:41:52 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 merged pull request #6948: Various minor code cleanups found by scan-build https://git.io/fxHhE
12:42:01 <LordAro> :))
12:44:22 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 approved pull request #6932: Change: Gradually slow down aircraft speed on breakdown https://git.io/fxFxr
12:45:24 <nielsm> I'm looking at #6928 atm, it looks like way too much work and special casing
12:45:26 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 merged pull request #6932: Change: Gradually slow down aircraft speed on breakdown https://git.io/fxGAO
12:46:03 <frosch123> yes, that applies to at least half of samu stuff
12:46:27 <frosch123> corner cases over corner cases
12:49:37 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 approved pull request #6754: Don't automatically deactivate the vehicle clone tool after cloning a vehicle https://git.io/fxFpL
12:50:54 <nielsm> wow wtf is up with the YAPF method of selecting functions to call depending on settings
12:51:13 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 merged pull request #6754: Don't automatically deactivate the vehicle clone tool after cloning a vehicle https://git.io/vp8bd
12:51:35 <frosch123> nielsm: inline fetishism
12:52:04 <frosch123> someone trying to have a complete inlined copy of the whole algorithm for each combination of parameters
12:53:23 <nielsm> https://github.com/OpenTTD/OpenTTD/blob/master/src/pathfinder/yapf/yapf_rail.cpp#L617-L625
12:53:24 <nielsm> like that
12:53:46 <nielsm> function pointers to a static function that just constructs an object of the type and calls a similarly named function on the object with parameter pass-through
12:53:57 <LordAro> yapf is scary code
12:54:37 <nielsm> like, just use a damn virtual method
12:54:43 <nielsm> it's still a level of indirection
13:04:17 *** snail_UES_ has joined #openttd
13:10:38 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 opened pull request #6955: Fix: [NewGRF] Make VA2 operator 11 (ror) behave well-defined when rotating by 0 bits. https://git.io/fxFjB
13:12:25 <DorpsGek_II> [OpenTTD/OpenTTD] LordAro approved pull request #6955: Fix: [NewGRF] Make VA2 operator 11 (ror) behave well-defined when rotating by 0 bits. https://git.io/fxFjH
13:12:46 <frosch123> :)
13:15:44 <LordAro> though i wonder if that branch will slow things down
13:16:57 <peter1138> Yeah it was meant to be super fast.
13:17:09 <frosch123> ROR is only used in 3 places
13:17:31 <frosch123> 2 of them have a fixed constant for n, so i hope on the compiler
13:17:36 <frosch123> the 3rd is the just added one
13:18:20 <peter1138> I meant YAPF, sorry.
13:18:40 <frosch123> ROL is used in md5sum
13:19:28 <frosch123> which also has a chance to be inlined
13:21:45 *** snail_UES_ has quit IRC
13:34:43 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 requested changes for pull request #6906: Fix #6742: Only possible to build station next to competitor by using CTRL+click https://git.io/fxbfz
13:46:06 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 commented on pull request #6831: Fix #6742: Only possible to build station next to competitor by using CTRL+click https://git.io/fxbJs
13:46:07 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 closed pull request #6831: Fix #6742: Only possible to build station next to competitor by using CTRL+click https://git.io/f4DWv
14:33:00 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh requested changes for pull request #6928: Fix #5713: Use pathfinder to find closest ship depot https://git.io/fxbLs
14:35:49 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh merged pull request #6955: Fix: [NewGRF] Make VA2 operator 11 (ror) behave well-defined when rotating by 0 bits. https://git.io/fxFjB
14:45:51 <nielsm> I don't really know about release preparations etc., but would it be an idea to make a "project" board on github for collecting tickets that should be addressed for 1.9.0 release? or does github have a better way of managing that?
14:56:42 <peter1138> There is a release procedure document somewhere, I'm sure.
14:57:25 <frosch123> nielsm: http://devs.openttd.org/~frosch/backport.txt <- we used to collect stuff for the backports and changelogs together
14:57:48 <frosch123> not sure how to format the changelog with git hashes :p
14:58:48 <frosch123> https://wiki.openttd.org/To_do_for_releases <- that's the old workflow, which is now mostly obsolete due to git and new compile farm :p
14:58:55 <LordAro> can't, really
14:59:07 <LordAro> wellz you could, but they'd be even less useful than the revision numbers
14:59:52 <LordAro> a project board for collecting issues sounds like a good idea though
15:00:07 <LordAro> assuming a 1.8.1 release is actually desired
15:00:36 <frosch123> depends when we have a farm that can build it :)
15:01:24 <nielsm> I was thinking catching both bugs and desired features (open PRs) we want on a project board
15:06:07 <peter1138> Does any of the old farm still exist?
15:06:18 <peter1138> Cos that did still work, didn't it?
15:07:57 <frosch123> i don't think the disk was full
15:08:40 <frosch123> but we would have to revert some c++11 changes :p
15:11:39 *** Wormnest has joined #openttd
15:15:53 <LordAro> nielsm: couldn't hurt to make one, even if it ends up not being used
15:19:59 <nielsm> https://github.com/OpenTTD/OpenTTD/projects/3
15:30:12 <LordAro> ah, i was referring to bugfix releases, rather than major releases
15:30:39 <nielsm> I don't think it makes sense to make a 1.8.1 at this point
15:30:39 <LordAro> major release projects could easily turn into the roadmap pages on the wiki :p
15:31:39 <peter1138> So anybody else have experience of setting these kind of compile farms up?
15:32:38 <peter1138> I have VM resources that could potentially be used, but it's not super high-end.
15:33:01 <LordAro> i fear not
15:37:27 <nielsm> also, how to do windows build, non-containerized on a desktop windows version, or containerized cross-compile from linux?
15:38:06 <nielsm> renting a windows server version is probably somewhat expensive
15:39:00 <LordAro> this was what blocked TrueBrain, iirc
15:41:50 <frosch123> https://github.com/TrueBrain/OpenTTD-CF/tree/windows <- that's the last status, i think
15:47:34 <peter1138> Does it need to be a server version?
15:47:58 <LordAro> it makes certain ...server things easier
15:48:22 <nielsm> also avoids some windows update fun times
15:54:02 <nielsm> https://github.com/tpoechtrager/wclang ?
15:55:12 <peter1138> i686-w64-mingw32-clang++ < mixed messages about architecture there...
15:55:35 <peter1138> How to target different Windows versions with that?
15:57:00 <nielsm> that's really an issue I have with all gcc/clang-derived compilers that target win32, they want to use the microsoft C runtime, instead of their own
15:57:21 <nielsm> despite that windows does not have any such thing as "system C runtime"
15:57:41 <nielsm> it's kind of expected that a compiler vendor supplies their own runtime
15:58:51 <nielsm> hm bbl, I should really go for a walk while there's still some daylight
16:19:49 *** hph^ has quit IRC
16:33:10 <peter1138> You can walk in the dark too.
17:13:36 <planetmaker> <LordAro> [13:59:52] a project board for collecting issues sounds like a good idea though <-- isn't that like the issues on GitHub? And maybe an additional tag as to which version they should be fixed in like we had on FlySpray?
17:14:14 <planetmaker> (or is 'project board' a github feature I don't know yet? How does it relate to the issues?)
17:17:37 *** Stimrol has quit IRC
17:25:56 <nielsm> back... I accidentally bought a new coat too
17:27:24 <nielsm> planetmaker: a project board is more or less a category of mutually exclusive tags, forming a single orthogonal dimension of categorisation of tickets, but they can also hold non-tickets (single-line notes)
17:27:52 <nielsm> and items in each category on a board have an explicit ordering
17:48:02 <LordAro> planetmaker: https://github.com/OpenTTD/OpenTTD/projects/3 basically a github trello thing
18:28:01 *** Progman has joined #openttd
18:41:13 *** yellyFish has joined #openttd
18:49:40 <DorpsGek_II> [OpenTTD/OpenTTD] Hemaolle dismissed a review for pull request #6906: Fix #6742: Only possible to build station next to competitor by using CTRL+click https://git.io/fxddj
18:49:42 <DorpsGek_II> [OpenTTD/OpenTTD] Hemaolle updated pull request #6906: Fix #6742: Only possible to build station next to competitor by using CTRL+click https://git.io/fxddd
18:51:55 <DorpsGek_II> [OpenTTD/OpenTTD] Hemaolle commented on pull request #6906: Fix #6742: Only possible to build station next to competitor by using CTRL+click https://git.io/fxbid
18:57:52 *** yellyFish has quit IRC
19:20:03 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #6935: Add: EnsureNoShipFromDiagDirs https://git.io/fxbMt
19:23:50 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 approved pull request #6906: Fix #6742: Only possible to build station next to competitor by using CTRL+click https://git.io/fxbMM
19:24:25 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 merged pull request #6906: Fix #6742: Only possible to build station next to competitor by using CTRL+click https://git.io/fxddd
19:28:09 *** Wolf01 has joined #openttd
19:28:18 <Wolf01> o/
19:28:29 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #6935: Add: EnsureNoShipFromDiagDirs https://git.io/fxbDk
19:31:05 *** yellyFish has joined #openttd
19:32:49 *** andythenorth has joined #openttd
19:33:37 <andythenorth> o/
19:34:54 <andythenorth> loads of merges :o
19:35:30 <andythenorth> pull queue, -samu https://github.com/OpenTTD/OpenTTD/pulls?utf8=%E2%9C%93&q=is%3Apr+is%3Aopen+-label%3A%22waiting-on-author%22+-author%3ASamuXarick+
19:35:38 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #6935: Add: EnsureNoShipFromDiagDirs https://git.io/fxbDD
19:51:02 <Arveen> this channel needs more egg plants 🍆🍆🍆
20:02:47 <andythenorth> it has enough now
20:04:54 *** Supercheese has joined #openttd
20:11:08 <yellyFish> so after decoding a newGRF, how should a line calling for var 0x61 look like?
20:11:23 * andythenorth looks
20:16:51 <yellyFish> found it
20:17:40 <andythenorth> can't find it in nars 2.5.1
20:17:41 <andythenorth> :P
20:17:44 <andythenorth> oof
20:21:47 <LordAro> https://help.github.com/articles/transferring-an-issue-to-another-repository/ sounds useful for the dorpsgek repos :p
20:24:46 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #6935: Add: EnsureNoShipFromDiagDirs https://git.io/fxbQP
20:24:56 <nielsm> could I get someone else to weigh in on that as well?
20:25:58 <andythenorth> I read it, but I can't comment on the answer :(
20:40:22 <yellyFish> is there any overarching logic to how the game connects NewGRFs and set variables,etc? or is it just something that got more and more features and needs a rework?
20:42:22 <Xaroth> andythenorth: mind testing something (if you're on windows that is)
20:42:37 <Xaroth> if I set `mono_font = Tahoma` in my openttd.cfg, and start openttd, it will start crashing randomly.
20:42:37 <andythenorth> such not windows :)
20:42:41 <Xaroth> ah, lame :P
20:42:50 <andythenorth> I should test the macOS ICU port though
20:43:16 <nielsm> Xaroth is that 1.8.0 or a dev version?
20:43:21 <Xaroth> 1.8.0
20:43:34 <nielsm> probably the ICU layout issues then
20:44:06 <Xaroth> fair enough
20:44:29 <Xaroth> Related to https://github.com/OpenTTD/OpenTTD/issues/6882 then I take it?
20:44:30 <nielsm> I can make a build of current master if you want to try
20:44:56 <Xaroth> meh, I'm not fussed
20:44:56 <nielsm> (will you need 32 bit or 64 bit?)
20:45:05 <Xaroth> simply not using Tahoma as mono font would work :P
20:45:21 <Xaroth> but if it's related to #6882, I have a crash.dmp
20:49:12 <LordAro> can't hurt to shove it into the issue
21:07:39 *** glx has joined #openttd
21:07:39 *** ChanServ sets mode: +v glx
21:12:23 <andythenorth> oops
21:12:27 * andythenorth reading youtube comments
21:13:02 <LordAro> ono
21:13:12 <Xaroth> why would you read youtube comments?
21:13:31 <andythenorth> to remind myself
21:13:44 <andythenorth> I was watching a video about electricity smart meters
21:13:55 <andythenorth> and then there were comments
21:14:03 <andythenorth> about conspiracy theories
21:17:16 <andythenorth> it's funny
21:17:51 <andythenorth> the dumb conspiracy fucks are scared of networks and devices and governments
21:17:58 <andythenorth> but they're happy to sit posting on YT
21:18:14 <andythenorth> self-identifying :P
21:18:45 <andythenorth> basic violation of opsec
21:19:28 * andythenorth back to pixels
21:21:22 <yellyFish> does anyone know how to read and make sense of a nfo file?
21:21:35 <andythenorth> kinda
21:21:43 <andythenorth> it's hard from compiled source
21:21:47 <andythenorth> but somewhat
21:22:11 <yellyFish> i am trying to isolate 4 lines and why are they being called so much
21:23:54 <andythenorth> can you paste them?
21:23:58 <andythenorth> with a bit of context?
21:24:02 <andythenorth> https://paste.openttdcoop.org/
21:24:58 <yellyFish> yeah i was searching pastebing but it was giving me garbage text
21:25:32 <andythenorth> if it's NARS 2.5.1 I have some guesses for var 61
21:25:49 <andythenorth> but I'd need to see the rest of the action 2 chain
21:26:03 <andythenorth> and what it's reading from the other vehicle
21:26:36 <nielsm> it'd be a huge amount of work, but it might be interesting to add detailed logging to openttd itself of newgrf happenings
21:27:00 <andythenorth> the forum post suggests it's looking for C6?
21:27:22 <andythenorth> do we need to shift that to get the actual var it's reading?
21:27:40 <andythenorth> where is eddi when he's needed? o-o
21:27:49 <andythenorth> @seend Eddi|ZuHaus
21:27:56 <andythenorth> @seen Eddi|ZuHaus
21:27:56 <DorpsGek> andythenorth: I have not seen Eddi|ZuHaus.
21:27:57 <Wolf01> "send"
21:28:01 <andythenorth> oof
21:28:20 <Wolf01> @seen __ln__
21:28:20 <DorpsGek> Wolf01: __ln__ was last seen in #openttd 16 weeks, 3 days, 0 hours, 23 minutes, and 20 seconds ago: <__ln__> TrueBrain: also, how hard can it be to figure out my comment COULD be related to a repo that was mentioned on the previous line?
21:28:25 <Wolf01> Mmmh
21:28:34 <LordAro> rip
21:28:47 <Wolf01> Must be in a trip again
21:28:54 <andythenorth> oh C6 is the ID
21:29:01 <frosch123> nielsm: problem with that is that only few people can read it
21:29:11 <andythenorth> NARS used to have a thing where it adjusted engine HP depending on wagons
21:29:13 <frosch123> i did http://devs.openttd.org/~frosch/inspect_backtrace.png somewhen
21:29:23 <andythenorth> it might also be running costs, or just livery stuff
21:29:28 <frosch123> but stopped continueing it, once i had solved the problem at that time :p
21:29:35 <Wolf01> It's perfectly readable
21:29:43 <andythenorth> yellyFish: you could also try with Iron Horse 2 dev build
21:29:51 <andythenorth> which probably calls 0x61 a lot
21:29:59 <andythenorth> but has full source :P
21:30:11 <yellyFish> fug. i can't paste it. can i upload the file somewhere?
21:30:11 <andythenorth> http://bundles.openttdcoop.org/iron-horse/push/LATEST/
21:30:21 <andythenorth> if it's NARS 2.5.1 I've got it decompiled here
21:30:24 <andythenorth> which sprite numbers?
21:30:46 <andythenorth> or line numbers, either, just tell me which :D
21:30:55 <andythenorth> so much wasted time confusing those two :)
21:31:20 <Wolf01> I had a discussion with my boss today because he isn't sure we should use guids as primary key on every table for the new project, having composite clustered keys (like 5-7 columns) helps readability...
21:31:39 <andythenorth> ah the endless guid debate
21:31:40 <yellyFish> 4190
21:31:52 * andythenorth likes UUIDs starting at 0 :P
21:31:57 <andythenorth> and incrementing by 1
21:32:01 <andythenorth> then we all know where we stand
21:32:14 <andythenorth> apparently it goes wrong when you merge UIDS from multiple sources :P
21:33:08 <yellyFish> or search for '61 C6'. it should give you 4 ocurrences
21:33:19 <andythenorth> yellyFish: my suspicion, based on scanning that, it's livery stuff
21:33:23 <andythenorth> I need to read more though
21:33:31 <andythenorth> so long since I did this
21:33:43 <yellyFish> it is getting the engine ID offset by register 0x10F
21:34:19 <andythenorth> so it's high speed mail and pax cars?
21:35:01 <yellyFish> i think so
21:36:15 <andythenorth> I'd have to reformat the action 2s to read them properly
21:36:21 <andythenorth> I can't read single line bytecode :P
21:36:51 <yellyFish> 02 00 10 81 // 19 Bytes, A2, Feature 00 (Train), A2 set ID 10, type 81(1 byte variable)
21:36:53 <yellyFish> 4191 61 C6 00 FF // var 0x61, parameter 0xC6, get engine ID offset by register 0x10F
21:36:55 <yellyFish> 4192 02 // 2 ranges and default
21:36:57 <yellyFish> 4193 10 00 55 55 // A2ID 10, low 55, high 55
21:36:59 <yellyFish> 4194 10 00 59 59 // A2ID 10, low 59, high 59
21:37:01 <yellyFish> 4195 30 00 // default: A2ID 30
21:37:10 <yellyFish> that's what i dissected from the first occurrence
21:37:26 <andythenorth> my suspicion is that it's returning results for sprites 3925-3927
21:37:38 <andythenorth> or similar, depending which block you're in
21:37:58 <andythenorth> the sprites for these vehicles depend on the engine ID
21:38:20 <andythenorth> it might be something else, but pikka removed most of the BAD FEATURES in NARS 2.5.1
21:39:04 <andythenorth> you should see the same 0x61 calls in Iron Horse 2, for consists with a caboose, or pax cars or mail cars
21:39:09 <andythenorth> I linked it above
21:39:20 <yellyFish> but it is getting called a lot. isn't there a more CPU friendly way of doing that?
21:40:18 <frosch123> do you want to change the grf or ottd?
21:40:44 <yellyFish> if it's inevitable, the latter, else the former
21:42:00 <frosch123> you need to figure out what is put in register 10f for var61
21:42:09 <yellyFish> -1 and 1
21:42:12 <yellyFish> alternating
21:42:34 <frosch123> ok, so you have an articulared wagon or engine
21:43:10 <frosch123> multiple vehicles are composed from the same articulated parts with different heads
21:43:45 <frosch123> you can remove that by duplicating the code
21:43:59 <frosch123> like templates instead of virtual methods :)
21:44:17 <frosch123> but without a compiler which does that, you won't have fun :p
21:45:03 <andythenorth> it will get called on every redraw no?
21:45:17 <andythenorth> is it particularly expensive?
21:45:23 <yellyFish> i think lies in why am i getting so much calls for that than anything else
21:45:34 <yellyFish> and they get quit expensive if you add them
21:45:39 <yellyFish> quite*
21:46:23 * andythenorth tries to remember difference between 81 and 85
21:46:25 <frosch123> usually you should get var 0C the most
21:46:37 <andythenorth> I thought there was a way to trivially get the ID of the lead vehicle
21:46:42 <frosch123> if you get 61+vehicle id more often, you have a case of virtual functions
21:46:56 <frosch123> andythenorth: it's not the lead vehicle
21:47:14 <andythenorth> no
21:47:18 <andythenorth> it does some other stuff
21:47:31 <andythenorth> it varies sprite by position in consist of similar ID?
21:47:35 <frosch123> it's articulated wagons
21:47:48 <yellyFish> it calling 0x61 with par 198 that in turn returns u->GetEngine()->grf_prop.local_id;
21:48:03 <yellyFish> u being the vehicle offset by register 0x10F
21:48:42 <andythenorth> I am just guessing from trying the vehicles in game and reverse engineering their behaviour :P
21:48:49 <andythenorth> my nfo-reading days are a distant memory
21:51:18 <yellyFish> i want to know why it is trying to get that value so much, is it necesary? can it be removed, modified or optimized in the newGRF or the game
21:51:25 <yellyFish> i have already optimized a little bit
21:51:46 <yellyFish> but still it is not enough.
21:53:56 <frosch123> yellyFish: callbacks are decision trees
21:54:33 <frosch123> you can optimise them by calling them less often, by rebalancing the decisions, or by making the evaluation faster per node
21:55:20 <frosch123> with var61 + vehicle id + offset +-1: i only see the second option
21:56:06 <yellyFish> i have made the evaluation a bit faster by skipping a second call to vehiclegetvariable again when i am sure of the result
21:56:29 <yellyFish> just for var61 wit parameter 198
21:56:55 <yellyFish> beside that i would like to know if i can reduce the number of calls
21:58:03 <frosch123> if the call comes from UpdateViewport, you can optimise it a lot
21:58:51 <frosch123> but it requires some refactoring of the vehicle drawing and hashing
22:07:06 <andythenorth> or drop this from newgrf spec? o_O
22:09:44 <frosch123> does iron horse use it?
22:10:08 <frosch123> sounds like an attempt to increase your market share by banning the competitors :p
22:12:24 <yellyFish> i would prefer to learn from this so it doesn't happen again or diminish the chance of it happening
22:12:57 <andythenorth> Iron Horse uses it extensively
22:13:18 <andythenorth> there's no performance warning on it iirc
22:13:42 <yellyFish> are you using it for trains?
22:13:45 <andythenorth> yes
22:13:50 <andythenorth> but I could delete a lot of BAD FEATURES if it was removed
22:14:04 <yellyFish> what kind of parameter?
22:14:08 <frosch123> i doubt the var is more expensive than any other
22:14:18 <yellyFish> is the var,par pair
22:14:24 <yellyFish> that determines if it is expensive
22:15:21 <yellyFish> at least for 0x61, depending what parameter you pass you get a different branch
22:19:29 <yellyFish> i think i am getting confused
22:19:49 <yellyFish> i'll re-run the profiling
22:20:28 <frosch123> what do you use for profiling?
22:25:26 <yellyFish> callgrind
22:25:47 <frosch123> can you post a screenshot of the callgraph?
22:26:19 <frosch123> http://kcachegrind.sourceforge.net/html/CallGraph.html <- that thing
22:30:14 <yellyFish> uh, sure, wait a sec
22:36:59 <yellyFish> ok. where do i upload it to?
22:37:54 <frosch123> no idea, we do not run our own imagebin
22:38:26 <LordAro> imgur
22:39:09 <yellyFish> https://postimg.cc/JsS3ybTq
22:39:43 <yellyFish> callgrind it's pretty cool, can refer to source code and even assembly
22:39:58 <frosch123> yep :)
22:41:05 <frosch123> so, 100% via UpdateViewport
22:41:47 <frosch123> oh, only 98%, 2% is industries
22:45:10 <frosch123> ah, found the cb backtrace queue, should probably port that one to git
22:55:05 <frosch123> hmm, can't find any diffs wrt. UpdateViewport :(
22:59:06 <LordAro> bottom of cargoaction.cpp, there are some template function definitions for some types
22:59:10 <LordAro> ...are these necessary?
22:59:17 <LordAro> it doesn't seem to break anything if i remove them
23:00:29 <frosch123> those functions are called in cargopacket.cpp
23:00:47 <frosch123> but they are not defined in a header, so someone needs to instantiate them
23:00:53 <frosch123> cargopacket.cpp can't
23:01:52 <LordAro> the template function is in the header, why does it need the instantiated version like that?
23:01:54 <frosch123> for some reason ottd likes to put template implementations into source files, hoping to make compilation faster or something
23:02:22 <frosch123> cargoaction.cpp:44 and 63
23:02:33 <frosch123> they are not in the header
23:03:50 <LordAro> the definitions aren't, but the declaration is
23:04:02 <LordAro> i'm missing something about why that matters...
23:04:29 <frosch123> in *normal* code you have template definitions in the header
23:04:40 <frosch123> templates are instantiated when used
23:04:51 <frosch123> every source file creates those instantiations it needs
23:04:56 <frosch123> the linker removes duplicates
23:05:26 <frosch123> in *ottd* code template definitions are in source files, so other places cannot instantiate them
23:05:35 <frosch123> you have to force instantiation
23:05:46 <LordAro> ah right
23:05:51 <LordAro> yes, that... makes sense
23:06:29 <frosch123> it's like yapf with templates instead of virtual methods :p
23:07:21 <frosch123> you make stuff complicated in the hope that it is faster somehow
23:08:01 * andythenorth has never seen that pattern ever
23:08:04 <andythenorth> never ever
23:08:28 <planetmaker> o/
23:08:42 <frosch123> hoi pm
23:08:46 <andythenorth> like the records store 'optimised' for performance
23:09:15 <andythenorth> but you can't actually query it, because that would be o(n) complexity or something
23:09:31 <andythenorth> it's only optimised for reading in the way the optimiser intended
23:09:33 <andythenorth> and nothing else works
23:09:38 <andythenorth> and it's not actually faster
23:09:49 <andythenorth> and it adds a second source of truth to the system
23:09:57 * andythenorth may have bitterness
23:10:16 <frosch123> think about * and whether to put them left or right
23:10:51 <frosch123> then let others argue about it, and enjoy your beverage
23:10:59 <planetmaker> hehe :)
23:13:00 *** matt21347 has quit IRC
23:13:15 * andythenorth wonders if santa will bring 44 more Iron Horse sprites
23:13:16 <frosch123> at work i once argued for "let's use the code style the other teams use, instead of making ourown" :p
23:13:26 <planetmaker> nielsm, thanks for the explanation and link earlier. Appreciated :)
23:13:29 <andythenorth> that's fantastic, you're hired frosch123
23:13:56 <andythenorth> we have a rule about 4 spaces, except when somebody has already formatted the file with 2
23:14:23 <frosch123> actually, that is an understatement. my boss raised the question whether we should discuss a style for a new project, and i cut him short before finishing the question :p
23:14:32 <nielsm> learning C is all about placing * correctly the first time around, every time
23:15:20 <andythenorth> what is learning python all about? o_O
23:15:24 * andythenorth has been trying
23:15:30 <andythenorth> since about 2004
23:16:05 <planetmaker> hm... learning python... is it about using OO appropriately - and doing without strict typing
23:16:07 <nielsm> python is just throwing shit at the REPL until something works, then add it to a random module
23:16:11 <frosch123> python is about people. who are not able to indent correctly, to fail completely on the first meters
23:16:33 <frosch123> early filters are the best
23:16:36 <andythenorth> is it mostly about cargo-culting from stack overflow?
23:18:33 <andythenorth> I can't tell if I am doing it wrong or not :P
23:20:15 <frosch123> https://xkcd.com/1306/ <- just make sure you hit at the bottom of the curve
23:20:35 <frosch123> s/hit/enter programmnig/ or something
23:21:02 <andythenorth> oof
23:21:06 <andythenorth> imagine programming in twitter
23:21:16 <andythenorth> we did try to invent a programmatic control language in twitter
23:21:23 <nielsm> nah, to understand python you have to understand "from __future__ import braces"
23:21:27 <andythenorth> it didn't get far as an April fool joke
23:21:39 *** Wormnest has quit IRC
23:21:50 <andythenorth> I treat python as a game, where I win by using @property as much as possible
23:22:15 <andythenorth> and I award myself bonus points for list comprehensions that are (1) complex (2) but easy to read
23:22:48 <andythenorth> it's not a good language to play 'paste from stack overflow' though
23:23:02 <andythenorth> all the answers get a counter answer about why a is more pythonic than b, or not
23:23:14 <andythenorth> and someone benchmarks something
23:23:39 <andythenorth> whereas JS, someone says 'I made a fiddle' and then you just paste that straight to prod
23:24:00 <andythenorth> maybe adding in a paste from an alternative answer too, because, more is better right?
23:25:00 <frosch123> i am still trying to figure out java
23:25:41 <andythenorth> get an enterprise patterns poster for your wall
23:25:43 <andythenorth> profit
23:25:46 <frosch123> i have difficulties connecting my observations "used a lot in corporations" and "not used at all in open source"
23:25:52 <andythenorth> ha
23:25:55 <andythenorth> I should go to bed
23:26:01 <nielsm> the core of java is a deep taxonomy of namespaces, and a heavy use of inner classes
23:26:01 <andythenorth> tomorrow won't just arrive on its own
23:26:05 <andythenorth> it needs my support
23:26:10 <andythenorth> by sleeping
23:26:23 <frosch123> i think a good java library has more directories than files
23:26:44 <nielsm> preferably so many directories it breaks win32 MAX_PATH
23:27:05 *** andythenorth has left #openttd
23:27:52 <nielsm> AbstractFactoryBuilders are also very useful
23:29:10 <frosch123> :)
23:33:33 * LordAro notes there is a cargo_type.h & cargotype.h
23:33:36 <LordAro> this is... unfortunate
23:34:19 <frosch123> we have that multiple times
23:34:57 <frosch123> for example industrytype, industry_type
23:35:52 <frosch123> though i think at some point we started calling the classy one _base
23:36:04 <nielsm> one relates to programmatic types and one to kinds of the gameplay element
23:36:15 <LordAro> ah, that makes slightly more sense
23:36:24 <LordAro> several _base.h's around
23:37:04 <frosch123> goal_base and goal_type is a good example
23:41:02 <yellyFish> why do we use NULL instead of nullptr?
23:41:26 <frosch123> what?
23:41:29 <LordAro> legacy
23:42:12 <nielsm> nullptr is c++11 which is not-quite-yet officially adopted here
23:42:17 <frosch123> we do not even have a c++11 compile farm running, and you ask about nullptr :p
23:42:39 <yellyFish> really? didn't know that
23:43:08 <LordAro> well, we do
23:43:11 <LordAro> it's just not complete
23:45:52 <nielsm> https://www.tt-forums.net/viewtopic.php?p=1214289#p1214289 <- manual nighttime builds :P
23:47:00 <planetmaker> :)
23:47:22 <frosch123> halloween release
23:47:56 <nielsm> time to play classic Trains vs Zombies again?
23:48:25 <planetmaker> let's add a few showels of coal then before we start :)
23:55:40 <frosch123> https://www.tt-forums.net/viewtopic.php?t=4039 <- i underestimated your age :)
23:56:41 <LordAro> positively ancient