Times are UTC Toggle Colours
00:06:18 <DorpsGek_II> [OpenTTD/OpenTTD] gregcarlin updated pull request #7003: Feature #6918: Add option to adjust font size separately from GUI size. https://git.io/fhLFX 00:09:36 <DorpsGek_II> [OpenTTD/OpenTTD] gregcarlin updated pull request #7003: Feature #6918: Add option to adjust font size separately from GUI size. https://git.io/fhLFX 00:10:01 <DorpsGek_II> [OpenTTD/OpenTTD] gregcarlin commented on pull request #7003: Feature #6918: Add option to adjust font size separately from GUI size. https://git.io/fhs6u 00:11:04 <DorpsGek_II> [OpenTTD/OpenTTD] gregcarlin commented on pull request #7003: Feature #6918: Add option to adjust font size separately from GUI size. https://git.io/fhs6a 00:26:56 *** Flygon has joined #openttd 01:13:44 *** Thedarkb-X40 has joined #openttd 01:25:40 *** mboy has joined #openttd 01:26:17 <mboy> can anyone help me to add a patch to my game 01:32:24 <Eddi|zuHause> @topic get 3 01:32:24 <DorpsGek> Eddi|zuHause: Don't ask to ask, just ask 01:33:11 <dwfreed> @version 01:33:12 <DorpsGek> dwfreed: The current (running) version of this Supybot is 0.83.4.1. The newest version available online is 0.83.4.1. 01:33:17 <dwfreed> ooh, supybot 01:33:57 <mboy> how do i add polyline track buidling patch 01:34:12 <Eddi|zuHause> how far did you get? 01:34:14 <dwfreed> fun alias for support channels: alias add to echo : [$*] 01:34:20 <glx> can you compile ? 01:34:36 <dwfreed> then "@to foo command" 01:34:43 <dwfreed> will direct the output of command at foo 01:34:49 *** HootzMcToke has joined #openttd 01:35:38 <mboy> ive downloaded the file im not sure what to do now 01:36:38 <Eddi|zuHause> ignore the file for now, compile the unmodified game first 01:37:15 <mboy> ummm lol 01:37:58 <Eddi|zuHause> (unless "that file" you downloaded is a binary, then just run that) 01:38:43 <mboy> oh ok i did read something about the file being binary 01:39:07 <mboy> assuming the file is not binary what steps do i need to take 01:39:44 <Eddi|zuHause> read up on what a binary is. 01:40:07 <HootzMcToke> Hello everyone, Ive been playing OpenTTD off and on over the years, i'm looking into making custom faces for the owners based on attendees of a lan. I've been looking for hours but can't find anything related to replacing the faces. If this is even a possibility could someone point me in the right direction, i feel silly for not being able to find a definitive answer 01:42:00 <Eddi|zuHause> HootzMcToke: face modification is very very limited, but a basic NewGRF doing only simple sprite replacement should work 01:42:41 <Eddi|zuHause> HootzMcToke: you might have to look up the sprite ids of the original face components on some page buried in the wiki somewhere 01:42:48 <Eddi|zuHause> or in the code 01:43:12 <HootzMcToke> ok cool, thanks for the info it gives me a great place to start. 01:48:12 <Samu> who's gonna help me simplify that code? wanted to do that thing only once for the 4 TrackBits with the help of math magic https://paste.openttdcoop.org/pz1htdtur 01:48:41 <Samu> or im gonna repeat too much when i code the rest 01:49:23 <mboy> so is the polyline track building patch a binary or will i need to compile the unmodified game 01:49:41 <Samu> https://imgur.com/wQuDOi5 01:49:59 <Eddi|zuHause> ... yes... ? 01:51:01 <Eddi|zuHause> frankly, you're not telling us anything, and you're not showing a lot of technical expertise. this isn't a basis to help you. 01:53:31 <Samu> I never know when Eddi|zuHause is talking to me 01:53:39 <Samu> was that for me? 01:55:34 <dwfreed> Samu: doubt it 02:00:08 <Samu> would need some kind of rotating bits based on the first track I work with 02:00:14 <Samu> i dunno 02:00:54 <Samu> btw, 90 degrees is still a thing for ships= 02:00:55 <Samu> ? 02:01:58 <Samu> looks like it is, just checked 02:04:09 *** mboy has quit IRC 02:13:36 *** Samu has quit IRC 02:20:54 *** Mazur has quit IRC 02:29:53 *** Mazur has joined #openttd 02:57:49 *** glx has quit IRC 03:19:53 *** Wormnest has joined #openttd 03:30:52 *** Wormnest has quit IRC 04:01:14 *** Thedarkb-X40 has quit IRC 04:13:19 <DorpsGek_II> [OpenTTD/OpenTTD] odisseus commented on pull request #6931: Change: Prevent town growth from blocking ships https://git.io/fhsDw 05:15:40 *** Progman has joined #openttd 05:38:59 *** Progman has quit IRC 06:47:36 *** Heiki has quit IRC 06:47:50 *** Heiki has joined #openttd 06:59:19 *** Progman has joined #openttd 07:03:13 *** Progman has quit IRC 08:09:48 *** HootzMcToke has quit IRC 11:15:28 *** IvanLeshev has joined #openttd 11:15:36 *** IvanLeshev has left #openttd 11:39:02 *** Progman has joined #openttd 11:40:05 *** Alkel_U3 has joined #openttd 12:25:03 *** Borg has joined #openttd 13:20:03 *** Samu has joined #openttd 13:20:50 *** Flygon has quit IRC 13:26:25 <Samu> hi 13:55:21 *** Gabda has joined #openttd 14:39:39 <DorpsGek_II> [OpenTTD/OpenTTD] Eddi-z commented on pull request #6931: Change: Prevent town growth from blocking ships https://git.io/fhGZR 14:43:39 *** nielsm has joined #openttd 14:52:14 <peter1138> Hmm, maybe time for another cuppa. 14:53:38 <Samu> Eddi|zuHause https://imgur.com/wQuDOi5 I am planning to do somethng like that 14:54:20 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on pull request #6931: Change: Prevent town growth from blocking ships https://git.io/fhGnr 14:55:06 <Samu> i guess i better put the screenshot there 14:57:26 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #6931: Change: Prevent town growth from blocking ships https://git.io/fhGnj 15:05:49 *** wodencafe has quit IRC 15:12:59 *** Wormnest has joined #openttd 15:16:45 *** wodencafe has joined #openttd 15:24:41 *** Progman has quit IRC 15:33:46 *** sla_ro|master has joined #openttd 15:43:46 <Samu> i have the code ready, testing 15:44:04 <Samu> well, it's not optimized 15:44:08 <Samu> but, sec 15:46:19 <Samu> https://paste.openttdcoop.org/puyn9xqgw 15:46:23 <Samu> how to simplify! 15:47:53 <Samu> erps 15:48:05 <Samu> should never reach here, but it reached, i fail already 15:49:22 <Samu> needs more checks, brb 15:51:02 <nielsm> make it table based instead of a large switch 15:52:14 <Samu> https://paste.openttdcoop.org/pomxkfugj added lines 84, 85 15:52:19 <Samu> a table? 15:53:18 <Samu> i know how to make tables on squirrel, but on c++ i guess I don't, or don't remember 15:53:30 <nielsm> an array of structs 15:53:55 <nielsm> "table based" is a general term for talking about using lookups of static data, instead of code paths 15:54:45 <Samu> can you point me to an example in the code, will try to mimic 15:57:04 <Eddi|zuHause> i wouldn't go down to trackbit level 15:57:09 <Eddi|zuHause> just check the tile itself 15:58:56 <Eddi|zuHause> if (water tile && appropriate slope) {do stuff} 15:59:30 <nielsm> even just if it has water at all, don't even check slope 15:59:30 <Eddi|zuHause> and the whole +/- 1 tilediff can probably be factored out 16:00:45 <Eddi|zuHause> nielsm: the shore tiles are internally counted as water tiles, so you do need to exclude those 16:00:57 <nielsm> ah 16:01:20 <Eddi|zuHause> however, i would include river slopes, even though ships don't actually travel on those 16:07:51 <Eddi|zuHause> pseudocode: https://paste.openttdcoop.org/pvinp1p38 16:08:26 <Eddi|zuHause> although the +/- might be backwards 16:09:28 <nielsm> https://0x0.st/sRC5.txt 16:09:43 <nielsm> :P 16:10:09 <Eddi|zuHause> your way is slightly more pythonic 16:10:44 <Eddi|zuHause> which isn't all that practical if we're writing C++ :p 16:16:51 <peter1138> You can do it with a table of mostly 0, 0 entries. 16:17:18 <peter1138> A table indexed directly by slope is preferable to a loop checking for trackbits. 16:20:23 <nielsm> but it's longer and possibly less readable 16:20:35 <nielsm> (the difference in performance is probably insignificant) 16:20:47 <peter1138> What's longer? The table? 16:20:51 <nielsm> yes 16:20:54 <peter1138> Doesn't matter. 16:21:16 <peter1138> You only need to look at one entry, not all of them. 16:21:23 <nielsm> for readability 16:21:30 <peter1138> And that is better than a loop. 16:22:17 <peter1138> Sure the performance by itself is insignificant, but when you add every single little insignificant performance improvement together, it matters. 16:22:40 <peter1138> I think the larger table is likely more readable than the loop anyway. 16:24:01 <peter1138> And also established practice within our code. 16:24:09 <nielsm> or use eddis switch lookup 16:24:16 <peter1138> There's probably already a table or function that'll do the lookup. 16:24:31 <peter1138> nielsm, a switch is not a lookup. 16:25:04 <peter1138> That switch is 4 conditionals that need to be evaluated, mumble mumble branch prediction mumble mumble. 16:26:19 *** Gabda has quit IRC 16:36:43 <Eddi|zuHause> i'm fairly confident the compiler will optimize the crap out of that switch 16:37:39 <peter1138> Probably will. Not so much the loop, though. 16:38:26 <Samu> isnt checking the trackbit more precise? 16:39:09 <peter1138> How so? 16:39:37 <Samu> ah, only for the first check 16:39:53 <Samu> if IsSlopeWith1CornerRaised? 16:40:02 <Eddi|zuHause> we don't really need the precision 16:40:51 <Samu> i still need to know the slope configuration 16:40:52 <peter1138> Water tiles don't have optional track bits, and the slopes you're interested in can only have 1 specific trackbit layout. There doesn't seem to be any need to check that. 16:42:01 <peter1138> Where you set up water_track probably involves lots of unnecessary lookups and calculations from the slope in the first place, so if you only need the slope... 16:42:10 <Samu> ok, I'll get the slope then 16:43:14 <peter1138> In fact you are breaking it down into track bits and making it more complex as you need to check lots of things. 17:13:26 *** HerzogDeXtEr has joined #openttd 17:15:43 *** Gja has joined #openttd 17:16:46 <Samu> there is a _corner_to_trackbits 17:16:52 <Samu> will try to use it 17:18:12 <Eddi|zuHause> <peter1138> Probably will. Not so much the loop, though. <-- dunno, modern compilers should understand the concept of unfolding small loops, like do 8 iterations at a time instead of 1 17:19:52 <Eddi|zuHause> at least my compiler construction lecture from 10 years ago had that concept, and it said "all the concepts in here are already 20 years old" 17:20:23 <milek7> maybe at -O3 17:20:40 <Eddi|zuHause> dunno what we use 17:20:43 <Sacro> -funroll_loops 17:22:52 <Eddi|zuHause> the concept debated back then was in context of processors that contain multiple instructions in one opcode, but i think that is a dead concept nowadays. and true parallelization was a huge questionmark 17:23:23 <Eddi|zuHause> i think that has not changed much... 17:25:40 <milek7> for VLIW there is that 'mill cpu' vaporware 17:26:39 <Eddi|zuHause> it was before dual core processors became "mainstream" 17:27:06 <Borg> Eddi|zuHause: what arch had this? 17:27:23 <milek7> itanium? 17:27:36 <Borg> x86 have single opcode = multiple mikroinstructions.. 17:27:38 <Eddi|zuHause> yeah, that intel server thingie that went nowhere 17:28:14 <Borg> but I doubt they ever go into different pipelines.. 17:28:41 <Eddi|zuHause> no, it was above the "pipeline" level 17:29:36 <Eddi|zuHause> Borg: think of it like the MMX opcodes, where you can do 4 separate 8-bit instructions on a 32bit word in parallel 17:29:52 <Borg> thats not separate instructions. 17:29:58 <Borg> thats mikroinstructions.. that go to pipelines 17:30:05 <Borg> paralelism.. 17:30:21 <milek7> https://en.wikipedia.org/wiki/IA-64 17:30:23 <Eddi|zuHause> just on a larger scale, so you have 4 32-bit instructions on a 128bit word 17:30:35 <Borg> the biggest single opcode multiple instructions. could be CMP8XCHG.. 17:30:42 <Borg> or sth like that :) never used it tho 17:30:56 <Borg> lets google mnemonic 17:31:14 <Borg> ahh CMPXCHG.. familly.. 17:31:53 <Eddi|zuHause> Borg: i've never really concerned myself with this low level stuff 17:32:06 <Borg> well... 20 years ago.. I did 17:32:15 <Borg> but it was 386 486 586 era :) was fun 17:34:12 <Eddi|zuHause> "As of 2008, Itanium was the fourth-most deployed microprocessor architecture" <-- that means almost insignificant? 17:34:55 <Borg> ;] 17:39:52 *** Gabda has joined #openttd 17:43:42 *** frosch123 has joined #openttd 17:44:29 <Samu> sorry, i'm noob, can't seem to understand tables 17:44:34 <Samu> struct { TileIndex opposite_tile, next_tile_1, next_tile_2; TrackBits opposite_track, next_track_1, next_track_2; } table[] = { 17:44:34 <Samu> { TileDiffXY(-1, 1), TileDiffXY(0, 1), TileDiffXY(-1, 0), TRACK_BIT_LEFT, _settings_game.pf.forbid_" target="_blank">game.pf.forbid_90_deg ? TRACK_BIT_X | TRACK_BIT_RIGHT : TRACK_BIT_3WAY_NE, _settings_game.pf.forbid_" target="_blank">game.pf.forbid_90_deg ? TRACK_BIT_Y | TRACK_BIT_RIGHT : TRACK_BIT_3WAY_SE }, 17:53:23 <nielsm> you can't put conditionals in static data 17:53:42 <Samu> here's my table https://paste.openttdcoop.org/pnvxcsvic 17:53:42 <nielsm> and caring about the 90 deg turns setting is overkill for this 17:54:10 <nielsm> besides what if the setting is flipped after the check 17:54:28 <Samu> isn't it rechecked? 17:54:37 <nielsm> not when the house is already built 17:57:06 <nielsm> and besides if you build a route that depends on this being traversable you deserve it to fail: https://0x0.st/s7r7.png 17:58:07 *** glx has joined #openttd 17:58:07 *** ChanServ sets mode: +v glx 17:58:14 <nielsm> either be pessimistic and assume the setting is always enabled, or optimistic and assume it's always disabled 17:59:04 <Eddi|zuHause> i don't know why you make it this complicated, you just need to check whether the (1,1) tile is a valid tile that is either flat, or the opposite slope of whatever the starting tile is 17:59:11 <nielsm> yes 17:59:13 <nielsm> seriously 17:59:57 <nielsm> I'm going to disapprove a changed PR that's based on trackbits when it could be just as good based on slope checks 18:01:59 *** synchris has joined #openttd 18:04:16 <Samu> sec 18:05:15 <Samu> got this atm 18:05:17 <Samu> https://paste.openttdcoop.org/ptftckcwn 18:05:24 <Samu> let me read 18:05:24 *** gelignite has joined #openttd 18:11:31 <Samu> if i check the opposite_track first, or rather, it's slope/corner 18:11:47 <Samu> it's not automatically true 18:11:56 <Samu> will have to check the 2 other tiles yet 18:13:28 <Samu> will i need to check tracks on the other 2 tiles? that is the question 18:14:32 <Samu> the pessimistic approach: no 18:15:07 <Samu> unless it's a aqueduct 18:15:23 <Samu> or a lock 18:15:27 <Samu> or a depot 18:15:39 *** Wolf01 has joined #openttd 18:15:42 <Samu> meh, track bit seems to do all those checks itself 18:16:20 <nielsm> please accept that you can't protect players against all kinds of own stupidity 18:16:22 <Wolf01> It's meh... Wolfo! 18:19:17 <Samu> ok, the opposite tile check doesn't require to be a trackbit check at least 18:19:27 <Samu> brb changing 18:20:34 *** Gabda has quit IRC 18:29:43 <Eddi|zuHause> you misspelled 01 as o! 18:30:08 <Wolf01> I often misspell my nick as Wolfolo 18:31:36 <Wolf01> And I really can't understand who else could use that nick, I often have problems registering to services because both Wolf01 and Wolfolo are taken 18:32:02 <acklen_> Wolfool isn't quite the same 18:33:55 <Wolf01> My third nick is a name, so I can't even try to use it 18:42:24 *** Gabda has joined #openttd 19:14:06 <Samu> god, im working with slopes, i feel blind, dont even know if there's water tracks 19:14:52 <nielsm> if it's a water tile and it has slopes, it has "water tracks" 19:15:59 <Samu> but what if it's flat 19:16:08 <nielsm> then it has no slopes 19:16:23 <nielsm> a flat water tile has all the tracks by definition 19:16:37 <Samu> not true 19:17:25 <Samu> depots/locks/aqueducts/buoys, :( 19:17:35 <Samu> makes me do more checks 19:18:13 <nielsm> and what if someone removes those features from the tile? 19:18:16 <nielsm> or adds them? 19:18:26 <nielsm> you cannot protect a player from their own stupidity 19:18:30 <nielsm> there are always more cases 19:19:32 <nielsm> https://github.com/OpenTTD/OpenTTD/blob/master/src/water_cmd.cpp#L1234 19:19:41 <nielsm> see this part? 19:19:41 <nielsm> case WATER_TILE_CLEAR: ts = IsTileFlat(tile) ? TRACK_BIT_ALL : TRACK_BIT_NONE; break; 19:19:44 <Samu> this is not gonna work, there's always something I'm gonna miss 19:20:39 <Samu> there's various water tile types 19:21:36 <nielsm> you cannot protect a player from their own stupidity 19:21:38 <nielsm> there are always more cases 19:21:47 <Samu> and then there are buoys, which are station tiles 19:22:12 <Samu> and aqueduct, which is tunnelbridge 19:22:15 <nielsm> yeah that sucks doesn't it 19:22:44 *** andythenorth has joined #openttd 19:23:09 <nielsm> maybe you should not have built a route that would be broken by a single corner tile being modified 19:23:10 <andythenorth> yo 19:23:18 *** chomwitt has joined #openttd 19:28:41 <Samu> buoys don't block ships 19:29:10 <Samu> i still feel getting the trackbit is the better way, even for the opposite tile 19:29:48 <Samu> only the main tile seems okay not to check for tracks 19:34:16 <Samu> there are rail tiles that also have water 19:36:01 <andythenorth> hmm 19:36:25 <andythenorth> so I generate graphics using pipelines 19:36:32 <andythenorth> which are composed of individual units 19:36:44 <andythenorth> I feed them an input spritesheet, and they spit out a result and save it 19:36:55 <andythenorth> should pipelines be idempotent? o_O 19:37:24 <Eddi|zuHause> depends? 19:37:37 <nielsm> generally I'd expect identical inputs to yield identical outputs 19:37:53 <nielsm> (if you also consider "current date and time" as part of the input) 19:37:55 <andythenorth> so running the pipeline a second time shouldn't produce a different output? o_O 19:38:22 <andythenorth> the pipeline relies on a config object 19:38:29 *** HerzogDeXtEr has quit IRC 19:38:35 <andythenorth> I had the horrible idea of having the pipeline modify the config when it runs 19:39:03 <andythenorth> oh, and also it runs in a worker pool of ~16 threads, each taking one pipeline 19:39:03 <andythenorth> with non-predictable order :P 19:39:06 <Eddi|zuHause> "idempotent" means "take the output, and feed it again as the input" 19:39:26 <andythenorth> oh we don't use it that way at work 19:39:40 <Eddi|zuHause> you probably mean "stable" 19:39:54 <Eddi|zuHause> run the algorithm twice with the same input 19:39:57 <andythenorth> yes 19:40:03 <andythenorth> wikipedia defines it that way 19:40:05 <andythenorth> "whereby they can be applied multiple times without changing the result beyond the initial application" 19:40:06 <Eddi|zuHause> "deterministic" 19:40:25 <andythenorth> the maths definition isn't what wikipedia says 19:40:30 <andythenorth> https://en.wikipedia.org/wiki/Idempotence 19:40:41 <Eddi|zuHause> andythenorth: it is, you're just misinterpreting what "multiple times" is 19:40:43 <andythenorth> 1x1=1 makes sense 19:41:11 <andythenorth> https://en.wikipedia.org/wiki/Idempotence#Computer_science_meaning 19:42:12 <Eddi|zuHause> that also has nothing to do with what you thought it meant 19:42:48 <andythenorth> I am reading the rest 19:43:30 <andythenorth> so why are the examples wrong? 19:43:37 * andythenorth is in pure interest territory now 19:44:39 <Eddi|zuHause> andythenorth: compilers are usually not idempotent, because you cannot use the output as input 19:45:10 <milek7> 'reproducible builds' 19:45:13 <Eddi|zuHause> andythenorth: whereas a database query is idempotent, because the query takes a database and a question, and outputs a database (unchanged) and an answer 19:45:15 <milek7> i have seen 'idempotent' used in sense that eg. repeated http POST won't post twice 19:45:30 <Eddi|zuHause> the database can be used as input for another query 19:45:37 <Eddi|zuHause> or the same query again 19:45:52 <milek7> in that sense, compiler also outputs unchanged source code ;p 19:46:09 <andythenorth> we learnt it from Ansible https://docs.ansible.com/ansible/latest/reference_appendices/glossary.html 19:46:15 <andythenorth> Ansible might be wrong mind you 19:46:41 <andythenorth> https://docs.ansible.com/ansible/latest/reference_appendices/glossary.html#term-idempotency 19:47:00 <Eddi|zuHause> milek7: ok, if you consider that the compiler doesn't make changes to the source code... 19:47:11 <andythenorth> the mathematical definition seems rather stricter 19:47:33 <andythenorth> eh this I did encounter in engineering maths, a *long* time ago 19:47:35 <andythenorth> https://en.wikipedia.org/wiki/Idempotent_matrix 19:47:44 <andythenorth> 1 0 0 1 matrix 19:48:01 <andythenorth> is a nice example when learning matrix multiplication 19:48:17 <andythenorth> ok well that's a way off pipelines :P 19:48:20 <Eddi|zuHause> the identity matrix is a special case of an idempotent matrix 19:48:36 <frosch123> andythenorth: it applies to ansible, if ansible does nothing when you run it a second time 19:48:44 <andythenorth> yes 19:48:45 <Eddi|zuHause> andythenorth: but that glossary definition seems to be the same as the mathematical definition as i know it 19:48:58 <frosch123> you can also call "make" idempotent then :) 19:49:32 <frosch123> but only if your makefiles are correct, which they are not in 90% of cases? 19:49:34 <Eddi|zuHause> well, technically, if it writes access log files, it's now not idempotent anymore 19:50:00 <andythenorth> the playbook doesn't yield the playbook 19:50:11 <andythenorth> so the mathematical analogy doesn't follow afaict 19:50:17 <frosch123> idempotent is not self-reproducing 19:50:24 *** Gja has quit IRC 19:50:35 <Eddi|zuHause> andythenorth: no, but reading from the playbook doesn't change the playbook. you can read the same section again 19:50:37 <frosch123> it's just that it does not change its result again 19:50:49 *** Wormnest has quit IRC 19:51:44 <Eddi|zuHause> andythenorth: example of an operation that is not idempotent is flipping a light switch 19:51:52 <Eddi|zuHause> andythenorth: you flip it once, it's now on 19:51:59 <Eddi|zuHause> andythenorth: you flip it again, it's now not on 19:52:03 <Eddi|zuHause> andythenorth: you flip it once, it's now on 19:52:09 <Eddi|zuHause> err 19:52:11 <Eddi|zuHause> *again 19:52:18 <frosch123> but double-flip is idempotent :p 19:52:26 <Eddi|zuHause> after each operation, result is different than the one before 19:52:42 <andythenorth> so double flip is idempotent, irrespective of input 19:52:48 <Eddi|zuHause> yes 19:53:15 <andythenorth> but the light being on doesn't change the switch? 19:53:18 <andythenorth> or does it? o_O 19:53:23 <andythenorth> hmm it does 19:54:05 <frosch123> "idempotent" is a property the operation, not of the operands/results 19:54:31 <andythenorth> well 19:54:39 <andythenorth> I am now both more and less confused 19:54:41 <andythenorth> at the same time 19:54:42 <Eddi|zuHause> "the light is on" is not an operation 19:54:49 <Eddi|zuHause> "is the light on?" is an operation 19:54:51 <andythenorth> "idempotent" means "take the output, and feed it again as the input" 19:54:54 <andythenorth> ? 19:54:57 <andythenorth> the output is 'on' 19:54:59 <Eddi|zuHause> the "is the light on?" operation is idempotent 19:55:12 <frosch123> mathematically projections are the most-common idempotent functions 19:55:35 <andythenorth> is looking for water tiles idempotent? 19:55:43 <TrueBrain> that after some iterations of f(x), f(x) = x, not? :) 19:55:48 <frosch123> yes, first step is from land to water 19:55:52 <frosch123> then you remain on the same water 19:56:01 <frosch123> so, "nearest water tile" is idempotent 19:56:07 <Eddi|zuHause> TrueBrain: no, that is not idempotence 19:56:13 <andythenorth> what if you build a house on the tile? 19:56:14 <TrueBrain> owh, darn it! 19:56:21 <andythenorth> anyway 19:56:27 <Eddi|zuHause> idempotence is f(f(x))=f(x) 19:56:34 <Eddi|zuHause> the first application can change x 19:56:37 <TrueBrain> and I define x as f(x) 19:56:38 <TrueBrain> HA! 19:56:44 <Eddi|zuHause> but any subsequent application is not changing it 19:56:49 <frosch123> note that f(f(x)) = f(x) does not imply f(x) = x 19:56:52 <TrueBrain> so I was right, LALALALA 19:56:53 *** Gabda_ has joined #openttd 19:56:59 <TrueBrain> *puts fingers in his ears* 19:57:11 <Eddi|zuHause> f(x)=x is a special case 19:57:12 <frosch123> this is a text chat 19:57:27 <TrueBrain> I miss the webcam interaction :( 19:57:39 <Eddi|zuHause> there was webcam interaction? 19:57:43 <frosch123> how many viewers do you have? 19:57:44 <peter1138> hi 19:57:51 <TrueBrain> you really want me to answer that? :P 19:58:13 <frosch123> for ordering appropiate medication 19:58:18 <frosch123> *sufficient 19:58:37 <DorpsGek_II> [OpenTTD/OpenTTD] Gabda87 commented on pull request #6931: Change: Prevent town growth from blocking ships https://git.io/fhGMN 19:58:43 <andythenorth> ok 19:58:47 <andythenorth> so graphics pipelines :P 19:59:04 <TrueBrain> yes, get to work 19:59:08 <andythenorth> if running the pipeline modifies subsequent runs of the pipeline 19:59:24 <andythenorth> is that (a) idempotent (b) not idempotent (c) none of the above 19:59:24 <Eddi|zuHause> what is a "graphics pipeline"? 19:59:37 <andythenorth> let's say you give it a png 19:59:43 <andythenorth> then it gives you a png 19:59:59 <andythenorth> but the input and output could be arbitrarty 20:00:08 <andythenorth> it's a set of mathematical processing operations 20:00:44 <Eddi|zuHause> like, stretching, rotating, whatever? 20:01:09 <andythenorth> making blue into green, whatever 20:01:09 <Eddi|zuHause> these are usually not idempotent 20:01:25 <Eddi|zuHause> making blue into green is (by itself) idempotent 20:01:38 <Gabda_> f(x)=c is good as well 20:01:47 <Eddi|zuHause> because once you removed all the blue, removing all the blue again doesn't do anything 20:01:52 <nielsm> this sounds a lot like a fix point function 20:02:07 <Eddi|zuHause> so unless you add new blue anywhere, that will make it not idempotent 20:02:14 <TrueBrain> is crashing also idempotent? 20:02:57 <andythenorth> currently the output is not the input :P 20:03:06 <andythenorth> which is why this might be the wrong question 20:03:25 <Eddi|zuHause> which is why i brought up the definition in the first place 20:03:58 <peter1138> Has Samu figured out slopes yet? 20:04:04 <andythenorth> so if running the pipeline modifies the pipeline? 20:04:07 <andythenorth> what's that called? 20:04:15 <andythenorth> other than 'stupid' 20:04:15 <Eddi|zuHause> dunno, still on ignore 20:04:16 <peter1138> Self-destruction. 20:04:24 <andythenorth> there's ignore in irc? :o 20:05:09 <Eddi|zuHause> <andythenorth> what's that called? <-- "stateful" 20:05:26 <TrueBrain> andythenorth: Polymorphic 20:05:31 <andythenorth> unwise 20:05:37 <Borg> andythenorth: yes.. /help ignore 20:05:51 <Eddi|zuHause> Borg: pretty sure the question was rhethoric 20:06:01 <Borg> oh ;) 20:06:01 <Eddi|zuHause> andythenorth: the opposite of "functional" 20:06:29 <Eddi|zuHause> andythenorth: "has side effects" 20:06:41 <Eddi|zuHause> really, plenty of names for this :) 20:06:56 <andythenorth> but not, for the record, idempotent? 20:07:10 <TrueBrain> depends :D 20:07:13 <TrueBrain> (haha) 20:07:31 <Eddi|zuHause> "idempotent" (in the "computer science/imperative" definition) is a special case of "has side effects" 20:07:54 <Eddi|zuHause> as in assuring people "but the side effects are not TOO bad" 20:08:10 <glx> some side effects are nice 20:08:38 <andythenorth> in Ansible it's a shorthand for 'your server will be in a predictable state after running this playbook' 20:08:39 <glx> as long it's not an undefined behaviour 20:09:21 <andythenorth> so is the Ansible definition of it wrong? 20:09:29 <Eddi|zuHause> andythenorth: where the mathematical/functional and the computer science/imperative definition differ is whether you mean the "pure" input/output or the data/state where the side effects operates on 20:10:17 <andythenorth> if my playbook adds a user 20:10:20 <andythenorth> and I run it twice 20:10:21 <frosch123> andythenorth: idempotency does not mean "there is only once result" 20:10:23 <andythenorth> I get two users 20:10:26 <frosch123> just that it does not change anymore 20:10:40 <frosch123> so, ansible wants to be more than idempotent 20:10:55 <Eddi|zuHause> andythenorth: not if that second add user collides with an error of "user already exists" 20:10:55 <TrueBrain> whoho, we have a Sentry account :D 20:11:24 <andythenorth> getsentry 20:11:24 * frosch123 googles 20:11:38 <andythenorth> now we can do six sigma 20:11:38 <Eddi|zuHause> TrueBrain: does it shoot at you? 20:11:49 <andythenorth> TrueBrain can be a black belt 20:11:59 <andythenorth> for statistical error analysis 20:12:06 <andythenorth> 6 9s 20:12:41 <andythenorth> well this was fun 20:13:23 <Eddi|zuHause> TrueBrain: i mean like these? https://www.youtube.com/watch?v=6i-nMWgBUp0 20:13:24 <andythenorth> 5 days and 12 hours to save some flyspray patches 20:13:42 <andythenorth> https://github.com/OpenTTD/OpenTTD/issues?q=is%3Aopen+is%3Aissue+label%3A%22patch+from+FlySpray%22 20:13:55 <andythenorth> before they're lost.....forever 20:14:08 <Eddi|zuHause> andythenorth: you should add "stale" to that search 20:14:30 <glx> (closed issues are not lost ;) ) 20:15:26 <andythenorth> Eddi|zuHause: improved it https://github.com/OpenTTD/OpenTTD/issues?utf8=%E2%9C%93&q=is%3Aopen+is%3Aissue+label%3A%22patch+from+FlySpray%22+label%3A%22stale%22 20:15:32 <andythenorth> just 36 then 20:15:57 <andythenorth> @calc 36 / ((5*24) + 12) 20:15:57 <DorpsGek> andythenorth: 0.272727272727 20:16:07 <andythenorth> less than 1 per hour 20:16:20 <andythenorth> @calc 36 / 5.5 20:16:20 <DorpsGek> andythenorth: 6.54545454545 20:16:25 <andythenorth> that's per day 20:16:30 <andythenorth> we could probably round a bit 20:16:48 <TrueBrain> https://sentry.io/openttd/ <- you need to login via GitHub, and only works if you are part of the OpenTTD organization 20:16:52 <TrueBrain> (so might not be for most of you) 20:17:05 <TrueBrain> I will let that take care of most of the error reporting :D 20:17:16 <TrueBrain> not sure if I can disable that you have to login 20:18:08 <glx> it works 20:20:01 <TrueBrain> I love Sentry .. it makes so many things so much easier .. 20:21:04 <andythenorth> another conditional orders thing? o_O https://github.com/OpenTTD/OpenTTD/issues/6078 20:21:12 <andythenorth> they're so useless, we might as well just add lots more 20:21:23 <andythenorth> nobody will notice anyway :) 20:23:17 <andythenorth> all these patches with these 'meh' titles 20:23:18 <TrueBrain> if a tree falls in the forest 20:23:20 <TrueBrain> but nobody is around 20:23:22 <TrueBrain> does it make a sound? 20:23:37 <andythenorth> there is software quality and then there is software quality 20:23:54 <andythenorth> I liked TrueBrain's plan for MMORPG version of OpenTTD 20:24:02 <andythenorth> that will make it interesting 20:24:50 <TrueBrain> that is an old old plan :P 20:25:20 <glx> I remember the test duel version 20:25:26 <milek7> sentry: 'Track errors in every language, framework, and library. ' * no c++ on list * ... 20:25:50 <TrueBrain> for good reason 20:25:51 <TrueBrain> :P 20:27:14 * andythenorth wonders about patch quotes 20:27:17 <andythenorth> quotas * 20:27:23 <andythenorth> 'we will accept 10 patches in 2019' 20:27:28 <andythenorth> 'is yours good enough?' 20:28:23 * frosch123 submits jgrpp 20:28:28 <frosch123> it's just one patch, right? 20:28:37 <andythenorth> if you squash it 20:28:41 <andythenorth> it's just once commit 20:29:30 <andythenorth> so every year, just take jgrpp, and call that master? 20:29:38 <andythenorth> nobody here has to patch anything 20:29:39 <Eddi|zuHause> surely no problems will ever arise with that 20:29:41 <andythenorth> forums go wild 20:30:41 <andythenorth> ok that's the plan, I close all issues and PRs now 20:31:23 <milek7> TrueBrain: so how it is useful for openttd? custom scripts for submitting crashes? 20:31:49 <DorpsGek_II> [OpenTTD/OpenTTD] Eddi-z opened pull request #7026: Add: when placing non-rectangular airport, consider airport tile table tiles only (patch by adf88, #6613) https://git.io/fhGD4 20:31:51 <frosch123> it has support for python and flask 20:32:05 <TrueBrain> milek7: no, it is useful for the OpenTTD infrastructure 20:32:28 <Eddi|zuHause> andythenorth: openttd is complete? 20:33:05 <andythenorth> could be 20:33:28 <Eddi|zuHause> isn't there a way where the PR could be attached to the original ticket instead of getting a new number? 20:33:42 <andythenorth> mildly confusing isn't it? 20:34:08 <glx> no, but it should link to the issue as you tagged it in the title 20:34:15 <Eddi|zuHause> yes 20:34:21 <Eddi|zuHause> but that splits the discussion 20:34:33 <andythenorth> it does 20:34:35 <frosch123> between gh and irc? 20:34:43 <andythenorth> within GH 20:34:56 <andythenorth> but Eddi|zuHause it's mostly an artefact of providing patches in issues 20:34:59 <Eddi|zuHause> no, people following the original ticket won't be subscribed to the discussion on the PR 20:35:02 <andythenorth> so mostly legacy 20:35:24 <andythenorth> broadly, there is not 1:1 mapping of issue:PR 20:35:31 <glx> they'll get a notification with a reference to the PR I think 20:35:37 <andythenorth> PRs don't need an associated issue 20:35:49 <andythenorth> for bug reports it's n:PR 20:35:58 <Eddi|zuHause> they'll get notification that there's a PR now 20:36:00 <andythenorth> for feature requests, 0:PR? 20:36:01 <Eddi|zuHause> but no followup 20:36:06 <andythenorth> hmm no 20:36:13 <milek7> btw. cross-platform crash reporting is such a pain 20:36:14 <andythenorth> feature requests should be n:0 20:36:26 <milek7> breakpad looks sensible, but turns out that each platform is slightly different header usage, so it ends up with platform specific code anyway 20:36:40 <andythenorth> TrueBrain: can I change the rules, to just close feature requests? 20:36:45 <andythenorth> they are spam 20:36:54 <andythenorth> literal negative value 20:37:40 <andythenorth> classic of the genre 20:37:41 <andythenorth> https://github.com/OpenTTD/OpenTTD/issues/7016 20:37:41 <Eddi|zuHause> didn't we write into contributing that feature requests better go to the forums? 20:38:13 <Eddi|zuHause> andythenorth: i would close that as "won't happen, because of performance" 20:38:43 <andythenorth> someone give Eddi|zuHause ticket editing rights :) 20:38:53 <Eddi|zuHause> don't you dare 20:38:55 <peter1138> How bad is it for performance? 20:39:12 <Eddi|zuHause> peter1138: dunno, but that was the rule when railtype newgrfs were introduced 20:39:19 <Eddi|zuHause> peter1138: no variables, because of performance 20:39:25 <peter1138> Did I make that rule? 20:39:27 <andythenorth> https://github.com/OpenTTD/OpenTTD/blob/master/CONTRIBUTING.md#feature-requests 20:39:41 <Eddi|zuHause> did you make railtypes? 20:39:45 <peter1138> Yes. 20:39:56 <andythenorth> hmm 20:39:58 <TrueBrain> andythenorth: https://github.com/OpenTTD/OpenTTD/blob/master/CONTRIBUTING.md#feature-requests 20:40:00 <TrueBrain> nuff said 20:40:03 * andythenorth looks for issues to burn 20:40:44 <Borg> andythenorth: Industry Text CB drawing issues... good issue to fix ;) 20:40:57 <Eddi|zuHause> peter1138: i think the problem was, opposing to something like vehicles, there is no cache for the result of an action3, so having deeply nested trees evaluated every tick seemed like a bad idea 20:42:23 <frosch123> Eddi|zuHause: the performance issue was for "nearest town". but "nearest town" is on a different level than "slope of neighbour tile" etc 20:42:51 <frosch123> for the landinfo stuff you just need to limit the distance 20:43:05 <frosch123> don't add variables like "sea is 50 tiles away" :p 20:43:43 <Eddi|zuHause> i always wanted "trackbits of adjacent tiles" for the curves 20:43:56 <frosch123> anyway, make a patchpack 20:44:13 <frosch123> i don't believe in these complex variables, until someone proves that they are really useful 20:44:19 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #1308: Vehicle Groups: create group from vehicles in station list. https://git.io/fhGDo 20:44:20 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #1308: Vehicle Groups: create group from vehicles in station list. https://git.io/fhGDK 20:44:37 <andythenorth> TrueBrain: roughly this? https://github.com/OpenTTD/OpenTTD/issues/1308#issuecomment-452075365 20:44:47 <frosch123> most are just: i have an idea how to make something, add 10 variables, idea turns out crap... 20:45:10 <Gabda_> maybe you could have a new tag for issues you find good for the projects 20:45:17 <andythenorth> frosch123: you happy to close it, or shall I be bad cop? 20:45:33 <frosch123> Gabda_: noone knows in advance 20:45:34 <Gabda_> as right now it hard to choose an issue to work on for newcomers 20:45:42 <andythenorth> agreed 20:45:43 <Eddi|zuHause> frosch123: the main problem with that is, if you add a variable with a specific idea in mind, you maybe miss a chance to make it generic enough so other people might use it 20:45:53 <andythenorth> how is the 'good first issue' tag working Gabda ? 20:45:54 <frosch123> you have to try out stuff, before you can commit to them 20:46:13 <Gabda_> that one was good :) 20:46:17 <frosch123> Eddi|zuHause: check out the 60+x variables of industries 20:46:29 <andythenorth> Eddi|zuHause: I think your railtype var patch is the correct way to do it 20:46:32 <frosch123> and houses 20:46:35 <Eddi|zuHause> frosch123: i'd rather not :p 20:46:45 <andythenorth> real problem, defined, clear patch, clear questions 20:46:46 <andythenorth> tested 20:46:50 <andythenorth> before adding 20:46:50 <Gabda_> I picked one, but for my second issue, I felt I couldn't choose from them 20:47:07 <andythenorth> and I could have added example nml if I could be bothered :P 20:47:21 <andythenorth> or a grf 20:47:27 <Eddi|zuHause> andythenorth: i feel like i posed "open qestions" in that topic, and nobody answered them 20:47:33 <andythenorth> well there's time yet 20:47:41 <andythenorth> frosch123: https://github.com/OpenTTD/OpenTTD/pull/7000 20:47:57 <TrueBrain> andythenorth: tweaked it a bit 20:48:07 <TrueBrain> twice "thank you" was a bit weird 20:48:13 <TrueBrain> (and fiddled with the link) 20:48:19 <andythenorth> thanks TB 20:49:04 <andythenorth> is someone just going to close George's or what? 20:49:10 <andythenorth> newgrf politics does my head in tbh :P 20:49:33 <LordAro> close a George ticket? :o 20:49:34 <andythenorth> I prefer the simple "Andy wants this, can he have it yes | no? Here is a grf" 20:49:48 <andythenorth> I closed loads last year 20:49:58 <andythenorth> if you want newgrf spec changes, you have to come here and help 20:50:01 <andythenorth> is the blunt 20:50:03 <andythenorth> reality 20:50:14 <andythenorth> it's not a request service 20:50:27 <andythenorth> can someone frame that nicely, thx bai 20:53:35 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #4573: Railtypes: improve snow transition https://git.io/fhGDF 20:53:36 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #4573: Railtypes: improve snow transition https://git.io/fhGDb 20:53:47 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #4711: Water: allow rivers (slopes) for navigation https://git.io/fhGDN 20:53:48 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #4711: Water: allow rivers (slopes) for navigation https://git.io/fhGDA 20:54:03 <TrueBrain> lets get to 100 issues? :P 20:54:13 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #4934: Profile - GetImage is slow https://git.io/fhGDp 20:54:14 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #4934: Profile - GetImage is slow https://git.io/fhGDh 20:54:18 <andythenorth> oof I closed Truebrain 20:54:29 <andythenorth> these are all 'nice to have' 20:54:33 <LordAro> /kban andythenorth 20:54:35 <andythenorth> but I have another 20 'nice to have' 20:54:40 <andythenorth> and the forums have 100 20:54:43 <andythenorth> and reddit has 50 20:54:49 <andythenorth> so eh 20:55:04 <andythenorth> it's not what GH is good for 20:55:15 <TrueBrain> why on earth was that ticket still open, lol .. 20:55:17 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #4998: Objects: draggable items https://git.io/fhGDj 20:55:18 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #4998: Objects: draggable items https://git.io/fhGye 20:55:20 <TrueBrain> tnx for closing my 5 year old ticket :P 20:55:23 <andythenorth> TrueBrain: contains valuable information 20:55:29 <andythenorth> or at least perception that it does 20:55:41 <andythenorth> it's only valuable if somebody does something 20:55:59 <andythenorth> cool story: we had 239 issues on Saturday 20:56:05 <andythenorth> today in work I had also 239 issues 20:56:20 * andythenorth having bonfires 20:56:46 <andythenorth> peter1138: o_O https://github.com/OpenTTD/OpenTTD/issues/5006 20:56:49 <andythenorth> easy now? 20:57:08 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #5210: Bananas: confusing "find missing content online" - especially removing savegame selection https://git.io/fhGyJ 20:57:10 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #5210: Bananas: confusing "find missing content online" - especially removing savegame selection https://git.io/fhGyU 20:57:44 <peter1138> Not really, the "add some mapping" bit was key to avoiding wastage, and we didn't do that. 20:57:48 <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 commented on issue #6417: GSTile.GetTownAuthority not accounts town growth https://git.io/fhGyT 20:58:14 <andythenorth> peter1138: close it? 20:58:16 <peter1138> Otoh, we could just waste types and not worry now :p 20:58:21 <andythenorth> I don't worry 20:58:25 <andythenorth> let's waste some stuff 20:58:27 <peter1138> No, the feature is still relevant, regardless of how easy it is to implement... 20:58:31 <Eddi|zuHause> i vote for add patch and ignore waste 20:58:53 <Eddi|zuHause> leave dealing with the wast for a future generation 20:58:59 <Eddi|zuHause> *waste 20:59:07 <andythenorth> today also at work 20:59:16 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 commented on pull request #7000: Add: Var 6A, a clone of Var 4A for querying poweredness compared to a… https://git.io/fhGyI 20:59:17 <peter1138> I... don't think I have a patch for it :p 20:59:20 <andythenorth> we realised we have made such a big mess, it won't be fixed by us 20:59:24 <andythenorth> it will be the next generation 20:59:28 <Eddi|zuHause> there's one in the ticket? 20:59:38 <frosch123> Eddi|zuHause: see, i can derail the issue even more 20:59:59 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #6931: Change: Prevent town growth from blocking ships https://git.io/fhGym 21:00:51 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #5652: AI: "error: wrong number of parameters" - show number used and number of expected? https://git.io/fhGyO 21:00:52 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #5652: AI: "error: wrong number of parameters" - show number used and number of expected? https://git.io/fhGy3 21:01:53 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6075: Timetable: removing all times from timetable and change all "stay" time https://git.io/fhGyZ 21:01:54 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6075: Timetable: removing all times from timetable and change all "stay" time https://git.io/fhGyn 21:02:15 <Borg> btw.. anyone here still does NFO ? or everyone went away for NML? 21:02:45 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6417: GSTile.GetTownAuthority not accounts town growth https://git.io/fhGyW 21:02:46 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6417: GSTile.GetTownAuthority not accounts town growth https://git.io/fhGyl 21:03:08 <andythenorth> Borg: is that a general question? 21:03:11 <andythenorth> or you want nfo help? 21:03:18 <glx> Borg: NFO is for hardcore grf writers 21:03:21 <Borg> nope.. I might want to contribute.. 21:03:28 <Borg> but I want to know if there is worth doing so 21:03:41 <peter1138> Hmm, of course, frosch123 insists that non-buildable types shouldn't count towards the railtype limit. Hmm. 21:03:43 <frosch123> you and pikka are the only nfo users i encountered 21:03:49 <andythenorth> I use it for stations 21:03:51 <frosch123> there are like 3 people using m4nfo 21:03:51 <andythenorth> not by choice 21:03:53 <frosch123> the rest does nml 21:04:03 <andythenorth> I use it for debugging nml 21:04:18 <Borg> frosch123: oh... not much :) then... no point contributing then I guess 21:04:23 <andythenorth> limited return 21:05:32 <andythenorth> frosch123: (sorry) any idea if this is intended behaviour>? 21:05:35 <andythenorth> https://github.com/OpenTTD/OpenTTD/issues/5631 21:05:49 <andythenorth> it might be a bug, not an enhancement 21:05:58 <andythenorth> or it might just be, can you please stop using frigging subtypes 21:06:37 <frosch123> i can't remember when i touched that stuff last 21:06:49 <peter1138> 2013 :p 21:07:00 <frosch123> the list shows the subtypes of all selected vehicles 21:07:07 <frosch123> but articulated parts must be consistent 21:07:09 *** Gabda_ has quit IRC 21:07:36 *** sla_ro|master has quit IRC 21:07:39 <andythenorth> I can't even parse what's supposed to happen tbh 21:07:44 <andythenorth> 'life is too short for this crap' 21:07:48 <DorpsGek_II> [OpenTTD/OpenTTD] Eddi-z commented on pull request #7000: Add: Var 6A, a clone of Var 4A for querying poweredness compared to a… https://git.io/fhGyo 21:07:52 <peter1138> Hmm, I wonder which of my branches were my work, and which are tests of other peoples' patches :p 21:07:53 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #5631: Refitting doesn't display all available liveries for group of wagons https://git.io/fhGyK 21:07:54 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #5631: Refitting doesn't display all available liveries for group of wagons https://git.io/fhGy6 21:08:11 <peter1138> Time to ignore DorpsGek_II for a moment :p 21:08:13 <frosch123> apparently i touched that stuff in march 2013 21:08:15 <andythenorth> soz 21:08:32 <andythenorth> next time I read about subtypes as 'liveries' I might behave badly 21:08:43 <andythenorth> liveries are obviously implemented with ctrl-click in depot :P 21:09:14 <DorpsGek_II> [OpenTTD/OpenTTD] frosch123 commented on pull request #7000: Add: Var 6A, a clone of Var 4A for querying poweredness compared to a… https://git.io/fhGy1 21:09:38 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6869: NewGRF tree growth control https://git.io/fhGyM 21:09:39 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6869: NewGRF tree growth control https://git.io/fhGyD 21:09:43 <andythenorth> oof sorry nielsm :P ^ 21:09:45 <andythenorth> but 21:09:56 <Eddi|zuHause> <peter1138> Time to ignore DorpsGek_II for a moment :p <-- it's just andy being andy, it should blow over in like half an hour or so :p 21:10:07 <peter1138> I still need to ignore it. 21:10:21 <andythenorth> me too 21:10:31 <andythenorth> are irc highlights idempotent? 21:10:37 <Wolf01> Could you ignore yourself? 21:10:42 <peter1138> I usually do. 21:11:01 <Eddi|zuHause> peter1138: make sure to tell TrueBrain about how spammy DorpsGek_II is, he likes that :p 21:11:12 <peter1138> It's normally fine, just a bit noisy then :p 21:11:17 <TrueBrain> @kick Eddi|zuHause about thhhiiiiisssssss much 21:11:19 <peter1138> And that's what /ignore is for. 21:11:20 <andythenorth> Eddi|zuHause: so I could just check if the railtype has catenary? o_O 21:11:21 <TrueBrain> @whoami 21:11:21 <DorpsGek> TrueBrain: I don't recognize you. 21:11:23 <TrueBrain> boooeeee 21:11:25 <TrueBrain> lucky you 21:11:25 <Eddi|zuHause> haha :p 21:12:00 <andythenorth> on more 21:12:03 <andythenorth> 1 more 21:12:06 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6607: Stations: additional animation triggers https://git.io/fhGy7 21:12:08 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6607: Stations: additional animation triggers https://git.io/fhGy5 21:12:13 <andythenorth> ok I stop now :P 21:12:16 <andythenorth> broken some eggs 21:13:32 <TrueBrain> and I am testing what a release build would be doing ... scary :D 21:13:55 <DorpsGek_II> [OpenTTD/OpenTTD] Eddi-z commented on pull request #7000: Add: Var 6A, a clone of Var 4A for querying poweredness compared to a… https://git.io/fhGyb 21:16:04 <Eddi|zuHause> is max speed (vehicle specific units) a byte value? 21:16:06 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on pull request #7000: Add: Var 6A, a clone of Var 4A for querying poweredness compared to a… https://git.io/fhGyj 21:16:11 <Samu> back to work. I think only the main tile, the one named 'tile' can be checked by slope. and if I use a table lookup thing, I need to get its corner, numbered in the correct order as corners are 0, 1, 2, 3 already, and slopes aren't. The other tile checks, I still think the best way is by getting the track bits 21:16:39 <Samu> if i do it by other methods, code complicates again 21:16:53 *** Borg has quit IRC 21:17:44 <Eddi|zuHause> andythenorth: stop derailing the derailed conversation in a different direction :p 21:17:57 <andythenorth> is derailed a new var? 21:18:03 <TrueBrain> right, seems all that is left some meta files .. that I can fix this weekend or so 21:18:09 <frosch123> speed is in km-ish/h, so a word 21:18:10 <Eddi|zuHause> i think that should be an existing var 21:18:26 <andythenorth> Eddi|zuHause: on long-welded rail, 4 wheel freight cars are prone to derailments caused by hunting 21:18:41 <andythenorth> whereas on 60 foot jointed rail, the hunting motion is reset by the joints 21:18:46 <andythenorth> can we have that var? 21:19:00 <andythenorth> TrueBrain: hoorary 21:19:05 <andythenorth> sorry, we were talking about trains :( 21:19:09 <andythenorth> forgot to praise 21:19:10 *** Thedarkb-T60 has joined #openttd 21:19:11 <Eddi|zuHause> that's not a var, that's extended breakdowns 21:19:25 <andythenorth> cb36 for reliability? 21:19:36 <Eddi|zuHause> not enough 21:19:37 <andythenorth> why can't we have spontaneous crashes? 21:19:45 <andythenorth> that would raise the game 21:19:57 <andythenorth> 'your train just....crashed. 2 are dead' 21:20:03 <Eddi|zuHause> because someone closed the ticket of improved breakdowns patch? 21:20:22 <andythenorth> 'SPAD, 38 dead' 21:20:30 <andythenorth> https://en.wikipedia.org/wiki/Signal_passed_at_danger 21:20:34 <andythenorth> random 21:20:41 <Eddi|zuHause> i'm pretty sure people requested that before 21:20:42 <andythenorth> adding brakevans reduces SPADS and derailments 21:22:00 <glx> @whoami 21:22:01 <DorpsGek> glx: glx 21:22:06 <andythenorth> you are 21:22:08 <andythenorth> I can see 21:22:33 <DorpsGek> I can hde myself 21:23:05 <ST2> DorpsGek is with Alzheimer again :D 21:23:40 <glx> I identified myself 3 days ago, it remembers me since 21:24:01 <ST2> @whoami 21:24:01 <DorpsGek> ST2: I don't recognize you. 21:24:07 <ST2> crap :D 21:24:14 <LordAro> @whoami 21:24:14 <DorpsGek> LordAro: I don't recognize you. 21:24:15 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6628: Docks can't be connected into a single station https://git.io/fhGST 21:24:16 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6628: Docks can't be connected into a single station https://git.io/fhGSk 21:24:16 <LordAro> aw 21:24:30 *** DorpsGek sets mode: +o glx 21:24:33 *** DorpsGek sets mode: -o glx 21:24:43 <glx> and I have my super powers 21:24:53 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6357: positioning of train vehicle sprites https://git.io/fhGSI 21:24:54 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6357: positioning of train vehicle sprites https://git.io/fhGSL 21:25:16 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6253: Remember the game save/load location even when closing the app https://git.io/fhGSt 21:25:17 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6253: Remember the game save/load location even when closing the app https://git.io/fhGSq 21:25:22 <andythenorth> 178 21:25:33 <andythenorth> about 40 more I'll close on Saturday 21:26:41 <andythenorth> Gabda still looking for things to work on? o_O 21:27:39 <Eddi|zuHause> andythenorth: you need to go through and remove the "stale" label from tickets where there was activity 21:27:44 <andythenorth> ok 21:27:57 <andythenorth> it's quite labour intensive label, as predicted 21:28:04 <andythenorth> better replaced by a bot 21:28:10 <glx> we need a bot to manage stale label yes 21:28:37 *** gelignite has quit IRC 21:29:22 <andythenorth> I am not a good bot 21:30:01 <DorpsGek> i am 21:30:20 <glx> was not me 21:30:23 <andythenorth> https://probot.github.io/ 21:30:55 <TrueBrain> andythenorth: I will install that bot on PRs next weekend 21:30:58 <andythenorth> yay 21:31:00 <TrueBrain> for issues, we need more tuning I guess 21:31:07 <TrueBrain> as we first have to catch up 21:31:11 <TrueBrain> before we can let him go on a rampage :P 21:31:12 <andythenorth> first we catch up 21:31:16 <andythenorth> then we decide 21:31:23 <Eddi|zuHause> ketchup 21:31:28 <andythenorth> mayo 21:31:31 <TrueBrain> https://dev.azure.com/truebrain/OpenTTD/_build/results?buildId=205 <- NOT MEANT FOR DOWNLOADING, they are broken in terms of versioning 21:31:34 <TrueBrain> but .. they all work :D 21:31:36 <LordAro> imo, stale shouldn't be added by a bot, it should only remove stale, or close issues 21:31:43 <LordAro> otherwise we'd just end up with no issues 21:31:53 <andythenorth> TrueBrain: no BeOS? :o 21:31:53 <LordAro> or lots of "bump" comments 21:31:59 <Eddi|zuHause> in the 90s there was a TV show "sketch up" 21:32:01 <TrueBrain> andythenorth: no :) 21:32:06 <andythenorth> I had a BeOS cover CD once 21:32:07 *** nielsm has quit IRC 21:32:10 <andythenorth> didn't install it 21:32:14 <TrueBrain> LordAro: your logic fails on me :) 21:32:38 <TrueBrain> how do we end up with no issues, if a proper configured bot runs 'stale' processing? 21:33:38 <andythenorth> isn't 'no issues' how we win? :o 21:33:45 * andythenorth might be playing the wrong game 21:34:04 <Eddi|zuHause> surely 21:34:05 <LordAro> ok, (valid) issue is opened, there's some discussion, but as no one ever has any time to do anything with it, it goes quiet. bot comes along and applies stale label to it (no one notices). n days later, bot closes issue 21:34:07 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6651: Improve CargoDist flow palette https://git.io/fhGSl 21:34:08 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6651: Improve CargoDist flow palette https://git.io/fhGS8 21:34:40 *** Compu has joined #openttd 21:34:47 <TrueBrain> so you completely jump over the very important word: PROPER configured? :) 21:35:09 <andythenorth> someone want to approve and merge? https://github.com/OpenTTD/OpenTTD/pull/6998 21:35:15 <LordAro> well, i don't know what you or anyone else consider "proper" :p 21:35:23 <TrueBrain> so, that is the right question to ask 21:35:25 <LordAro> i'm just getting my opinion in before something is actually done :p 21:35:28 <TrueBrain> instead jumping to some extreme :P 21:35:40 <TrueBrain> yes, because OpenTTD is good in doing something before talking about it N times :D 21:35:52 <andythenorth> I would approved 6998, but eh, I don't like approving actual C++ stuff 21:35:54 <TrueBrain> but it is easier to answer an open question, then to defend to a weird jump in the spectrum ;) 21:35:59 <TrueBrain> either way, please see https://probot.github.io/apps/stale/ 21:36:14 <TrueBrain> it has some nice examples 21:36:32 <andythenorth> I could put 'Probably Fine' on that PR, but it's disrespectul to Gabda as first time contributor 21:37:09 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6686: Signal removal with (CTRL+)drag not possible from level crossing https://git.io/fhGSB 21:37:10 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6686: Signal removal with (CTRL+)drag not possible from level crossing https://git.io/fhGSR 21:37:39 <andythenorth> who's working on the SDL2 port? 21:37:40 <andythenorth> o_O 21:37:45 <peter1138> How do I show the link graph? 21:37:59 <andythenorth> the one on the main map? 21:38:03 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain opened pull request #7027: Add: [AzurePipeline] introducing a release pipeline https://git.io/fhGSE 21:38:11 <peter1138> Yeah 21:38:14 <glx> there's a setting somwhere I think 21:38:16 <andythenorth> map of world button -> cargo flow legend 21:38:21 <Samu> is there a Corner to TileDiff or something similar? 21:38:29 <andythenorth> then toggle company / cargos on or off 21:38:37 <Samu> offset 21:38:55 <andythenorth> nobody doing SDL2 then? 21:38:56 <andythenorth> ok 21:39:01 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6173: Add support for SDL2 https://git.io/fhGSg 21:39:02 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6173: Add support for SDL2 https://git.io/fhGS2 21:39:15 <TrueBrain> LordAro: https://github.com/probot/stale even more examples, if you like 21:39:23 <TrueBrain> so much configuration, it is to die for :D 21:39:58 <andythenorth> exemptAssignees: TrueBrain 21:40:03 <andythenorth> winner 21:40:43 <peter1138> So, er, what does assigning an integer value to a variable which is a class (with no = operator overload) do? 21:41:17 <Eddi|zuHause> i would expect that to be a compile error 21:41:32 <peter1138> Yeah... it's not. 21:41:36 <Eddi|zuHause> with pointers involved, however, it might go horribly wrong 21:41:51 <LordAro> is there a constructor with an integer parameter? 21:42:12 <peter1138> It's not a pointer, though. 21:42:37 <peter1138> LordAro, yes. Ah. 21:42:54 <LordAro> this is why people recommend such constructors are made explicit :) 21:43:06 <peter1138> Yers... 21:43:13 <glx> and as the bot posts a comment it's easy to add activity by just replying 21:43:26 <peter1138> Actually this constructor does the same as the method I was meant to call, so it would've worked. 21:43:49 <TrueBrain> glx: lot of people use probot/stale, with a lot of good success .. guess it is worth trying 21:43:50 <peter1138> LordAro, how exactly? 21:44:15 <peter1138> I like x = GUITimer(10) but... in this case, x = 10 also did the same thing, unintentionally. 21:44:31 <peter1138> x = 10 is meant to be x.SetInterval(10) 21:44:37 <glx> TrueBrain: I mean at least people involved with the issue will take a look after the bot post 21:44:45 <LordAro> explicit GUITimer(int aninteger) { ... } 21:44:49 <TrueBrain> glx: yup :) 21:44:56 <glx> and if they care they will prevent closing 21:45:09 <TrueBrain> glx: from what I have seen in other projects, this is exactly what happens 21:45:13 <peter1138> Oh. that's actually a thing. Are we allowed to use that? 21:45:21 <LordAro> it's not new 21:45:22 <TrueBrain> often even resulting in picking up the issue, as they simply forgot :D 21:45:49 <glx> not surprising when the issue count is high 21:45:51 <peter1138> Cool, now I get compile errors, woo. 21:46:02 <LordAro> :) 21:46:10 <TrueBrain> glx: one of the harder things; prioritizing tickets in open source projects :) 21:46:20 <TrueBrain> as they are done ordered by "fun", which ever definition that is :P 21:46:37 <TrueBrain> okay, CI works, branch-build works, tag-build works 21:46:40 <TrueBrain> so happy :D 21:46:48 <LordAro> TrueBrain: \o/ 21:46:49 <glx> yeah or just ignored to do our own fun 21:46:51 <andythenorth> there is pretty much no point in running a backlog for open source 21:47:01 <andythenorth> there's barely any point in commercial software either 21:47:13 <andythenorth> except it keeps management from interfering 21:47:25 <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain commented on pull request #7027: Add: [AzurePipeline] introducing a release pipeline https://git.io/fhGSQ 21:47:42 <TrueBrain> andythenorth: INDEED :D 21:48:04 <TrueBrain> "owh, you want to be important? Sure, I put your ticket right here between these others of VERY IMPORTANT PEOPLE" 21:48:13 <andythenorth> also, we are stacking up so many PRs, we dont' have to worry about issues 21:48:38 <andythenorth> why bother with feature requests, when we can really piss off people who've written actual patches that pass CI :P 21:49:15 <TrueBrain> right, off to bed for me; night all 21:49:23 <andythenorth> bye TB 21:50:07 *** frosch123 has quit IRC 21:54:25 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6890: Crash: disconnecting road vehicle https://git.io/fhG9v 21:54:26 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6890: Crash: disconnecting road vehicle https://git.io/fhG9f 21:55:07 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6947: A new variable Vehicle is loading required https://git.io/fhG9T 21:55:08 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6947: A new variable Vehicle is loading required https://git.io/fxHAR 21:55:32 <andythenorth> way too many labels 22:00:30 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6631: In singleplayer, you cannot buyout one human-player company as another. https://git.io/fhG9L 22:00:31 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6631: In singleplayer, you cannot buyout one human-player company as another. https://git.io/fhG9t 22:01:15 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #5685: AI: wagons are lost in depot because of lack of API feature https://git.io/fhG9m 22:01:50 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6903: selected rail type should be included in game saves https://git.io/fhG9Y 22:01:51 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6903: selected rail type should be included in game saves https://git.io/fhG9O 22:02:17 <DorpsGek_II> [OpenTTD/OpenTTD] Eddi-z commented on issue #6947: A new variable Vehicle is loading required https://git.io/fhG9s 22:02:58 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #7011: Towns don't grow if first tile of station is outside authority area https://git.io/fhG9G 22:02:59 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #7011: Towns don't grow if first tile of station is outside authority area https://git.io/fh3Jg 22:04:53 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6221: Crash: [OSX] in chat with Korean Language https://git.io/fhG9c 22:04:54 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6221: Crash: [OSX] in chat with Korean Language https://git.io/fhG9C 22:06:41 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6888: Add layer(s) showing station coverage https://git.io/fhG98 22:06:42 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth closed issue #6888: Add layer(s) showing station coverage https://git.io/fhG94 22:07:03 <peter1138> Once andythenorth's gone, I'm going to reopen all these issues. 22:07:16 <andythenorth> I won't be sad 22:07:50 <andythenorth> increasing the issue count resets my game 22:07:53 <andythenorth> I can play again 22:08:11 <peter1138> Are you an Inbox-zero kinda guy too? 22:08:14 <andythenorth> no 22:08:18 <andythenorth> I just stopped reading email 22:08:24 * andythenorth won the game 22:08:43 <andythenorth> people phone me if there's an email I need to read 22:09:22 <andythenorth> we could make our own open/close bots 22:09:35 <andythenorth> the winner would be the one whose datacenter is closest to github 22:15:54 <andythenorth> peter1138: just close *my* feature requests :P That will teach me :P 22:16:15 <andythenorth> https://github.com/OpenTTD/OpenTTD/issues/6919 22:22:06 <Samu> i just invented GetCornerDirection 22:23:05 <Samu> now I can use _tileoffs_by_dir 22:23:12 <Samu> no more ugly tables 22:33:29 *** andythenorth has left #openttd 22:40:26 <Samu> TileIndex opposite_tile = tile + TileOffsByDir(GetCornerDirection(OppositeCorner(corner))); 22:47:41 *** Wolf01 has quit IRC 22:50:04 *** synchris has quit IRC 23:14:44 <DorpsGek_II> [OpenTTD/OpenTTD] odisseus commented on pull request #6931: Change: Prevent town growth from blocking ships https://git.io/fhGHq 23:23:57 *** Thedarkb-T60 has quit IRC 23:30:15 <Samu> well, aqueducts can be excluded from this equation 23:31:07 <Samu> dealing with coastal tiles and no possible aqueduct on level 0 23:34:57 <Samu> locks are important to account for 23:35:25 <Samu> especially when dealing with tight body waters inside towns 23:35:35 <Samu> same as ship depots, similar in nature 23:35:47 <Samu> must think 23:36:26 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #6780: Change: Refactor window ticks into game ticks and realtime events. https://git.io/vpDSL 23:37:51 <Samu> rails with water still need to be accounted 23:38:14 <peter1138> Accounted for in what? 23:38:35 <Samu> for the opposite tile 23:38:39 <peter1138> Are you still working on town expansion? 23:38:42 <peter1138> Ah 23:39:04 <Samu> yes, i'm too slow, i know 23:39:14 <Samu> terrible coder 23:39:15 <peter1138> All seems very complicatd :/ 23:39:18 <Samu> trying to make it work 23:39:43 <peter1138> Eh, I didn't mean it like that, you could've been working on something else. 23:41:04 <Samu> a coastal tile with rail on the opposite halftile is not a coast tile :( 23:41:21 <Samu> because game logic says so 23:42:47 <peter1138> What do you need to know about the opposite half tile? 23:43:00 <peter1138> If it's simply "can a ship traverse it", won't GetTileTrackStatus work? 23:43:42 <Samu> I was advised not to use trackbits :p 23:43:53 <Samu> but in the end I think i have to 23:51:11 <peter1138> I advised you against it for the first part. 23:51:23 <peter1138> The water slope check. 23:54:05 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #6780: Change: Refactor window ticks into game ticks and realtime events. https://git.io/fhGHy