IRC logs for #openttd on OFTC at 2020-01-14
            
00:05:11 <DorpsGek_III_> [OpenTTD/OpenTTD] bjarnithor99 updated pull request #7859: Feature #7756: Allow server to supply a reason to kicked/banned clients https://git.io/JeH2l
00:26:43 *** WormnestAndroid has quit IRC
00:27:01 *** WormnestAndroid has joined #openttd
00:33:41 *** tokai|noir has joined #openttd
00:33:41 *** ChanServ sets mode: +v tokai|noir
00:39:37 *** Samu has quit IRC
00:40:29 *** tokai has quit IRC
00:40:31 *** crazystacy has joined #openttd
01:03:52 *** Flygon has joined #openttd
01:15:22 *** crazystacy has quit IRC
01:27:00 *** Pikka has joined #openttd
02:11:12 *** snail_UES_ has joined #openttd
02:13:01 *** HerzogDeXtEr has quit IRC
02:30:51 <DorpsGek_III_> [OpenTTD/OpenTTD] James103 commented on pull request #7912: Feature: Disallow industry production changes from GS https://git.io/JvJaK
02:39:20 *** snail_UES_ has quit IRC
03:24:30 *** supermop_Home has joined #openttd
03:31:33 *** hythlodaeus has quit IRC
04:05:07 *** crazystacy has joined #openttd
04:12:31 *** glx has quit IRC
04:13:42 *** debdog has joined #openttd
04:17:02 *** D-HUND has quit IRC
04:17:27 <DorpsGek_III_> [OpenTTD/OpenTTD] JGRennison opened pull request #7935: Add: Option for a new transfer feeder payment algorithm https://git.io/JvJrX
04:22:26 <DorpsGek_III_> [OpenTTD/OpenTTD] ldpl commented on pull request #7935: Add: Option for a new transfer feeder payment algorithm https://git.io/JvJr7
05:05:37 *** rtrdd has joined #openttd
05:10:11 *** Wormnest has joined #openttd
05:10:18 *** zvxb has quit IRC
05:20:18 *** Wormnest has quit IRC
05:22:46 *** crazystacy has quit IRC
05:52:05 *** Pikka has quit IRC
05:57:40 *** Pikka has joined #openttd
06:47:59 *** supermop_Home has quit IRC
06:50:33 *** snail_UES_ has joined #openttd
07:46:19 *** snail_UES_ has quit IRC
08:31:55 *** andythenorth has joined #openttd
08:32:04 <andythenorth> is it though?
08:34:06 <Pikka> only sometimes
08:34:42 <andythenorth> do you timetable often?
08:36:06 <Pikka> only during the eclipse of the sun
08:36:16 <Pikka> I don't think I've ever used timetables in OTTD
08:39:02 <andythenorth> lot of chat about it in forums & reddit
08:39:13 <andythenorth> I use 'wait at station' sometimes
08:39:25 <andythenorth> the rest...I've concluded my brain isn't that shape
08:39:46 <andythenorth> people have discussions about it where I understand the words, but not the discussion :)
08:59:33 <andythenorth> Pikka: is it pixels, or AIs? :)
08:59:49 <Pikka> trying to pixels, but AI is too easy to fiddle with
09:00:18 <andythenorth> hurrah
09:00:37 <Pikka> recoded av9.8, should try drawing one of those :)
09:00:57 <andythenorth> it's a classic
09:01:22 <andythenorth> what will be new? 99x zoom? :)
09:01:58 <Pikka> yes, UKRS3 style hand-drawn
09:02:09 <Pikka> plus slightly rebalanced, rejigged for 20th C gameplay
09:02:16 <Pikka> another early plane, no A380
09:02:52 <andythenorth> super!
09:03:11 <andythenorth> 9.8 does everything I need, but new is also good
09:05:26 <Pikka> it's not changed much, just changed a few intro dates to fit. and changed a few names to confuse people. :)
09:05:46 <andythenorth> so intro-date scaling parameter? o_O
09:06:06 <andythenorth> based on 1860 start :P
09:06:24 <Pikka> 1860 planes?
09:06:39 <Pikka> or 1860 trains? how does the scaling work?
09:07:11 <andythenorth> if the parameter is 2x, and 1860 is the baseline, then a '1960' train appears in 2060
09:07:21 <andythenorth> it's silly, but I might do it in Horse
09:07:51 <Pikka> it is a bit silly, but why not?
09:08:18 <andythenorth> snail pointed out that town buildings will be wrong
09:08:38 <andythenorth> currently I have been playing 1968 for....some time
09:08:40 <andythenorth> date cheat :P
09:21:36 <Pikka> surely everything but the trains will be wrong? :)
09:23:27 <andythenorth> well I could do all my grfs :P
09:23:40 <andythenorth> but clicking the date cheat eh
09:26:36 <andythenorth> BBLer
09:26:38 *** andythenorth has quit IRC
09:36:39 *** WormnestAndroid has quit IRC
09:36:53 *** WormnestAndroid has joined #openttd
09:53:08 *** Smedles has quit IRC
10:26:27 *** Smedles has joined #openttd
10:34:10 *** andythenorth has joined #openttd
10:43:53 *** andythenorth has quit IRC
10:55:06 *** hythlodaeus has joined #openttd
11:08:17 <DorpsGek_III_> [OpenTTD/OpenTTD] floodious commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JvJMD
11:17:43 <peter1138> Is it lunch time yet?
11:23:22 <LordAro> can't be, i've not got to work yet
11:47:58 <DorpsGek_III_> [OpenTTD/OpenTTD] nielsmh commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JvJDD
11:50:22 <DorpsGek_III_> [OpenTTD/OpenTTD] floodious commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JvJDb
12:14:11 *** andythenorth has joined #openttd
12:24:42 *** nielsm has joined #openttd
12:25:06 <DorpsGek_III_> [OpenTTD/OpenTTD] floodious commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JvJyy
12:37:50 <DorpsGek_III_> [OpenTTD/OpenTTD] nielsmh commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JvJSv
12:40:36 <DorpsGek_III_> [OpenTTD/OpenTTD] nielsmh commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JvJSJ
12:40:43 <DorpsGek_III_> [OpenTTD/OpenTTD] floodious commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JvJSU
12:43:01 <Pikka> https://www.tt-forums.net/download/file.php?id=210088
12:43:11 <Pikka> not sure why I don't always play with "silly" townnames :)
12:50:01 <planetmaker> hehe :) What's the ground tiles, though?
12:58:58 <Pikka> my landscape tiles... no public release yet, aiming for mid-year. :)
13:14:57 <planetmaker> nice :)
13:16:05 *** tokai has joined #openttd
13:16:05 *** ChanServ sets mode: +v tokai
13:22:59 *** tokai|noir has quit IRC
13:23:36 <hythlodaeus> guys what's your opinion on OpenLoco?
13:24:56 *** tokai|noir has joined #openttd
13:24:56 *** ChanServ sets mode: +v tokai|noir
13:31:49 *** tokai has quit IRC
13:36:06 <Pikka> not much, hythlodaeus? Locomotion is a bit limited compared to TTD and I guess the same goes for the Open version.
13:36:51 <Pikka> I don't know if anyone's actively working on it
13:42:46 <LordAro> Pikka: offshoot from openrct2, aiui
13:43:11 <LordAro> which by all accounts has been very successful
13:43:39 <Pikka> Yes, I know it exists. Just don't know if anyone's doing anything with it. Doesn't seem to have had any changes in months.
14:00:22 <peter1138> Might have breakfast now.
14:10:49 *** tokai has joined #openttd
14:10:49 *** ChanServ sets mode: +v tokai
14:12:03 *** Samu has joined #openttd
14:13:04 <Samu> hi
14:17:43 *** tokai|noir has quit IRC
15:13:04 <Pikka> hi
15:20:57 <nielsm> hmm... trying to think of how to newgrf water depths
15:21:58 <nielsm> will probably need a new canals sub-feature for base water sprites, and then add a property to specify which depth ranges there are sprites for
15:22:06 <nielsm> perhaps?
15:22:39 *** Flygon has quit IRC
15:22:52 <nielsm> it's probably not a good idea to use callbacks for it, for performance
15:23:27 <nielsm> the real fun will be in supporting depth transition tiles
15:24:04 <nielsm> unless we want to use some kind of dither stuff where two ground tiles are overlaid, with one masked off
15:28:09 <nielsm> or... an action 5 thing?
15:32:31 <hythlodaeus> have you had a look at other games for ref?
15:34:26 <nielsm> how will other games help me choose a technical implementation of supplying graphics within the existing framework?
15:39:45 <hythlodaeus> you never know. sometimes even by observing the way other games behave in action, even if you don't have the source code, you can get ideas and inspiration to come up with solutions for your own problems
15:40:27 <nielsm> here the most relevant thing to do is look at how ottd is already solving the same problem for other cases where additional sprites need to be supplied for something that originally had only one sprite
15:41:41 <hythlodaeus> sure, that's fair
15:42:55 <Samu> i finally got the courage to start working on "build on competitor canal"
15:43:13 <Samu> something I have done before
15:43:20 <Samu> but now rebasing to current standards
15:43:24 <Samu> conflicts everywhere
15:43:58 *** supermop_work has joined #openttd
15:44:13 <DorpsGek_III_> [OpenTTD/OpenTTD] xdavidwu opened pull request #7936: Fix: [SDL2] sdl driver debug log https://git.io/JvJ7n
15:46:10 <DorpsGek_III_> [OpenTTD/OpenTTD] nielsmh approved pull request #7936: Fix: [SDL2] sdl driver debug log https://git.io/JvJ7R
16:03:03 *** Samu has quit IRC
16:12:59 *** crazystacy has joined #openttd
16:26:31 *** Laedek has joined #openttd
16:33:53 <DorpsGek_III_> [OpenTTD/OpenTTD] RoqueDeicide commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JvJ5x
16:35:06 *** crazystacy has quit IRC
16:42:55 *** hythlodaeus has quit IRC
16:44:38 *** Samu has joined #openttd
16:55:02 <nielsm> w00p it works! https://0x0.st/z7CL.jpg
16:56:13 <peter1138> MERGE
16:58:34 <Samu> different color water?
16:58:47 <nielsm> different water sprites depending on depth
16:58:59 <supermop_work> HELL YEAH
16:59:06 <supermop_work> looks dope
17:00:26 <supermop_work> new feature request: some tiny boat that sinks in deep water a la civilization
17:02:35 <peter1138> New way to grief ships? :D
17:02:39 <peter1138> Cos we need more :D
17:02:48 <peter1138> Triremes, my poor triremes...
17:03:25 <supermop_work> even better i it just reuses the vanilla crash animation, explodes, spins around, then sits there burnt out on top of the water for 4 months
17:04:24 <nielsm> https://0x0.st/z7Cl.jpg even with this prototype hacked-together graphics it looks so nice :D
17:05:10 <peter1138> supermop_work, haha
17:05:11 <_dp_> idk, looks weird
17:05:17 <peter1138> nielsm, looks fine to me.
17:05:20 <_dp_> would be better to make deep water darker imo
17:05:34 <peter1138> So does it allow underwater tunnels or is that... something else?
17:05:36 <_dp_> also having more waves on deep water makes no sense
17:05:37 <nielsm> well yes but I'm not the artist here :P
17:05:41 <peter1138> _dp_, "hacked-together graphics"
17:05:58 <peter1138> Waves are a feature of the surface...
17:06:33 <DorpsGek_III_> [OpenTTD/OpenTTD] nielsmh updated pull request #7924: Feature: Water tiles have a depth https://git.io/JvfWw
17:07:37 <peter1138> Hmm, so water depth is actually separate from tile height. Interesting.
17:07:58 <nielsm> but yes I agree that deep water should generally have less waves
17:08:15 <peter1138> Yes. I must admit I missed the "more" part :p
17:08:36 <LordAro> colour should definitely be distinct, imo
17:08:58 *** Wormnest has joined #openttd
17:09:02 <peter1138> Graphics artists can do that ;p
17:09:03 <nielsm> yea
17:09:31 <nielsm> the problem is somewhat that there are only two water animation cycles
17:09:49 <nielsm> so you'd have to make the not-default-blue colours non-animated
17:10:47 <LordAro> definitely a problem for graphics artists
17:10:55 <LordAro> where's an andy when you need one?
17:19:19 <planetmaker> nielsm, wouldn't it indeed be possible as initially suggested by andrew to make some kind of semi-opaque overlay?
17:19:26 *** sla_ro|master has joined #openttd
17:19:37 <planetmaker> we use 32bpp blitters anyway on all systems except those from the stone age with 8bpp graphics cards
17:19:50 <planetmaker> so such overlay should even work with 8bpp sprite sets
17:19:55 <nielsm> hm yeah maybe it would be possible to do some fancy tricks on 32bpp
17:20:57 <planetmaker> somewhat similar maybe even to the glass effect... like recolour sprites might be another idea... dunno... I've never ventured in those too much
17:23:11 <Samu> so much messy code in lock
17:23:17 <Samu> DoBuildLock
17:23:37 <Samu> im surprised test and exec mode don't assert
17:24:26 <Samu> it adds the cost of building a canal
17:24:36 <Samu> in test mode and exec mode
17:24:38 *** nielsm is now known as Guest13755
17:25:43 *** nielsm has joined #openttd
17:25:46 <Samu> in test mode IsWaterTile is false, in exec mode, IsWaterTile is true
17:25:49 <Samu> at this line here https://github.com/OpenTTD/OpenTTD/blob/master/src/water_cmd.cpp#L319
17:26:14 <Samu> so in the end, it does not have a canal, but i still payed the price of it
17:26:39 <Samu> test and exec still match, because the prices are the same for some magical reason
17:27:56 *** Guest13755 has quit IRC
17:44:53 *** supermop_work has quit IRC
17:45:52 <DorpsGek_III_> [OpenTTD/OpenTTD] ldpl commented on pull request #7912: Feature: Disallow industry production changes from GS https://git.io/JvJbI
17:48:54 <DorpsGek_III_> [OpenTTD/OpenTTD] nielsmh commented on pull request #7912: Feature: Disallow industry production changes from GS https://git.io/JvJbm
17:57:42 *** HerzogDeXtEr has joined #openttd
18:02:16 <Samu> tile type object
18:02:32 <Samu> and water
18:02:40 <Samu> a deadly combination
18:04:12 *** Progman has joined #openttd
18:05:47 <planetmaker> for the water?
18:10:12 <Samu> for having this work correctly
18:10:27 <Samu> yes
18:10:40 <Samu> clearing an object on water, which results in water
18:11:01 <Samu> without modifying the waterclass
18:17:32 <Samu> while building a lock
18:19:42 *** andythenorth has joined #openttd
18:19:47 <andythenorth> Pikka: so
18:19:55 <Pikka> yes?
18:19:56 <andythenorth> vehicle instance names in newgrf? o_O
18:20:07 <andythenorth> the AI does a nice job, but I am not an AI
18:22:20 <Pikka> you need a helper AI to rename your vehicles?
18:24:40 <andythenorth> would I have to run that multiplayer? o_O
18:24:52 <andythenorth> can I add an AI to my company? :P
18:27:21 <Pikka> you can start an AI then use the cheat menu to switch into the AI company
18:27:29 <DorpsGek_III_> [OpenTTD/OpenTTD] ldpl commented on pull request #7912: Feature: Disallow industry production changes from GS https://git.io/JvJNV
18:40:37 *** Pikka has quit IRC
18:56:20 *** glx has joined #openttd
18:56:20 *** ChanServ sets mode: +v glx
18:59:34 *** Wormnest has quit IRC
19:03:03 *** WormnestAndroid has quit IRC
19:03:26 *** WormnestAndroid has joined #openttd
19:07:01 *** Wolf01 has joined #openttd
19:08:30 *** andythenorth has quit IRC
19:13:07 <Samu> extremelly difficult with objects
19:15:15 <Samu> well apparently the game is making it easier for me. Objects placed on water by a company that bankrupts, gets its objects removed from the map
19:15:20 <Samu> they don't stay
19:18:05 *** frosch123 has joined #openttd
19:35:13 *** supermop_work has joined #openttd
19:37:47 *** zvxb has joined #openttd
19:42:07 *** rtrdd has quit IRC
19:45:49 <DorpsGek_III_> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://git.io/JvJpC
19:45:49 <DorpsGek_III_> - Update: Translations from eints (by translators)
19:46:36 *** zvxb has quit IRC
19:49:32 *** andythenorth has joined #openttd
19:49:34 <andythenorth> yo
19:54:57 <andythenorth> @seen floodius
19:54:57 <DorpsGek> andythenorth: I have not seen floodius.
19:57:03 <nielsm> @seen floodious
19:57:03 <DorpsGek> nielsm: floodious was last seen in #openttd 1 week, 0 days, 22 hours, 1 minute, and 35 seconds ago: * floodious goes out
19:57:26 <frosch123> nice last message :)
20:01:48 <andythenorth> there are only so many types of programmer
20:02:01 <andythenorth> and there is a particular type who gives a long explanation of correctness
20:02:13 <andythenorth> combined with "I haven't looked at the code"
20:02:24 <andythenorth> tell me you haven't worked with these people ever? o_O
20:05:56 <frosch123> nielsm: i found what i did wrong the other day. i forgot that nuts includes railtypes and did not notice that the "weird vehicle item ids" were railtype labels
20:06:26 <nielsm> ah yeah
20:07:04 <frosch123> @base 10 16 1431193905
20:07:04 <DorpsGek> frosch123: 554E4931
20:10:15 <andythenorth> nielsm: so if there's a lake up in a mountain range, and I lower terrain...what happens?
20:10:28 <andythenorth> [this question is really about reservoir / dam objects] :P
20:11:07 <nielsm> the water has depth but it does not have volume :P
20:11:44 <andythenorth> so the water just disappears?
20:12:08 <nielsm> well if you clear the water tiles then they disappear yes
20:12:30 <nielsm> making stuff flow would be troublesome
20:12:39 <frosch123> https://pastebin.com/xhVGWiwE <- nielsm: do you have a cool idea for that?
20:12:41 <andythenorth> nah not required at all, it's not minecraft :)
20:12:49 * andythenorth wondering if we can have object / industry tiles that lie about the local tile height
20:13:13 <nielsm> frosch123: not sure what you mean
20:13:15 <frosch123> i want to parse all files with a specific prefix, but the time always advances
20:13:22 <nielsm> ah...
20:13:40 <andythenorth> the hydro plant idea can wait :P
20:13:45 <andythenorth> also watermill
20:13:57 <nielsm> I guess maybe the timestamp should be collection start time, not file write time
20:17:54 <supermop_work> WATERMILL TYCOON
20:18:13 <nielsm> transport dwarf deluxe
20:18:28 <nielsm> openttdwarf
20:18:36 <supermop_work> reuse crash animation for flour mill explosion
20:19:20 <supermop_work> watermill explodes, pallet shifts to black, spins around
20:20:21 <TrueBrain> milek7_: do you have your patch for AFL? I found some old patches which we used to run AI tournaments, and I wonder if there are snippets in there that might benefit AFL (as tournament is optimized for speed) .. so any code you have makes it a bit faster to check :)
20:20:26 <frosch123> openttdwarf is when the palette animation makes the whole screen blink red, right?
20:20:43 * andythenorth moves the date from 1969 to 1968 for 3rd time in a row
20:20:50 <andythenorth> 'daylength, without the hassle'
20:21:33 <andythenorth> frosch123: I linked the Doom Black Book recently, the palette tricks are really smart
20:22:07 <frosch123> i never played doom :)
20:22:26 <andythenorth> I never played Dwarf Fortress :D
20:22:30 <andythenorth> http://fabiensanglard.net/gebbdoom/
20:23:17 <frosch123> andythenorth: there is a type of game which i would like to play in theory, but quit after 5 minutes because the interface makes me throw up. simutrans and dwarf fortress are among them
20:23:25 <andythenorth> fair
20:23:44 <frosch123> first time i tried df i came until i had to select a location for settlement
20:23:48 <andythenorth> anyway chapter 5.13 http://fabiensanglard.net/gebbdoom_v1.1.pdf
20:23:54 <frosch123> i applied some filters, and then the whole screen was blinking red
20:24:19 <frosch123> i still do not know whether red blinking X means the filter criterion is met or not met
20:24:37 <andythenorth> oh also 5.12.8 Diminishing Lighting
20:24:58 * andythenorth looks at the 12 magic pinks in the DOS palette
20:25:03 <andythenorth> feels like they're...wasted
20:25:20 <andythenorth> so 3rd company colour? o_O
20:25:42 <andythenorth> or I could use them for my own recolouring crap that I do, I've run out of safe ranges for it
20:26:39 <andythenorth> I use purple and red https://github.com/andythenorth/polar-fox/blob/master/src/intermodal_container_graphics/tank_40_foot.png?raw=true
20:29:23 <frosch123> 2 orthogonal recolourings are already pushing it
20:29:28 <frosch123> if you want more, use sprite layers
20:29:35 <Samu> is there a way to know whether clearing a tile will result in a clear water tile?
20:29:53 <frosch123> 1cc needs 16 palettes, 2cc needs 256, 3cc would need 4096
20:30:02 <Samu> like rocks on water, i clear the rocks, i get clear water
20:30:20 <Samu> tile type is object
20:30:23 <frosch123> recolouring palettes must be in the global sprite range < 16k
20:31:06 <andythenorth> I'm recolouring in PIL
20:31:31 <andythenorth> with a silly side effect due to my poor programming
20:31:35 <frosch123> so you include 4096 sprites for a single train sprite?
20:31:45 <andythenorth> errr...possibly yes
20:32:01 * andythenorth counts
20:33:11 <andythenorth> @calc (35 * 2 * 8) + 8
20:33:11 <DorpsGek> andythenorth: 568
20:33:30 <andythenorth> hmm
20:33:31 <andythenorth> nvm
20:33:38 <andythenorth> might be talking at cross purposes :)
20:35:20 <nielsm> is it time to have just-in-time pre-combined sprites?
20:36:31 <andythenorth> it doesn't solve any problem I have afaik
20:36:49 <nielsm> (a single spriteid makes a callback/series of callbacks that returns a list of sprites and relative positions and results in them being pre-combined into a single sprite cache image which can then be re-used)
20:37:20 <andythenorth> I generate large numbers of sprites because checking vehicle cargos or recolourings in a spritesheet is ~infinitely faster than checking them in game
20:37:32 <nielsm> hmm well yeah it would probably have to be sprite+parameters
20:37:59 <andythenorth> the overhead of setting up new games covering every possible supported cargo, and then creating the industry chains
20:38:00 <andythenorth> nah
20:38:37 <frosch123> nielsm: check VehicleSpriteSeq
20:38:43 <andythenorth> I could step through with the sprite inspector I guess, but it's still slow
20:38:52 <frosch123> it's already a sequence, feel free to make ottd combine the sprites
20:39:32 <frosch123> haha, oh yes, jit-sprites would break the sprite inspector :p
20:39:54 <milek7_> TrueBrain: i have no special patch except __AFL_INIT() before LoadIntroGame, _exit after it, don't retry at SL_REINIT, disable crash logging
20:40:07 <andythenorth> not sure what problems it would solve :)
20:40:12 <TrueBrain> can you share? :)
20:40:13 <milek7_> with lightweight savegame it does 20runs/s per core
20:40:17 <TrueBrain> I love the "no special except ..." list :D
20:40:51 <TrueBrain> 20 runs/s is not bad; 5 times faster than the 4 :D
20:41:11 <andythenorth> so is there anything can be done to debug this? https://dev.openttdcoop.org/attachments/download/9599/vehicle-window-windowshade-fps-2.m4v
20:41:52 <andythenorth> not shown in that video, but stopping all trains also restores the fps to 34
20:42:16 <andythenorth> and in my testing, vanilla does the same thing, so it's not my newgrf
20:42:53 <nielsm> the thing where fps drops to half when you shade a window?
20:43:13 <andythenorth> unshade
20:43:15 <andythenorth> but yes
20:43:29 <andythenorth> it's not the profit display text rendering either, I deleted that
20:43:42 <frosch123> the vehicle list probably redraws every tick
20:43:43 <nielsm> I really heavily suspect it has to do with the video driver timing/rendering somehow causing the OS to give the process less time
20:43:49 <andythenorth> and it's not 2x UI or 2x text zoom, although they affect how easily it gets triggered
20:43:50 <frosch123> to show loading progress and stuff
20:44:06 <andythenorth> nielsm: do we change video driver timing when all trains are stopped?
20:44:12 <nielsm> frosch123: the drawing times don't really increase appreciably
20:44:33 <nielsm> andythenorth no, I think it has to do with crossing over some magic threshold for average frame time
20:44:58 <andythenorth> oh yes, I recall your theory :)
20:44:59 <nielsm> something similar to how vsync can cause significant framerate drops
20:45:12 <andythenorth> peter thought it might be train pathfinding
20:45:21 <nielsm> if you submit a frame just after sync then you get to wait a full cycle for your next frame
20:45:53 <nielsm> and that won't show up as time spent working on anything, it's just idle time
20:46:29 <nielsm> frame times are fine, but frame cadence is terrible
20:47:09 <andythenorth> it's pretty easy to repro with vanilla trains on 1.10-beta2
20:47:22 <andythenorth> it doesn't require a big game
20:47:33 <milek7_> TrueBrain: really, nothing special in it :)
20:47:36 <milek7_> https://pastebin.com/raw/1VNNwcVL
20:47:44 <nielsm> have you tried/managed to make a build with SDL or SDL2 instead of the regular mac driver?
20:47:46 <milek7_> CC=afl-clang-fast CXX=afl-clang-fast++ ./configure
20:47:56 <milek7_> https://milek7.pl/.stuff/smallishsave.dat
20:48:02 <andythenorth> can't remember if I tried
20:48:40 <milek7_> (TBH it could be worth to test also on old TTD DOS save format)
20:48:52 <andythenorth> I didn't comment on the SDL2 PR to say I'd tested it
20:48:59 <TrueBrain> cheers milek7_; saves me a bit of time hunting where to hit return :)
20:49:45 * andythenorth looks how to configure SDL build
20:50:00 <frosch123> nielsm: andythenorth: when i shade/unshade the vehicle list while the game is paused i get a single peak for drawing of the window
20:50:08 <frosch123> i do not see any peak in andys video
20:50:45 <andythenorth> oh the video is a bit wrong
20:50:50 <andythenorth> I forgot to windowshade the fps window
20:51:10 <andythenorth> can't trust the fps window if it's not shaded, as it hammers the fps down
20:51:13 <frosch123> also pause the game, if it is not
20:51:58 <frosch123> andythenorth: for me the tooltip has a huge effect
20:51:59 <andythenorth> pausing the game eliminates the fps drop
20:52:14 <frosch123> set the tooltip delay to 1 second or something to make it show
20:52:19 <nielsm> frosch123 still the important part imo is that the graphics rendering is not taking 50+ ms when fra framerate is bad, everything is still well within the 30 ms budget
20:52:56 <andythenorth> I am curious about why stopping all trains solves the issue
20:53:10 <andythenorth> should I run that macOS Instruments profiler?
20:53:28 <andythenorth> might as well
20:53:34 <frosch123> andythenorth: that would confirm nielsm again. there are thresholds, like for climate
20:55:10 <frosch123> ottd also sleeps differents amount of time depending how long the gameloop/drawing takes
20:55:34 <frosch123> maybe your task sheduler only reassigns the cpu every now and then
20:55:46 <frosch123> so sometimes ottd sleeps longer than requested
20:56:52 <frosch123> nielsm: anyway, when the game is paused the tooltip window doubles the drawing time for me :)
20:57:16 <milek7_> it sounds like battery saving shenanigans, but we already tested that?
20:57:36 <frosch123> also what is the logic of the graphs switching the time range all the time?
20:59:12 <nielsm> andythenorth: src/video/cocoa/event.mm line 711 should be CSleep(1); - try adding this just after the "else" line preceding that: PerformanceMeasurer perf(PFE_AI14);
20:59:38 <nielsm> just to measure that block containing the CSleep(1) using a thing that should be free
21:00:08 <frosch123> why does the chart switch between 2.5 seconds and 5.5 seconds every now and then?
21:00:32 <andythenorth> nielsm: I'll try that in a minute
21:00:34 <andythenorth> meanwhile https://dev.openttdcoop.org/attachments/download/9610/train-window-instruments-run.png
21:00:44 <andythenorth> also the fps on self-compiled openttd is crap anyway
21:00:53 <andythenorth> I'm having to use the official binaries to get a playable game
21:01:05 <andythenorth> ^^^ that chart is completely counterintuitive eh
21:01:33 <nielsm> it just shows that the game is using less cpu when drawing less frames per second
21:01:34 <frosch123> hmm, seems to be related to ottd skipping frames
21:02:31 <nielsm> andythenorth: maybe also try adding a PerformanceMeasurer with PFE_AI13 or something just after the for(;;) on line 671
21:02:35 <nielsm> to get the entire driver loop
21:02:47 <andythenorth> ok I'll have to cook dinner and then try :)
21:02:52 <andythenorth> interesting problem though
21:02:52 <nielsm> :D
21:03:19 <TrueBrain> milek7_: ah, you are only loading the savegame :) I was also wondering what happens if it runs a few ticks :)
21:03:27 <nielsm> measuring the QZ_PollEvent() loop on 674 might also be interesting
21:04:54 <andythenorth> I have all the stats from the run
21:06:37 <andythenorth> I don't know what's normal, but -[OTTD_QuartzView drawRect:] is pretty busy
21:07:10 <milek7_> TrueBrain: yes, but it is ok for now, it gathers enough crashes ;p
21:07:20 <TrueBrain> fair enough :)
21:08:07 <milek7_> 75kB is still huge testcase for AFL, but I don't know if it can be lowered further
21:08:41 <andythenorth> for 3s run time with train window open, OTTD_QuartzView drawRect is 90ms
21:09:07 <TrueBrain> hmm .. with the way savegames are created, it won't be very efficient in trying special cases in any case
21:09:24 <nielsm> andythenorth: that's about 1 ms per frame, that's perfectly acceptable
21:09:26 <andythenorth> for 3s run time with train window shaded OTTD_QuartzView drawRect is 20ms
21:09:33 <nielsm> 3 seconds should have about 100 frames rendered
21:09:34 <andythenorth> this is only a single sample though
21:09:50 <nielsm> or well, 2 ms per frame if running at half speed
21:09:51 <andythenorth> might be irrelevant noise
21:10:04 <TrueBrain> milek7_: for now for me it doesn't even want to pick up any new path :P
21:10:38 <milek7_> timeout too low/hits memory limit?
21:10:39 <frosch123> andythenorth: nielsm: http://devs.openttd.org/~frosch/framerate.mp4 <- that is a unoptimised debug build with a big #coop game. the vehicle list also has significant effect there, if nothing else is on the screen
21:11:33 <frosch123> it eats 3 fps
21:11:59 <nielsm> looks like it gets invalidated every tick
21:12:33 <frosch123> likely, it for sure does not track when vehicles get new sprites :)
21:12:38 <nielsm> but in your video the rendering time also jumps massively when it opens, it doesn't do that in andy's
21:12:56 <TrueBrain> milek7_: nah, I was being silly with an old patch of mine
21:13:15 <TrueBrain> what I miss in your patch .. afl uses stdin with its fuzzed attempt .. how does it end up in the intro-game for you?
21:13:24 <peter1138> Did I break vehicle lists? :p
21:13:37 <peter1138> If so it's been a while o_O
21:13:48 <milek7_> afl-fuzz -f takes output path
21:13:56 <TrueBrain> ah, lol
21:14:39 <Samu> need to simplify this code https://pastebin.com/Q3UEyK2H
21:14:51 <andythenorth> peter1138: no progress without breakage :)
21:15:09 <TrueBrain> meh, where savegames used to be loaded no longer does .. *sad panda*
21:15:18 <TrueBrain> okay, this patch is 10+ years old :P
21:15:18 <peter1138> If it's 'invalidated' every tick, might be a dodgy gui timer...
21:16:42 <milek7_> set -v/-m/-s/-b to null too
21:18:48 <DorpsGek_III_> [OpenTTD/OpenTTD] michicc commented on pull request #7935: Add: Option for a new transfer feeder payment algorithm https://git.io/JvUeF
21:19:16 <frosch123> looks like the window is invalidated whenever a vehicle loads
21:19:26 <frosch123> so for a savegame this size, it is every game tick
21:20:14 <TrueBrain> okay, this needs a bit more fiddling than I was hoping for .. but that might be a nice thing to do, while I wait for freaking cloudfront to destroy itself
21:21:41 <andythenorth> BUT THE CLOUD
21:21:43 <andythenorth> or something
21:21:59 <andythenorth> so TrueBrain I shouldn't move to Docker + Kubernetes at work? o_O
21:22:15 <TrueBrain> Docker, yes
21:22:16 <TrueBrain> Kubernetes, no
21:22:22 <TrueBrain> well, unless you have 10 devops there
21:22:26 <TrueBrain> in that case, go for it
21:22:28 <TrueBrain> send them on training
21:22:30 <TrueBrain> for 2 months
21:22:30 <TrueBrain> plz
21:22:58 <TrueBrain> this cloudfront is "in progress" for over an hour now
21:23:00 <TrueBrain> getting a bit old
21:23:02 <andythenorth> I've been told I can never attact any devops until we're using cool modern tech like k8s
21:23:07 <andythenorth> attract *
21:23:25 <andythenorth> but to use tech like k8s I need devops to look after it, as it is a shitload more work than we do now
21:23:59 <andythenorth> so I need to do a load of work I can't do because I don't have the devs to adopt the cool tech so we can attract devs so we can use more cool tech so we can attract devs
21:24:20 <TrueBrain> something something chicken egg
21:24:23 <andythenorth> otoh, this was recruitment consultant advice
21:24:49 <TrueBrain> too bad you are located in the wrong country; otherwise I would have helped out :P
21:24:54 <frosch123> maybe make software for banks and insurances instead
21:25:00 <andythenorth> I CAN'T AFFORD A TRUEBRAIN
21:25:03 <andythenorth> $1m
21:25:14 <TrueBrain> okay, I will halve my fee for you
21:25:17 <TrueBrain> if you think that is my fee :P
21:26:02 <andythenorth> zimbabwe dollars?
21:26:03 <andythenorth> o_O
21:27:01 <frosch123> lowercase m is milli already
21:28:19 <glx> just opening the console in main menu slows everything for me
21:28:46 <TrueBrain> pro-tip: don't do that
21:35:26 <andythenorth> oh there's an AI ranking thing in forums
21:35:29 <andythenorth> how rare :)
21:35:30 <TrueBrain> okay, this cloudfront distribution starts to annoy me ...
21:37:40 *** tokai|noir has joined #openttd
21:37:40 *** ChanServ sets mode: +v tokai|noir
21:44:38 *** tokai has quit IRC
21:47:41 *** nielsm has quit IRC
21:53:24 *** WormnestAndroid has quit IRC
21:54:09 *** WormnestAndroid has joined #openttd
22:02:19 *** Wormnest has joined #openttd
22:02:26 <TrueBrain> okay, I really don't like how long this cloudfront takes ... especially as I cannot continue with the rest till it "unbreaks"
22:02:27 <TrueBrain> meh
22:02:38 <TrueBrain> anyway ... if that works, adding docs should be simple :P
22:10:01 <TrueBrain> milek7_:
22:10:02 <TrueBrain> - if (SaveOrLoad("opntitle.dat", SLO_LOAD, DFT_GAME_FILE, BASESET_DIR) != SL_OK) {
22:10:02 <TrueBrain> + if (SaveOrLoad("/dev/stdin", SLO_LOAD, DFT_GAME_FILE, BASESET_DIR) != SL_OK) {
22:10:12 <TrueBrain> allows -M / -S :)
22:10:34 <frosch123> haha, the ai ranking site includes all those "idle" ais... funnily they perform differently, and some (non-crashing) ais perform worse
22:10:52 <TrueBrain> frosch123: url?
22:10:59 <frosch123> https://openttd.mousetail.nl/
22:11:23 <frosch123> https://www.tt-forums.net/viewtopic.php?f=65&t=86439 <- background
22:11:54 *** sla_ro|master has quit IRC
22:11:58 <TrueBrain> realtime, funny
22:12:34 <frosch123> also ai forks perform worse than their originals. ludiai afterfix is worse than ludiai, nonocab is worse than nocab
22:16:18 *** Wormnest has quit IRC
22:16:36 *** Wormnest has joined #openttd
22:16:37 <andythenorth> so do I still need to compile the mac port with timing info?
22:16:52 <andythenorth> or do we have a cause?
22:18:12 <milek7_> TrueBrain: right, i didn't thought of that
22:18:20 <milek7_> how much runs/s you get?
22:18:41 <TrueBrain> 16 runs/s per instance
22:19:08 <TrueBrain> can run like ... 12 or so if I would like to
22:19:16 <TrueBrain> or we can rent an AWS instance for an hour :P
22:19:56 <milek7_> AWS is horribly expensive
22:20:15 <TrueBrain> not too bad if you only need it for an hour :D
22:20:46 <TrueBrain> with stdin the diskio is a lot lower btw, which is nice
22:22:21 <Samu> there is a bug with build dock, it doesn't include the price of clearing the grass of the sloped tile
22:22:30 <Samu> is that intended?
22:23:48 <Samu> or the road, or the trees, or whatever it is there
22:25:10 <Samu> fixing it is easy, but regression will fail, due to price differences
22:25:18 <Samu> should I do a PR?
22:30:04 *** tokai has joined #openttd
22:30:04 *** ChanServ sets mode: +v tokai
22:30:18 <TrueBrain> milek7_: btw, if I would guess, most crashes are caused because the map itself is never validated to be valid after loading .. it is simply assumed all bits are in order
22:30:24 <TrueBrain> so it is not really a surprise it crashes this often
22:30:40 <TrueBrain> should never lead to buffer-overflows etc, ofc
22:31:14 <TrueBrain> (look at map_sl.cpp to get what I mean btw :P)
22:33:36 <milek7_> isn't it a bit tautological? if data would be validated it wouldn't crash, obviously ;P
22:34:39 <TrueBrain> what you say, sure, but that was not what I was saying, was I ? :)
22:35:37 <andythenorth> so...water depth
22:35:48 <andythenorth> will I be designing a 4th ship set? :)
22:35:49 *** Flygon has joined #openttd
22:35:56 <frosch123> what is water depth used for?
22:36:29 <Samu> I'm using it to make ships move slow or faster depending on distance to shore (actually depth)
22:36:56 <frosch123> disallow landscaping deep sea?
22:36:58 *** tokai|noir has quit IRC
22:37:07 <milek7_> though except from afterload migration, it is just loaded and isn't touched much
22:37:26 <TrueBrain> and it is afterload that causes most of the crashes for me
22:37:28 <milek7_> i guess most crashes from invalid map array will result when it actually starts running
22:37:31 <TrueBrain> (as it starts using the data)
22:37:31 <andythenorth> it could be used to ban ships with low freeboard from deep sea
22:37:41 <andythenorth> and ships with deep draught from shallow water
22:37:44 <Samu> oh, my AI performs worse, because mousetail is testing it with easy preset, which the original didn't care about
22:37:47 <TrueBrain> so indeed, if you run a few ticks, I guess a lot more crashes happen :)
22:37:47 <Samu> frosch123,
22:38:00 <andythenorth> not sure ship differentiation is fun or not yet
22:38:00 <TrueBrain> it is just totally unvalidated data
22:38:09 <TrueBrain> I wonder how difficult it is to validate the data tbh
22:38:20 <TrueBrain> more curious I am, if there are crashes in terms of buffer-overflow etc
22:38:25 <Eddi|zuHause> andythenorth: we need the ability to build deep canals then
22:38:31 <TrueBrain> (as a result of a invalid map data)
22:38:41 <andythenorth> I believe that's a possibility Eddi|zuHause
22:38:47 <andythenorth> if I've understood correctly
22:38:58 <TrueBrain> milek7_: possibly even more interesting is to see what happens with loading of newgrfs
22:39:06 <milek7_> i have seen at least one buffer overflow
22:40:49 <frosch123> andythenorth: maybe 3-tile wide canals are deeper?
22:40:56 <andythenorth> maybe
22:41:08 <andythenorth> unrelated-related: could ships respect drive side?
22:41:15 <andythenorth> I often build 2 tile wide canals
22:41:37 <andythenorth> I don't want colliding ships for gameplay reasons, but it would be nice if they avoided overlapping in simple cases :P
22:42:50 <frosch123> i wonder whether you can control driving side by making path finder cost different for turning left < driving straight < turning right
22:43:38 <frosch123> that may cause the pathfinder to turn left as early as possible, and turn right as late as possible
22:43:58 <frosch123> so taking the inner side on a left curve, and the outer side on a right curve
22:45:29 <frosch123> hmm, i guess the shortest path is still to cut the corner
22:45:34 <andythenorth> OpenTTD Renaisance edition
22:45:39 <Eddi|zuHause> for ships, driving side is on the right, wordlwide
22:45:45 <andythenorth> OpenTTD Revival
22:45:55 <Eddi|zuHause> so you turn right first, and left last
22:46:39 <frosch123> he, i expected ships to be brittish-dominated
22:47:53 <TrueBrain> milek7_: I added an _exit(0) in error(), to catch crashes that we did not pick up on via asserts and not_reached .. takes longer for it to find, but it also finds issues there
22:48:02 <Eddi|zuHause> but i don't think pathfinder costs are the correct way to do this, you want to choose between equivalent paths
22:48:02 <TrueBrain> those are uncaptured issues :)
22:48:39 <frosch123> Eddi|zuHause: yes, and i assume it will pick the first one found among the equivalent ones
22:48:59 <milek7_> https://pastebin.com/raw/m2hk2jSR https://milek7.pl/.stuff/id:000006,sig:11,src:000000,op:havoc,rep:4
22:49:08 <milek7_> here's one in linkgraph, for example
22:49:10 <Eddi|zuHause> frosch123: i think that needs messing in the pathfinder internals
22:50:21 <Eddi|zuHause> but i don't know enough about that
22:50:27 <TrueBrain> milek7_: https://pastebin.com/EZx8iw58 <- found one in SlList :)
22:51:59 <TrueBrain> okay, there are some interesting crashes in there
22:52:06 <TrueBrain> which give room ... for fun :P
22:52:22 <TrueBrain> malloc_printerr (str=str@entry=0x7ffffef98800 "free(): invalid next size (fast)") at malloc.c:5350
22:53:06 <TrueBrain> uint64 aimed_inflation = (_economy.old_max_loan_unround << 16 | _economy.old_max_loan_unround_fract) / _settings_game.difficulty.max_loan; <- haha, that one is easy to reproduce :D
22:53:08 <TrueBrain> how nasty :)
22:56:30 <TrueBrain> ReadGRFSpriteOffsets (container_version=<error reading variable: access outside bounds of object referenced via synthetic pointer>)
22:56:34 <TrueBrain> also doesn't sound good :P
22:57:37 <andythenorth> ha ha 1969 in game again
22:57:39 <TrueBrain> milek7_: I just hit the same one as you did :)
22:57:44 <andythenorth> time to turn the clock back to 1968
22:58:05 <andythenorth> what if date cheat wasn't a cheat, and player could just click on year to change it :P
22:58:08 <andythenorth> re-framing
22:58:10 <andythenorth> daylength solved
22:58:12 <TrueBrain> milek7_: for some reason that one feels like you can write in random memory :P
22:58:59 <andythenorth> evil-train.grf?
22:59:25 <TrueBrain> these are all: evil-server.ip :P
23:00:00 <TrueBrain> "malloc(): memory corruption"
23:00:01 <TrueBrain> fun :D
23:00:32 <TrueBrain> okay, looking at the crashes that are not caught by our own code are fun ones :)
23:02:25 <milek7_> though release builds have asserts disabled, so they could still end up as memory safety issues when not caught early by assert
23:02:38 <TrueBrain> yup
23:02:50 <milek7_> oh, i didn't know openttd has security page
23:02:54 <milek7_> https://security.openttd.org/en/
23:03:01 <TrueBrain> we even have CVEs :)
23:03:20 <TrueBrain> hmm, the savegame for "timeouts" are not stored by afl? Awh
23:03:30 <frosch123> we stopped having cves when noone fixed them anymore
23:03:41 <milek7_> 'hangs' directory
23:03:44 <TrueBrain> empty
23:05:57 <andythenorth> OpenTTD continues to deliver lolz
23:06:23 <andythenorth> I played since 2008, but I only just tried 'town growth: slow' and 'towns can build roads: no'
23:06:33 <andythenorth> wish I'd done that before, it's a much better game :P
23:07:27 <TrueBrain> okay, that is fun, fuzzing OpenTTD :P
23:07:38 <TrueBrain> solving it, is not trivial
23:07:40 <TrueBrain> which is a bit sad :P
23:11:37 *** HerzogDeXtEr has quit IRC
23:14:01 <peter1138> Just make individual bug reports for everything reported... and then leave it to nobody else to deal with ;)
23:17:26 <andythenorth> oof I play OpenTTD like an idiot :)
23:18:02 <andythenorth> I always look at industry production when assigning vehicles
23:18:12 <andythenorth> instead of industry production * 0.69 or so
23:18:32 <peter1138> Oh yes, I was going to connect to my OpenTTD server and ... well, play.
23:18:33 <peter1138> Maybe.
23:18:44 <andythenorth> OpenTTD is not bad
23:18:50 <andythenorth> I mean it's not WoT Blitz
23:18:59 <andythenorth> positives and negatives :P
23:19:09 <frosch123> s/bad/evil/
23:19:42 <andythenorth> I have played 2 long games, been playing every day since Dec 23rd or so
23:19:56 <andythenorth> not sure how long one of them is, I keep resetting date :P
23:20:56 <peter1138> Oh, there's already people on it. Hmm.
23:21:05 <peter1138> I wonder if the map is any good :p
23:21:44 <peter1138> Hmm, could be worse.
23:22:00 <andythenorth> 1.10 beta 2?
23:27:38 <peter1138> Yar
23:27:50 <peter1138> Lots of water, heh
23:28:25 <andythenorth> peter1138: what's it called? :P
23:33:52 *** Arveen has joined #openttd
23:35:36 *** andythenorth has left #openttd
23:38:43 *** frosch123 has quit IRC
23:40:37 *** Arveen2 has quit IRC
23:46:41 *** supermop_work has quit IRC
23:53:07 <TrueBrain> https://docs.dev.openttd.org/ THE START IS THERE
23:53:08 <TrueBrain> OMG
23:55:00 *** Progman has quit IRC
23:55:29 *** Wolf01 has quit IRC