IRC logs for #openttd on OFTC at 2013-05-09
            
00:06:12 *** roadt_ has joined #openttd
00:42:38 *** LordPixaII has quit IRC
00:42:53 *** Pixa has joined #openttd
01:11:57 *** pugi has quit IRC
01:24:13 *** Djohaal has quit IRC
01:29:56 *** HerzogDeXtEr has quit IRC
01:44:49 *** glx has quit IRC
02:07:42 *** Extrems has joined #openttd
02:13:15 *** tokai|mdlx has joined #openttd
02:13:52 *** Extrems1 has quit IRC
02:19:05 *** tokai|noir has quit IRC
02:28:06 *** Biolunar__ has joined #openttd
02:35:12 *** Biolunar_ has quit IRC
02:52:43 *** gelignite has quit IRC
03:20:30 *** zeknurn` has joined #openttd
03:22:45 *** zeknurn has quit IRC
03:22:45 *** zeknurn` is now known as zeknurn
03:27:16 *** Nat_aS has joined #openttd
03:39:47 *** Flygon__ has joined #openttd
03:41:27 *** Flygon_ has quit IRC
03:43:46 *** LordPixaII has joined #openttd
03:43:46 *** Pixa has quit IRC
04:00:17 *** Pixa has joined #openttd
04:00:17 *** LordPixaII has quit IRC
04:11:20 *** Pixa has quit IRC
04:12:03 *** Pixa has joined #openttd
04:53:17 *** parkette_ has joined #openttd
04:56:01 *** Eddi|zuHause has quit IRC
04:56:15 *** Eddi|zuHause has joined #openttd
04:59:00 *** parkette has quit IRC
04:59:00 *** parkette_ is now known as parkette
05:13:27 *** Prof_Frink has quit IRC
05:33:03 *** sla_ro|master has joined #openttd
05:36:55 *** zeknurn` has joined #openttd
05:43:05 *** zeknurn has quit IRC
05:43:05 *** zeknurn` is now known as zeknurn
05:46:19 *** Zuu has joined #openttd
06:24:25 *** Zuu has quit IRC
06:26:45 *** valhallasw has joined #openttd
06:28:33 *** oskari89 has joined #openttd
06:31:25 *** Tvel has joined #openttd
06:31:42 *** Tvel has quit IRC
06:35:30 *** Flygon_ has joined #openttd
06:35:46 *** DDR has quit IRC
06:37:01 *** |Jeroen| has joined #openttd
06:42:10 *** Flygon__ has quit IRC
06:43:46 *** Kabaka has quit IRC
06:45:18 *** Kabaka has joined #openttd
06:46:42 <NGC3982> Morning.
06:58:50 *** Kabaka has quit IRC
07:00:02 *** Kabaka has joined #openttd
07:07:50 <planetmaker> moin
07:15:10 *** Elukka has quit IRC
07:20:58 <Supercheese> 'night
07:21:09 *** Supercheese has quit IRC
07:24:37 *** George is now known as Guest4763
07:24:41 *** George has joined #openttd
07:27:21 *** Dr_Tan has joined #openttd
07:29:50 *** Guest4763 has quit IRC
07:34:02 *** Nat_aS has quit IRC
07:38:09 *** valhallasw has quit IRC
07:43:29 *** Alberth has joined #openttd
07:43:29 *** ChanServ sets mode: +o Alberth
07:44:27 *** Flygon__ has joined #openttd
07:49:50 *** Pensacola has joined #openttd
07:50:52 *** Flygon_ has quit IRC
08:20:40 <planetmaker> juzza1, any not (yet) supported variable can be accessed in NML directly... http://newgrf-specs.tt-wiki.net/wiki/NML:Deprecated_syntax
08:21:05 <planetmaker> I should probably not advertize that, though
08:21:27 *** |Jeroen| has quit IRC
08:22:28 *** Progman has joined #openttd
08:29:41 <juzza1> ok
08:29:56 <juzza1> i really feel that should be in NML even though it's not ideally implemented
08:30:23 <planetmaker> yes, it should be there. But I think better implemented :D
08:30:27 <juzza1> :D
08:38:19 <Alberth> I somewhat wonder how the the translation step is that nml makes
08:38:39 <Alberth> +big
08:41:35 <V453000> around 90 centimeters
08:41:40 *** |Jeroen| has joined #openttd
08:42:33 <Alberth> Recently I wrote a convertor from http://code.google.com/p/freerct/source/browse/trunk/rcd/tracks.txt to http://code.google.com/p/freerct/source/browse/trunk/rcd/data_format.rst#614 byte sequences
08:42:50 <Alberth> it's a lot of code, but not difficult at all
08:43:17 <Alberth> ( http://code.google.com/p/freerct/source/browse/trunk/rcdgen/src )
08:43:39 <Alberth> the mapping quite straightforward
08:43:44 <Alberth> +is
08:44:04 * Alberth seems to be forgetting crucial words today in sentences today :(
08:44:17 <Alberth> QED :(
08:45:44 *** Rikests has joined #openttd
08:46:02 <planetmaker> uh... big in what sense, Alberth ?
08:47:22 <Alberth> amount of transformation I guess, ie is there a sort-of simple mapping from input to output?
08:47:57 <Rikests> Hey, which cargo distrubution patch is the best atm?
08:48:18 <planetmaker> there's only one
08:48:31 <Alberth> YACD is the best, CargoD?st is actually working on anything recent, and good too
08:49:35 <planetmaker> Alberth, so your question is why NML does need to make so much fuss about strings, basically?
08:49:57 <Alberth> no, more about entire NML
08:50:32 <Alberth> ie how does a "feature"(??) map to NFO primitives? one-to-one?
08:50:37 <planetmaker> I guess I'm slow and I didn't follow your mental step size yet :-)
08:51:03 <Alberth> it's equally possible I don't explain properly :)
08:51:24 <Alberth> Basically I was wondering what would happen if you take the RCDgen approach to nml
08:51:57 <Alberth> ie rewrite it all in C++
08:52:14 <planetmaker> it likely would become a lot faster :D
08:52:43 * Alberth adds sufficiently many "sleep(1);" statements in the code :)
08:52:45 <Rikests> what What is the difference between YACD and cargodist?
08:53:28 <Alberth> rcdgen is mostly just 1-to-1, with expression simplification
08:54:24 <planetmaker> Rikests, yacd sets destinations on cargo generation, whether reachable or not. While cargodist distributes cargo to available destinations
08:54:30 <Alberth> obviously it makes life easier by counting things you enter in the input, and filling in such numbers, etc
08:55:21 <Alberth> Rikests: that means with YACD you also get cargo that wants to go elsewhere than what your network provides
08:55:37 <Rikests> Ok, than YACD is more challenging.
08:57:28 <planetmaker> Alberth, so, that converter you wrote, basically is FreeRCT's NML compiler, yes?
08:57:53 <planetmaker> and you wonder about its differences to NML and the reasons for them (if any)?
08:58:07 <Alberth> yes, except I also define the destination :)
08:58:19 <planetmaker> hm?
08:58:31 *** George is now known as Guest4770
08:58:35 *** George has joined #openttd
08:58:48 <Alberth> the CSTR definition and its TRCK definition is also mine
08:59:13 <Alberth> and I don't have history to worry about :)
08:59:16 <planetmaker> yes, sure. You designed and wrote all parts. Programme, specs, etc
09:00:05 <Alberth> planetmaker: and I wonder whether you can sort-of write the same kind of conversion program, and how difficult it would be
09:00:52 <Alberth> the latter is heavily influenced by how much trickery NML does in its conversion to NFO
09:01:26 <Alberth> hence my question how nml primitives relate to nfo primitives
09:01:35 <planetmaker> many things in nfo / nml are mapping stuff 1:1 sort-of. With conversions in between as needed
09:01:51 <planetmaker> property blocks, sprite blocks, sprite layouts, they all have nfo equivalents
09:02:00 <planetmaker> switch statements
09:02:57 <planetmaker> there's much abstraction on the expression level though. Lot of magic with temp variables which the NML user doesn't see at all
09:03:42 <planetmaker> also variables are not 1:1 mapped necessarily to nfo variables, but could be modified parts of them (like inverted bit 5 of variable XY)
09:04:23 <Alberth> so it does advanced code generation for expressions
09:04:31 <planetmaker> very much so, yes
09:04:47 *** Guest4770 has quit IRC
09:05:41 <planetmaker> that's basically the biggest advantage of NML over NFO
09:06:19 <Alberth> that's mostly local I guess? ie I write something simple in NML, and it generates a shit-load of NFO code to compute its value at that point
09:06:30 <planetmaker> yes
09:07:12 <Alberth> nice, that would mean from a code generation point of view it's not that complicated
09:07:35 <Alberth> just a LOT of work
09:07:44 <planetmaker> compare http://dev.openttdcoop.org/projects/nml/repository/entry/regression/expected/003_assignment.nfo vs http://dev.openttdcoop.org/projects/nml/repository/entry/regression/003_assignment.nml
09:07:48 <planetmaker> and that's simple stuff
09:08:44 <planetmaker> one of the problems NML also (partially) solves is that it abstracts away differences between different features (train, road vehicle, airports,...)
09:09:05 <planetmaker> by making them work the same way, while the underlaying NFO works (slightly) different
09:09:38 <planetmaker> i.e. speed is given in NML in units of your choice. While NFO has different, arbitrary units for each feature a different one
09:09:42 <Alberth> those assignments look very doable
09:11:34 <Alberth> very useful for the user, from a program point of view very easy to do
09:12:57 <Alberth> the main benefit is probably actually readable input source, instead of numbers with heaps of comments :p
09:13:38 <planetmaker> that as well. But the expression and temporary and permanent variable storage handling really is, too.
09:14:24 <planetmaker> http://paste.openttdcoop.org/show/2272/ is the same as http://paste.openttdcoop.org/show/2273/
09:14:49 <Alberth> I can imagine, assembly-level expression operations tend to be hard to read and understand
09:16:34 <planetmaker> I'm not exactly sure how the action6 translates into this: values given as parameter.
09:16:46 <planetmaker> That works somewhat differently in NFO than in NML
09:17:08 <planetmaker> in nfo you first write the statement. And the next statement then is told to modify single bytes in the previous one. Depending on a parameter
09:17:18 <Alberth> action 6 is a weird operator
09:18:08 <Alberth> self-modifying code is something of the '80s :)
09:18:12 <planetmaker> I think in many cases here, the devil is in the detail
09:18:54 <Alberth> unfortunately, it always is
09:19:32 <planetmaker> there have been thoughts to (re-)implement NML in C/C++. Mainly for speed reasons
09:20:18 <Alberth> yeah, I am just not sure it's the right direction
09:20:41 <planetmaker> it's LOADS of work. Without any short and possibly neither mid-term benefit
09:21:01 <Alberth> if you implement a linker at NFO level (or below it), you can do partial compilation, which goes a lot further
09:21:23 <planetmaker> yes
09:21:35 <Alberth> and it allow leverage of the existing NML compiler
09:21:51 <planetmaker> it basically suffices to write the NFO for the parts. And throw grfcodec on them when the parts are properly ordered
09:21:55 <Alberth> (if all is well :) )
09:22:42 <planetmaker> difficulty is to get right the numbering of items and switch blocks (or rather the nfo equivalent)
09:23:31 <Alberth> afaik, you need a notion of "defining" and "using" between parts
09:24:25 <Alberth> where "defining" probably should assign a number so all uses can refer to it
09:25:00 <Alberth> which boils down to just insterting the same number at several places in the byte stream
09:25:22 <Alberth> and ordering the "define" before the "use" parts :p
09:25:26 <planetmaker> yes. But that needs be done last before actually compiling. In order to avoid conflicts
09:26:06 <planetmaker> so what would need doing basically is NML to output a somewhat pseudo-nfo where action0 IDs and action2 IDs are not yet assigned
09:26:28 <planetmaker> and a numbering step which then converts all these to the actual numbers so that grfcodec can eat it
09:26:50 <Alberth> something like that
09:26:52 <planetmaker> an NFOrenum XXL or so ;-)
09:27:01 <planetmaker> with multi-file support
09:27:42 <Alberth> although I am not sure you want grfcodec at the end, I would generate a byte stream (sprite stream) with 'holes' in it :)
09:28:20 <Alberth> so it becomes just concatenating the sprites after each other, and filling in the holes
09:28:33 <planetmaker> what are the holes?
09:29:03 <Alberth> numbers that need to be filled in, ie the IDs
09:29:41 <planetmaker> yes. grfcodec only comes into play after that is done.
09:30:59 <Alberth> my alternative view is that grfcodec (or NML) generates sprite streams with holes, and a linker program than puts the stream in the proper order, and filling of holes
09:31:43 <Alberth> ie just like gcc -o program *.o instead of gcc -o program *.c
09:31:51 *** Alice3 has joined #openttd
09:31:53 <planetmaker> hm, yes. possibly. If it's an NML linker it could (re-use) the sprite cache NML already has
09:32:03 <planetmaker> thus would boil down to splitting NML compiler and linker
09:32:35 <Alberth> there are no sprites any more at that level, just a long sequence of bytes
09:32:47 <Alberth> ie real sprites are already encoded into bytes
09:33:11 <planetmaker> nml's sprite cache is just that, I think
09:33:40 <Alberth> it caches encoded sprite files afaik
09:34:19 <Alberth> my "sprite stream" are sprites as in NFO, ie 1 line NFO == 1 sprite in the stream
09:34:22 <planetmaker> yes. So that it can insert them 1:1 into the grf when needed (again)
09:35:02 <Alberth> sorry, I fail at explaining it :(
09:36:30 <Alberth> consider the output of grfcodec, ie the raw .grf bytes
09:37:11 <planetmaker> yup
09:37:24 <Alberth> only some of the bytes there denote action0 and action2 IDs
09:37:52 <planetmaker> yes
09:37:52 <Alberth> those bytes are holes, all other bytes are fixed
09:38:12 <planetmaker> right yes. I guess we just talked past eachother and meaning the same :-)
09:38:26 <planetmaker> that's what I meant with NML outputting pseudo-NML
09:38:34 <planetmaker> *pseudo-NFO
09:38:49 <Alberth> at that level there are no sprites any more, just bytes
09:39:25 <planetmaker> hm, ok. So you mean beyond NFO. But not yet grf
09:39:33 *** |Jeroen| has quit IRC
09:40:35 <Alberth> assume grfcodec can do partial compilation, I have 2 parts, throw it in grfcodec, and get 2 bytes blobs with holes
09:41:17 <Alberth> linking is then deciding which blob should go first, computing a value for all holes, and filling them in
09:41:52 <Alberth> then, just copy the blobs in the right order with the right value for the holes straight into the .grf file
09:42:14 <planetmaker> ok. I think now I understood quite well what you mean :-)
09:42:55 <Alberth> :)
09:43:37 <planetmaker> thanks for your patience :-)
09:44:13 <Alberth> yw :)
09:44:26 <Alberth> this is how linking works with languages like C
09:44:56 <Alberth> where NML is like a C compiler, grfcodec is like an assembler, and ldd is the (dynamic) linker
09:45:44 <peter1138> erm where does ldd fit?
09:46:01 <Alberth> *.c -> *.o, *.s -> *.o, and *.o -> exe
09:46:12 <peter1138> in newgrf land
09:46:21 <planetmaker> currently nowhere
09:46:26 <Alberth> peter1138: you're right, it's the wrong name
09:46:44 <Alberth> planetmaker: actually, ldd, does something else :)
09:46:58 <peter1138> <somehypotheticaltool> is the dynamic linker
09:46:59 <peter1138> yeah
09:47:55 <planetmaker> I assumed you meant ld, Alberth
09:48:42 <Alberth> in newgrf land, imagine that you have a lot of common code for each .grf. You can copy it into each .grf, but that's wasting memory. Instead, you load the common code once in memory, and connect it to each grf at loading time. That's what ldd does
09:49:05 <Alberth> ld would be the right tool here indeed :)
09:50:05 *** frosch123 has joined #openttd
09:50:11 <Alberth> quak
09:50:17 <planetmaker> ok, how did we end here? :-)
09:50:19 <planetmaker> quak, too :-)
09:50:37 <frosch123> moin :)
09:51:11 <Alberth> idle conversation about nml inner operation? :)
09:51:25 <planetmaker> :-)
09:53:34 *** Tvel has joined #openttd
09:53:37 <juzza1> is it not possible to change the amount of articulated parts depending on cargo_subtype?
09:53:40 <planetmaker> I really miss some compile lecture in order to really dive into NML, I feel :S
09:53:46 <juzza1> i'm always getting the default amount of parts even after refitting
09:53:47 <planetmaker> juzza1, yes
09:54:08 <planetmaker> heqs does so, for instance
09:55:25 <planetmaker> mind, you cannot refit then in stations (autorefit)
09:55:37 <frosch123> i always hoped we would get some grf library
09:55:50 <planetmaker> grf library in what sense?
09:55:50 <frosch123> so not everyone has to reinvent the encoding and decoding :)
09:55:59 <planetmaker> that sense. yes. makes sense
09:56:13 <juzza1> http://paste.openttdcoop.org/show/2274/ this is the code atm, not working, always returns 3 part articulated
09:56:18 <frosch123> but so far, everyone reimplemented it in a different language :p
09:56:25 <juzza1> in the tutorial it is done by making some parts invisible, i wonder why? http://www.tt-wiki.net/wiki/NMLTutorial/Train_four_part_refit
09:56:52 <frosch123> grfcodec -> c/asm, grf2html -> pascal, grfeditor ( or what was the name?) -> c#, nml -> python ...
09:56:57 <planetmaker> maybe heqs does that, too, juzza1
09:57:22 <planetmaker> he :-)
09:58:14 <planetmaker> frosch123, but which part exactly should be there?
09:58:21 <planetmaker> action14 block? Needs to be specific.
09:58:40 <planetmaker> Action0 block? Also needs to be specific. As need be the action1/2/3 blocks
09:58:45 <frosch123> no, i mean the grf format
09:58:57 <frosch123> encoding, decoding, sprite assembling, clipping, ...
09:59:17 <planetmaker> ah, that. So a library for the compilers, so to speak
09:59:23 <Rubidium> frosch123: don't you mean grfmaker (or was that an omission), though that was Delphi IIRC
09:59:27 <frosch123> maybe later some nfo action classes
09:59:50 <frosch123> Rubidium: http://dev.openttdcoop.org/projects/newgrf-viewer <- that one
10:00:13 <frosch123> oh, it uses c++/qt
10:00:20 <frosch123> i thought there was also a c# thingie
10:01:16 <Rubidium> might that be the someone who's still converting OpenTTD to C#?
10:03:16 <frosch123> Alberth: there are a lot of global-variable-ish things in nfo, which need reservation
10:03:34 <frosch123> like spritegroups referencing spritesets, or relative jumps to other spritenumbers
10:03:48 <frosch123> offset computations within actions
10:04:04 <frosch123> so the code generator in itself has quite some magic
10:06:40 <Alberth> I feared somewhat that a new NML would be less trivial :)
10:07:04 *** Pensacola has quit IRC
10:13:42 *** gelignite has joined #openttd
10:15:41 *** KenjiE20 has quit IRC
10:16:43 *** sla_ro|master has quit IRC
10:17:11 *** MNIM has quit IRC
10:23:57 *** HellTiger has joined #openttd
10:28:14 *** |Jeroen| has joined #openttd
10:41:45 *** ZxBiohazardZx has joined #openttd
10:46:49 *** ZxBiohazardZx has quit IRC
11:06:17 *** HerzogDeXtEr has joined #openttd
12:16:30 *** pugi has joined #openttd
12:18:21 *** George is now known as Guest4778
12:18:25 *** George has joined #openttd
12:23:35 *** Guest4778 has quit IRC
12:49:14 *** Progman has quit IRC
12:49:40 *** roadt_ has quit IRC
12:52:33 *** George is now known as Guest4780
12:52:37 *** George has joined #openttd
12:57:29 *** Guest4780 has quit IRC
13:16:56 *** |Jeroen| has quit IRC
13:44:28 *** APTX has quit IRC
13:47:08 *** APTX has joined #openttd
13:49:57 *** Devroush has joined #openttd
13:57:08 *** DarkAce-Z has joined #openttd
13:59:39 *** roadt_ has joined #openttd
14:00:10 *** DarkAceZ has quit IRC
14:15:56 *** Flygon_ has joined #openttd
14:22:59 *** Flygon__ has quit IRC
14:23:27 *** sla_ro|master has joined #openttd
14:29:10 *** Flygon_ has quit IRC
14:33:24 *** Alberth has left #openttd
14:38:04 *** Tvel has quit IRC
14:38:42 *** Flygon has joined #openttd
15:05:09 *** KouDy has joined #openttd
15:22:58 *** Prof_Frink has joined #openttd
15:35:52 *** Dr_Tan has quit IRC
15:41:48 *** Flygon_ has joined #openttd
15:43:37 *** Flygon has quit IRC
16:13:13 <planetmaker> http://devs.openttd.org/~planetmaker/patches/current_rivers.png vs. http://devs.openttd.org/~planetmaker/patches/smooth_rivers.png and http://devs.openttd.org/~planetmaker/patches/smooth_rivers_zoom.png :-)
16:15:03 *** Dr_Tan has joined #openttd
16:17:12 <oskari89> planetmaker: :)
16:17:18 <oskari89> Diagonal roads!
16:17:53 *** Markavian has joined #openttd
16:20:48 <planetmaker> that's at least an order of magnitude more complicated :-)
16:23:28 *** Markavian` has quit IRC
16:23:46 <szaman> diagonal bridges!
16:25:09 <Sacro> omfg
16:25:13 <Sacro> pbimttd?
16:26:05 <szaman> diagonal pbimttd!
16:26:31 <Sacro> oh yes
16:26:37 <Sacro> this disturbs me very sprites
16:27:42 <planetmaker> pbimttd?
16:28:02 <oskari89> After those smooth rivers there will be more requests for diagonal roads :)
16:28:22 <planetmaker> I believe you're right, oskari89
16:28:31 <szaman> diagonal bridges and tunnels would be better
16:29:09 <planetmaker> where are the people who want to take on those tasks?
16:30:27 <szaman> everywhere
16:30:41 <planetmaker> diagonal bridges has a pre-condition: design specs for complete newgrf bridges ;-)
16:30:58 <planetmaker> everywhere? I haven't seen anyone seriously tackling that for long time. Either of those
16:31:44 <szaman> i want to take on those, but have no time/skills
16:33:20 <planetmaker> skills can be aquired
16:33:55 *** Alberth has joined #openttd
16:33:55 *** ChanServ sets mode: +o Alberth
16:34:05 <planetmaker> wb Alberth
16:34:20 <Alberth> hi hi
16:36:38 <Alberth> nice rivers!
16:37:22 <planetmaker> ty :-) only temperate yet. And the sprites need revision again, too
16:37:29 <szaman> planetmaker is now knowns as niceriversmaker
16:37:52 <planetmaker> seems that my sprite skills are more in the landscape area :-P
16:38:02 <planetmaker> rivers, shores, trees...
16:38:38 <Alberth> I happen to need some trees in the rct game :p
16:38:53 <planetmaker> How usable are OpenTTD's trees?
16:38:56 <Alberth> (although, Z is likely to provide them :p)
16:39:22 <Alberth> scale is a bit wrong probably
16:39:59 <Alberth> szaman: you have the wrong idea about time. Time is not something you have, you make time by not doing something else
16:40:15 <Alberth> ie it is about choice of what you do and not do
16:40:20 <planetmaker> http://dev.openttdcoop.org/projects/opengfx/repository/entry/sprites/png/trees/temperate/tree_wide_19_leaf.gimp.png
16:42:30 <szaman> Alberth: i can't allow not doing things i now do everyday, some little woman depends on those things, for example now its time to bath :P
16:43:19 <Alberth> planetmaker: yeah, scale is a bit wrong: http://freerct.googlecode.com/svn/trunk/sprites_src/objects/1x1/template8bpp64.png :)
16:44:21 <planetmaker> I'd not necessarily think scale is wrong. It's not a big tree then. But rather a big bush. Or a small tree :-)
16:44:37 <planetmaker> Like hazelnut. Or holunder. Or so
16:44:41 <Alberth> :)
16:46:31 <V453000> nut nut
16:46:35 <szaman> but in about 17 years the girl will grow up, and then i will do diagonal bridges and tunnels!
16:47:14 *** Pixa has quit IRC
16:47:29 *** Pixa has joined #openttd
16:48:32 <Alberth> szaman: the author of FIRS, CHIPS, and FISH also has kids, and managed to make three great NewGRFs
16:48:41 <planetmaker> is anyone actually still working on any AI?
16:48:45 <Alberth> or four even
16:48:46 <planetmaker> four. HEQS
16:48:52 <planetmaker> :-)
16:49:46 *** Kylie has quit IRC
16:49:56 <szaman> Alberth: it varies over child, some spleeps 3h during day, and some sleeps 3h round the clock
16:50:19 <Alberth> 3 hours of time for free :p
16:50:27 <Alberth> nah, just kidding :)
16:50:31 <szaman> :]
16:50:47 <Terkhen> hello
16:50:52 <Alberth> hi Terkhen
16:50:53 <frosch123> planetmaker: it looks to me like ais are mostly done
16:50:53 <planetmaker> hello Terkhen
16:51:02 <planetmaker> "done"
16:51:07 <frosch123> there are 3 to 5 which somewhat work
16:51:16 <frosch123> why would anyone need more
16:51:23 <planetmaker> I don't want more
16:51:39 <planetmaker> But I'd like the "somewhat work" to be improved to "work very well"
16:51:39 <frosch123> either you want them for "ambient effects" or for "competition"
16:51:59 <V453000> map cluttering? :P
16:52:03 <planetmaker> the best AI in my game just crashed.... AIAI. It even had train wood service
16:52:06 <frosch123> well, we failed for 3 years to come up with a decent vehicle weight spec :p
16:53:24 <planetmaker> in what context?
16:53:38 <frosch123> ais do not know about vehicle weights
16:53:44 <planetmaker> oh
16:53:53 <frosch123> so they have no idea what vehicle might cope with what hill
16:55:25 <frosch123> there is vehicle weight (empty), cargo weight, power, traktive effort, freight multiplier, slope steepness, acceleration models, ....
16:56:05 <frosch123> the idea was to at least abstractr freight multiplier into the api to increase cargo weight and vehicle weigth or similar
16:56:18 <frosch123> but once you reach max te and slope steepness :p
16:56:18 *** glx has joined #openttd
16:56:18 *** ChanServ sets mode: +v glx
16:57:17 <planetmaker> hm. bad :-)
17:01:15 *** Flygon__ has joined #openttd
17:04:27 <frosch123> newgrf might be complicated, but ottd game mechanics are even more complicated :)
17:05:13 <frosch123> i would think an ai author would want to request an api function, which he gives a consist with orders, a start track, and the function returns the minimum speed on the route :p
17:08:16 <planetmaker> I sometimes wonder whether "less is more" wouldn't be true with some of our historically grown interfaces
17:08:17 *** Flygon_ has quit IRC
17:08:55 <planetmaker> and to start cutting backward compatibility
17:09:13 <frosch123> nah, everyone sees a different part to be "less" :)
17:09:30 <frosch123> just consider the new features for that
17:09:46 <frosch123> take cargodist on one side, and conditional orders and timetables on the other side :)
17:09:49 <Eddi|zuHause> hm, is it too early to say "i survived this day"?
17:09:56 <planetmaker> yes
17:10:06 <frosch123> some want to play with this, others with that, but both are completely in conflict to each other
17:10:55 <planetmaker> mostly I was thinking indeed about newgrf specs
17:11:17 <planetmaker> it's too complicated to understand them. Not even OpenTTD can tell what they can do
17:11:35 <frosch123> well, the other specs we came up with were not any better :p
17:11:50 <planetmaker> :-) yeah
17:11:51 <frosch123> i think improving nml is the better route
17:12:05 <frosch123> most of the nfo stuff you do not even need
17:12:06 <planetmaker> that won't help consist replacement or AIs :-P
17:12:26 <frosch123> so if you support only the important subset via nml, you already have achieved something
17:12:38 <planetmaker> as NML won't stop vehicles being able to drive 25km/h on 8th May only while carryin coal. But passengers other days
17:12:51 <planetmaker> that's true. Something
17:13:11 <frosch123> well, but noone cares whether consist replacement works with "historic vehicles"
17:13:15 <planetmaker> but we can nowhere rely in OpenTTD that newgrfs use only NML's subset of "sane" features
17:14:04 <frosch123> try to support order refitting and order shunting with cargodist
17:14:25 <planetmaker> that's stuff nightmares are made of
17:14:29 <frosch123> i think the idea that every feature shall work with every feature is ill-formed :p
17:14:34 <frosch123> you cannot achieve that
17:14:55 <frosch123> people play ottd differently, everyone uses a different part
17:14:57 <oskari89> Order shunting?
17:15:06 <frosch123> you can just blame it on the user if some combinations fails to work
17:15:07 <oskari89> Locomotive detaching from wagons?
17:15:18 <oskari89> Outside depot?
17:18:01 <oskari89> http://www.tt-forums.net/viewtopic.php?f=32&t=43972
17:18:19 <Eddi|zuHause> well, it'll probably hurt more tomorrow :p
17:18:28 <oskari89> http://youtu.be/d9d7wfgMTMg
17:19:49 <V453000> refit does the same thing basically
17:19:50 <planetmaker> I don't think frosch meant that. But if you have vehicles capable of autorefit in stations, it's virtually impossible to tell which connections do exist or can exist
17:19:59 <Eddi|zuHause> oskari89: that guy never provided his patch, afaik
17:20:00 <planetmaker> ^ @ oskari89
17:20:15 <oskari89> He didn't
17:20:27 <planetmaker> thus without knowledge of what connections exist for which cargo, cargodist must fail
17:20:29 <oskari89> I hope he does at some point :P
17:21:54 <V453000> I dont think there would be any real way how to use that though
17:22:28 <frosch123> V453000: as long as there are people who arrange hundreds of trains along a 24 hour timetable
17:22:33 <frosch123> there is also space for shunting
17:22:35 <Eddi|zuHause> Alberth: the "linker" i wrote for CETS does 3 hacks, 1) introduce the "comment" in the code to decide where headers end, 2) filter out everything before this comment to cut away the duplicate headers, and 3) insert some magic to keep the lifetime of certain IDs over the whole GRF
17:23:43 <Eddi|zuHause> and it kinda relies on NML not rearranging statements very much
17:23:58 <Alberth> :)
17:24:32 <Alberth> you get that by itself with partial compilation
17:24:45 <Eddi|zuHause> yes
17:25:10 <Eddi|zuHause> but the partial compilation would have to deal with the same 3 problems
17:25:11 *** Rikests has quit IRC
17:25:15 <planetmaker> I actually looked at that very patch today... but I was scared. I likely could not support it, if there are problems. And I'm not in a good position to judge properly how it might fall on NML's feet i nthe future, if it became official
17:26:06 <Eddi|zuHause> yes, it's pretty hand-crafted towards CETS, and not easily universally applicable
17:26:57 <Eddi|zuHause> but it was kinda the only way to continue CETS in a sane matter
17:27:08 <V453000> frosch123: I havent yet seen anyone arrange hundreds of trains by timetable nor can i imagine how could that possibly work? every timetable breaks sooner or later by jams/whatever
17:27:09 *** Rikests has joined #openttd
17:27:22 <Alberth> Eddi|zuHause: 1 and 2 should not be needed with a proper implementation
17:27:39 <frosch123> V453000: with that kind of timetable there is no sooner or later
17:27:48 <frosch123> all vehicles move deterministically
17:27:56 <V453000> ? :d
17:28:25 *** Zuu has joined #openttd
17:28:28 <V453000> imagine a train gets stuck in traffic for half a year
17:28:30 <V453000> what will it do
17:28:33 <Alberth> hi Zuu
17:28:42 <Zuu> Hello Alberth
17:28:45 <planetmaker> V453000, that won't happen if *every* train is on schedule
17:28:50 <planetmaker> it can't get stuck
17:28:53 <Eddi|zuHause> V453000: if you use "full" timetables, trains should not get stuck
17:28:55 <frosch123> http://www.tt-forums.net/download/file.php?id=166001 <- that patch
17:29:08 <V453000> jams/broken signals/any other issue on the track?
17:29:19 <frosch123> V453000: the timetable arranges the trains in a way they are never stuck
17:29:26 <planetmaker> proper wait times
17:29:40 <planetmaker> so that small disturbances don't escalate
17:29:43 <planetmaker> (like they do in RL)
17:29:46 <V453000> if you have self-blocking signals, then the train is stuck, how does the timetable deal with that :
17:30:00 <frosch123> V453000: every vehicle is timed exactly
17:30:04 <V453000> e.g. your train was stuck for say half a year
17:30:07 <frosch123> it is set up once to work, and then never changes
17:30:15 <V453000> of course
17:30:23 <planetmaker> V453000, of course you can break the network
17:30:26 <frosch123> "stuck for a half year" is non-sense
17:30:32 <V453000> but how does it react to disturbance like slowdowns, jams
17:30:36 <planetmaker> but... that's something you can always do
17:30:36 <frosch123> it either works, or it doe snot work
17:30:39 <frosch123> but it enver changes
17:30:55 <V453000> if your network just starts jamming
17:31:02 <V453000> - which happens every game -
17:31:14 <frosch123> damn, there is no "starts", when everything is timetabled
17:31:28 <V453000> you add trains at some point
17:31:33 <frosch123> V453000: i think you still did not understand that patch
17:31:50 <frosch123> the vehicles are not timetabled one by one
17:31:52 <frosch123> but in total
17:31:54 <Eddi|zuHause> however, besides openttd's current timetables being a pain to set up and manage, big lateness values are problematic, because there is no heuristic when to give up trying to catch up to the timetable. so a 100 day timetable, and 98 days late counter, the train will not try to skip one full round-trip, but instead try 97 days late, 96 days late, etc...
17:32:00 <frosch123> every train is aligned with everyone else
17:32:26 <frosch123> you add one train at a time and configure it's timetable so it does not conflict with any other train
17:32:36 <frosch123> then it keeps on running on exactly that cycle
17:33:33 <V453000> okay, so it is re-calculated after adding every train?
17:33:50 <V453000> and still, even adding just one train does not have instant effect on jams etc
17:33:56 <frosch123> nothing is calculated
17:34:00 <frosch123> it is set up manually
17:35:28 <planetmaker> hm, how do I align different timetables with eachother?
17:35:39 <frosch123> you have a global 24 hour clock
17:35:42 <planetmaker> Just starting the train at the right time / resetting lateness counter?
17:35:53 <frosch123> and you make sure every order list has a length which is a divisor of 24 hours
17:36:03 <V453000> ok, then if I add 100 trains on a certain connection and the connection starts to jam, the travel time is not updated? or?
17:36:15 <frosch123> the 24 hour thingie is just a helper thingie ofc to get natural units
17:36:19 <planetmaker> V453000, no two trains have the same time table
17:36:27 <V453000> doesnt matter
17:36:28 <frosch123> V453000: no, you do not add 10 trains
17:36:32 <V453000> still 100 trains could visit the same station
17:36:36 <V453000> or rail or whatever
17:36:39 <frosch123> you add one train at a time and timetable it so it works
17:36:41 <V453000> 100 individual trains
17:36:50 <planetmaker> yes. But they're schedules by you to not be at the same place and time together
17:36:57 <planetmaker> if you don't do that, you do it wrong
17:37:10 <V453000> sure
17:37:28 <V453000> but what if the "place" where they all meet is a junction, not a station
17:37:34 <V453000> aka a place which is not in the orders but they all visit
17:37:43 *** DDR has joined #openttd
17:37:45 <frosch123> they still run the same on every trip
17:37:50 <planetmaker> you see that. As you add them one by one :-)
17:37:57 <frosch123> so you can timetable them so they do not "meet" in junctions
17:38:16 <V453000> they will meet in junctions if you add too many sooner or later
17:38:39 <frosch123> that's just up to you setting up the timetables correctly
17:38:41 <planetmaker> that's when your network is at 100% capacity
17:39:14 <V453000> ok enough, I dont think I should try to understand this type of playing
17:39:28 <planetmaker> drive speed and time is deterministically. thus you can exactly tell whether trains will meet
17:40:10 <V453000> autoreplace == hell ?
17:41:02 <planetmaker> likely
17:41:14 <planetmaker> unless you schedule depot visits in the time table anyway
17:41:26 <V453000> more like about the updated stats of the new train
17:41:39 <planetmaker> limit speed in orders
17:41:53 <V453000> the new train can also be slower :P
17:42:00 <planetmaker> or by wagon speed limit.
17:42:45 <frosch123> http://www.tt-forums.net/download/file.php?id=166727 <- V453000: there are different ways to play the game
17:42:54 <frosch123> coop tries to make it complex in some way
17:43:04 <frosch123> other people do it by increasing the micro management
17:43:47 <V453000> holyfuck
17:43:58 <V453000> well I know, but I wouldnt say this is less complex than normal playing
17:44:16 *** Dark-Ace-Z has joined #openttd
17:44:18 <planetmaker> of course not. And no-one claimed so
17:44:29 <frosch123> http://www.tt-forums.net/viewtopic.php?f=33&t=63721 <- i never succeeded in reading that :)
17:44:48 <planetmaker> omg... wall of text
17:45:12 <frosch123> yeah, but the screenshot is cool :)
17:45:38 <Zuu> Ah, a graphical time table :-)
17:45:45 <frosch123> but it needs a special kind of people to play with that
17:46:25 <V453000> I still love the word zug
17:46:40 <V453000> almost as lovely as the one for frog
17:47:09 <frosch123> if you say "zug" like that, it sounds like you mean inhaling drugs
17:47:25 <V453000> I know how to pronounce it :)
17:48:00 *** DarkAce-Z has quit IRC
17:48:35 <planetmaker> I think that patch might give a total kick to some people
17:48:54 <V453000> in what way? :D
17:49:04 <planetmaker> "omg, must have!"
17:49:19 <planetmaker> those realism people
17:49:25 <V453000> well some people are weird :P
17:49:27 <oskari89> I think that is !!!!
17:49:35 <oskari89> On good way :)
17:49:45 <oskari89> Wants :)
17:49:53 <V453000> this is R like hell
17:50:13 <planetmaker> oh, it can likely even be fun to timetalbe the map accurately and efficiently
17:50:26 <oskari89> Yes it is
17:50:26 <planetmaker> SRNW is a piece of cake in comparison :-P
17:51:40 *** Elukka has joined #openttd
17:51:51 <oskari89> That plus daylength is something awesome :)
17:52:28 <Alberth> so you can play in real time as well :)
17:52:50 <planetmaker> :D
18:04:27 <Eddi|zuHause> <V453000> well some people are weird :P <-- says a person in an IRC channel dedicated to a train game
18:07:18 <frosch123> yeah, don't talk to people who are not here
18:07:22 *** ntx has quit IRC
18:09:17 *** ntx has joined #openttd
18:33:05 *** Pixa has quit IRC
18:34:27 <Rikests> Any way to change NewGRF parameters in saves?
18:35:17 <Alberth> nope
18:40:53 <Mazur> I is weird.
18:41:33 <Mazur> Rikests, only with a time-machine.
18:41:48 <Mazur> Perhaps you can borrow one from a friend.
18:42:09 <Rikests> alright
18:47:58 <Eddi|zuHause> "the impossible just takes a bit longer"
18:48:29 *** Stimrol has quit IRC
18:55:01 *** Stimrol has joined #openttd
19:05:44 *** parkette has quit IRC
19:06:06 *** Supercheese has joined #openttd
19:21:22 *** Rikests is now known as Rieksts
19:36:45 *** Dark-Ace-Z is now known as DarkAceZ
19:44:59 *** Rieksts has quit IRC
19:47:52 *** Wolf01 has joined #openttd
19:48:38 <Wolf01> ho ho ho.. no, wrong time
19:54:47 <Alberth> hi hi
19:55:06 <Alberth> practising never hurts :)
20:06:21 *** Pixa has joined #openttd
20:17:33 <planetmaker> http://www.tt-forums.net/viewtopic.php?f=26&t=52396&start=100#p1076800 <-- anyone wants to provide some translation?
20:18:23 <Wolf01> >_>
20:18:59 <Wolf01> newobjects patch 2, the revenge?
20:19:14 *** sla_ro|master has quit IRC
20:19:22 <Wolf01> or just a grf?
20:19:30 <planetmaker> It's a landscape grf
20:19:36 <planetmaker> with some NewObjects
20:20:14 <planetmaker> exactly four to be precise
20:21:43 <Alberth> perhaps add a <p> before 'English' in the translation output?
20:21:53 <planetmaker> yes, likely :-)
20:22:07 <planetmaker> when my repo is in a less modified state :-)
20:22:20 <planetmaker> though... it's a single file I don't touch... yes
20:22:44 <Alberth> discover the concept 'local clone' :)
20:22:50 <planetmaker> :-)
20:23:20 <planetmaker> or commit and ammend. and unnamed branches :-)
20:23:34 <Alberth> so many strings for a landscape newgrf! :o
20:23:46 <planetmaker> parameters. parameters :-)
20:26:03 <Alberth> good night
20:26:30 <planetmaker> good night
20:26:39 *** Alberth has left #openttd
20:28:46 <Supercheese> [url]nightly builds[/url]
20:28:47 <Supercheese> broken url
20:28:54 <Supercheese> or rather, no url specified
20:29:08 <planetmaker> yeah, fixed
20:29:22 <Supercheese> :)
20:29:35 <Supercheese> also [url]changed since[/url]
20:30:25 <planetmaker> also, yes :-) ty
20:30:31 <Supercheese> you're welcome :)
20:41:19 <Terkhen> good night
20:43:32 <planetmaker> g'night Terkhen
20:49:55 *** Nat_aS has joined #openttd
20:50:34 *** Dr_Tan has quit IRC
20:54:28 *** KouDy has quit IRC
21:37:36 *** oskari89 has quit IRC
21:38:10 *** Zuu has quit IRC
21:40:29 <planetmaker> g'night
21:42:03 *** Djohaal has joined #openttd
21:47:25 *** parkette has joined #openttd
21:50:08 <Wolf01> 'night
21:50:15 *** Wolf01 has quit IRC
21:59:53 *** Biolunar__ has quit IRC
22:25:24 *** frosch123 has quit IRC
22:26:13 *** Alice3 has quit IRC
22:31:01 *** Devroush has quit IRC
22:55:33 *** LANJesus has quit IRC
23:40:09 *** HellTiger has quit IRC