Config
Log for #openttd on 12th August 2018:
Times are UTC Toggle Colours
00:05:52  *** chomwitt has quit IRC
00:10:04  <DorpsGek_II> [OpenTTD/OpenTTD] JGRennison updated pull request #6881: Fix: Script/AI construction of rail track and waypoints https://github.com/OpenTTD/OpenTTD/pull/6881
00:18:54  <DorpsGek_II> [OpenTTD/OpenTTD] JGRennison commented on pull request #6881: Fix: Script/AI construction of rail track and waypoints https://github.com/OpenTTD/OpenTTD/pull/6881#issuecomment-412309889
00:21:40  *** tokai has joined #openttd
00:21:40  *** ChanServ sets mode: +v tokai
00:25:58  <DorpsGek_II> [OpenTTD/OpenTTD] JGRennison updated pull request #6883: Fix: Depot building cost does not include foundation build cost (#6875) https://github.com/OpenTTD/OpenTTD/pull/6883
00:28:18  *** tokai|noir has quit IRC
01:07:53  *** glx has quit IRC
02:41:26  *** Supercheese has quit IRC
02:41:48  *** Supercheese has joined #openttd
03:49:37  *** haudrauf has quit IRC
03:50:56  *** haudrauf has joined #openttd
04:31:01  <k-man> how do you increase the size of an airport?
04:31:29  <k-man> can i just destroy and build over the top? will that void all orders of aircraft going to that airport?
05:34:02  <Supercheese> As long as you do it very quicky, or while paused, it should maintain all your aircraft orders
05:44:02  *** Alberth has joined #openttd
05:44:02  *** ChanServ sets mode: +o Alberth
05:44:08  <Alberth> moin
05:45:12  <k-man> i saw a tip online where you add a train station or bus depot to the airport, then you can destroy the airport and rebuild
05:49:27  <Supercheese> that works too
05:54:41  <Alberth> if you're quick enough in destroy & rebuild, the name is kept
05:55:16  <Alberth> shouldn't have any pesky AIs around that plop down their airport as soon as you destroy yours :p
05:58:39  <k-man> yeah
05:58:41  <k-man> ok
05:58:46  <k-man> i don't have any AIs
05:59:11  <k-man> i let my son play on my game for a bit
05:59:20  <k-man> random airports popped up all over the place :)
06:03:05  <k-man> what is the rule for maximising speed around corners?
06:03:09  <k-man> of trains that is
06:21:59  <Alberth> depends on the train-type
06:22:34  <Alberth> but no 2x 45 degrees directly after each other is a first big step :)
06:23:39  <Alberth> but to some extent it's not that important
06:24:06  <Alberth> near stations you usually have the least amount of space, but trains don't go fast there either
06:24:33  <Alberth> on open field trains go faster, but you also have plenty of room to smooth out the edges
06:25:34  <Alberth> ie 2x45 degrees is fine near a station, as a train isn't traveling > 80-something km/h there
06:31:34  *** eirc has quit IRC
06:38:44  *** nielsm has joined #openttd
06:42:07  <k-man> ah ok
06:42:22  *** snail_UES_ has quit IRC
06:42:55  <k-man> i seem to recall there was a way to place 2 platforms not adjacent to each other, but so they are the same station
06:43:07  <k-man> is there a way to do that?
06:43:34  *** andythenorth has joined #openttd
06:53:58  <Alberth> place station, but hold control while placing it, you'll get a window to select what you want
06:54:02  <Alberth> moin andy
06:54:06  <andythenorth> o/
06:57:25  <k-man> thanks Alberth
07:04:33  * andythenorth testing nml for 16 cargos in / 16 out
07:07:21  <nielsm> yay
07:08:12  <andythenorth> tip of the branch gives me a python syntax error in make test
07:08:19  <nielsm> heh
07:08:24  <andythenorth> I'm working through the other commits one hash at a time, testing
07:08:34  <nielsm> I did warn you that I didn't even attempt to run this :)
07:08:49  <andythenorth> you did
07:11:29  *** Supercheese has quit IRC
07:11:51  *** Supercheese has joined #openttd
07:14:18  <andythenorth> hmm
07:15:40  <andythenorth> afaict this looks right https://paste.openttdcoop.org/plp8lyhxn/z2insl/raw
07:15:53  <andythenorth> but the result in-game is that industry produces only Acid cargo
07:16:08  <andythenorth> no acceptance, and is missing industry window text
07:16:55  <nielsm> what does it produce as NFO output?
07:18:05  <andythenorth> this may take some time :)
07:18:15  <andythenorth> 107k lines :)
07:18:16  <andythenorth> of nfo
07:18:18  <nielsm> ouch
07:18:44  <andythenorth> I think I need to patch FIRS compile to just do one industry nfo
07:19:29  <andythenorth> oh I already have that :)
07:19:39  <nielsm> think you can maybe try producing something simple like my test grf? https://0x0.st/sJia.txt
07:20:14  <andythenorth> just 13k lines now
07:20:55  <andythenorth> so prop 26 I need to find
07:20:59  <nielsm> but it's only the action0's that are interesting
07:22:38  * andythenorth lost in the varaction 2s
07:22:43  <andythenorth> glad I didn't write those in nfo
07:23:01  <andythenorth> https://paste.openttdcoop.org/pyvejhpar/fbwaov/raw
07:24:27  <nielsm> what's those rst escapes?
07:25:02  <nielsm> oh wait it's an action 2, so something to indicate operators I guess
07:27:09  <andythenorth> afaict prop 26 should be in this sprite https://paste.openttdcoop.org/pny2wqh66/pn3wbb/raw
07:28:07  <andythenorth> hmm prop 26 is in there
07:28:09  <andythenorth> 25 isn't
07:28:18  <Alberth> nielsm: https://newgrf-specs.tt-wiki.net/wiki/VarAction2Advanced
07:28:20  *** Progman has joined #openttd
07:28:47  <andythenorth> other sprites have prop 11 and 10 where 26 is in this sprite, which is encouraging
07:29:21  <nielsm> maybe my nml implementation is resolving the cargoids wrong
07:31:00  <andythenorth> ctt_list?
07:31:33  <nielsm> ah that's an existing function I re-used that seemed to be doing the right thing
07:31:39  <nielsm> maybe it isn't
07:32:48  <andythenorth> can't remember if it's industries that use absolute cargo IDs, not the CTT
07:32:54  <andythenorth> something does, or used to
07:33:34  <andythenorth> no CTT values should work https://newgrf-specs.tt-wiki.net/wiki/Action0/Industries#Production_cargo_types_.2810.29
07:34:30  <andythenorth> oh
07:34:49  * andythenorth might have an answer, testing
07:38:02  <andythenorth> nielsm: my local checkout of your ottd PR was stale :)
07:38:09  <nielsm> oh
07:38:12  <nielsm> :D
07:38:47  <andythenorth> but at least I learnt how to read nfo again :P
07:39:39  <Alberth> ignore most numbers? :)
07:39:53  <andythenorth> yes
07:40:07  <andythenorth> look for patterns of prop number + feature number
07:41:04  <andythenorth> https://github.com/nielsmh/nml/commit/869e0ece0785a2d20c278dd77353e11aa1192fbb is good
07:41:11  <andythenorth> and https://github.com/nielsmh/nml/commit/cb30dcf1f1da664a6c36a187d5d7ad44c0c02b2e
07:41:19  <andythenorth> I'll move on to the others
07:41:26  <andythenorth> we need some kind of online review tool :P
07:43:48  <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain commented on pull request #6881: Fix: Script/AI construction of rail track and waypoints https://github.com/OpenTTD/OpenTTD/pull/6881#issuecomment-412325053
07:45:40  <DorpsGek_II> [OpenTTD/OpenTTD] JGRennison merged pull request #6881: Fix: Script/AI construction of rail track and waypoints https://github.com/OpenTTD/OpenTTD/pull/6881
07:45:41  <DorpsGek_II> [OpenTTD/OpenTTD] TrueBrain pushed 1 commits to master:
07:45:41  <DorpsGek_II>   - Fix bf8d7df: Script/AI construction of rail track and waypoints (#6881) (by JGRennison)
07:45:42  <DorpsGek_II> https://github.com/OpenTTD/OpenTTD/commit/d839526365e6
07:54:02  <andythenorth> https://github.com/nielsmh/nml/commit/9f31ca6f9a416fd3fc4ffa3b728f51ab1b2d67d7 seems to fail
07:54:09  <andythenorth> I'm checking it's not EBKAC
07:55:42  <andythenorth> https://paste.openttdcoop.org/pl05g9k8b/e89fco/raw
07:56:05  <andythenorth> curious about what ByteListProp is
07:56:46  <nielsm> it generates a property value that's a length byte followed by that many byte-sized items
07:57:12  *** eirc has joined #openttd
07:57:13  <nielsm> renamed CargoListProp because that class didn't have anything to do specifically with cargo types
07:57:21  <andythenorth> ok
07:57:24  <andythenorth> so the input is prod_multiplier: [9, 7, 20, 14];
07:58:03  <andythenorth> line that reports failure is
07:58:04  <andythenorth>         if -0x80 <= value < 0 : value += 0x100
07:58:23  <nielsm> huh
07:58:26  <andythenorth> which looks like it's handling 80+ vars at my first guess
08:00:51  <andythenorth> ah do I have the spec wrong?
08:01:30  <andythenorth> what's the expected format for prod_multiplier?
08:02:58  <nielsm> the output is a byte counting number of values, followed by byte values for each output cargo slot
08:03:28  <andythenorth> so my input is correct?
08:03:32  <andythenorth> ok
08:03:33  <nielsm> I think so
08:04:33  <andythenorth> this is where we hit the limit of 'andythenorth can't use pdb'
08:04:37  <andythenorth> so I have to put prints in
08:05:52  <andythenorth> oh it's type comparison error no?
08:05:59  <andythenorth> Error:    (TypeError) "unorderable types: int() <= ConstantNumeric()".
08:06:47  <andythenorth> what does value.values[i].reduce_constant() do? o_O
08:06:48  <andythenorth> let's see
08:07:30  <Alberth> simplifying the expression
08:07:41  <Alberth> or constant, probably
08:08:12  <Alberth> you have to wrap the "int" into an expression object
08:09:02  <Alberth> not sure if you have a comparison then :)
08:09:21  <nielsm> or extract the resulting value from the reduced expression
08:09:40  <andythenorth> firs.nml, if anyone wants to play along at home https://paste.openttdcoop.org/poxrildbu/tigpn4/raw
08:09:51  <andythenorth> I am currently at rev. https://github.com/nielsmh/nml/commit/9f31ca6f9a416fd3fc4ffa3b728f51ab1b2d67d7#diff-d1a886cb2dde0af9578bb803357ee81bR754
08:11:38  *** Supercheese has quit IRC
08:18:12  <andythenorth> [ByteListProp(0x27, [[i.reduce_constant().value for i in value.values]])] appears to work
08:18:19  <andythenorth> but I am cargo-culting from other places
08:18:28  <andythenorth> it's _probably_ wrong
08:18:36  <nielsm> same as me!
08:18:53  <andythenorth> the results are as expected
08:19:57  <andythenorth> Alberth o_O ? https://paste.openttdcoop.org/pavp9yoku/gcgcpe/raw
08:20:07  <nielsm> bbl
08:20:22  <andythenorth> k
08:20:30  <andythenorth> I'm not sure reduce_constant() is even needed here
08:21:27  <andythenorth> hmm, fails without it
08:22:47  <Alberth> too many [ ] ?
08:23:27  <Alberth> maybe not
08:23:52  <andythenorth> seems not
08:24:00  <andythenorth> it's lists in lists :P
08:24:26  <Alberth> I don't think nml make a clean distinction between input expressions, and reduced expressions
08:24:46  <Alberth> so depending on where stuff comes from it may or may not fail
08:25:38  <Alberth> hmm, wondering what would happen if you make a second set of classes for normalized expressions
08:25:59  <Alberth> would solve the "double reduce" problem at least
08:26:30  <andythenorth> worth doing?
08:26:57  <Alberth> if we keep nml, likely worth a try
08:28:43  <Alberth> problem is that I don't know if any code tries to sneakily change expressions without making a new object
08:31:56  <andythenorth> we have....some regression tests :P
08:32:10  <andythenorth> it's probably TMWFTLB for current nml
08:41:02  *** frosch123 has joined #openttd
08:42:34  <andythenorth> quak and stuff
08:42:44  <frosch123> moi
08:45:59  <Alberth> moo
09:01:41  <andythenorth> so is this expecting an array of pairs? https://github.com/nielsmh/nml/commit/10b3a269bd0d1b235631ddfe848f7b904c2c77c5
09:02:38  <andythenorth> it's for prop 28 https://github.com/OpenTTD/OpenTTD/pull/6867#issuecomment-408407249
09:02:52  <andythenorth> seems it could have 256 possible entries :o
09:10:06  <nielsm> btw I also put all the docs for the new props in the initial comment on the PR :)
09:10:39  <nielsm> that's the maintained documentation right now
09:11:48  <nielsm> and yes prop 28 is stupid and annoying because it can take such a large number of values
09:12:25  <nielsm> I'm not sure if the format should be kept in either GRF or NML
09:12:47  *** juzza1 has quit IRC
09:13:32  <nielsm> the GRF format could be changed to a 2D array and so could the NML format
09:15:01  <andythenorth> do we need 16*16 multipliers?
09:15:04  <andythenorth> they can use cb for that
09:16:17  <nielsm> you mean scrapping prop 28 entirely?
09:16:59  <nielsm> that would close off part of the core industry type definition to GRF which I'd argue is conceptually wrong
09:18:15  *** juzza1 has joined #openttd
09:19:20  <andythenorth> maybe
09:19:30  <andythenorth> it just seems very faceted
09:20:51  <nielsm> part of the reason is also that I don't understand how production callback actually works :D
09:23:48  <andythenorth> oh it just returns the amount to produce :)
09:23:59  <andythenorth> it looks complex, but it literally returns 'produce n' for each cargo
09:25:03  <nielsm> but yes in the core code, input_multipliers is a 16x16 matrix (originally 3x2), in prop 28 I specify it in a sparse format where you only provide the non-zero values
09:25:33  <andythenorth> I'm only querying it because FIRS doesn't use it, so I have to write a test case from scratch
09:25:40  <andythenorth> and test it :P
09:25:47  <nielsm> weak!
09:25:47  <nielsm> :)
09:25:57  <andythenorth> you've tested prop 28 works?
09:26:03  <nielsm> yes
09:26:09  <nielsm> not in NML but it does in GRF
09:26:18  <nielsm> (I use it in my own test file)
09:26:25  <andythenorth> I saw :)
09:26:53  <andythenorth> ok I'll make test case for that
09:26:58  <andythenorth> meanwhile, https://paste.openttdcoop.org/pavp9yoku/gcgcpe/raw
09:27:00  <andythenorth> is the other fix
09:29:49  <nielsm> I have two birds on my head
09:29:56  <nielsm> one of their tails is partially blocking my view
09:31:40  <Alberth> turn your head :p
09:36:19  <andythenorth> go north
09:36:21  <andythenorth> inventory
09:37:07  <nielsm> movement is not currently possible
09:37:30  <nielsm> you have one bird dropping in your hair
09:37:49  <nielsm> you hear beaks grinding
09:48:21  *** Wormnest has joined #openttd
09:53:02  <andythenorth>  multipliers = multipliers + [(in_slot.value, out_slot.value, int(mul.value * 256)]
09:53:09  <andythenorth> invalid syntax :)
09:53:10  * andythenorth looks
09:53:18  <andythenorth> parentheses
09:53:52  <andythenorth> but where should the missing one be?
09:56:09  <andythenorth> should that line be multipliers.extend?
09:56:15  <k-man> how do you replace vehicles from electric trains to monorail?
09:56:16  <andythenorth> seems like list concatenation...
09:56:48  <k-man> the monorail train isn't listed in the replace window
09:58:35  <k-man> oh, apparently its not easy? you have to sell the old trains and buy new ones?
09:59:19  <andythenorth> syntax error is here https://github.com/nielsmh/nml/commit/10b3a269bd0d1b235631ddfe848f7b904c2c77c5#diff-d1a886cb2dde0af9578bb803357ee81bR832
10:10:11  <nielsm> just before the end ]
10:10:15  <nielsm> another paren there
10:11:50  <Alberth> not the "int" ?    * 256 seems to need an integer :)
10:12:14  <nielsm> multipliers = multipliers + [(in_slot.value, out_slot.value, int(mul.value * 256))]
10:14:03  <Alberth> k-man: yep, most fun way to do that is to make new routes with the monorail, as mass-replace is both boring and not taking opportunities that have been made possible by the faster train type
10:14:42  <Alberth> alternatively, stop playing before you hit the forced railtype change, or us a newgrf that is not forcing you into it
10:14:50  <Alberth> *use
10:15:03  <nielsm> the less-friction way is to play with "universal rail" newgrf which will let you build a depot that can build any kind of train
10:15:19  <nielsm> or even just run monorail trains on the same rail as conventional
10:15:31  <nielsm> arguably that's cheating
10:16:45  <Alberth> I think the biggest issue is that you are denying yourself the chance to have a fresh look at your network, and re-organize it for the faster trains :)
10:24:51  <andythenorth> hmm
10:26:32  <andythenorth> input_multiplier: [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0]];
10:26:42  <andythenorth> is that the correct format?
10:26:47  <nielsm> no
10:26:53  <andythenorth> ok
10:27:28  <nielsm> the format I'm expecting is kinda bad
10:28:07  <andythenorth> I'm trying to reverse engineer it from the nml code :)
10:28:11  <nielsm> but basically: [0, 1, 5, 1, 2, 2, 1, 3, 1]
10:28:14  *** Wolf01 has joined #openttd
10:28:25  <nielsm> that's three triplets of values
10:28:27  <andythenorth> it's B B W
10:28:28  <andythenorth> ?
10:28:30  <Wolf01> o/
10:28:41  <nielsm> yes
10:28:45  <andythenorth> ow that format hurts :)
10:28:52  <nielsm> input cargo slot, output cargo slot, multiplier
10:29:21  <nielsm> feel free to change it entirely
10:29:28  <andythenorth> oof
10:29:32  <nielsm> (in NML)
10:29:36  <andythenorth> I have no idea what's better :)
10:29:50  <andythenorth> I just would never use this property :)
10:30:04  <andythenorth> no eddi?
10:30:13  <nielsm> [ [0, 1, 5], [1, 2, 2], [1, 3, 1] ]
10:30:17  <nielsm> could be one option
10:30:24  <andythenorth> it's easier to read at least
10:30:49  <nielsm> [ [0, 5], [0, 0, 2, 1] ]
10:30:51  <nielsm> could be another
10:31:28  <k-man> cool, thanks for the tips guys
10:32:00  <Alberth> just use triplets
10:32:19  <Alberth> industry tiles are just as silly :)
10:33:35  <andythenorth> so that needs the patch changed? :)
10:34:15  <nielsm> well you can change the NML format without changing the GRF format, and vice versa, NML just needs to transform it appropriately
10:35:35  <Alberth> I am not so sure it's going to be sparse, if you want to produce something at all outputs no matter what cargo you insert (ie standard industry behavior), it's not sparse at all
10:37:59  <nielsm> yeah
10:38:10  <nielsm> should probably change prop 28 format in GRF too
10:38:18  <michi_cc> I don't think the 16-in-16-out industry is going to be the standard industry (and if it is, the NewGRF authors deserves it :)
10:38:41  <nielsm> to maybe "B<n> B<m> n*m*W"
10:39:44  <nielsm> num_inputs, num_outputs, num_inputs * [num_outputs * multiplier]
10:40:42  <andythenorth> varying the output per input is bonkers
10:40:48  <andythenorth> but that ship apparently sailed a long time ago
10:48:02  *** Heiki has quit IRC
10:50:59  <Alberth> andy: that would mean each row is the same?
10:52:59  <Alberth> you could split it, have a "reset + initial value" for all entries, and a "add these numbers to the current"
10:53:50  <Alberth> or are properties supposed to be written in a single sprite?
10:55:43  <andythenorth> dunno :)
10:55:51  <andythenorth> I would have thought so though
10:56:14  <andythenorth> anything to make it more sane heads toward the production cb which already solves this :P
10:56:39  <andythenorth> this new prop 28 is just to keep parity with residual bits of spec
10:57:12  <andythenorth> in case you really need to design a newgrf where 8t coal gives 2t steel and 6t goods, but 8t iron ore gives 6t steel and 2t goods
10:57:17  <andythenorth> repeat for 16 cargos
10:57:25  <andythenorth> and you're not capable of using production cb
10:57:53  <andythenorth> sometimes I really hate backwards compatibility :(
10:58:02  <andythenorth> dragging along dead bits of spec, and all the associated code
11:00:32  <andythenorth> :)
11:03:27  <Wolf01> <andythenorth> sometimes I really hate backwards compatibility :( <- don't
11:03:53  <Wolf01> If people want new features move on
11:04:21  <andythenorth> don't do the compatibility?
11:04:24  <andythenorth> or don't hate it?
11:04:38  <Wolf01> Don't do
11:06:18  *** Maraxus has joined #openttd
11:06:33  <Wolf01> Look at minecraft, there are people playing 1.4.7 because it was the last one with a particular spec which allowed to do "easily" some stuff, now we are at 1.13. If people want a specific grf they could play 1.8 until the end of time
11:06:50  <andythenorth> not doing prop 28 doesn't break old grfs
11:06:57  <andythenorth> it just doesn't update an old way of doing things
11:07:17  <andythenorth> this is a new property and format introduced to support a legacy spec
11:07:52  <k-man> are there examples of building junctions where one of the track pairs is at 45%?
11:14:32  <andythenorth> frosch123: do you think it would be acceptable to drop prop 28? https://github.com/OpenTTD/OpenTTD/pull/6867#issuecomment-408407249
11:15:27  <frosch123> andythenorth: i did not invent it :p
11:23:02  <Alberth> k-man, one standard junction is to add 2-tile long bridge to let the 45 degrees track under it
11:26:51  <nielsm> k-man have you considered this option? https://0x0.st/sJ-p.png
11:26:52  <nielsm> :)
11:27:50  <nielsm> (obviously won't be efficient with heavy traffic, but for low traffic it's unbeatable)
11:32:57  <k-man> hmm, thanks
11:33:15  <k-man> i sent all my trains to depot
11:33:22  <k-man> is there some way to start them all again?
11:33:28  <k-man> without 100s of clicks
11:33:54  <nielsm> the master vehicle list should let you
11:34:06  <nielsm> each depot also has a "start all vehicles" button
11:34:54  <k-man> ah thanks
11:58:26  *** Compu has joined #openttd
12:47:41  *** andythenorth has quit IRC
12:55:16  *** Maraxus has quit IRC
13:22:45  *** ToBeFree has joined #openttd
14:08:16  * LordAro wonders if it's worth turning off +R now
14:10:19  <Wolf01> Why? I fixed my script now :>
14:11:18  <LordAro> :p
14:11:27  <frosch123> @mode -R
14:11:27  *** DorpsGek sets mode: -R 
14:11:32  <frosch123> let's try 5 minutes :p
14:15:23  *** AndroUser2 has joined #openttd
14:22:10  *** andythenorth has joined #openttd
14:22:20  <andythenorth> so we're all on the fence about prop 28? :P
14:22:30  <andythenorth> I have to just re-implement it in nml as a list of triples?
14:23:42  <frosch123> do you use those properties in firs?
14:23:49  <frosch123> or is it all production callback?
14:23:56  <andythenorth> production cb of course :)
14:24:58  <frosch123> how likely is it that some newgrf would want to use many input/output, but not use complex production mechanics?
14:25:17  <andythenorth> no idea :)
14:25:30  <andythenorth> how likely is it that I want to rewrite the nmlc code for this? o_O
14:25:31  <andythenorth> 0/1
14:26:06  <michi_cc> Is the problem with the prop itself or just with the NML syntax?
14:26:16  <frosch123> just the nml syntax :)
14:26:34  <frosch123> you can't implement it with just c&p
14:26:57  <frosch123> apparently
14:27:28  <michi_cc> m4nfo is obviously superior then :p
14:27:33  *** APTX_ has joined #openttd
14:27:56  <frosch123> actually, it's not the syntax that is complicated. just noone knows the nml implementation :p
14:28:24  <frosch123> m4 is the most advanced preprocessor
14:29:25  <andythenorth> I'll just rewrite this for a list of triples https://github.com/nielsmh/nml/commit/10b3a269bd0d1b235631ddfe848f7b904c2c77c5#diff-d1a886cb2dde0af9578bb803357ee81bR832
14:29:29  <andythenorth> probably wrong :P
14:34:58  <andythenorth> eh how about 'nml doesn't implement this prop' :)
14:35:00  <Alberth> I don't understand why it needs a new triplet format, just make an extended version of large number of multipliiers
14:36:24  <Alberth> it may be based on the idea of sparse array, but I don't think it will be sparse
14:36:41  <Alberth> unless you get specific outputs for specific inputs
14:36:58  <Alberth> but you can also express that in the list of multipliers
14:37:42  <Alberth> given that few people will use it, reduce the amount of work?
14:38:27  <andythenorth> maybe I just leave the current format, and fix the bug? o_O
14:39:42  <Alberth> generate an extended version isn't that mucjh work is it?
14:39:45  <Alberth> *much
14:40:15  *** HeyCitizen has joined #openttd
14:40:18  <andythenorth> extended in what way?  Just more named props?
14:40:41  <Alberth> 3x2 does a row of output multipliers for each input
14:40:56  <Alberth> so if I have 5x4, have 5 rows of 4 numbers
14:41:28  <Alberth> and since that won't fit in the old property, add a new property, preferably with a 5 and 4 in there too
14:42:18  <Alberth> so you keep the old solution for those who want it with little effort, as far as I can see
14:42:57  <Alberth> maybe the 5 and 4 are implied elsewhere already
14:43:45  *** HeyCitizen_ has joined #openttd
14:44:03  <Alberth> ^ frosch123
14:44:51  <Alberth> same users different ip
14:45:54  <andythenorth> the (in the patch already) solution with a different prop name seems to fragment the API a bit
14:46:05  <andythenorth> it will make the docs more complicated
14:46:20  <andythenorth> 'use this prop for more than 3 cargos, otherwise use these 3 props'
14:46:34  <Alberth> I'd use the new one for all cases
14:46:51  <andythenorth> yeah, that makes more sense
14:46:55  <andythenorth> deprecate the old one
14:47:14  <andythenorth> but I think that will upset authors, as the new format is hard
14:47:20  <andythenorth> so I'd better figure out the triples :P
14:48:26  <Alberth> I think grf-format should allow the new one for any number of input and output
14:48:29  *** HeyCitizen has quit IRC
14:49:00  <Alberth> nml may want to generate the old property if possible to be backwards compatible with older openttds
14:52:36  <Alberth> is "mul.value" a floating point value? otherwise * 256 looks weird
14:53:00  <andythenorth> Error:    (TypeError) "'float' object cannot be interpreted as an integer".
14:53:08  <andythenorth> ^ current error :P
14:56:19  <Alberth> I'd need a line with that :)
14:57:13  <Alberth> hmm, so chips does cooperative GRM stuff
14:57:21  <Alberth> now I have to write a decoder for it :p
14:58:02  <frosch123> or rewrite chips to no longer use it
14:58:22  <frosch123> when chips was written GRM was necessary for recolour sprites
14:58:27  <frosch123> but that  is no longer the case
14:58:33  <frosch123> you can do recoluring with action1 sprites now
14:59:27  <Alberth> I am yet to understand what all these grf actions do, let alone I understand the bigger picture yet :p
15:00:17  <Alberth> it seems to do "reserve" which is in line with what you say
15:00:48  <Alberth> 217 entries, feature 8
15:02:24  <Alberth> not to mention an action 6 next, which is likely black magic :p
15:02:48  <frosch123> GRM always involves A6 :)
15:03:01  <frosch123> essentially, you need N recolour sprites
15:03:17  <frosch123> you do a malloc for those sprites and get a pointer to them (GRM reserve)
15:03:32  <frosch123> then you insert that pointer in places where you need the sprites (action 6)
15:05:35  <andythenorth> not quite witchcraft
15:05:48  <andythenorth> +1 to rewrite chips :P
15:05:55  <andythenorth> give me a station spec, I'll rewrite it
15:05:59  <andythenorth> gladly
15:06:36  <Alberth> https://paste.openttdcoop.org/pwm7jgtvu   >> is the decoded action D, with a 10 and 6 action in-between, and "change sprites below the action 6, which likely  writes the sprites at the address changed by the action 6
15:08:20  <Alberth> no idea where the 32, 33, and 34 come from, but perhaps, they are just random numbers
15:08:59  <frosch123> are they register numbers?
15:09:18  <frosch123> s/register/parameter/
15:09:23  <Alberth> could be, is there a list of register numbers?
15:09:39  <frosch123> they are freely usaable
15:09:46  <frosch123> just variables for stuff
15:10:15  <frosch123> anyway, does the action6 have the 0x80 add flag?
15:12:53  <frosch123> the 32/33 thing seems to be the silly differential add method to work around GRF loading stages
15:13:19  <frosch123> it's really stupid, i think people only came up with it to impress clueless people
15:13:34  * LordAro wonders how nielsm has managed to create house-watched_cargoes-64 branch on the main repo
15:13:40  <Alberth> there is no 80+ value in the action 6, except for the terminating ff
15:14:03  <frosch123> LordAro: good question
15:14:30  <nielsm> LordAro uh I did that? :s
15:14:44  <Alberth> developers can push non-protected branches, I think
15:16:33  <Alberth> I don't understand why they didn't use a new action number, instead of merging 4 different functionalities into 1 action
15:17:27  <Alberth> special values with different meaning depending on other special values :p
15:17:59  <frosch123> looks like the branch protection stuff can use wildcards
15:18:17  <Alberth> ah, that's nice
15:18:31  <Alberth> global, or per developer?
15:18:48  <frosch123> TrueBrain: do you remember whether any of the protected branch rules are different? or can we just merge them into one "*"?
15:18:55  <Alberth> ie have alberth_* branches for me, eg
15:19:05  <LordAro> nielsm: grats on making developer tho :>
15:21:00  <frosch123> why is the 0.4 branch newer than the 0.4.5?
15:21:33  <Alberth> people continued making patches for 0.4.6 ?
15:22:34  <frosch123> i mean there is a 0.4 branch and a 0.4.5 branch
15:22:42  <frosch123> 0.4.5 had a separate branch for some reason
15:22:56  <frosch123> while 0.4.6 was again done from 0.4 brnach
15:23:12  <Alberth> confusion on the used branch model I guess
15:23:18  <frosch123> i know thar 0.4.5 was more like 0.5
15:23:27  <frosch123> but i expected 0.4.6 from the 0.4.5 branch
15:24:02  <Alberth> and never update 0.4.5, thus
15:27:42  <frosch123> so, i merged all the release/* rules
15:27:52  <frosch123> i'll keep master separate for now
15:28:04  <frosch123> not sure whether that may get different rules
15:28:07  <Alberth> does "branch protection" even work? https://help.github.com/articles/enabling-branch-restrictions/  says it rericts pushing to a branch, but what if you make a new branch?
15:28:40  <Alberth> ie I can't push to master, but I can push "mymaster" on top of master
15:28:51  <frosch123> yes, that's exactly the problem we had here :)
15:28:58  <frosch123> i think we would need a rule "*"
15:29:05  <frosch123> but gh does not allow overlapping rules
15:29:25  <frosch123> and the master rule is actually different from the release rule
15:30:02  <Alberth> that makes all branches restricted, but I am not pushing to an existing branch
15:30:27  <Alberth> I make a new branch
15:31:03  <frosch123> no idea
15:31:09  <frosch123> maybe it is considered easy to fix
15:31:14  <frosch123> just deleting the branch
15:31:20  <frosch123> (which i already did)
15:32:12  <andythenorth> does "for i in range(len(value.values) / 3):" choke on floats?
15:32:14  <Alberth> yeah, so perhaps they assume you wouldn't give developer rights
15:32:19  * andythenorth should know, after 10 years of python
15:32:31  <Alberth> yes, / in python3 is always a float
15:32:34  <Alberth> use //
15:33:51  <Alberth> don't you want a range with a stepsize of 3 ?
15:33:56  <andythenorth> not sure
15:34:01  <andythenorth> I'm just trying to make it run :)
15:34:12  <andythenorth> my competency here is below what's needed :P
15:34:14  <Alberth> fair enough :)
15:34:48  <Alberth> but yeah, / got changed from 2 to 3
15:35:07  <andythenorth> ok these are my patches so far https://paste.openttdcoop.org/pncrp9vcg/dfe8ht/raw
15:36:33  <frosch123> nielsm: https://paste.openttdcoop.org/p8km7i1t3 <- please add a separate push-url to your git config
15:38:38  <andythenorth> hmm
15:40:00  <nielsm> https://0x0.st/sJH6.txt  <- should be safe now
15:41:07  <andythenorth> tile acceptance flag isn't working yet
15:41:12  <andythenorth> checking for EBKAC again :)
15:46:13  <andythenorth>  3417 * 15	 00 09 04 01 FF AA 00 08 00 0D 00 12 01 11 00
15:46:17  <andythenorth> looks like prop 12 is 01?
15:46:23  <andythenorth> which is the expected value
15:47:27  <andythenorth> oh does it need to set a bitmask?
15:47:32  <andythenorth> is the expected value 2?
15:48:29  <frosch123> yes
15:48:41  <andythenorth> hmm
15:48:48  <andythenorth> the patch looks correct
15:48:53  <andythenorth> https://github.com/nielsmh/nml/commit/0a8ebd97275607c7fc9b7ff997c624f1d493d62b
15:49:01  <andythenorth> we specify flags as numbers, not the bitmask values
15:49:03  <frosch123> bit 0 is "cb26 needs random bits"
15:49:21  <frosch123> andythenorth: yes, your nml code need to have "bitmask(...)"
15:49:32  <andythenorth> ok EBKAC
15:54:23  <andythenorth> ok prop 2 is now set in the nfo
15:54:36  <andythenorth> prop 12, bit 1 set, I mean
15:54:44  <andythenorth> words
15:55:29  <andythenorth> nielsm: have you tested prop 12 special flag for tiles?
15:55:30  <andythenorth> o_O
15:58:23  <andythenorth> I've cleared the tile acceptance in 0A, 0B, 0C, and set the flag
15:58:29  <andythenorth> it's accepting 3 cargos, but 5 are set
16:21:08  <nielsm> the "accepts everything" flag? yes that one works
16:24:28  <andythenorth> hmm what do I do wrong :)
16:24:29  <andythenorth>  3405 * 15	 00 09 04 01 FF AA 00 08 00 0D 00 12 02 11 00
16:24:29  <andythenorth> prop 12 is now 02
16:24:58  <andythenorth> https://dev.openttdcoop.org/attachments/download/9072/prop_12.png
16:25:18  <andythenorth> and props 0A / 0B / 0C aren't set
16:52:17  <frosch123> i see, no need to find new names for different harbors
16:56:42  *** snail_UES_ has joined #openttd
16:59:33  <andythenorth> also more chance of them being place
16:59:40  <andythenorth> placed *
16:59:59  <andythenorth> harbours can currently ruin a map
17:00:33  <andythenorth> too few of one type, or awkward locations
17:08:53  *** ToBeFree has joined #openttd
17:13:36  *** ToBeFree has joined #openttd
17:24:46  *** chomwitt has joined #openttd
17:46:59  *** Alberth has left #openttd
17:56:22  *** ToBeFree has quit IRC
18:00:00  *** KouDy has joined #openttd
18:04:43  <andythenorth> trying to understand https://github.com/OpenTTD/OpenTTD/pull/6867/commits/aba662dadd3397684b7091077a7728a6a4cbad8c#diff-04c1eb90cc9761ed756a604e9e6b4c6dR433
18:04:57  <andythenorth> is capping to 3 here for the legacy support? https://github.com/OpenTTD/OpenTTD/pull/6867/commits/aba662dadd3397684b7091077a7728a6a4cbad8c#diff-04c1eb90cc9761ed756a604e9e6b4c6dR424
18:08:40  *** AndroUser2 has quit IRC
18:09:01  <nielsm> yes
18:10:35  <nielsm> or rather, there are no new callbacks for tile accepts, so the old callbacks can only supply 3
18:13:27  <andythenorth> and MemSetT is where we put up to 16?
18:13:54  <andythenorth> maybe not
18:14:48  <andythenorth> INDTILE_SPECIAL_ACCEPTS_ALL_CARGO     = 1 << 1 is to read the second bit?
18:14:54  * andythenorth is such a noob :P
18:15:02  <nielsm> yes
18:15:50  <andythenorth> trying to reverse engineer if anything is missing in my nfo
18:18:42  *** AndroUser2 has joined #openttd
18:19:52  <andythenorth> in-game debug tools don't include tile flags
18:22:59  <andythenorth> this is the tile nfo https://paste.openttdcoop.org/pj69kvij2/ajf7xo/raw
18:23:07  <andythenorth> it's in 2 blocks because that's how nml inserts the cb flag
18:23:37  <andythenorth> I wondered if prop 8 being 0 is a problem, but shouldn't be
18:23:50  <andythenorth> 0D is land shape
18:24:01  <andythenorth> 11 is triggers for cb25
18:24:09  <andythenorth> 0E is the cb flags
18:24:19  <andythenorth> and 12 is special flags
18:30:37  <snail_UES_> michi_cc: I tried your corrected patch for 90-degree curves and it works
18:31:17  <snail_UES_> i.e. railtypes that are supposed to allow tight curves do allow them, and those that don’t actually forbid them
18:31:45  <snail_UES_> pathfinder seems to work correctly as well… anything specific you might think of I should check further?
18:39:28  <peter1138> Why is it a railtype option? o_O
18:43:25  <michi_cc> snail_UES_: Nothing except support from other devs :)
18:45:07  <snail_UES_> michi_cc: heh, got it...
18:45:37  <michi_cc> I'm not sure the forbid flag would be a good idea though, as somebody playing with the 'forbid 90deg' setting to off has no indication that a particular layout will break with some railtypes.
18:45:59  <nielsm> andythenorth, sorry can't really look into anything more right now, I have a growing headache and looking at monitors is painful
18:46:09  <michi_cc> The allow flag is a lot less problematic as doesn't surprisingly breaks layouts.
18:46:11  <andythenorth> np :)
18:46:24  <andythenorth> nielsm: I just don't want to forget it all by september :)
18:46:28  <andythenorth> after all our holidays
18:46:40  <andythenorth> it's near done, but I have git stash patches :P
18:46:45  <snail_UES_> michi_cc: so we could only have an “allow” flag that overrides the OTTD main setting and allows sharp curves
18:46:51  <snail_UES_> it would be OK with me
18:47:17  <andythenorth> doesn't this need to be inverse boolean matrix thing?
18:47:24  <andythenorth> isn't the point to over-ride player settings?
18:49:06  <andythenorth> so if player has forbid, set allow
18:49:12  <andythenorth> and if player has allow, set forbid
18:49:13  <andythenorth> no?
18:56:08  <peter1138> Why does the player's setting need to be ignored?
18:56:21  <peter1138> Why do we need this flag?
19:00:59  <snail_UES_> peter1138: we need it to give an advantage to railtypes such as narrow gauge, which in reality could do sharper curves
19:01:13  <snail_UES_> andythenorth: inverting the player setting would miss the point…
19:01:52  <andythenorth> eh?
19:01:52  <snail_UES_> what we need here is to always allow sharp curves, regardless of what the user sets. This is only for narrow gauge railtypes, to give them an historically accurate advantage
19:02:08  <andythenorth> but there's no advantage if user allows sharp curves
19:02:15  <andythenorth> so it needs to invert user setting
19:02:22  <andythenorth> in fact, just ignore user setting
19:02:25  *** Gja has joined #openttd
19:02:45  <snail_UES_> andythenorth: yes, the point is to ignore the user setting for certain railtypes
19:04:00  <andythenorth> so if user setting is 'allow', then railtype inverts
19:04:08  <andythenorth> and if 'disallow' then railtype inverts
19:04:24  <snail_UES_> andythenorth: it would be pointless to disallow sharp curves for narrow gauge railtypes
19:04:28  <andythenorth> in fact, why not just remove user setting?
19:04:47  <snail_UES_> andythenorth: as I said, this is about giving NG an in-game advantage
19:04:58  <snail_UES_> in reality, narrow gauge rails have sharper curver
19:05:20  <snail_UES_> a way to model this in a game is to only allow 90-degree curves for NG, when the user disallows them in general
19:06:06  <snail_UES_> if a player allows 90-degrees curves in general, then they should be allowed everywhere. It would make totally no sense to have sharpe curves for broader gauges and not for narrower gauges :)
19:08:14  <snail_UES_> alternatively we could remove user setting at a game level and place it to a railtype level, but this would require major work. The change Michi has put in place is simpler
19:10:54  <frosch123> why don't you improve the curve-speed-bonus/penalty property for a larger range or something?
19:11:09  <snail_UES_> frosch123: because NG trains are already very slow
19:11:24  <snail_UES_> they’re trains running at 50-60km/h in general, so they already don’t slow down much around curves
19:16:29  <andythenorth> snail_UES_: I don't get it :)
19:16:47  <snail_UES_> andythenorth: ok, what part don’t you get?
19:16:52  <andythenorth> it's not an advantage if player enables 90 degree
19:16:59  <andythenorth> so you need to also forbid 90 degree
19:17:09  <andythenorth> for other types
19:17:18  <andythenorth> i.e. remove player setting, force it in newgrf
19:17:25  <snail_UES_> yes, but Michi just said this would be more problematic
19:17:59  <snail_UES_> if forbidding 90 degrees is more difficult, then even just allowing 90 degrees for certain types would be an acceptable result
19:18:18  <snail_UES_> NG would have an advantage if the player forbids 90 degrees game-wise. That’s what I would recommend for my set
19:18:29  <andythenorth> seems like quite a bit of work for not a lot of result :)
19:19:02  <michi_cc> It's not difficult in a technical sense, but it is not very intuitive without some way to show more info about a railtype than just the name string.
19:19:04  <snail_UES_> andythenorth: work is done...
19:19:12  <andythenorth> but what will the setting say in game?
19:19:23  <andythenorth> 'forbid 90 degrees unless the railtype allows it' ?
19:19:35  <andythenorth> or is it a tri-state setting now?
19:19:48  <LordAro> that sounds a bit silly
19:20:06  <snail_UES_> the in-game setting would remain unchanged
19:20:25  <LordAro> why would you want grfs to be able to override a game setting?
19:20:38  <snail_UES_> LordAro: for what I described before…
19:21:03  <snail_UES_> that I might want to give an advantage to a certain railtype, which I can’t do now
19:21:17  <LordAro> i don't see that as a valid reason
19:21:53  <snail_UES_> why not? in reality, having sharper curves was actually one of the motivations to build narrow gauge instead of standard
19:21:57  <snail_UES_> the other was cost
19:22:24  <LordAro> OTTD is not real life
19:22:35  <andythenorth> the setting description has to change
19:22:36  <LordAro> sharper curves are one thing, 90 degree sudden turns are not
19:22:41  <andythenorth> can't have a setting that isn't a setting eh
19:22:43  <LordAro> s/not/another/
19:22:48  <andythenorth> it just causes bug reports
19:22:53  <andythenorth> and angry server owners
19:23:04  <andythenorth> I would just bin the setting tbh
19:23:07  <andythenorth> we have too many
19:23:13  <andythenorth> do it in content
19:23:21  <snail_UES_> andythenorth: I wouldn’t disagree with your idea
19:23:40  <snail_UES_> bin the setting and let single tracksets define whether 90-degree curves are allowed or not
19:24:01  <LordAro> that will cause more confusion
19:24:42  <snail_UES_> there could be a default behavior
19:24:47  <LordAro> even so
19:25:08  <LordAro> "i can create tracks with 90 degree turns with x railtype, but not with y"
19:25:12  <andythenorth> we could call it OpenTTD Revolution
19:25:17  <andythenorth> remove lots of settings
19:25:30  <snail_UES_> LordAro: why not?
19:25:36  <LordAro> or, depending on how it is implemented, "i upgraded my tracks and now they don't go past the 90 degree turn"
19:26:27  <snail_UES_> LordAro: again, why not? we already have something like this if I upgrade tracks with a different electrification system
19:26:37  *** AndroUser2 has quit IRC
19:26:48  <snail_UES_> “I upgraded my tracks to highspeed and now my 3rd rail trains won’t run there anymore”. We’re there already
19:26:59  <snail_UES_> so this is not a valid reason to shoot this proposal down
19:27:19  <LordAro> apart from the fact that it would increase the number of said reports
19:28:51  <snail_UES_> LordAro: not if I document it well in my trackset… I would clearly explain which gauge is the one that can do sharp curves
19:29:12  <snail_UES_> of course it could be misused, but then again, so could any other feature or option
19:29:13  *** Supercheese has joined #openttd
19:29:59  <andythenorth> is it not just tri-state instead of boolean?
19:30:08  <andythenorth> 90 degree: allow, forbid, delegate to newgrf?
19:30:30  <snail_UES_> andythenorth: we could even do that
19:34:17  *** glx has joined #openttd
19:34:17  *** ChanServ sets mode: +v glx
19:35:43  *** AndroUser2 has joined #openttd
19:37:46  <andythenorth> I am potato / potato
19:38:00  <andythenorth> I would rather find another way
19:38:10  <andythenorth> not my decision anyway
19:38:19  <andythenorth> it's $someone, because no-one is in charge :)
19:42:22  <snail_UES_> andythenorth: potatoes in FIRS?
19:43:06  <andythenorth> what else could distinguish NG?
19:43:35  <snail_UES_> low costs, low speed and capacity…
19:43:48  <andythenorth> currently it's nerfed
19:44:01  <andythenorth> if it's at all realistic, it has lower capacity per tile
19:44:30  *** Happpy has joined #openttd
19:44:34  <andythenorth> so it would need to be so cheap
19:44:42  *** Gja has quit IRC
19:44:49  <snail_UES_> lower capacity and lower costs by tile
19:45:17  <andythenorth> wondering about maintenance cost, but I don't use them
19:45:26  *** Happpy has left #openttd
19:45:34  <snail_UES_> maintenance costs are also lower than SG
19:46:51  <nielsm> I believe NG often supports lower axle loads so it's built with less heavy rails, so significantly less cost in steel to build
19:46:57  <nielsm> so that's not unrealistic at least
19:47:30  <nielsm> not sure whether sleepers, ballast, and whatever else makes up the track bed is different
19:47:37  <snail_UES_> nielsm: yes, that’s the point. So tracks are cheaper
19:48:08  <snail_UES_> older tracks were built with a mix of sand and pebbles, and wooden sleepers of not so high quality
19:48:15  <snail_UES_> so the final result was cheaper
19:48:49  <snail_UES_> and the narrower gauge allowed for sharper curves, so they were used especially on mountain lines
19:50:07  <andythenorth> tbh
19:50:17  <andythenorth> realism is no help to me here for Iron Horse
19:50:33  <andythenorth> fundamentally, it's a tile based game with a capacity-per-tile :)
19:50:35  <snail_UES_> does IH have different gauges?
19:50:38  <andythenorth> yers
19:50:53  <snail_UES_> so this proposal could help you as well :)
19:50:56  <andythenorth> no
19:51:04  <andythenorth> I always allow 90 degree curves
19:51:12  <snail_UES_> ah… ok
19:51:17  <andythenorth> the problem of NG is that the capacity-per-tile is nerfed
19:51:22  <snail_UES_> but it would help other players who don’t
19:51:50  <snail_UES_> andythenorth: but then your NG vehicles and tracks should be significantly cheaper
19:51:51  <andythenorth> IRL NG simply takes up less space
19:52:06  <andythenorth> whereas in-game it still uses a whole tile
19:52:17  <snail_UES_> correct
19:52:18  <andythenorth> OpenTTD is primarily a tile-contention game
19:52:26  <andythenorth> at least for smaller maps and advanced games
19:52:45  <andythenorth> maybe NG should just be trams
19:52:52  <andythenorth> possibly the correct solution
19:53:14  <nielsm> but you can't build road vehs from parts
19:53:18  <snail_UES_> andythenorth: that would give them huge disadvantages...
19:53:31  <snail_UES_> you couldn’t have horizontal or vertical tracks…
19:53:43  <snail_UES_> and only 90-degree curves
19:53:46  <andythenorth> can we have smaller tiles?
19:53:48  <andythenorth> o_O
19:54:01  <snail_UES_> andythenorth: that is the question :D
19:54:06  <andythenorth> can we have multi-track station tiles?
19:54:21  <andythenorth> can we have state machine depots that allow 1-in-1-out at once
19:54:28  <andythenorth> instead of contending the entrance?
19:54:43  <andythenorth> can we have auto-PBS on bridges, so that trains can safely follow even without a signal?
19:55:30  *** cHawk has joined #openttd
20:03:34  <AndroUser2> Hey all
20:03:47  *** AndroUser2 is now known as DanMacK
20:04:11  <DanMacK> Much better
20:05:15  <DanMacK> Query andythenorth
20:05:23  <andythenorth> yo DanMacK
20:05:52  <Wolf01> So it was him all the time :D
20:06:17  <DanMacK> Yeah... androirc decided to log me in
20:09:33  *** KouDy has quit IRC
20:10:44  <DanMacK> !seen
20:10:57  <DanMacK> So that doesnt work lol
20:11:07  <LordAro> not in this channel
20:11:14  <LordAro> and not like that anyway :p
20:11:21  <LordAro> @seen DanMacK
20:11:21  <DorpsGek> LordAro: DanMacK was last seen in #openttd 23 seconds ago: <DanMacK> So that doesnt work lol
20:11:49  <DanMacK> @seen Pikka
20:11:49  <DorpsGek> DanMacK: Pikka was last seen in #openttd 8 weeks, 6 days, 10 hours, 53 minutes, and 52 seconds ago: <Pikka> oops
20:27:01  <peter1138> Yeah, where did he go?
20:32:11  <FLHerne> The root-cause fix for many of these "[x] is useless/non-differentiated" problems would be to somehow make costs meaningful...
20:32:31  <FLHerne> Being infinity times cheaper is still meaningless when you have unlimited money
20:33:11  <FLHerne> Can just turn the base-costs up massively, but then people lose instead
20:33:18  <andythenorth> where *did* he go
20:33:21  <FLHerne> Non-linear infra costs work
20:33:29  <FLHerne> Just not enough
20:35:18  <andythenorth> costs are irrelevant
20:35:29  <andythenorth> the real significant thing is tile contention :)
20:35:40  <andythenorth> that's why RVs are so different to trains
20:35:41  <andythenorth> etc
20:35:49  <FLHerne> Well, yes, that's what I'm complaining about :P
20:36:05  <andythenorth> so more transport types :P
20:36:07  <nielsm> yeah, need to peek at reality a bit and figure out why real world transportation companies aren't swimming in money (or at least act like they aren't)
20:36:12  <andythenorth> or mess with routing or something
20:36:13  <FLHerne> Capital costs are functionally 0, because everyone has infinite money
20:36:52  <FLHerne> So the only constraints on what you can build are time, map space and imagination, which is silly
20:37:13  <FLHerne> Well, it's fun until the imagination runs out...
20:38:26  <nielsm> shouldn't maintenance costs of vehicles also rise as they age, so an old fleet is significantly more expensive than a new one
20:38:43  <nielsm> (but the costs of replacing everything all the time should be even worse)
20:39:01  <FLHerne> Eh
20:39:19  <FLHerne> I don't think the current balance of /costs/ is too bad
20:39:30  <FLHerne> Most things seem to be vaguely in proportion
20:39:45  <andythenorth> the scarce resource is tiles
20:39:56  <andythenorth> especially as cities grow, or at busy industry
20:40:30  <FLHerne> It's that income vastly outweighs them, and that economies of distance/utilisation mean that any settings that make large companies non-infinitely-rich make small ones impossible
20:40:53  <andythenorth> money is not the correct scarcity resource :)
20:41:16  <FLHerne> andythenorth: ...and so NG rail is useless, because it's not optimised for that one meaningful resource
20:41:18  <andythenorth> adding tech tree might actually help
20:41:24  <andythenorth> then vehicles are scarce
20:41:37  *** Supercheese has quit IRC
20:41:43  <FLHerne> Tech tree would be fun
20:41:54  <FLHerne> Or those vehicle factories that people proposed
20:41:59  *** Supercheese has joined #openttd
20:42:17  <nielsm> maximum number of vehicles that can be purchased over a time period
20:42:21  *** frosch123 has quit IRC
20:42:33  <FLHerne> "Produces one locomotive per month when supplied with >200tons of Metal"
20:43:14  <nielsm> to somewhat simulate production/delivery time on vehicles without actually delaying the player getting control after clicking buy
20:43:19  <FLHerne> Except then every industry/vehicle set would need pairing, or some really weird interface
20:43:35  <andythenorth> NG could be unlocked on the tech tree
20:43:57  <andythenorth> whereas bigger trains would require more research / gold / dragons teeth / whatever
20:44:16  <andythenorth> and we decouple any IRL dates
20:44:22  <andythenorth> because all nonsense
20:44:27  <FLHerne> No thx
20:44:29  <nielsm> isn't that kinda like maschinky or however it's spelled?
20:44:47  <andythenorth> dunno
20:44:49  <FLHerne> You can tear my pseudo-accurate BR train progression from my cold dead hands
20:45:01  <andythenorth> well you just script a tech tree for that
20:45:04  <andythenorth> it's fine
20:45:07  <andythenorth> tech tree scriprt
20:45:58  <nielsm> what I really want in a train game is no predefined models but instead you order by requirements from a factory and they try to develop a model to your specs
20:46:27  <FLHerne> If buying vehicles required cargo being delivered to an industry, availability could be governed by cargo chains...
20:46:40  <nielsm> and you have to choose two of cheap, powerful, reliable
20:47:07  <FLHerne> i.e. you can't deliver CoolTechStuff to make maglevs until you've got vehicles that can carry CoolTechStuff
20:47:49  <FLHerne> And those need SemiInterestingStuff to make, and so forth
20:48:28  <FLHerne> With 64 cargos, and umpteen cargoes-per-industry, you can force players through a /really/ insane cargo production graph
20:48:39  <FLHerne> [/nutso idea]
20:49:05  <andythenorth> tech tree
20:49:09  <andythenorth> unlock goals
20:49:23  <FLHerne> "goals"?
20:49:43  *** sim-al2 has joined #openttd
20:49:45  <andythenorth> GS innit
20:49:51  <nielsm> we did talk a bit about some kind of game script interface the other day
20:50:00  <nielsm> to let GS control vehicle availability
20:51:39  <FLHerne> SO is the next patch for 64 GSes per game? :P
20:52:04  <FLHerne> (but seriously, more than one would be nice, there are so many orthogonal uses for them)
20:55:38  <andythenorth> they would conflict
20:55:39  <andythenorth> but yes
21:17:55  *** andythenorth has left #openttd
21:39:32  *** KouDy has joined #openttd
21:42:30  *** AndroUser2 has joined #openttd
21:42:31  *** DanMacK has quit IRC
21:53:16  *** AndroUser2 has quit IRC
21:54:24  *** AndroUser2 has joined #openttd
22:02:31  *** Wormnest has quit IRC
22:50:44  *** Progman has quit IRC
22:59:03  *** snail_UES_ has quit IRC
22:59:40  *** snail_UES_ has joined #openttd
23:06:46  *** nielsm has quit IRC
23:06:53  *** Thedarkb-T60 has joined #openttd
23:12:35  *** AndroUser2 has quit IRC
23:13:05  *** AndroUser2 has joined #openttd
23:13:35  *** Thedarkb-T60 has quit IRC
23:14:06  *** Thedarkb-T60 has joined #openttd
23:19:40  *** APTX_ has quit IRC
23:34:37  *** AndroUser2 has quit IRC
23:34:49  *** AndroUser2 has joined #openttd
23:36:59  *** APTX_ has joined #openttd
23:49:52  *** Wolf01 has quit IRC

Powered by YARRSTE version: svn-trunk