Times are UTC Toggle Colours
00:10:24 *** nielsm has quit IRC 00:15:53 *** XeryusTC has quit IRC 00:18:40 <Speeder_> should I repurpose some existing cargos of other NewGRFs or create my own? 00:20:16 *** magdalena[m] has quit IRC 00:33:38 *** Webster has joined #openttd 00:33:56 <supermop_Home> that 3rd platform at fackslatt is pretty useless excepte when starting new trains right now 00:34:34 *** XeryusTC has joined #openttd 00:35:10 *** Yexo- has joined #openttd 00:35:10 *** avdg has joined #openttd 00:35:41 *** planetmaker has joined #openttd 00:35:48 *** planetmaker is now known as Guest26686 00:35:58 *** fjodor[m] has quit IRC 00:36:00 *** Hazzard has joined #openttd 00:36:10 <supermop_Home> but if it tunneled under the HQ to join those express tracks directly, then the space held for the express could go to a new North-west bound train 00:36:37 *** fjodor[m] has joined #openttd 00:36:41 *** V453000 has joined #openttd 00:36:41 *** Hirundo has joined #openttd 00:36:41 *** Ammler has joined #openttd 00:37:11 *** ^Spike^ has joined #openttd 00:37:11 *** Osai has joined #openttd 00:39:10 *** igor[m] has quit IRC 00:39:28 *** igor[m] has joined #openttd 00:51:58 *** namad7 has joined #openttd 00:56:45 <Speeder_> FLHerne, for example I am thinking of using toyland sugar 00:57:44 *** namad7 has quit IRC 01:05:55 *** gnu_jj has quit IRC 01:06:07 *** gnu_jj has joined #openttd 01:18:22 *** UncleCJ[m] has quit IRC 01:21:18 *** gelignite has quit IRC 01:23:12 *** UncleCJ[m] has joined #openttd 01:35:45 *** Flygon has joined #openttd 02:46:01 *** D-HUND has joined #openttd 02:49:22 *** debdog has quit IRC 02:51:15 *** glx has quit IRC 03:09:50 *** leward[m] has quit IRC 03:11:53 *** leward[m] has joined #openttd 03:23:26 *** cyberjunkie[m] has quit IRC 03:30:04 *** keoz has joined #openttd 03:31:18 *** Wormnest has quit IRC 03:31:47 *** cyberjunkie[m] has joined #openttd 03:48:14 *** ad5twoknebor[m] has quit IRC 03:52:42 *** ad5twoknebor[m] has joined #openttd 04:00:30 *** udo[m] has quit IRC 04:01:50 *** elliot[m] has quit IRC 04:05:21 *** elliot[m] has joined #openttd 04:14:05 *** udo[m] has joined #openttd 04:16:09 *** Wrench_In_The_Plan has quit IRC 04:32:14 *** jact[m] has quit IRC 04:37:30 *** jact[m] has joined #openttd 04:45:18 *** _dp_ has quit IRC 04:45:48 *** dP has joined #openttd 04:45:50 *** dP is now known as _dp_ 05:17:34 *** ZirconiumX has quit IRC 05:17:38 *** ZirconiumX has joined #openttd 05:35:10 *** SmatZ has quit IRC 05:35:42 *** Terkhen has quit IRC 05:35:43 *** SmatZ has joined #openttd 05:36:13 *** Terkhen has joined #openttd 05:36:15 *** ChanServ sets mode: +o Terkhen 06:11:42 *** Westie has quit IRC 06:11:56 *** Westie has joined #openttd 06:20:36 *** cHawk has joined #openttd 06:42:06 *** Heiki has quit IRC 06:42:21 *** Heiki has joined #openttd 06:47:26 *** moll has quit IRC 06:47:35 *** moll has joined #openttd 07:02:59 *** Progman has joined #openttd 07:04:53 *** Wolf01 has joined #openttd 07:05:18 *** FLHerne has quit IRC 07:06:03 *** FLHerne has joined #openttd 07:08:14 *** ericnoan has quit IRC 07:11:19 *** ericnoan has joined #openttd 07:26:32 *** nielsm has joined #openttd 07:31:58 *** Alkel__U3 has quit IRC 07:32:11 *** Alkel__U3 has joined #openttd 07:41:19 *** WormnestAndroid has quit IRC 07:41:32 *** WormnestAndroid has joined #openttd 07:42:53 *** sla_ro|master has joined #openttd 07:46:06 *** DorpsGek has quit IRC 07:47:01 *** andythenorth has joined #openttd 07:47:27 *** DorpsGek has joined #openttd 07:47:27 *** ChanServ sets mode: +o DorpsGek 07:48:31 <Wolf01> https://www.tt-forums.net/viewtopic.php?p=1232542#p1232542 <- andythenorth 07:48:57 <andythenorth> a bug? :o 07:48:59 <andythenorth> surely not :) 07:56:27 <Wolf01> https://www.tt-forums.net/viewtopic.php?p=1232516#p1232516 <- this is a bug 07:58:41 <nielsm> https://wiki.openttd.org/User:Nielsmh/Modular_airports should maybe look at this again 08:00:19 <andythenorth> there's certainly some noisy demands for it 08:01:25 * andythenorth wonders about modular complete airports 08:01:34 <andythenorth> i.e. airports just become joinable 08:01:40 <andythenorth> but there are no taxi-ways between them 08:02:18 <nielsm> the original city airport would need a lot of special cases under my imagined model 08:02:41 <nielsm> just due to the cross-shaped taxiways 08:06:22 <nielsm> perhaps the solution should be to have some magic multi-tile modules with movements custom defined, but then you're already into complete newgrf airport territory and might as well just do that 08:07:04 <nielsm> regardless even for newgrf airpots, I think defining the state machine could be left out with a sufficiently clever algorithm that works on allowed movements 08:12:57 <Wolf01> Drop the deadlock rule and make aircraft crash :P 08:16:52 <nielsm> nothing would even crash, unless you imagine aircraft parking on the runway and more aircraft then landing there 08:18:01 <Wolf01> Yes, I meant that, also when an aircraft decide to cross a runway at the same time as another one is trying to land 08:24:57 <nielsm> https://en.wikipedia.org/wiki/File:Aircraft_parking_at_Anguilla_Airport.jpg 08:25:03 <nielsm> need to support this situation 08:25:11 <Wolf01> XD 08:35:58 *** khavik[m] has quit IRC 08:36:02 *** khavik[m] has joined #openttd 08:37:02 *** labs[m] has quit IRC 08:37:26 *** labs[m] has joined #openttd 08:38:06 *** dude[m] has quit IRC 08:38:19 *** dude[m] has joined #openttd 08:41:02 *** julie[m] has quit IRC 08:41:15 *** julie[m] has joined #openttd 08:52:32 <nielsm> would it make sense to allow airports without (reachable) hangars? 08:59:42 *** arron[m] has quit IRC 09:00:01 <nielsm> expanded a bunch on that ideas page now 09:00:16 *** arron[m] has joined #openttd 09:11:26 *** karl[m] has quit IRC 09:11:30 *** karl[m] has joined #openttd 09:12:46 *** robert[m]1 has quit IRC 09:12:47 <Wolf01> <nielsm> would it make sense to allow airports without (reachable) hangars? <- why not? You won't be able to purchase/replace/service at those 09:12:51 *** robert[m]1 has joined #openttd 09:22:39 *** vanessa[m] has quit IRC 09:22:43 *** vanessa[m] has joined #openttd 09:34:22 *** Yexo has quit IRC 09:34:39 *** Yexo has joined #openttd 09:34:39 *** ChanServ sets mode: +o Yexo 09:39:51 *** Samu has joined #openttd 09:39:54 <Samu> hi 09:45:03 <DorpsGek_III> [OpenTTD/OpenTTD] hewimp opened issue #8177: Ships https://git.io/Jf6cI 09:45:14 <nielsm> great issue 09:49:16 <andythenorth> super 09:49:25 <DorpsGek_III> [OpenTTD/OpenTTD] hewimp commented on issue #8177: Ships https://git.io/Jf6cI 09:49:59 <nielsm> what 09:50:28 <nielsm> I'm closing that with a reference to tt-forums for gameplay and grf dev help 09:50:37 <andythenorth> thanks 09:50:43 <andythenorth> it's hitting max ship speed I think 09:50:48 <andythenorth> which possibly overflows? 09:50:57 <andythenorth> resulting in a negative speed? 09:51:01 <andythenorth> or is clamped to 0 09:51:03 <nielsm> oh... maybe? 09:51:08 * andythenorth guessing 09:51:14 <andythenorth> redFISH is a fork of FISH 09:51:29 <andythenorth> but I have more projects and ideas than time, and so many bugs on my head already :) 09:51:43 <andythenorth> not going to try and figure out that one 09:52:27 <andythenorth> I like forks, I don't like the obligation I then have to fix the issues in forks :| 09:53:56 *** Borg has joined #openttd 09:55:49 <Wolf01> I would like to know what could happen to the people on that ship... would they be splattered to the nearest wall when that happen? 09:56:10 <nielsm> yep the ship that has a speed of 128 km/h goes at absurd slowness 09:58:00 <nielsm> https://0x0.st/ifIB.mp4 09:59:19 <Wolf01> Speed is relative 09:59:39 <DorpsGek_III> [OpenTTD/OpenTTD] nielsmh commented on issue #8177: Ships https://git.io/Jf6cI 10:07:06 <nielsm> there, made it into a proper report 10:07:51 <nielsm> Wolf01 ah yes maybe it's moving so fast it travels the entire route and then a bit every single tick :D 10:10:22 <andythenorth> :) 10:29:12 <Wolf01> So you are looking at a ghost :D 10:29:38 <Wolf01> You can't both see the ship and the speed at which it's going 10:44:37 *** frosch123 has joined #openttd 10:46:04 <DorpsGek_III> [OpenTTD/OpenTTD] FLHerne commented on issue #8177: Ships with max speed overflow to near-zero speed https://git.io/Jf6cI 10:46:18 <FLHerne> nielsm: ^ not a bg 10:59:16 *** virtualrandomnumber has joined #openttd 11:15:09 *** cHawk has quit IRC 11:41:49 <DorpsGek_III> [OpenTTD/OpenTTD] Yexo commented on issue #8177: Ships with max speed overflow to near-zero speed https://git.io/Jf6cI 12:13:29 *** glx has joined #openttd 12:13:29 *** ChanServ sets mode: +v glx 12:24:42 *** gelignite has joined #openttd 12:32:28 *** andythenorth has quit IRC 13:02:02 <DorpsGek_III> [OpenTTD/OpenTTD] Yexo closed issue #8098: The transfer value in "Transfer: £[number]" can be negative. https://git.io/Jftgp 13:02:02 <DorpsGek_III> [OpenTTD/OpenTTD] Yexo commented on issue #8098: The transfer value in "Transfer: £[number]" can be negative. https://git.io/Jftgp 13:06:01 *** virtualrandomnumber has quit IRC 13:29:27 <FLHerne> Yexo-: I don't understand, what callback do you think is involved in the ship thing? 13:31:34 <glx> CB36 probably 13:40:39 <frosch123> yes, CB36 can set speeds up to 0x7FFF 13:42:32 <glx> but I imagine byte casting used on acceleration calculation doesn't like that 13:43:19 <frosch123> most vehiclecontroller have a loop to move a vehicle multiple steps per tick 13:43:35 <frosch123> but iirc ships do not have that, so can only move one world coordinate per tick at max 13:43:56 <frosch123> quite sure people tried to change that in the past, but did not finish 13:44:11 <FLHerne> Hm 13:44:55 <FLHerne> But CB36 is documented to adjust prop 0B, which is documented as a byte 13:45:08 <FLHerne> So I still don't think it's an actual bug 13:46:01 <frosch123> limitations are never a bug, removing limitations are features 13:46:19 <FLHerne> Well, yes 13:46:46 <FLHerne> But currently the issue is tagged as a bug :p 13:47:04 <frosch123> offer a refund? 13:47:41 <FLHerne> hah 13:48:15 <glx> RV also use a byte prop but I think it's possible to have faster than 127km/h RV 13:48:44 <frosch123> RV have two properties, it's a very silly part of ttdp 13:48:53 <FLHerne> glx: With prop 0B you're limited to 127km/h for RVs 13:49:06 <FLHerne> But prop15 has a different multiplier 13:49:20 <frosch123> which is converted into the same thing in game 13:49:35 <frosch123> anyway, pretty sure RV also have cb36 for speed 13:49:46 <frosch123> so cb36 can set higher speeds than prop15 13:50:47 <glx> prop 08 and 15 are both bytes anyway 13:51:30 <glx> but indeed lower multiplier of prop 15 allows higher speed 14:01:50 <DorpsGek_III> [OpenTTD/OpenTTD] nielsmh commented on issue #8177: Ships with max speed overflow to near-zero speed https://git.io/Jf6cI 14:18:01 <glx> BTW internally max speed is 16 bits 14:22:26 <nielsm> if the ship movement can be changed to work in 16 bits without affecting normal ships I don't see why not 14:23:05 *** Wormnest has joined #openttd 14:55:57 *** andythenorth has joined #openttd 14:59:28 *** Wrench_In_The_Plan has joined #openttd 15:09:44 *** Wormnest has quit IRC 15:14:33 *** WormnestAndroid has quit IRC 15:15:14 <andythenorth> yo 15:15:23 *** WormnestAndroid has joined #openttd 15:17:23 <andythenorth> so anyone tried the tech tree GS? 15:17:45 <andythenorth> can't add it to my running game, and I need to keep this one going for testing newgrfs :P 15:18:19 <Eddi|zuHause> wasn't the speed limit usually because of maximum movement distance per tick? 15:20:36 * andythenorth really wishes the game continued when paused 15:21:22 <FLHerne> Well, you'd still need an actual pause 15:21:59 <andythenorth> 'stop' 15:22:54 <andythenorth> I keep thinking about starting a patchpack 15:23:01 <andythenorth> but I am just not good enough at c++ 15:23:20 <andythenorth> I've been programming for 37 years, it takes 10 to be good, and I am not good :P 15:29:27 <Eddi|zuHause> "i've been doing this of X years" is never a good argument 15:29:35 <Eddi|zuHause> also, it's 10000 hours, not 10 years 15:30:37 <andythenorth> yes 15:30:44 <andythenorth> I was using shorthand :P 15:31:46 <Eddi|zuHause> like lightbulbs that say "1 year" and then go out after 3 months, because you use them for 12 hours a day, instead of 3 like they assumed for "average" use 15:32:30 <andythenorth> so 10k hours would be 3 hours per day for 10 years? 15:32:48 <Eddi|zuHause> yes. basically 15:33:17 <andythenorth> hmm 15:33:22 * andythenorth wonders about EddiPP 15:33:41 <Eddi|zuHause> what would that constitute of? 15:33:52 <frosch123> state machines 15:33:58 <frosch123> every else removed 15:34:15 <frosch123> just a turing simulator 15:34:17 <Eddi|zuHause> 10 things that sound good on paper but are eternally unfinished 15:43:21 <andythenorth> probably 10 things the exact opposite of what I would add :) 15:43:32 <andythenorth> and yet many of the ideas in my newgrfs are from Eddi :) 15:43:45 <Yexo> FLHerne: As glx said it's CB36. IMO not an OpenTTD bug. CB36 modifies the original property which is byte-sized, so returning anything larger than 0xFF is a newgrf bug 15:43:59 <andythenorth> is it worth starting a patchpack just to fix tropic landscape gen? :P 15:44:12 <Yexo> And while internal max speed is stored as 16 bits, anything more than 8 bits is not supported by the movement code 15:45:15 <nielsm> ottd should then be warning about a buggy newgrf 15:46:02 <Yexo> It definitely could, but exhaustively warning about everything a newgrf can possible do that's out of spec is not feasible 15:46:05 <nielsm> instead of producing behaviour that's clearly unintended but not clear whose fault it is 15:47:12 <Yexo> ship_cmd.cpp:208 uses CB36 and stores the return value. That'd be the place to introduce an extra check and/or warning 15:47:57 <Eddi|zuHause> just clamp() it? 15:48:28 <Yexo> clamping it has the downside that we hide the issue now, and if at some point in the future we want to expand the spec to allow higher speeds we need to remove that clamp() again 15:48:46 <Yexo> Which might lead to older newgrfs suddenly have ships with higher speeds than intended 15:49:07 <Yexo> For this specific case that's not a problem, but it can hide other bugs 15:49:18 <Eddi|zuHause> that's not a problem, because those grfs were out-of-specs anyway, so no guarantee about keeping their behaviour 15:49:54 <Yexo> If we go that route, we don't have to do anything: they're out of spec, which results in very slow moving ships currently. 15:50:13 <Eddi|zuHause> we'd have to warn about every "but these reserved bits should be zero" instance in the specs 15:51:03 <Yexo> afk for a bit again 15:53:27 <Eddi|zuHause> so we have two orthogonal options that we can either do or not do: 1) issue a warning for out-of-range, which would amplify the error, and 2) clamp back into range, which would cover up the error 15:55:13 <nielsm> any cb36 warning should probably also have a flag for "has already been shown" to avoid spamming the user 15:59:08 <Eddi|zuHause> next architectural question: should each code calling the callback provide its own range checks, or should the callback handler do the range checking, being provided with the appropriate information (signed, unsigned, lower bound, upper bound) 16:05:33 <frosch123> can we just agree that eddi implements faster ships, and be done with it? 16:05:57 <nielsm> just make all the ships faster yeah 16:09:53 <supermop_Home> switch to a minimum ship speed 16:10:07 <supermop_Home> no ship can go slower than say 70 kmh 16:10:11 <andythenorth> don't write bad newgrfs :P 16:10:34 <andythenorth> I can't find the setting to turn off the vertical gridlines in train depot window 16:10:42 <andythenorth> anyone know what it's called? 16:11:27 <andythenorth> maybe it's in openttd.cfg 16:11:55 <Eddi|zuHause> weren't you the reason they were introduced in the first place? :p 16:12:16 <andythenorth> yes 16:12:22 <andythenorth> they're missing in my client 16:12:35 <andythenorth> I want to turn them back on 16:13:15 <andythenorth> or have they been removed recently? 16:13:24 <andythenorth> I couldn't see a commit mentioning removal 16:13:30 <frosch123> they are disabled if you mix 28px and 32px newgrfs 16:13:54 <andythenorth> ok so I need to make my own PIPE grf 16:14:25 <andythenorth> is putting pipelines into Horse out of scope? :) 16:14:45 <andythenorth> Iron Pipe :P 16:15:25 <frosch123> Popeye 16:15:26 <nielsm> but why disable them? the point (to me) is to know whether trains will fit in particular stations, not to count cars 16:15:45 <Eddi|zuHause> implement NotPipeTypes? 16:16:10 <andythenorth> the abuse of trains actually works fine 16:16:17 <frosch123> oh, i read the other day that nrt was recoined to newgrf-road&tram-types 16:16:40 <Eddi|zuHause> nielsm: but the platform length is different from the depot pixel length 16:16:40 <andythenorth> I enjoy the evolution 16:16:51 <frosch123> so, we can recoin everything to NoGrf 16:16:57 <andythenorth> entropy 16:17:04 <andythenorth> I considered merging all my grfs into my patchpack 16:17:10 <Eddi|zuHause> nielsm: so 28px and 32px vehicles need different grid width 16:17:34 <andythenorth> anyway, the PIPE grf really shouldn't work in gameplay, but it really does, for the simple case of short point-to-point routes with one 'train' 16:17:46 <Eddi|zuHause> that, or we deprecate 28px vehicles and stretch everything to 32px 16:17:49 <frosch123> nielsm: the alternative is to draw 4 blank pixels between 28px wagons in depot 16:18:05 *** keoz has quit IRC 16:18:11 <frosch123> both solutions are ugly for some situations :) 16:18:19 <frosch123> both solutions result in bug reports :) 16:18:23 <frosch123> no option is winning 16:18:36 <andythenorth> I have made my peace with bug reports 16:18:48 <andythenorth> frosch123 seems we can kinda just ignore bug reports 16:19:20 <andythenorth> I was very -1, but I am slightly persuaded now, like +0.1 16:19:21 <supermop_Home> 28 and 32? 16:19:38 <frosch123> andythenorth: switch to jgrpp 16:19:51 <frosch123> since nrt it probably also has less bugs 16:19:54 <andythenorth> I would, but it doesn't actually do the things I want :P 16:20:04 <andythenorth> it kind of goes the opposite way to what I want 16:20:07 <andythenorth> except daylength 16:20:13 <andythenorth> andypp 16:20:46 <andythenorth> one day I'll make an NRT grf, and find the bugs :P 16:20:53 <frosch123> you could try to make andy grfs work exclusively in andypp, and see whether that is enough to win the pp competition 16:21:03 <andythenorth> that is what I would do 16:21:07 <andythenorth> also not MP safe 16:21:35 <andythenorth> there are too many things I want to experiment with that require more newgrf API :P 16:22:49 <andythenorth> newgrf town control might be the main one :P 16:23:05 <frosch123> NoTowns :) 16:23:40 <frosch123> or just NOT 16:23:49 <andythenorth> I'm considering making a 'town' industry 16:24:01 <frosch123> V already did 16:24:02 <andythenorth> it would solve a lot of 'problems' 16:24:14 <andythenorth> there might be new problems :P 16:24:14 <frosch123> yeti home 16:24:20 <andythenorth> :P 16:25:05 <andythenorth> did no-one ever do yeti@home? 16:25:26 <andythenorth> your PC scans pictures of the himalayas for cryptids? 16:25:31 <frosch123> it was more about yeti@work 16:25:57 <frosch123> oh, you mean the YETI research project 16:26:03 <frosch123> i think that was canceled years ago 16:26:27 <frosch123> i wonder, what was it's effect in civ1ß 16:27:11 <frosch123> ah, just generic +50% research 16:28:36 <Eddi|zuHause> SETI@HOME was stopped a few months ago 16:29:25 <Eddi|zuHause> but the whole distributed calculation infrastructure is being used for other research projects now 16:30:56 *** keoz has joined #openttd 16:30:57 *** Flygon has quit IRC 16:32:50 <frosch123> probably for bitcoins 16:33:11 <nielsm> looks like it's just a few minutes now until the astronauts disembarks the Crew Dragon onto the ISS 16:33:16 <frosch123> or is that horse dead yet? 16:34:52 <nielsm> bitcoin still exists and is probably still consuming more energy than the value of the transactions performed 16:36:03 <Borg> saaaatan ;D perfect.. perfect.. ;> 16:36:20 <Borg> PBS back signal as aux path selector 16:36:35 <Borg> took me a while to get correct p0, p1, p2 + pbs_back_penalty 16:36:36 *** sla_ro|master has quit IRC 16:36:53 <Eddi|zuHause> no, not bitcoin, but things like protein folding and stuff 16:37:23 <milek7> nielsm: I don't think so, total transaction value is likely huge 16:38:12 <milek7> maybe comparing consumed energy to total mined value 16:40:54 <andythenorth> we should rent our openttd botnet to coin miners? 16:41:17 <andythenorth> based on CPU use, I assume we're doing *something* with the client other than just running the game? 16:41:23 <nielsm> oh yes! make a multithreaded openttd 16:41:33 <nielsm> the other threads don't necessarily play the game tho 16:41:45 <andythenorth> maybe it's just the Horse graphics calculations that take so much CPU 16:41:54 <andythenorth> thread for newgrf action 2 chains? o_O 16:44:17 <Eddi|zuHause> andythenorth: that only works if you can defer reading the resulty by 1 tick 16:44:35 <andythenorth> I'm assuming Horse is to blame 16:44:39 *** Borg has quit IRC 16:47:48 <nielsm> well I did make that newgrf profiling feature which is actually in 1.10 :) 16:54:19 <nielsm> ...but it also requires some more tooling to make sense of the results, I suppose 17:00:19 <andythenorth> seems nml doesn't implement var 0x61? 17:01:28 <andythenorth> https://newgrf-specs.tt-wiki.net/wiki/VariationalAction2/Vehicles#Query_variable_of_n-th_vehicle_in_chain_.2861.29 17:02:31 <nielsm> soryr can't look right now, watching video of a door being opened 17:03:37 <andythenorth> ha 17:03:43 <andythenorth> in a vacuum? 17:04:08 <nielsm> I hope not 17:05:02 <nielsm> but it is several hundred km above the surface of the earth 17:17:42 <Eddi|zuHause> nielsm: that door is probably closer to earth surface than my distance from you 17:17:53 <nielsm> yeah 17:19:53 <supermop_Home> is that a sequined dinosaur? 17:22:06 <supermop_Home> i assume that is not official equipment 17:24:53 <SpComb> it's an official SpaceX zero-gravity indicator 17:25:10 <Eddi|zuHause> dinosaurs in space, that was a doctor who episode or something? 17:26:20 <SpComb> https://www.businessinsider.com/spacex-launches-plush-dinosaur-into-space-with-nasa-astronauts-2020-5?r=US&IR=T 17:26:28 <Eddi|zuHause> SpComb: you mean a free fall indicator? because gravity up there is probably still 90% of surface gravity:p 17:27:51 <frosch123> flying is the art of falling and missing the floor 17:35:07 <supermop_Home> we'll i am less interested in watching ted cruz's blue blazer 17:37:35 <frosch123> did he jump out of the dinosaur? 17:43:19 <andythenorth> so what's the go with prop 25? 17:43:34 <andythenorth> I could use it for things like marking up 'this is a passenger car'? 17:43:44 <andythenorth> for the super complicated sprite rules I have? 17:44:54 <andythenorth> nvm, I'll do it in python, less to go wrong :D 17:46:23 <frosch123> prop25 is for communication wagon -> engine 17:48:20 <frosch123> i don't know of a use-case that cannot be done by counting vehids instead 17:54:01 <andythenorth> IDs were my first choice :) 17:54:17 <andythenorth> I have some self-inflicted problems with using them in templating for stored procedures :P 17:54:35 * andythenorth fixes that 18:04:50 <Eddi|zuHause> frosch123: i think andy's problem is that he wants to count potentially lots of IDs 18:07:55 <frosch123> i wanted to write a for-each operator, but didn't 18:08:18 <frosch123> though now that nml support functions, there is actually a chance of it getting implemented in nml 18:09:19 <Eddi|zuHause> replace prop25 with permanent storage, and make a version of var42 with custom operators (and, or, add, min, max, ...) 18:09:40 <frosch123> declarative languages suck 18:09:57 <frosch123> either for-each or map-reduce 18:10:50 <Eddi|zuHause> functional action 2 18:11:02 <andythenorth> Eddi|zuHause you are correct, but I can count the IDs in python and just do a big switch 18:11:30 <andythenorth> how many values can an action 2 branch on? :P 18:11:32 <andythenorth> I might run out 18:11:46 <Eddi|zuHause> andythenorth: but then you don't have a "position in chain" variable 18:14:56 <andythenorth> no 18:15:09 <andythenorth> I gave up on that case in the assumption it will never be added :) 18:15:48 <andythenorth> there's usually an alternative way to design around the 'problem' which is why I don't mind that newgrf spec is quite conservative nowadays 18:16:11 <andythenorth> what I want to do on Tuesday might be deleted by Friday :P 18:18:38 <andythenorth> also I'm doing the action 2 chain equivalent of trick shots 18:19:04 <andythenorth> making increasingly complicated rules for which sprite to show, modified by neighbouring vehicles :P 18:19:14 <frosch123> andythenorth: there are 255 cases max, but you can chain switches 18:19:29 <andythenorth> thanks, I'll put a guard in 18:19:54 <frosch123> ottd sorts the cases to do binary searches, so many cases are no problem 18:19:56 <Eddi|zuHause> frosch123: i think my dummy switch is closing in on the 255 mark 18:20:51 <frosch123> does it become less dummy if you remove some cases? 18:21:29 <Eddi|zuHause> it's just there so all string ids and "global" action2s are referenced 18:21:59 <frosch123> well, in that case you run out of action2 ids anyway 18:22:10 <Eddi|zuHause> it could trivially be split into two 18:22:37 <Eddi|zuHause> i think string ids are 12 bit or so 18:23:21 <frosch123> 10 18:25:39 <Eddi|zuHause> i was at 187 strings and action2s went 188 to 252 18:27:10 <Eddi|zuHause> i could probably rewrite the action2s with procedures, which ideally would eliminate all but one 18:27:41 <frosch123> sounds like cets source would shrink from 100MB to 1kB 18:28:14 <Eddi|zuHause> i think the combined source file was something like 11MB 18:28:31 <Eddi|zuHause> which is roughly the same as FIRS 18:30:04 <frosch123> horse was 15MB a year ago (that's what's on my disk) 18:30:54 <Eddi|zuHause> by "combined source file" i meant what's fed into nmlc 18:31:21 <frosch123> yes 18:32:21 <Eddi|zuHause> nfo source is 19MB, final GRF is 22MB 18:39:39 *** sla_ro|master has joined #openttd 18:40:02 <andythenorth> I could frosch123 Horse is 6.9MB currently 18:41:57 <frosch123> aw, i looked in the wrong row, 15 was the .grf :/ 18:44:03 <Speeder_> can an experient OpenTTD player tell me what is the problems of using industries sets that have lots of cargos? 18:44:09 <Speeder_> compared to using something more simplier, that is. 18:45:17 <Eddi|zuHause> mixed trains may be tricky to set up, trains which focus on one single cargo are simpler 18:45:34 <andythenorth> Speeder_ how long have you got? :) 18:45:46 <Eddi|zuHause> not all vehicle sets support all cargos, or refit at stations 18:45:49 <Speeder_> andythenorth, I am not going anywhere :P 18:46:07 <andythenorth> frosch123 I'm sure Horse *was* 15MB or so until procedures were added to nml 18:46:37 <andythenorth> Speeder_ problems of many cargos (list follows) 18:46:42 <andythenorth> - overwhelming to players 18:46:56 <andythenorth> - makes the cargo payment chart unusable 18:47:07 <andythenorth> - makes the station list unusable (silly 2 char abbreviations) 18:47:28 <andythenorth> - makes the cdist cargoflow unusable 18:47:40 <Speeder_> Eddi|zuHause, ah, so that is not just my impression... I had a bunch of sailing ships routes that were working fine until I switched to a SQUID ship... then the route broke down due to refit at station misbehaving. 18:47:40 <andythenorth> - is hard to design a good grf with 18:47:45 <andythenorth> - takes a long time to play test 18:48:08 <andythenorth> - makes the vehicle refit menu unusable 18:48:17 <andythenorth> - makes the vehicle refit at station menu unusable 18:48:37 * andythenorth can't think of much else, 18:49:08 <Eddi|zuHause> Speeder_: cargodist doesn't properly maintain routes for which a vehicle could be refitted to, only if it actually ran with that refit at least once in the last <some period (2 years?)> 18:49:42 <Speeder_> Eddi|zuHause, I noticed that too 18:50:17 <Speeder_> also noticed cargodist sometimes ignore capacity entirely 18:50:55 <Speeder_> for example I had the following situation: diamond mine -> 70 ships -> far away port. then I built one ship to a closer new port. cargodist solution was send half of the cargo to each port, ignorign one had 70 ships and the other had 1 18:51:06 <andythenorth> cdist almost entirely ignores capacity 18:51:31 <Speeder_> how cdist chooses destination anyway? 18:51:34 <andythenorth> it doesn't 18:51:39 <andythenorth> there's no destination 18:51:43 <andythenorth> just a 'next hop' 18:51:47 <Eddi|zuHause> cargodist only ever chooses "next hop" 18:51:48 <Speeder_> for example I Saw a bunch of conflicting opinions on reddit about what settings to use with FIRS 18:52:04 <andythenorth> with FIRS you should use 'effect of distance on demand: 0%' 18:52:06 <Eddi|zuHause> everything else is just guesswork and statistics 18:52:12 <andythenorth> but unfortunately that breaks cities 18:52:22 <andythenorth> so you can't use 0% 18:52:26 <Speeder_> what "effect of distance on demand" does exactly? 18:52:39 <andythenorth> further away hops get less cargo assigned 18:53:05 <andythenorth> cargodist is remarkable, but it really doesn't do what people think it does 18:53:18 <Eddi|zuHause> Speeder_: for cargo, you need low effect of distance, so supplies are distributed evenly across all destinations, but for passengers, you need high effect of distance, or all links will be hopelessly overloaded 18:53:49 <Speeder_> Eddi|zuHause, and lemme guess... ottd doesn't support splitting the effect like that? 18:53:57 <Eddi|zuHause> nope 18:54:29 <andythenorth> nope 18:54:52 <andythenorth> also for cdist with FIRS, you can only serve 2 destinations per pickup station 18:55:29 <Speeder_> andythenorth, why is that? 18:56:57 <andythenorth> subsequent destinations will take a *very* long time to get assigned cargo 18:56:58 <Eddi|zuHause> 2 is a bit exaggerated, but the more you try, the more likely one will end up empty 18:57:13 <Speeder_> totally unrelated question: OTTD behaves well if I rename "existing" cargo? or stuff will break? 18:57:41 <andythenorth> once 2 links are up, no 'any destination' cargo seems to be generated 18:57:58 <andythenorth> I never figured out quite what the issue is, I just changed the way I play the game 18:58:10 <andythenorth> fonso did look into it, but there was no conclusion 18:58:13 <Speeder_> andythenorth, oooh... I see what you mean, I saw that even wiht only one destination 18:58:22 <andythenorth> no it should be fine with one destination 18:58:25 <Eddi|zuHause> Speeder_: you should stay away from modifying passengers, mail, goods or food 18:59:05 <Speeder_> Eddi|zuHause, I heard this is because houses are kinda hardcoded to expect these in certain slots and all 18:59:09 <Speeder_> but what about other cargo? 18:59:45 <Eddi|zuHause> most other cargos should be fine 19:00:52 <nielsm> water can also be risky 19:01:52 <Speeder_> but if I rename for example beans, as "soybeans", would that break newgrfs that rely on beans? 19:02:24 <Eddi|zuHause> no, newgrfs only look for the cargo label 19:03:01 <andythenorth> but if they're soybeans, change the label to SOYB 19:03:03 <nielsm> and AI and GS should also only be looking at the cargo label 19:03:04 <andythenorth> or similar 19:03:16 <Eddi|zuHause> (but graphics will be wrong if you get too creative with the original expectations) 19:03:21 <andythenorth> there was a fad for reusing labels for a long time 19:03:23 <andythenorth> but it's mad 19:06:07 <Speeder_> andythenorth, why? 19:06:19 <andythenorth> because apples aren't oranges 19:06:23 <andythenorth> and vice versa 19:06:33 <andythenorth> call a thing what the thing is 19:06:51 <Speeder_> well, soybeans are still beans... 19:06:57 <nielsm> if you change BEAN to be soybeans then you can't have "plain beans" any longer 19:06:59 <andythenorth> everything is just cargo then 19:07:07 <Speeder_> :P 19:07:10 <andythenorth> there is also a long standing joke about STUF 19:07:16 <nielsm> just distinguish things unless there's an extremely good reason not to 19:07:19 <andythenorth> the one-cargo game 19:07:19 <Speeder_> STUF I like that 19:07:24 <andythenorth> only one cargo needed 19:07:34 <andythenorth> 'accepts: Stuff, produces: Stuff' 19:07:37 <andythenorth> old joke 19:07:38 <Speeder_> I wonder if anyone ever made a newgrf about STUF 19:08:22 <Eddi|zuHause> i should make a GRF where your goal is to produce 1 item of "Passierschein A38" 19:09:11 <Speeder_> nielsm, my newgrf probably will end with 40+ cargos... I am trying to figure out if there are reasonable ways to diminish that 19:09:20 <Speeder_> but at same time I wanted to reproduce accurately Brazillian exports 19:09:31 <Speeder_> Brazil exports ridiculous amounts of soybeans 19:09:36 <frosch123> Speeder_: there is an ancient grf that renames goods to stuff 19:09:41 <Speeder_> and of "soybean powder as byproduct of making soybean oil" 19:09:53 <frosch123> and with ancient i mean probably as old os ottd 19:11:55 <andythenorth> Speeder_ Tropic Basic just did Beans, even though it's obviously Soybeans IRL :P 19:12:05 <andythenorth> 40+ cargos sounds about right 19:12:23 <andythenorth> the beans in FIRS are Brazilian :P 19:13:08 <frosch123> Eddi|zuHause: sounds more like a gamescript 19:13:17 <Speeder_> andythenorth, basically when I was seeing FIRS documentation I noticed all brazillian cargos were present, but spread ou many economies 19:13:22 <Speeder_> so I decided to make a new one. 19:13:23 <Speeder_> :P 19:13:37 <frosch123> Eddi|zuHause: you can probably make a fork from bee rewards 19:13:52 <Speeder_> for example cassava is staple food here, my parents grow it in their backyard, and cassava flour is popular addition to our barbecue 19:14:44 <frosch123> Eddi|zuHause: just randomise the cargos that shall be transported, independent of which cargos are available at the source or accepted at the destination 19:14:57 <frosch123> transport steel from coal mine to oil refinery 19:22:47 *** jottyfan has joined #openttd 19:29:11 <andythenorth> if you mix industry grfs, that option becomes available :P 19:29:20 <andythenorth> also if I make a mistake in FIRS compile 19:29:57 * andythenorth considers if 'restaurant car' should be a thing 19:30:03 <andythenorth> currently it's an auto-magical sprite 19:34:20 <DorpsGek_III> [OpenTTD/OpenTTD] Yexo opened pull request #8178: Simplify code by removing 2 global variables. https://git.io/Jf6oM 19:38:01 <nielsm> restaurant cars typically carry few passengers though 19:38:27 <andythenorth> and there's no gameplay effect :) 19:38:34 <andythenorth> bit like brake vans though 19:38:40 <andythenorth> or snowploughs :P 19:38:59 <Speeder_> I wish special cars DID had an effect 19:39:07 <Speeder_> like luxury passenger car getting you better rates 19:39:15 <Speeder_> maybe if there was another passenger cargo 19:39:18 <andythenorth> that's possible if you play on huge maps 19:39:22 <Speeder_> I wonder if it is possible to make a second passenger cargo 19:39:28 <andythenorth> if you play on maps where the normal cars won't make money 19:39:41 <andythenorth> then the cargo aging bonus can be used 19:40:00 <andythenorth> but it's not an actual gameplay choice, just a way to work around the failure of large maps 19:40:01 <Speeder_> create a "wealthy passenger" cargo, that requires luxury cars and restaurant car to board a train 19:40:09 <andythenorth> ECS Tourists 19:40:10 <nielsm> the problem is that the entire way passengers and cargo decides/is decided how and where to get transported is upside down 19:40:18 <nielsm> and you can't really change that 19:40:21 <andythenorth> bu then you have to make your own house set to 19:40:24 <andythenorth> too * 19:40:45 <andythenorth> I have long wanted a payment bonus / malus property 19:40:48 <andythenorth> for vehicles 19:41:09 <Speeder_> andythenorth, you can always make your newgrf support "wealthy passenger" and maybe one day someone will implement that cargo in their house newgrf :) 19:41:51 <DorpsGek_III> [OpenTTD/OpenTTD] frosch123 approved pull request #8178: Simplify code by removing 2 global variables. https://git.io/Jf6Kf 19:41:58 <nielsm> there isn't any way (iirc) to make houses produce other cargo than PASS and MAIL 19:42:59 *** Wrench_In_The_Plan has quit IRC 19:43:53 <Speeder_> nielsm, maybe a city-focused "industry" newgrf? 19:44:09 <Yexo> https://newgrf-specs.tt-wiki.net/wiki/Action0/Houses#Accepted_cargo_types_.281E.29 allows accepting all cargo types by houses 19:44:17 <Yexo> It looks like with https://newgrf-specs.tt-wiki.net/wiki/Callbacks#Custom_cargo_production_.282E.29 you can produce any cargo as well 19:45:17 <frosch123> it probably breaks the cargo flow graph though :) 19:45:50 <andythenorth> Speeder_ just make an industry grf that also provides houses 19:45:52 <frosch123> stations will not even show it as supplied 19:46:22 <frosch123> which means that cdist will likely not work either 19:46:49 <frosch123> so, likely that house production stuff does not work at all :p 19:47:02 <andythenorth> 'probably fine' :D 19:47:17 <Speeder_> I wonder how far people will push this game 19:47:18 <Speeder_> :P 19:47:31 <Speeder_> I wish there was a open source version of SimCity 4 19:47:36 <andythenorth> it pushes back when you push hard enough 19:47:43 <Speeder_> that is a game that needs lots of recoding :( 19:47:54 <Yexo> So how did ECS tourists work? Or was that produced/accepted only by industries? 19:48:01 <andythenorth> there's a castle 19:48:09 <andythenorth> and it might be that TTRS works with it 19:48:23 <andythenorth> it's before my time stuff though :) 19:48:35 <frosch123> Yexo: i think industries only 19:48:56 <frosch123> hmm, though there is a ecs-houses grf 19:49:01 <frosch123> with hotels and stuff 19:49:05 <frosch123> so, maybe both? 19:49:28 <Eddi|zuHause> Yexo: there's a house set that provides houses for tourists and fuel stations, if you didn't use the then-standard house set that i forgot the name of 19:49:47 <glx> newhouse ? 19:49:51 <frosch123> Eddi|zuHause: fuel is acceptance, not production 19:50:43 <andythenorth> hmm, /me back at var 40, 41 again 19:51:09 *** jottyfan has quit IRC 19:51:31 <frosch123> Yexo: turns out, AddProducedCargo_Town actually calls that callback as well 19:51:55 <frosch123> so as long as it returns constant results over longer time, it probably work 19:52:23 <Speeder_> by the way, can you query for the current date inside a newgrf? 19:52:36 <frosch123> yes, but it has issues 19:52:38 <Speeder_> for example to make hotels not pump out 300+ passengers per month in 1700 19:52:45 <Speeder_> what issues? 19:53:00 <Eddi|zuHause> caching issues could desync the game 19:53:19 <frosch123> if you change graphics depending on date, you may get partial/mixed redraws when the date changes 19:53:20 <andythenorth> no reported desyncs from FIRS doing 19:53:22 * Speeder_ never played OTTD multiplayer so... has no idea what that is about. 19:53:32 <andythenorth> the partial redraw is a thing 19:53:53 <Speeder_> partial redrew? 19:54:05 <Speeder_> as in... some tiles acknolwdge change in date and others don't? 19:54:13 <andythenorth> yes effectively 19:54:17 <frosch123> when a vehicle passes a house, half of the house may get redrawn, while the other half remains unchanhed 19:54:23 <andythenorth> hmm, I need a var like train var 41, but non-consecutive, 19:54:25 <glx> andythenorth: I think var61 is not implemented because the syntax won't be simple 19:54:28 <frosch123> so the screen shows partially the old, partially the new sprite 19:54:51 <Yexo> Speeder_: OpenTTD multiplayer works by having the server and all clients all do the same simulation. Some values are cached and some NewGRF callbacks are executed by the client when it joins the game. If the newgrf callback gives a different value for that client compared to the last time it ran on the server, the client and server now have a different value for something that should be qual 19:54:53 <andythenorth> glx what could be not simple about "[STORE_TEMP(-1, 0x10F), var[0x61, 0, 0x0000FFFF, 0xC6]]" :D 19:55:16 <glx> I mean the nml syntax :) 19:55:21 <andythenorth> I know :) 19:55:22 <Yexo> If that's for pure graphs, it's likely fine. If that's for something like vehicle speed that'll result in a desync since the vehicle will move at different speed on the client and server 19:56:19 <andythenorth> if only action2 could recurse :( 19:56:23 <Eddi|zuHause> glx: i think the syntax would just be: <var_name> [ '(' <offset> ')' ] 19:56:31 <andythenorth> I could walk the consist, and wouldn't need new vars 19:56:44 <andythenorth> I supposed I could encode switches for consists with lengths 1-255 19:56:52 <andythenorth> probably trivial to generate 19:57:59 <andythenorth> hmm, maybe user bits? o_O 19:58:30 <frosch123> Eddi|zuHause: glx: there is probably an old devzone ticket, which suggests adding scopes, like "parent.random_bits", "self.random_bits", "relative_vehicle[5].random_bits" 19:59:10 <Eddi|zuHause> i remember suggestion about scopes, but i don't think it went into syntax 19:59:18 <frosch123> Eddi|zuHause: glx: oh, also "callback.name_for_var_10_18_bit_stuff" 20:00:16 <andythenorth> as usual when I want new version of var 41, turns out I'm trying to do something I shouldn't :D 20:00:27 <andythenorth> this is the 3rd time I'll find a better way instead of a new var 20:02:32 <frosch123> looking at the nml issue tracker on devzone is always fun 20:02:48 <frosch123> it contains all the things that are discussed here regulary 20:03:00 *** Wrench_In_The_Plan has joined #openttd 20:03:36 <Eddi|zuHause> because nobody ever implements anything, all discussions run in circles? :p 20:04:14 <glx> and when we implement stuff othre things break ;) 20:04:20 <frosch123> in the past people at least wrote stuff down. now they prefer to forget it immediately, so it can be discussed again 20:05:13 <andythenorth> it's fun the first 5 times :) 20:05:19 <andythenorth> after that...less 20:05:24 <Eddi|zuHause> frosch123: that's because some people went on a rampage and closed tickets 20:05:49 <Eddi|zuHause> so people stopped opening tickets 20:05:59 <andythenorth> rampage? 800 tickets is more than a rampage 20:06:22 <andythenorth> also the evidence is against the claim that they stopped 20:06:39 <andythenorth> just that PRs no longer increase the ticket count 20:06:56 <glx> we don't get many PRs 20:07:20 <frosch123> more than reviews :p 20:08:11 <andythenorth> it's like an R number :P 20:08:27 <andythenorth> if PR > reviews, then there's only one outcome :) 20:08:43 <andythenorth> I rarely close a PR 20:09:18 <andythenorth> what was I looking at? 20:09:22 <andythenorth> oh coop nml project 20:09:44 <andythenorth> 56 issues 20:09:46 <andythenorth> https://dev.openttdcoop.org/projects/nml/issues?per_page=100 20:10:04 <andythenorth> 'Urgent' https://dev.openttdcoop.org/issues/6727 20:10:05 <andythenorth> or not 20:10:35 <frosch123> someone should transfer the issues that contain spec/syntax proposals to the wiki :) 20:10:35 <glx> invalid ;) 20:11:06 <glx> but yes some requests are valid, just nobody looks at the old repo 20:11:24 <andythenorth> was automated issue transfer too hard? 20:11:38 <andythenorth> I would do it manually, but I am actually making newgrfs, and have missed doing that 20:11:41 <frosch123> 3 people started, noone finished 20:12:03 <andythenorth> there is some irony that there are many NRT grfs, but I have not had time to make one :) 20:12:09 <andythenorth> it's like the ultimate NRT fact 20:12:12 <glx> it's not easy to do the transfer once issues and PR exists on github 20:12:38 <frosch123> glx: the numbering does not matter, coop uses global numbers, so you would never want to keep those 20:13:02 <frosch123> in case of nml, it's also not worth transfering close issues 20:13:07 <glx> 4991 is transfered ;) 20:13:19 <frosch123> it's more useful to safe issues that contains actual thoughts 20:13:50 <glx> 8519 is fixed 20:13:52 <andythenorth> I closed https://dev.openttdcoop.org/issues/2850 20:13:58 <Eddi|zuHause> i think the main issue is keeping the links from old commit message to matching ticket number 20:14:16 <frosch123> no, that is no issue, because it is not needed 20:14:32 <frosch123> it's nice for ottd, because it has arcane artefacts. but not needed for nml 20:15:16 <glx> 4222 is somehow WIP :) 20:15:34 <andythenorth> https://dev.openttdcoop.org/issues/1625 is done 20:16:42 <andythenorth> this is invalid with new tile flag, but valid for old spec https://dev.openttdcoop.org/issues/6806 20:23:10 <Speeder_> Yexo, so how I aovid desync if I am querying dates to change production? 20:23:52 <Speeder_> what is var61? 20:23:59 <Speeder_> and there are many things you CAN do in a newgrf that nml can't? 20:24:53 <Eddi|zuHause> there are a few things 20:25:02 <Eddi|zuHause> like stations 20:25:14 <andythenorth> not much else now 20:25:17 <Eddi|zuHause> or some crazy hacks that are intentionally left out 20:25:48 <Speeder_> why stations are not in nml? 20:25:53 <Speeder_> and now... what crazy hacks can be done? 20:25:55 <Speeder_> now I am curious :D 20:32:07 <frosch123> Speeder_: caching/desyncs/var61 are vehicle stuff 20:34:33 <frosch123> Speeder_: ttdp wanted to make many things available with little effort, so it exposed internal ttd data as raw data, independent of how useful it is or whether it makes any sense 20:34:53 <frosch123> Speeder_: nml only supports stuff that "can be explained" :p 20:54:05 <DorpsGek_III> [OpenTTD/nml] frosch123 commented on pull request #150: Fix #147: rounding issues https://git.io/Jf6Pp 20:55:36 <FLHerne> frosch123: That's not how the code's used 20:57:16 <FLHerne> NML calculates the internal grf speed value, *then* calls ottd_display_speed to check if it gets displayed correctly 20:57:20 <frosch123> iirc it does a binary search to find the nfo value, by comparing whatever that function returns with whatever was written in the nml source 20:57:28 <FLHerne> (and to clamp it to the range where it is) 20:58:33 <FLHerne> There's no binary search 20:58:59 <FLHerne> It increments/decrements the grf value by 1 until ottd_display_speed gives the right answer 21:00:40 <FLHerne> I have been wondering if this is a sane way to do it :p 21:00:52 <FLHerne> There's a lot of semi-duplicated code 21:01:36 <frosch123> ok, then the comment above it should probably say "duplicate OpenTTD's Vehicle::GetDisplaySpeed and AircraftVehicleChangeInfo" 21:04:52 <FLHerne> I think we should probably be doing something similar for other units, too 21:05:33 <FLHerne> People probably notice off-by-one errors in power less 21:06:47 <frosch123> i think no other units are as crazy as the speed units :) 21:11:58 <nielsm> radical idea: change to a new speed unit internally in the game, one that is entirely consistent between vehicle types, and has enough precision to convert accurately to both mph and km/h display 21:12:18 <nielsm> and allow newgrfs to use those units too 21:14:45 *** Wolf01 has quit IRC 21:19:17 <Eddi|zuHause> nielsm: changing the grf units probably needs grfv9 21:20:06 <FLHerne> Eddi|zuHause: Or just adding a new vehicle property? 21:20:37 <frosch123> FLHerne: it's not just properties, it's also callbacks and variables 21:20:49 <FLHerne> (of course, RVs would then have *3* speed properties, so that might not be such a good idea...) 21:21:00 <frosch123> and adding a second callback results in andy's favorite dependency graph 21:21:34 <Eddi|zuHause> while at it, also allow better price range 21:21:40 <frosch123> https://newgrf-specs.tt-wiki.net/wiki/VehicleRefitting#Misc._vehicle_flag_5_.27use_of_capacity_multiplier_for_default_cargo.27_cleared <- that happened when two different ttdp devs added support for changing capacity 21:22:00 <frosch123> no idea what part of that was intentional :) 21:22:25 <andythenorth> I do love those diagrams though 21:22:48 <frosch123> http://devs.openttd.org/~frosch/texts/capacityadventure.txt <- they also exist as text :) 21:23:10 <andythenorth> it's remarkable that you managed to document it 21:23:40 <frosch123> oh, i spent a lot of time reading ttdp source 21:23:41 <Eddi|zuHause> that's what happens when specs follow implementation instead of the other way around 21:25:05 <andythenorth> so....a new version of var 41, with consecutive IDs matching a list? 21:25:11 <frosch123> i tried to make it consistent by adding the alternative method shown in the section below. 21:25:32 <frosch123> unfortunately it is not the default, and everyone is scared by the graphs, so noone uses it 21:26:08 <frosch123> andythenorth: no, a new procedure call. call switch for each vehicle in the chain, and combine the results 21:26:28 <glx> grfv9 could be a good idea to get station with a sane interface/logic ie action2 like other tile layout 21:26:30 <frosch123> then the callee switch can check whatever, instead of a single thing 21:26:31 <andythenorth> o_O 21:27:02 <nielsm> glx: sounds like you want to deprecate a ton of old stuff to the extend the entire newgrf stack might need to be implemented twice in ottd 21:27:15 <nielsm> s/deprecate/replace/ 21:27:15 <frosch123> nielsm: https://wiki.openttd.org/Frosch/GRF_version_9#Units.2C_properties.2C_variables <- btw. units are also on that list :p 21:27:27 <Eddi|zuHause> if nobody makes a ticket for collecting these grfv9 ideas, nobody will remember them when grfv9 is actually being implemented :) 21:27:52 <andythenorth> frosch123 procedure call sounds valid....but can't I already do that if I write enough switches? 21:28:15 <andythenorth> assuming consist is max 255 vehicles :P 21:28:29 <frosch123> andythenorth: consist is actually max 127 vehicles 21:28:34 <frosch123> or similar 21:28:47 <Eddi|zuHause> andythenorth: no, you can only call procedures on the current vehicle, not other vehicles in the chain :p 21:28:49 <glx> station spec looks like a big hack from before houses and industries 21:28:56 <andythenorth> Eddi|zuHause but I can var 61 21:29:01 <frosch123> andythenorth: anyway, the tricky part is the "reduce" step. ideally the "map" step is independent of execution order 21:29:48 <andythenorth> hmm :) 21:29:53 <frosch123> glx: you can make them pretty similar, if you remove the ability to define custom sprite layouts 21:30:25 *** gelignite has quit IRC 21:30:26 * andythenorth tries to figure out a consist ID counter solely in recursive var 61 checks :P 21:30:33 <frosch123> custom sprite layouts mostly result in grf bugs. usually there is only one way to use them correctly 21:30:37 <andythenorth> the code generation would be hideous :) 21:33:21 <Yexo> glx: I've looked at adding station support to NML. From what I've seen so far the main issue is that the actual sprites are not included in the sprite layout like for other features, but defined later. And at that later point (action2) you can't change the sprite layout, only the actual sprites 21:33:58 <frosch123> Eddi|zuHause: nielsm: btw. both your suggestions (use common speed unit that works for both km/h and mph; and bigger price range) are on that 5 year old wiki page :p 21:34:10 <frosch123> so, same as with nml tracker :) 21:34:13 <Yexo> It looks like it may be possible to abstract that away via the advanced sprite layout 21:34:33 <glx> Yexo: I looked at chip source, and I see sprites are defined via actionA, which is weird for me 21:34:47 <Yexo> Basically: combine all different sprites into one giant spritelayout, then enable/disable parts via register modifiers 21:35:19 <Yexo> actionA + GRM to get sprite numbers? 21:35:24 <frosch123> Yexo: or only offer two sprite layouts: track-tile and non-track-tile 21:36:08 <Yexo> frosch123: but that means custom syntax and not being able to reuse the existing spritelayout blocks 21:37:04 <Yexo> Is there any cooperation between newrailtypes and custom stations? 21:37:15 <nielsm> Yexo am I understanding it right that stations need a kind of indirect spritelayout, while everything else right now uses a "direct" spritelayout? 21:37:24 <Yexo> nielsm: yes 21:37:41 <nielsm> could it maybe be possible to introduce the indirect spritelayout as a general syntax available for everything, and compile it differently depending on context? 21:37:52 <frosch123> Yexo: stations are supposed to draw the normal rail ground sprite. ottd intercepts that and calls the railtype grf instead 21:38:11 <frosch123> snowy rail ground also works or something 21:38:20 <Eddi|zuHause> non-track tiles should become a separate tile type that works for all station types, instead of being a train station tile 21:38:27 <Yexo> frosch123: thanks, I'll need to look at the drawing code for sure 21:38:37 <frosch123> Yexo: https://dev.openttdcoop.org/issues/2746 <- did you find that 21:38:49 <Eddi|zuHause> that would allow solving an issue where you can't put them on (some) slopes 21:38:56 <frosch123> there was a lot of speccing with elyon some years ago 21:39:40 <Yexo> frosch123: not yet, thanks (me reads what I've written 9 years ago) 21:44:58 *** Samu has quit IRC 21:45:21 *** jottyfan has joined #openttd 21:47:09 *** WormnestAndroid has quit IRC 21:47:59 *** WormnestAndroid has joined #openttd 21:49:22 *** jottyfan has quit IRC 21:53:37 <andythenorth> frosch123 call procedure on each vehicle in the chain <- worth writing down? :P 21:54:51 <frosch123> it's on my page with the title "consist search". i have no more insights beyond the title :) 21:55:20 <andythenorth> the case I have is really quite invalid :) 21:55:32 <andythenorth> it's just become a game in itself :P 21:56:01 <andythenorth> I still play the meta-game of 'but can I in newgrf?' 21:56:02 <andythenorth> bad habit 21:56:22 <frosch123> originally the idea was insprited by snails requests for arcane variables 21:56:52 <andythenorth> I have some magic to draw railcars with cabs or not 21:56:57 *** keoz has quit IRC 21:57:01 <frosch123> i can't remember what exactly. but it was along the lines of those industry tile variables that noone uses 21:57:07 <andythenorth> I want it to work across multiple IDs for other reasons 21:57:15 <andythenorth> my case is silly though 21:57:42 <Yexo> frosch123: Thanks for the link. That discussion goes in the same direction as I was thinking: mostly keep the existing syntax as-is, but then goes further (in a good way!) to define required magic necessary for stations 21:57:57 <Yexo> That specs solves several issues I hadn't even seen yet 21:58:15 <andythenorth> if we ever _did_ add vehicle variants (grouping multiple IDs)...then something equivalent to a var 41 would be needed 21:58:20 <andythenorth> but we didn't so eh :) 21:58:33 <frosch123> Yexo: i certainly don't remember any details. but glad that the written stuff helps 21:59:08 <Yexo> Was anything done except for discussing syntax? 21:59:30 <frosch123> elyon did stuff, but i am not aware of anything published 21:59:50 <frosch123> possibly it did not go beyond refactoring existing stuff 21:59:56 <Yexo> @seen elyon 21:59:56 <DorpsGek> Yexo: elyon was last seen in #openttd 5 years, 20 weeks, 0 days, 3 hours, 57 minutes, and 3 seconds ago: <Elyon> hiya 22:00:35 <frosch123> "CATS" was the planned station set by V/elyon 22:01:23 <frosch123> anyway, no code available 22:01:47 <Yexo> V as in, the V+numbers? 22:02:50 <frosch123> yes 22:03:21 <frosch123> not sure whether you were around when V started with newgrf 22:03:37 <frosch123> but V made various vehicle, industry and landscape grfs 22:03:46 <Yexo> Not sure either. He was a community member already for sure 22:03:48 <frosch123> until eaten by factorio campaign 22:04:10 <Yexo> Yes, I recognized his name on the factorio blog a while ago 22:04:35 <frosch123> this channel encouraged him to apply for the job. so it's our fault :p 22:04:52 <Yexo> Well done :) 22:05:08 <frosch123> it's also our fault, that he uses python to automate stuff 22:05:18 <glx> this channel was a factorio channel for some time ;) 22:05:40 <Yexo> I'm not very surprised that game speaks to many people here 22:05:50 <frosch123> yes, and coop server runs a factorio server instead of ottd nightly :p 22:06:14 <Yexo> You're just tempting me to check that out now :p 22:06:27 <frosch123> no idea whether it is still active 22:06:44 <glx> ok nml stations won't happen soon then :) 22:06:44 <frosch123> but when i still had access to the hypervisor, it usually had that task running :p 22:07:59 <Yexo> nah, I've played my share of factorio. One server isn't going to get me hooked now again 22:11:37 <andythenorth> V453000 is really me 22:11:43 <andythenorth> like in fight club 22:14:40 <dwfreed> lies 22:15:57 <milek7> fight club is some movie that everybody is supposed to know? 22:17:29 <frosch123> yes, but i do not know it either 22:17:49 <nielsm> just go look up the spoilers for it 22:18:29 <andythenorth> it's not very good imho 22:18:39 <andythenorth> I started reading the book also, but it's blah blah 22:21:30 <andythenorth> also sleep 22:21:32 *** andythenorth has quit IRC 22:22:01 <Yexo> sleep is a good plan. Night all 22:24:04 *** iSoSyS has joined #openttd 22:25:17 <Speeder_> I was reding some historical documents about Brazil 22:25:26 <Speeder_> and they made me wonder... what would happen if ports accepted Mail as cargo? 22:25:31 <Speeder_> would it break anything? 22:25:50 *** nielsm has quit IRC 22:25:56 <DorpsGek_III> [OpenTTD/OpenTTD] InTheMorning commented on pull request #7213: Feature: BFS-based river generator https://git.io/Jf6MT 22:26:40 *** sla_ro|master has quit IRC 22:27:54 <FLHerne> Speeder_: No 22:28:17 <Speeder_> and... would it be good idea? 22:28:38 <FLHerne> I don't see why not 22:28:58 <FLHerne> Base-game oil rigs accepts passengers 22:29:05 <Eddi|zuHause> what a random comment... 22:29:38 <FLHerne> And I think in BSPI and ECS most industries accept some passengers, as 'workers' 22:30:14 <FLHerne> Or was that YETI, not ECS? 22:30:35 <FLHerne> Not, YETI has yeti dudes, and those are different :p 22:30:54 *** Progman has quit IRC 22:32:04 *** frosch123 has quit IRC 22:32:14 <FLHerne> Eddi|zuHause: Less random than "Cricket wirrless uograde codes" 22:33:25 <Eddi|zuHause> oh yeah, i think i've seent that :p 22:36:58 *** Smedles has quit IRC 22:38:16 *** Smedles has joined #openttd 22:44:42 <DorpsGek_III> [OpenTTD/OpenTTD] Yexo dismissed a review for pull request #8178: Simplify code by removing 2 global variables. https://git.io/Jf6Kf 22:44:42 <DorpsGek_III> [OpenTTD/OpenTTD] Yexo updated pull request #8178: Simplify code by removing 2 global variables. https://git.io/Jf6oM 22:46:01 <DorpsGek_III> [OpenTTD/OpenTTD] Yexo commented on pull request #8178: Simplify code by removing 2 global variables. https://git.io/Jf6Mz 22:51:20 *** iSoSyS has quit IRC 22:55:06 *** Gustavo6046 has quit IRC 22:55:20 *** Gustavo6046 has joined #openttd 23:09:57 *** Wormnest has joined #openttd