Config
Log for #openttd on 4th March 2017:
Times are UTC Toggle Colours
00:04:54  <Wolf01> You were looking for "I need to do something similar to..."
00:09:45  <Wolf01> Also bed
00:09:47  <Wolf01> 'night
00:09:50  *** Wolf01 has quit IRC
00:17:47  *** Wormnest has quit IRC
00:21:05  *** supermop has quit IRC
00:21:17  *** supermop has joined #openttd
00:31:40  *** smoke_fumus has joined #openttd
00:34:23  *** frosch123 has quit IRC
00:37:10  *** Gja has quit IRC
00:40:07  *** Supercheese has quit IRC
00:52:27  *** Snail has joined #openttd
00:56:41  *** Samu has quit IRC
01:12:15  *** FLHerne has quit IRC
01:18:09  *** maciozo has quit IRC
01:20:04  *** HerzogDeXtEr1 has quit IRC
01:21:39  *** Biolunar has quit IRC
01:28:43  *** FLHerne has joined #openttd
02:38:51  *** Supercheese has joined #openttd
02:50:56  *** FLHerne has quit IRC
03:01:23  *** markasoftware has joined #openttd
03:37:36  *** glx has quit IRC
03:39:13  *** supermop__ has joined #openttd
03:44:32  *** supermop_ has quit IRC
03:50:29  *** markasoftware has quit IRC
03:54:02  *** Montana has quit IRC
05:05:42  <Supercheese> @calc 7 m/s mph
05:05:42  <DorpsGek> Supercheese: Error: invalid syntax (<string>, line 1)
05:05:47  <Supercheese> hmm
05:06:14  <Supercheese> Google it is then
05:07:40  <Supercheese> maybe it was @convert or something
05:24:19  *** Snail has quit IRC
05:53:56  *** Mazur has quit IRC
06:02:33  *** Mazur has joined #openttd
06:25:21  *** sla_ro|master has joined #openttd
06:28:52  *** Alberth has joined #openttd
06:28:52  *** ChanServ sets mode: +o Alberth
06:28:57  <Alberth> mon
06:29:00  <Alberth> +i
06:50:44  *** andythenorth has joined #openttd
06:51:26  <Alberth> o/
06:52:10  <andythenorth> moin
06:52:57  <andythenorth> to my mind, the CPP approach of dumping constants into one global namespace
06:53:02  <andythenorth> is a mess
06:53:15  <andythenorth> but…it makes for very compact templating :P
06:53:42  <andythenorth> no obj.obj.property or obj.method(obj.property) stuff
06:54:06  * andythenorth removing CPP from FIRS slowly
06:56:11  <Alberth> it's not designed to do large scale complicated replacements
06:56:37  <andythenorth> it’s a powerful tool that goes a long way fast :)
06:56:49  <andythenorth> but when it hits the limit, it hits it quite hard
06:57:38  <Alberth> it is, but "working" and "the correct approach" are two different things, which are sometimes seemingly well aligned
06:58:34  <Alberth> I agree it's better to do without CPP, Python is a much more capable solution
06:58:39  <Alberth> at the cost of more work
06:58:59  <andythenorth> removing it from here is quite tricky http://dev.openttdcoop.org/projects/firs/repository/entry/src/templates/produce_secondary.pypnml#L15
06:59:13  <andythenorth> all of the ‘var_leftover_cargo_1’ etc are CPP defines, mostly global
06:59:34  <andythenorth> it’s technically trivial to do, but will make word soup :P
07:00:32  <Alberth> I'd keep it, probably
07:00:39  <andythenorth> var_leftover_cargo_1 -> ${industry.get_perm_storage_num[‘var_leftover_cargo_1’]}
07:00:50  <andythenorth> does not aid reading a complicated templated switch :)
07:01:21  <Alberth> yes, if you go all the way, things become unreadable
07:02:09  <Alberth> you could introduce new names in your ${} thingies
07:02:24  <Alberth> to make the templates more readable
07:02:59  <Alberth> but generated code is barely readable, and pretty much non-modifiable
07:03:25  <Alberth> keeping the #define improves things at that level
07:04:30  <Alberth> In C++, the general direction is to eliminate #define, and replace with "inline" functions and "const" variables
07:04:45  <Alberth> ie the C++ languages itself provides safer alternatives
07:06:13  <andythenorth> chameleon has template local defines, so they’re in the root namespace within a specific template block
07:06:14  *** DDR has quit IRC
07:06:33  <Alberth> I once looked into NML having better templates, but it became very messy very fast
07:06:33  <andythenorth> eg define=“var_leftover_cargo_1” and then use it as ${var_leftover_cargo_1}
07:06:41  <Alberth> too many hacks around the parser
07:06:48  <andythenorth> yes
07:07:02  <Alberth> local defines look nice
07:07:20  <andythenorth> they’re generally frowned up by chameleon users, it creates annoying local indirection
07:07:36  <andythenorth> it’s preferred to put them in the backing view / object
07:07:38  <andythenorth> but eh
07:08:02  <Alberth> and local indirection is bad for computation costs?
07:08:12  <andythenorth> bad for readability
07:08:17  <Alberth> ah, ok
07:08:33  <andythenorth> if FIRS production code was simpler, this problem would go away :D
07:08:46  <Alberth> you have to be careful what to #define as well :)
07:09:45  <Alberth> although at the point of using ##, I think you're a few miles beyond that :)
07:10:15  <andythenorth> :P
07:10:52  <Alberth> I think to some extent, NML code isn't really designed from the higher level
07:11:17  <Alberth> it basically mirrors the action codes, and leaves combining the primitives to the user
07:12:05  <andythenorth> I find it easy to template, because it’s exactly akin to templating html
07:12:11  <andythenorth> which has the same issue
07:12:27  <Alberth> perhaps the higher level isn't really possible, as you'd cut of parts of the available design space
07:12:29  <andythenorth> but the techniques for good html templating took 10 years to develop :P
07:13:02  <Alberth> ie you'd end up with grfmaker-ish solutions, in the extremely simple-ish case
07:13:22  <andythenorth> yes: at first glance it looks easy to move NML up one level.  Could define a vehicle object etc, and hide away all the code
07:13:30  <andythenorth> but then the varaction2 chains....
07:14:43  <andythenorth> I know how I’d re-design it, but I’m fairly certain I’d be wrong
07:15:35  <Alberth> tbh, I don't think 'switch' is a right primitive, an if-tree would be nicer
07:15:50  <Alberth> computer can generate switches
07:15:58  <andythenorth> I find the switch syntax non-intuitive
07:16:27  <Alberth> yep, it maps directly on action2 sequences
07:16:45  <andythenorth> tbh, if the complex FIRS switches hadn’t been written by pm, yxo, hirndo etc…I’d never have grokked how to do them
07:16:54  <Alberth> no code generation required there :)
07:17:46  <andythenorth> expressions [] have remarkable power :P
07:17:59  <Alberth> I can see that, there is a lot of combined functionality hidden in the switch
07:18:47  <Alberth> but you'd want to write code more like plain imperative programming, eg Python function or C statements
07:19:32  <andythenorth> +1
07:19:39  <andythenorth> it’s also a bit heavy on syntax
07:19:43  <andythenorth> ‘said the python programmer'
07:20:07  <Alberth> yeah, too much functionality packed in it
07:20:55  <andythenorth> putting aside the syntax…
07:21:09  <andythenorth> instead of FEAT_XXX and id
07:21:20  <andythenorth> I would rather have wrapped entire blocks of nml in a scope
07:21:27  <andythenorth> e.g. specific vehicle, industry, tile etc
07:22:08  <andythenorth> this actually mirrors how most of nfo works when it comes to variable access
07:22:29  <andythenorth> and it means the objects could be extend with props that aren’t in the nfo spec
07:22:48  <andythenorth> and trivial templating could then be used
07:23:34  * andythenorth should make a pate
07:23:35  <andythenorth> paste *
07:25:03  <Alberth> makes sense
07:25:43  *** zeknurn has quit IRC
07:30:16  <andythenorth> https://paste.openttdcoop.org/pgzr2xfsv
07:31:03  <andythenorth> it localises all switches etc; there would need to be a method to access global switches, as that’s an nfo feature which is occasionally very useful
07:37:04  *** tokai has joined #openttd
07:37:04  *** ChanServ sets mode: +v tokai
07:39:38  <Alberth> you just move FEAT_ROADVEHS up one level? or are the switch names now also limited in this scope?
07:39:47  <Alberth> (and other names, I guess)
07:40:05  <andythenorth> switch names are limited in this scope
07:40:14  <andythenorth> there would have to be a way to break out of that
07:40:25  <andythenorth> but eh, most people would never need it, especially in vehicle sets
07:40:37  <andythenorth> and people like MB who understand all this…have their own solutions
07:41:11  <andythenorth> I wonder if it would be more performant, because there was a half-idea that figuring out switch IDs in a global namespace is slow
07:41:22  <andythenorth> I dunno if that was profiled though
07:41:47  <Alberth> slow in nml, you mean?
07:42:12  <Alberth> wouldn't expect so, tbh
07:42:31  <Alberth> nml gets killed by too much copying of data
07:43:31  * andythenorth did consider going back to nfo, and templating it with chameleon :P
07:43:38  <andythenorth> it would be maybe 5x faster to compile
07:44:05  <Alberth> quite possibly a lot faster :)
07:44:10  *** tokai|noir has quit IRC
07:45:32  <andythenorth> somewhere my idea gets paired with simple ${name} templating
07:45:41  <andythenorth> but I can’t figure out why that’s useful
07:46:18  <Alberth> you may end up with something like m4nfo
07:46:26  <andythenorth> yup
07:46:30  <Alberth> which is basically also just a big set of templates
07:47:31  <andythenorth> ah, interesting.  The majority of my chameleon use is something like ‘${vehicle.id}_some_switch_name’
07:47:36  <andythenorth> because all switches must be named :P
07:47:44  <andythenorth> the scope idea eliminates that need
07:48:13  <Alberth> it would indeed
07:48:52  *** zeknurn has joined #openttd
07:48:57  <Alberth> it would also fix the need for ## in CPP :p
07:49:39  <andythenorth> e.g. http://dev.openttdcoop.org/projects/road-hog/repository/entry/src/templates/capacity_switches.pynml
07:50:00  <andythenorth> 7 uses of ${stuff} just to create switch ids
07:50:10  <andythenorth> 10 even
07:50:33  <andythenorth> 7 other uses
07:50:56  <andythenorth> ha if nml did ${some python code}
07:51:06  <andythenorth> then the parser could call eval() on it
07:51:12  <andythenorth> no risk there :P
07:52:18  <Alberth> there are ideas in newer pythons for doing such things with string formatting
07:52:43  <andythenorth> you mean Template(), or something else? o_O
07:56:44  *** czaks has quit IRC
07:57:00  <Alberth> https://www.python.org/dev/peps/pep-0498/
07:58:06  <andythenorth> interesting :)
08:01:07  <andythenorth> still not sure why templating is useful inside vanilla nml
08:01:40  <andythenorth> now wondering if nml-native templating would make life more complicated for people applying their own templates
08:01:50  <Alberth> it eliminates CPP templating
08:02:33  *** czaks has joined #openttd
08:03:00  <Alberth> ie no need for CPP any more, thus no mingw
08:03:01  <andythenorth> in my example template here, nearly all the templating relates to managing IDs https://www.tt-forums.net/viewtopic.php?p=993849#p993849
08:03:08  <andythenorth> which would be eliminated by a scope
08:05:11  <Alberth> local/global could be done by defining global names outside any scope
08:05:20  <andythenorth> yes
08:06:55  <andythenorth> I’m not sure whether nml should go an extra step
08:07:22  <andythenorth> and introduce prototypes
08:08:01  <andythenorth> e.g. prototype (ROAD_VEHS, town_bus) {  [properties and switches] }
08:08:18  <Alberth> isn't that just a template?
08:08:21  <andythenorth> yes it is
08:08:24  <andythenorth> precisely
08:08:43  <andythenorth> I would expect to handle all that myself, using my preferred templating tools
08:08:57  <andythenorth> but it might aid people who write out a lot of nml long-hand
08:09:10  <Alberth> add template facility to nml, and $someone can make a set of such templates
08:09:11  * andythenorth thinks of the FIRS forks
08:09:32  <andythenorth> GarryG and spiff are doing it the hard way, by modifying the nml output :P
08:09:38  <Alberth> yeah, your code generation is likely very much magic to a lot of people
08:09:38  <andythenorth> it’s not even nicely formatted for them :P
08:09:51  <andythenorth> 3iff / spiff /s
08:11:33  <Alberth> Well, it's easy to understand, it just takes time to change things
08:11:53  <andythenorth> it’s yak-shaving :)
08:11:54  <Alberth> We have not that much patience, so we resort to magics :)
08:12:16  <andythenorth> they get bugs because they are manually maintaining 40 identical switches :)
08:12:50  <Alberth> sure, and without even the basic understanding of what things do
08:13:17  <Alberth> so I think it's amazing they get anything done
08:13:35  <Alberth> not sure if a template would improve things there
08:14:10  <Alberth> I mean, if you don't know NML, adding a template language layer on top of it would improve things?
08:14:17  <andythenorth> it requires the understanding of what’s common and what’s not
08:14:38  <andythenorth> and if the templates can’t be broken up further into sub-templates / macros, then it’s hard to get proper reuse
08:14:39  <Alberth> somewhat, I think NML could do stuff there as well
08:14:48  <andythenorth> I think it’s hard to win
08:15:02  <Alberth> nfo is a complicated language
08:15:29  <Alberth> much more complicated than eg C or Python
08:15:50  <Alberth> all kinds of dedicated purpose constructs
08:16:06  <andythenorth> scopes, I see no downside; nml-native templating, might be a tarpit
08:16:27  <Alberth> nml-native templating just kills CPP, nothing more
08:16:54  <Alberth> and for people like you, it has no value, as you prefer your own stuff
08:16:58  <andythenorth> exactly
08:17:10  *** supermop_home has joined #openttd
08:17:28  <andythenorth> constant-subsitution (with local / global scope), might be useful
08:17:34  <Alberth> I wonder though, how much CPP would you need with scopes?
08:17:34  <andythenorth> it it can be made easy to understand
08:17:50  *** czaks_ has joined #openttd
08:18:01  <Alberth> it would mostly become a sequence of #include
08:18:02  *** czaks has quit IRC
08:18:05  <andythenorth> CPP tends to be useless for the id stuff, it requires variadic macros which are bad
08:18:35  <andythenorth> I think CPP is mostly being used for #include and constant substitution
08:19:44  <Alberth> so you'd need a "const myvalue = 1+3;" like thing?
08:19:46  <andythenorth> constant substitution is helpful for things like “self.label_refits_allowed = ['FRUT','WATR’]” where that is shared by 10 vehicles
08:20:09  <andythenorth> self.label_refits_allowed = {global_edibles_tankers}
08:20:15  <andythenorth> or something
08:20:23  *** supermop_ has joined #openttd
08:21:35  <Alberth> const edibles_cargoes = ['FRUT', 'WATR'];    self.label_refits_allowed = edible_cargoes;
08:21:45  <andythenorth> yes
08:22:03  <andythenorth> w.r.t includes, I am agnostic
08:22:34  <andythenorth> I would always prefer to write my own compile, so I’m not a good person to specify
08:22:55  <andythenorth> but actually the #include format seems pretty straightforward, as long as circular refs are banned
08:23:32  *** supermop has quit IRC
08:23:42  <Alberth> CPP allows them, but runs out of stack space for circular references :)
08:24:09  <andythenorth> ha
08:24:22  <andythenorth> hmm, #include for e.g. an entire vehicle in one file is intuitive
08:24:27  <andythenorth> with one master file that assembles them
08:24:44  <andythenorth> it could also be used for fragments of code, by people who make that leap
08:24:54  <andythenorth> it wouldn’t be formalised templating, nor would it break
08:24:58  <Alberth> gives very loooooong error messages ("out of stack at line x of file bla, included from line y of file bla .....")
08:25:29  <andythenorth> so the problems seem to be:
08:25:33  <andythenorth> - switch syntax
08:25:40  <andythenorth> - managing IDs (yak-shaving)
08:25:47  <andythenorth> - constant substitution
08:25:49  <andythenorth> - templating
08:25:52  <andythenorth> - file inclusion
08:26:32  *** supermop_home has quit IRC
08:26:55  <Alberth> quite
08:27:09  *** Biolunar has joined #openttd
08:28:20  <andythenorth> templating I think is non-winnable
08:28:26  <andythenorth> and I am on the fence about file inclusion
08:29:26  <Alberth> is pretty simple to hook into the parser, normally
08:29:46  <Alberth> except it's currently useless, as CPP does it all
08:30:04  <Alberth> and current parser of NML has too much magic
08:30:17  <andythenorth> I find it magical :)
08:30:26  <andythenorth> the rest of nml is pretty easy
08:30:55  <andythenorth> it’s just a giant set of substitutions :P
08:34:04  <Alberth> :o  I have the reverse experience :)
08:34:20  <Alberth> I can see how the parser works, everything else looks like magic :)
08:34:55  <andythenorth> I understand conceptually that it must build a tree of objects
08:35:40  *** Samu has joined #openttd
08:35:54  <Samu> hi to all~
08:36:22  <Alberth> hi hi
08:36:42  <Alberth> don't try to understand how the parser internals work, it's magic :)
08:37:04  <Alberth> just understanding how the rules and the code attached to the rules work is enough
08:37:29  <Samu> what? me?
08:37:39  <Eddi|zuHause> parsers are a solved problem, they basically did not change since the 70s...
08:38:06  <Alberth> false, there are developments in stronger parser algorithms
08:38:07  <Eddi|zuHause> you just feed them a set of rules, and they build you a tree
08:38:46  <Alberth> LALR(1) does impose some limits that you don't always want
08:38:48  <Eddi|zuHause> Alberth: details :p
08:39:04  <Alberth> oh :)
08:39:36  <Alberth> let's talk again after you embedded eg SQL in C++ or so, eh? :D
08:39:50  <Eddi|zuHause> :)
08:40:36  <Alberth> switching between languages in the middle of programs is very useful, but standard parser technology can barely handle a single language
08:41:27  <Alberth> afaik that is where a lot of parsing research is aiming for
08:41:40  * andythenorth biab
08:41:42  *** andythenorth has quit IRC
08:41:52  *** ConductorCat has quit IRC
08:47:12  *** FLHerne has joined #openttd
08:47:25  *** ConductorCat has joined #openttd
09:05:36  *** Supercheese has quit IRC
09:07:06  *** synchris has joined #openttd
09:09:20  *** andythenorth_ has joined #openttd
09:15:10  *** smoke_fumus has quit IRC
09:15:11  *** Progman has joined #openttd
09:18:22  *** andythenorth_ has quit IRC
09:21:37  <Alberth> bbl
09:21:41  *** Alberth has left #openttd
09:29:47  *** andythenorth_ has joined #openttd
09:32:23  *** gelignite has joined #openttd
09:32:47  *** andythenorth_ has quit IRC
09:42:14  *** HerzogDeXtEr has joined #openttd
09:47:56  *** andythenorth_ has joined #openttd
09:50:57  *** andythenorth_ has quit IRC
09:51:35  <Samu> I did it! but a small issue
09:51:37  <Samu> http://imgur.com/YlsWYA3
09:51:57  <Samu> the line describing kirby paul is too big
09:52:15  <Samu> look at train 1 details
09:52:28  <Samu> running cost of kirby paul doesn't fit on a default sized window
09:52:31  <Samu> what can i do?
09:53:50  <Samu> and it looks like i have another problem, running cost of bus is £0 for some weird reason
10:00:42  *** Wolf01 has joined #openttd
10:00:55  <Wolf01> o/
10:05:25  <Samu> plz explain me what is this doing exactly?
10:05:26  <Samu> virtual Money GetRunningCost(bool single_part = false) const { return 0; }
10:06:16  <Samu> when trying to get the running cost of a bus, I get this function doing a return 0
10:06:20  <Samu> why'
10:07:45  <Wolf01> Mmmh, html2text, how should I convert <p> vs <br/>?
10:08:35  <Samu> isn't <br> a enter or a paragraph?
10:08:38  <Samu> i forgot
10:08:46  <Wolf01> Enter
10:08:55  <Wolf01> <p> is paragraph
10:09:29  <Wolf01> I need to check what richtextbox allows
10:10:40  <Wolf01> Mmmh textBox1.Text = generatedCode.Replace("\n", Environment.NewLine);
10:11:29  <crem> Any german speakers online? "Wir haben genug Zeit, um den Zug zu bekommen." <- isn't "um" here a mistake?
10:11:32  <crem> Sorry for a bit of offtopic. :)
10:11:48  <Wolf01> Lol... this channel IS offtopc
10:13:57  <Samu> code expert needed
10:14:00  <Samu> https://paste.openttdcoop.org/ptvy7ysmq
10:14:58  <Samu> the problem that I have is that I wanted to make GetRunningCost() for trains to be different than the others (ship, aircraft, road vehicle)
10:15:27  <Samu> it appears to be working good for trains now, but all other vehicle types are getting a 0 in running costs, where did I fail
10:15:47  <Samu> ?
10:15:58  <Samu> http://imgur.com/a/NudRw
10:23:53  *** andythenorth has joined #openttd
10:24:50  *** sla_ro|master has quit IRC
10:25:40  <Wolf01> o/
10:28:42  <Wolf01> Now the most difficult part... I need a name for a class which handles text manipulation
10:28:56  <Wolf01> Names are always the most difficult part for devlolopers
10:29:45  <andythenorth> write a name generator
10:29:53  <Wolf01> Already done :P
10:30:01  <andythenorth> name all classes starting at ‘a’
10:30:02  <Wolf01> But not suitable for this
10:30:05  <andythenorth> ‘b’
10:30:13  <andythenorth> then ‘aa’
10:30:23  <andythenorth> when you get to z
10:30:23  <Wolf01> That's code obfuscations
10:30:36  <andythenorth> I have employed more than one person who wrote that way
10:30:41  <andythenorth> ‘it was more efficient’
10:31:20  <Wolf01> Did you had to kill them?
10:32:18  <crem> TextManipulationHandler
10:35:05  <andythenorth> so are we re-writing nml? o_O
10:35:11  <Wolf01> Nah
10:36:12  <Wolf01> I would like a more evocative name, some verb transformed to noun maybe, like the classic "inflector"
10:36:33  <Wolf01> Textor is meh XD
10:36:58  <andythenorth> ah alberth left
10:37:04  <andythenorth> nml rewrite paused then :P
10:39:20  <Wolf01> Textinator?
10:40:03  <Wolf01> Stringulator (from strangulator)?
10:50:33  *** Stimrol has joined #openttd
10:52:36  <andythenorth> ManipulateText
10:52:54  <andythenorth> is it a simple method, or a complex tool?
10:57:10  <Wolf01> A class with a collection of static functions to manipulate text
10:57:45  <Wolf01> Like stripping html tags, replacing br to newlines...
10:57:55  <andythenorth> TextUtility
10:58:22  <andythenorth> if in doubt, add ‘utils’ :P
10:58:33  <andythenorth> every project has a ‘utils’ file of shame
10:58:54  <Wolf01> I have a Utils folder of shame
11:11:02  <Wolf01> Mmmh... textixulator... nah too weird
11:21:04  <Samu> Wolf01: http://imgur.com/a/laMHZ - pretty huh?
11:21:04  <andythenorth> I gave up novelty names
11:21:19  <andythenorth> VerbNoun
11:21:22  <andythenorth> Noun
11:21:33  <andythenorth> CollectiveNoun
11:22:06  <andythenorth> less brain on names, more brain for writing less code
11:22:27  <Samu> only the Armoured Van does not have a running cost by default, I calculated it for it
11:22:31  <Wolf01> Samu, I hope running costs don't change with length and engines, btw it seem good
11:22:45  <Samu> it does :(
11:22:55  <Samu> i'm mixing newgrfs
11:23:00  <Samu> see the end result
11:23:22  <Wolf01> Also why the running cost is 5 times the value of the wagon?
11:23:49  *** Progman has quit IRC
11:23:50  <Wolf01> I'll sell the wagon and wtf valuables
11:23:53  <Samu> it's exposing a flaw in my formula
11:24:13  <Wolf01> Because you insist on getting the cost from weird values
11:24:23  <Samu> yeah :( I notice
11:25:33  <Samu> on the right, the train is stopped (one of the newgrfs halves the running cost of stopped vehicles)
11:25:36  <Wolf01> Right values are: purchase price, value, refit (one cargo type might cost more than another because it ruins faster the wagon), age
11:26:13  <Wolf01> "7k -> 5k" halved...
11:27:32  <Samu> that's the wagon that doesn't specify a running cost
11:27:36  <Wolf01> Also try your change with 8k trains, let's see how good it performs with calculating ~8k wagons
11:27:44  <Samu> yeah, i'm wondering how i'm going to fix this
11:27:51  <Wolf01> By caching it
11:28:02  <Wolf01> But you don't want to cache it
11:29:18  <Samu> it's hard because a stopped "vehicle" with reduced costs is actually a property on the engine
11:29:25  <Samu> talking about nars
11:29:41  <Samu> nars wagons don't have reduced costs
11:29:41  <Wolf01> It's hard because you chose the hard and weird path to do it in a wrong way
11:29:54  <Samu> it's still full price
11:30:38  <Samu> my simulation of halved price is taking effect, but the results i'm seeing are not what I was looking for
11:30:46  <Samu> t.t
11:33:20  <Samu> i believe the flaw is that I'm summing the running costs of all parts regardless if they're wagons or not. I suppose I have to exclude running costs of wagons from the formula, only count it from engines
11:33:53  <Wolf01> But why?
11:36:24  <Wolf01> I already show you a possible right way to do it, I wont help you further on your nonsense as you are completely discarding my suggestions
11:37:28  <Samu> yeah, I'm a bit alone on this
11:37:32  <Samu> it's ok
11:43:40  <andythenorth> hmm
11:43:56  <andythenorth> why do nml + nfo docs refer to temp registers as ‘storage’ :P
11:44:11  <andythenorth> nvm
11:44:12  <Wolf01> My friends voted for Texticulator
11:44:19  <Wolf01> I should never ask friends
11:44:31  <andythenorth> that is definitely wrong sounding in English
11:44:38  <Wolf01> Even in italian
11:45:12  <andythenorth> ‘industry.perm_register_nums.var_ratio_cargo_1’ would be neater as ‘industry.storage_nums.var_ratio_cargo_1'
11:45:24  <andythenorth> but I have to piss around distinguishing temp and perm storage
11:48:23  <Wolf01> What are used for?
11:48:56  <andythenorth> industries have 16 registers that persist in savegames
11:49:18  <andythenorth> and varaction2 chains have registers that are transient, and exist whilst the chain is executed
11:50:31  <Wolf01> "saved and local"?
11:50:35  <Samu> looks like it's working as intended after all
11:51:20  <Samu> only a tiny fraction of the train doesn't have a running cost, and it is basing it on a big fraction
11:51:35  <Samu> it looks wrong though
11:52:19  <Samu> and i already know what you told me, you disagree with it
11:52:27  <Samu> t.t
11:56:25  *** Alberth has joined #openttd
11:56:25  *** ChanServ sets mode: +o Alberth
11:56:36  <Alberth> moin
11:57:01  *** JacobD88 has joined #openttd
11:57:09  <Wolf01> o/
12:00:34  <Samu> http://imgur.com/zsSbNsp
12:00:58  <Samu> never higher than the sum of all the other parts
12:03:05  <Samu> i can see now why a user-defined parameter could be useful
12:03:49  <Samu> to adjust costs that "make no sense"
12:14:48  <andythenorth> Alberth: (FWIW) I replace the defines thus (with dumb class on the industry that stores register nums on properties)  http://dev.openttdcoop.org/projects/firs/repository/entry/src/templates/produce_secondary.pypnml
12:14:58  <andythenorth> hardly news, but I felt the need to share :P
12:15:21  <andythenorth> “ain’t finished yet neither"
12:17:02  <Samu> Wolf01: http://imgur.com/a/WhJFy - it's currently based on _settings_game.vehicle.max_train_length
12:17:14  <Samu> from 1 to 64
12:17:22  <Samu> looks better now
12:17:27  <Alberth> looks much nicer than the dictionary access stuff, andy
12:18:29  <andythenorth> yup
12:18:38  <andythenorth> it’s over-engineered probably though :P
12:19:02  <Alberth> oh, clean code to work in also counts :)
12:19:26  *** FLHerne has quit IRC
12:51:58  <andythenorth> such compile times :P
12:51:59  <andythenorth> very wow
12:52:15  *** supermop has joined #openttd
12:52:20  <andythenorth> FIRS was 50s or so, then I added Steeltown
12:52:25  <andythenorth> and some extra switches too
12:52:29  <andythenorth> now it’s 1m15s or so
12:57:34  *** supermop__ has quit IRC
13:15:03  <Alberth> add another economy, and you can drink tea while waiting :)
13:16:19  <andythenorth> ach, I should use the single industry compile
13:16:21  <andythenorth> oops
13:20:54  <andythenorth> 15s :P
13:46:20  *** andythenorth has quit IRC
13:48:29  *** frosch123 has joined #openttd
13:48:36  *** Gja has joined #openttd
13:48:39  <Wolf01> Quak
13:48:40  <frosch123> https://1.f.ix.de/scale/geometry/695/q75/imgs/71/2/1/5/4/4/3/1/mwc-topsflops-top-c638d2cb4841addd.jpeg
13:48:48  <frosch123> moi
13:55:28  <crem> frosch123!
13:55:42  <crem> Are you a german speaker by any chance?
13:55:52  <Alberth> o/
13:55:56  <frosch123> i can quak
13:56:24  <crem> quak
13:56:32  <Alberth> and translate them to english
13:56:52  <Alberth> ha, nice sign :)
14:09:40  <Samu> http://imgur.com/a/bMm6g - off and on, yay, it's werking
14:10:26  <Samu> help me at english
14:12:33  *** gelignite has quit IRC
14:13:17  <Alberth> s/at/with/
14:15:29  <Samu> oki
14:15:47  <Samu> STR_CONFIG_SETTING_RUNNING_COSTS_TRAIN_EXTRA_HELPTEXT           :When enabled, extra running costs are added for parts of a consist in a train that do not specify a running cost, such as wagons from the original game.
14:16:03  <Samu> is this good english, bad english, how would you fix it
14:17:35  <Alberth> why do people insist on trying to fix original game data?
14:18:09  <Samu> because they like the original game
14:18:36  <Alberth> obviously you don't, as you're modifying it
14:20:01  *** HerzogDeXtEr1 has joined #openttd
14:20:07  <Samu> :(
14:21:04  *** innocenat has quit IRC
14:21:11  <Alberth> but english seems good enough to me
14:21:27  *** innocenat has joined #openttd
14:21:45  <Alberth> somewhat pondering on the "a consist in", which seems a bit long and not adding much, but fair enough
14:22:08  <Samu> good idea
14:22:34  <Alberth> but really, make a newgrf, using the original vehicles, and overriding the wagon costs
14:22:49  <Alberth> that instantly works everywhere
14:23:44  <Samu> i'm not sure it would achieve the same goal
14:24:49  *** HerzogDeXtEr has quit IRC
14:25:10  <Samu> i don't know ... maybe it can
14:26:09  <supermop_> good morning
14:26:15  <Samu> the extra cost is based on the cost of other parts which do have a cost, dunno if the newgrf allows me to do this
14:27:11  <Samu> it's not a fixed value that I place on a table
14:29:46  <frosch123> do we have a static hashtable implementation in ottd?
14:31:58  <Eddi|zuHause> something hash-y was with vehicle collision detection
14:36:28  <Samu> Alberth: http://imgur.com/zsSbNsp - not a fixed value
14:39:41  <Samu> i'm happy that i made it this far
14:39:53  <Samu> 4 years ago was when I had the idea
14:40:48  <Samu> now i just need a user-defined variable for better customization
14:46:20  *** Wormnest has joined #openttd
14:56:02  *** sla_ro|master has joined #openttd
15:05:29  *** sim-al2 is now known as Guest179
15:05:30  *** sim-al2 has joined #openttd
15:10:29  *** Guest179 has quit IRC
15:27:54  *** maciozo has joined #openttd
16:03:40  *** JacobD88 has quit IRC
16:10:50  *** gelignite has joined #openttd
16:13:20  <Wolf01> Ha! frosch123, you called it https://www.tt-forums.net/viewtopic.php?f=29&t=75752&p=1183578#p1183578
16:15:15  <Wolf01> supermop https://www.tt-forums.net/viewtopic.php?f=26&t=75986 I think it would be better to add some info on how to use it, like "you need to download the RATT build (link)"
16:17:41  <supermop_> and some screenshots maybe
16:18:12  <supermop_> ill put some up/ make a release thread today after I do my taxes
16:43:36  <supermop_> Wolf01: ive been think a lot lately about tram overlays
16:44:03  <supermop_> abiut the various types of tramway people might want to see, without using up all 15 slots
16:46:08  <supermop_> basically for 'tramway' (that is light rail in a roadway), there is either the kind where the asphalt or stone blocks etc are build up over the trackbed, so you just see the rails set into the road surface. this seems to be what most people think of
16:47:20  *** czaks_ has quit IRC
16:47:34  <supermop_> there is also the kind where the track are set into a concrete slab, and that slab is the road surface between the rails, but it is asphalt outside of the rails, which seems to be common on most newly built or refurbished lines
16:48:16  <Eddi|zuHause> i suppose taking out the slab is easier in case of track maintenance
16:48:40  <supermop_> making the concrete part of the overlay then means that you must have the slab even when the light rail is not in a road
16:49:14  <supermop_> which some lines seem to have but not all
16:49:45  <Samu> my unglish, :(
16:50:14  <Eddi|zuHause> also i don't know about "newly built"... these concrete slabs definitely have been around in the 80s
16:50:44  <supermop_> Eddi|zuHause true, in melbourn about half of the track that is unrestored since the 80s also looks like that
16:50:50  <supermop_> but nits not universal
16:50:56  <supermop_> its not
16:51:20  <Samu> looking for english expert
16:51:22  <Samu> http://imgur.com/ALyXKXV
16:51:24  <Eddi|zuHause> i know lots of brand new lines that have been redone with asphalt, not a slab
16:51:34  *** czaks has joined #openttd
16:51:54  <supermop_> also pre-1960s in the us I never seen a photo of that concrete slab, but the newer light rails of the 90s and 00s seem to all have it here
16:52:04  <Samu> STR_CONFIG_SETTING_RUNNING_COSTS_TRAIN_EXTRA_DIVISOR_HELPTEXT   :When the setting 'extra running costs for trains' is enabled, this divisor allows for better fine-tunning the desired running cost result. A lower divisor results in a higher cost. A higher divisor results in a lower cost. When set to Auto, the divisor will be based on the current game value set for 'maximum length of trains' instead.
16:52:13  <Samu> is this good englisho?
16:52:51  <supermop_> samu it is fine
16:53:14  <Eddi|zuHause> anyway, the concrete slab problem can only be solved if you have different overlays depending on whether there is a road or not
16:54:11  <supermop_> some less technically literate English speakers may be less familiar with the term 'divisor' but you aren't going to be able to explain such a technical concept to them in one string anyway
16:54:23  <supermop_> Eddi|zuHause yeah that's what I am thinking
16:54:53  <supermop_> also there are maybe several different user expectations for a light railway inside a town, without road
16:55:26  <supermop_> does it look like a light railway with ballast and ties, and maybe future fences when nrt supports them?
16:55:57  <supermop_> is it a tramway set in a bare concrete slab? is it a tramway set into a pedestrian mall?
16:56:10  <supermop_> is it a tramway set into grass?
16:56:42  <supermop_> all but one of those need the overlay to be just rails
16:57:05  <Eddi|zuHause> ... off-road trams also come in variants with wood sleepers, concrete sleepers sleeperless concrete or embedded in dirt or grass
16:57:17  <supermop_> yes
16:57:45  <Eddi|zuHause> and yes, pedestrian zones come in all shapes and colours
16:58:02  *** Biolunar has quit IRC
16:58:23  <supermop_> of course I can just pick whatever i want to draw and let other authors create newgrfs with their own preference
16:59:21  <supermop_> also 'pedestrian mall' could be a road type
16:59:51  <supermop_> so that type of tramway is created by superposition of pedestrian walkway and light rail
17:00:55  <Eddi|zuHause> pedestrian zone can only be travelled by rollerskate and segway vehicles?
17:01:16  <Eddi|zuHause> the "pizzabote" definitely needs to go there
17:01:28  <supermop_> those golf cart sized street sweepers too
17:01:46  <Samu> Extra running costs for trains' divisor
17:01:49  <Wolf01> To me the problem is when you want to make a roadtype without catenary and with catenary, you occupy 2 slots
17:01:50  <Eddi|zuHause> ("pizzabote" is some old eye-candy vehicle grf)
17:02:07  <supermop_> Wolf01yeah it's a pain
17:02:47  <Samu> supermop_: http://imgur.com/ALyXKXV what about the other line?
17:02:57  <Eddi|zuHause> Wolf01: uhm, sure, but whether you add a flag "with catenary" or you just extend the slots by 1 bit doesn't really matter
17:02:58  *** Snail has joined #openttd
17:02:58  <supermop_> to add a under-road conduit power takes a third type
17:02:58  <Wolf01> Also it makes really confusing when you place a non electric tramway over a trolleybus road
17:03:06  <supermop_> yes!
17:03:37  <Samu> "Extra running costs for trains' divisor" or "Divisor for extra running costs for trains" ugh... my english
17:03:40  <Eddi|zuHause> Wolf01: why is that confusing?
17:03:47  <supermop_> noticed that yesterday junction of tramway and elrd shouldn't draw the grand union catenary
17:03:49  <Wolf01> With the flag Eddi is talking about I tried to add catenary as infrastructure, so it could be used for both roadtypes at the same time
17:03:51  <supermop_> just a x
17:04:38  <supermop_> Wolf01 to be fair trams cannot use trolleybus wires and vis versa
17:04:43  <Samu> STR_CONFIG_SETTING_RUNNING_COSTS_TRAIN_EXTRA_DIVISOR            :Extra running costs for trains' divisor: {STRING2}
17:04:47  <supermop_> one in 1 conductor, other is 2
17:05:27  <Wolf01> Actually, you can't run electric tram in ELRD+RAIL
17:05:44  <supermop_> Wolf01yes that is correct to real life though
17:06:05  <Wolf01> And the same happen for ROAD+ELRL for trolleybus
17:06:20  <Wolf01> Simply the game doesn't support it
17:06:36  <supermop_> trolleybus cannot use single wire catenary
17:06:51  <supermop_> because cannot use rails for DC return
17:07:10  <Wolf01> No, I'm not talking about realism, road vehicle can't use tram catenary
17:07:21  <supermop_> which is realistic
17:07:45  <supermop_> that's kind of why I made unspooled, so bus and tram wires look different
17:07:46  <Wolf01> But you can have ELRD+ELRL
17:08:00  <Eddi|zuHause> Wolf01: that's a problem that doesn't need solving. everything is fine
17:08:00  <Wolf01> With ELRD taking precedence
17:08:03  <supermop_> that exists on some streets in seattle
17:08:21  <supermop_> it creates quite a visual mess
17:09:31  <Wolf01> Eddi, you can't tell without infotool if your electric tram can run in that tile
17:09:43  <Wolf01> Because it might be ELRD+RAIL
17:09:56  <supermop_> that's why I made visually distinct sprites
17:10:13  <supermop_> ELRD wire in unspooled has two wires
17:10:26  <Wolf01> ELRD+ELRL use ELRD catenary
17:10:36  <Wolf01> So you need to change tracks
17:10:37  <supermop_> ideally it should draw both
17:10:43  <Eddi|zuHause> supermop_: but even with different sprites you can't distinguish ELRD+RAIL and ELRD+ELRL
17:11:00  <Eddi|zuHause> supermop_: drawing both causes too many glitches/corner cases
17:11:07  <supermop_> Eddi|zuHause I was hoping game would draw both
17:11:55  <Eddi|zuHause> supermop_: besides the wires, you would draw two sets of poles
17:12:21  <supermop_> at least in my sprites the poles overlap
17:15:38  <supermop_> i'd rather have to remember or use ? tool than have electric trams running on bus wire tho
17:18:42  <Wolf01> It's not even possible to make eltrams to run on bus wire, so the question is closed, the open question is "wtf my eltram does not run there?"
17:20:12  <supermop_> other than drawing both wires, is there any solution?
17:20:28  <Wolf01> Actually, no
17:20:39  <Wolf01> Only the infotool
17:22:16  <Eddi|zuHause> man, for months now i've been meaning to make a backup and update my system, but i'm never actually doing it...
17:23:57  <supermop_> brb
17:24:26  *** glx has joined #openttd
17:24:26  *** ChanServ sets mode: +v glx
17:25:10  *** Montana has joined #openttd
17:25:50  <Alberth> eddi: tonight seems like a good evening for it
17:41:29  <Samu> describing functions takes so much of my time t.t
17:41:32  <Samu>  * @param single_part whether to return the cost of the current part or the whole
17:48:08  *** andythenorth has joined #openttd
17:48:14  <Wolf01> o/
17:48:19  <andythenorth> lo
17:49:08  <andythenorth> so an nml rebuild? o_O
17:49:28  <Wolf01> Andy, do you have any suggestion about last hour log?
17:50:45  * andythenorth will read
17:53:39  <andythenorth> coloured wires
17:53:53  <andythenorth> an overlay for the map showing valid routes
17:54:07  <andythenorth> a transparency mode that palette shifts all tiles of a specific route type
17:54:22  <Wolf01> Any feasible things?
17:54:26  <andythenorth> an additional ‘high visibility’ sprite in the newgrf spec that can be toggled on and off
17:54:31  <andythenorth> srsly
17:54:40  <Wolf01> Remove the log?
17:54:40  <andythenorth> I want that for industry cargo acceptance and production also
17:54:55  <andythenorth> toggleable info sprites
17:55:06  <andythenorth> like a metadata layer
17:55:29  <andythenorth> TTRS does something like that with house acceptance I think
17:55:52  <Wolf01> I just want to show stations catchement areas for production and acceptance instead :(
17:56:29  <Wolf01> And fix station walking catchement areas, just to create havok
17:58:04  <andythenorth> bus != tram, so yes, the powered-or-not is moot
17:58:12  <andythenorth> it’s just a visual question about catenary sprites
18:00:29  <Wolf01> ELRD+ELRL is weird, we could implement that you can't have both, so you can at least recognize it by poles... but what about crossings? If it's possible ELRL(tram)+ELRL(train) crossing it should be possible also for ELRD+ELRL
18:01:02  <andythenorth> colour the road
18:01:06  <andythenorth> yellow
18:01:19  <andythenorth> then it’s obvious
18:01:37  <Wolf01> Paint something like a reserved lane?
18:02:30  <Wolf01> https://gta4bustransit.files.wordpress.com/2011/04/brt-1st-2nd-aves-nyc-dot-mta-lg.png?w=640&h=346
18:02:39  <andythenorth> yup
18:03:02  <Wolf01> Which is not really reserved...
18:03:19  <Wolf01> TL;DR color-coded roads
18:03:51  <Wolf01> Must go, my people needs me
18:03:56  <Wolf01> BBL
18:09:15  <andythenorth> so checks eh? http://dev.openttdcoop.org/projects/firs/repository/entry/src/templates/checks.pypnml
18:09:48  * andythenorth wonders why L80-98 exist http://dev.openttdcoop.org/projects/firs/repository/entry/src/templates/checks.pypnml#L80
18:16:16  *** ZirconiumX has joined #openttd
18:21:31  <Alberth> otherwise lines 80-98 would be missing :p
18:23:20  *** santzee has joined #openttd
18:23:32  <andythenorth> good answer
18:23:57  <andythenorth> I was hoping I could make a dict of incompatible grfs and template them trivially
18:24:06  <andythenorth> but eh, there’s magic, so no
18:24:17  <Alberth> apparently checks if eg 'CaCa' grf will become active, and check for some parameter value
18:24:38  <santzee> can anyone tell me how to allow udp and tcp packets
18:24:58  <Alberth> you'd have to check the docs of that grf to see what that parameter does
18:25:06  <andythenorth> yup
18:25:11  <Alberth> likely it messes with something industry-ish
18:25:16  <andythenorth> I wonder why not just ban those grfs :P
18:25:29  <andythenorth> planetmaker might know?
18:25:55  <Alberth> perhaps they are harmless if that parameter is not set in the indicated way
18:26:05  <andythenorth> probably :)
18:26:10  <andythenorth>  (related) is it a makefile kind of day?
18:26:24  <Alberth> and some fans like to use that grf with firs
18:26:35  <Alberth> oh, it could be a makefile day
18:26:48  <Alberth> or rather, evening :)
18:26:51  <frosch123> what was again the command to make python3 determinsitic?
18:27:10  <Alberth> python3 --help doesn't say?
18:27:27  <frosch123> PYTHONHASHSEED
18:27:34  <andythenorth> http://stackoverflow.com/questions/27954892/deterministic-hashing-in-python-3
18:28:10  <Alberth> yeah, after typing the reply, I remembered it was a env var :)
18:28:49  <frosch123> the result of compile firs is indeterminstic
18:28:55  <frosch123> it seems to reorder translations or something
18:28:57  <andythenorth> ha
18:29:03  <andythenorth> Alberth was your idea to make a new generic makefile for devzone projects? o_O or just my projects? o_O
18:29:03  <frosch123> it thought we fixed that already
18:29:06  <Alberth> santzee: we can give you the port numbers, but how to configure your modem and firewall, no idea
18:29:36  <santzee> yes i know the portnumber 3979?
18:29:45  <frosch123> @ports
18:29:45  <DorpsGek> frosch123: OpenTTD uses TCP and UDP port 3979 for server <-> client communication, UDP port 3978 for masterserver (advertise) communication (outbound), and TCP port 3978 for content service, a.k.a. BaNaNaS (outbound)
18:29:46  <Alberth> it follows master language
18:30:15  <Alberth> so all translations use the same order of strings
18:32:02  <frosch123> https://paste.openttdcoop.org/pybhina4m <- it seems to reorder cases/genders/plurals
18:32:48  <andythenorth> which lang is that? o_O
18:33:00  <frosch123> many :)
18:33:04  <frosch123> i just picked one example
18:33:15  <andythenorth> ok
18:33:35  <frosch123> i also invoke nmlc directly, so it's not related to your python magic
18:33:41  <Alberth> I think they got sorted
18:34:20  <frosch123> andythenorth: btw: "nmlc info: DCxx strings: 233/2048" <- firs is again completely unfinished
18:34:21  <Alberth> oh, nml compiler rather than eints
18:34:43  <andythenorth> ha ha
18:34:55  <andythenorth> now I’ll have to keep going :P
18:35:03  <Alberth> andy, your makefile would be a good start I think
18:35:20  <andythenorth> I would suggest the Road Hog or Iron Horse one first
18:35:22  <frosch123> andythenorth: i think the idea of a "generic makefile" is silly
18:35:22  <Alberth> universal is so tricky due to all the weird stuff people do :p
18:35:26  <andythenorth> frosch123: +1
18:35:31  *** DDR has joined #openttd
18:35:33  <andythenorth> the FIRS makefile has baggage
18:35:45  <frosch123> if you want to make it work with everything, you make it that complicated that it works nowhere :p
18:35:46  <andythenorth> otoh, the FIRS one has an extra target for html_docs
18:36:08  <andythenorth> frosch123:  this is why I never tried to make the python stuff reusable by other people :P
18:36:11  <Alberth> frosch123: nah, it works for exactly your cases :p
18:36:18  <andythenorth> in principle I’ve made an object framework for grfs
18:36:21  <andythenorth> but eh, no
18:36:28  <frosch123> i got used to Makefiles being broken on most devzone projects, i always run hg purge before compilation
18:37:09  <andythenorth> hmm did I branch Road Hog for NRT?
18:37:11  <Alberth> right, some hogs or horse thus
18:37:16  <andythenorth> I think Horse
18:37:18  <andythenorth> simpler
18:37:20  <Alberth> ok
18:37:50  <Alberth> likely it's simpler than generating c++ from Python :p
18:38:00  <andythenorth> likely :)
18:38:05  <andythenorth> http://dev.openttdcoop.org/projects/iron-horse/repository/entry/Makefile
18:38:31  <andythenorth> whether to reduce the current Makefile, or start afresh?
18:39:03  <andythenorth> I only use [no target], ’clean’, ‘install’, and ‘html_docs’ (if it exists)
18:39:10  <Alberth> first update, and try to build the horses :)
18:39:14  <andythenorth> ok
18:40:19  <andythenorth> ‘roster=pony’ will make it faster
18:41:10  <Alberth> clearly, "make distclean; make"  doesn't work :p
18:41:40  <Alberth> target wasn't used much recently :)
18:41:47  *** santzee has quit IRC
18:42:33  <andythenorth> works for me o_O
18:43:01  <Alberth> iron horse has no DCxx strings at all, seems finished thus :p
18:43:08  <andythenorth> yup
18:43:30  <Alberth> 1542:5dda61867b1b   <-- that revision?
18:43:52  <Alberth> not that it matters much with makefiles
18:44:24  <andythenorth> yup 1542
18:44:44  <andythenorth> not happy if do ‘make clean’ first though
18:45:09  <Alberth> what targets does it need to support, eg from compile farm?
18:45:33  <Alberth> or just use default gnu targets?
18:45:45  <DorpsGek> Commit by translators :: r27765 trunk/src/lang/russian.txt (2017-03-04 19:45:36 +0100 )
18:45:45  <Alberth> iirc that's was you talked about last time
18:45:46  <DorpsGek> -Update from Eints:
18:45:47  <DorpsGek> russian: 4 changes by Lone_Wolf
18:45:48  <andythenorth> I would push a minimal set and see what breaks
18:45:50  *** FLHerne has joined #openttd
18:45:53  <andythenorth> jenkins will tell us / me
18:46:33  *** Montana has quit IRC
18:47:33  <andythenorth> seems that Makefile.config and Makefile.in could be folded together?
18:49:21  <Alberth> I had just decided to remove Makefile.config :)
18:49:39  <Alberth> I haven't opened Makefile.in yet
18:51:14  <Alberth> Interesting filenames do you use:  'SW9 .psd'     a space before the "."
18:54:28  <andythenorth> fat fingers
18:57:40  <frosch123> https://paste.openttdcoop.org/pt8sdmz22?/pt8sdmz22 <- seems to fix it
19:00:24  <Alberth> that looks right
19:11:25  <Alberth> do you have projects that use CPP ?
19:13:23  <andythenorth> yes
19:13:27  <andythenorth> FIRS
19:13:35  <andythenorth> IH, RH, Sam don’t
19:13:39  <supermop_> yo
19:14:06  <supermop_> fyi Andy, I have to keep deleting newer trunk hog to use nrt hog
19:14:33  <supermop_> maybe give it a different ID or something?
19:14:45  <andythenorth> hmm
19:15:08  <andythenorth> that could work, but is liable to mistakes when I release it
19:15:24  <andythenorth> probably will ship it with wrong ID :P
19:15:28  <supermop_> heh
19:16:20  <supermop_> I want Xs between ELRD and ELRL to use a separate X catenary instead of union
19:16:44  *** Snail has quit IRC
19:17:11  *** Snail has joined #openttd
19:17:41  *** Snail has joined #openttd
19:18:41  *** Snail has joined #openttd
19:19:07  *** Snail has quit IRC
19:19:27  *** Snail has joined #openttd
19:20:25  *** Snail has joined #openttd
19:21:05  <andythenorth> such Snail
19:21:13  *** Snail has joined #openttd
19:21:27  <Alberth> pretty quick, for one :)
19:21:31  *** Snail has quit IRC
19:21:51  *** Snail has joined #openttd
19:22:51  <Alberth> wasn't there some script to derive repo revision, branch, modified flag, etc?
19:23:11  <supermop_> http://imgur.com/a/Kqryo
19:23:27  <Alberth> don't think that's the script :p
19:23:51  <Alberth> spiders have invaded the cities!
19:24:06  <andythenorth> Alberth: some of it goes in custom_tags.txt
19:24:10  <andythenorth> directly from Makefile iirc
19:24:39  <Alberth> I know, but there is a load of shell crap in the makefile to decide these things
19:24:47  <Alberth> I'd like to move that out of the makefile
19:24:49  <supermop_> if there are no ELRD bits to east and west of junction, and no ELRL bits to north and south,
19:25:23  <supermop_> it would be nice for game to either use a special X sprite, or to just overlay the ELRL \ and the ELRD /
19:26:31  *** Montana has joined #openttd
19:28:04  <Alberth> you change the makefile to set a roster?
19:28:29  <Alberth> or do you use a parameter, like  make ROSTER=british
19:28:41  <supermop_> andy, any thoughts or sprites, speeds, or costs?
19:29:40  <frosch123> Alberth: other devzone projects moved to using the last-modified-date
19:29:48  <frosch123> instead of local hg revision
19:29:59  <Alberth> good point
19:31:12  <frosch123> https://dev.openttdcoop.org/projects/opengfx/repository/entry/Makefile#L198
19:32:26  <andythenorth> Alberth: roster is a parameter / option
19:32:31  <andythenorth> by default it builds all
19:32:45  <andythenorth> see Makefile.in and src/utils.py
19:33:12  <Alberth> yes, but how do you set it?
19:33:17  <Alberth> at the commandline?
19:33:17  <Samu> just posted v2! https://www.tt-forums.net/viewtopic.php?f=33&t=75982&p=1183448#p1183448
19:34:04  <Samu> hopefully my lines of code are fine with you
19:34:19  <andythenorth> Alberth: yes
19:34:19  <Samu> fine for you
19:34:22  <Samu> english
19:34:23  <andythenorth> make roster=pony
19:34:24  <andythenorth> or so
19:38:45  <Alberth> ok
19:41:12  *** supermop__ has joined #openttd
19:45:16  <Samu> Not downloaded yet - *insert sad face*
19:45:20  <Samu> oh well
19:46:07  <Samu> i'm excited that I finished it! But sad that no one likes it, heh...
19:46:29  *** supermop has quit IRC
19:52:02  <andythenorth> “Some will, some won’t, so what, next” :)
19:59:05  <Samu> meanwhile, I found a display bug for engine value
19:59:32  <Samu> if the engine is multiheaded, the value of the second engine is £0
19:59:44  <Samu> the first engine carries the entire value
20:00:25  <Samu> bug also present in 1.6.1
20:10:55  <supermop_> using surface pen to draw sleepers
20:19:11  *** synchris has quit IRC
20:20:08  *** ZirconiumX has quit IRC
20:25:28  *** Montana has quit IRC
20:35:56  *** Montana has joined #openttd
20:35:58  <Wolf01> Back
20:36:39  *** Stimrol has quit IRC
20:37:26  <Wolf01> supermop_, draw transparent wires?
20:37:53  <supermop_> how do you mean?
20:38:09  <Wolf01> Dunno :P
20:38:48  <Wolf01> Palette2Transparent just for wire part, always
20:40:13  <supermop_> is that the station roof thing?
20:40:27  <Wolf01> Might be
20:40:42  <supermop_> currently nrt only allows a front and back part
20:40:50  <supermop_> not a separate wire part
20:40:54  <Wolf01> Sure it would help with transparent
20:41:19  <supermop_> for rail, at least in stations, there is separation between pylons and wire
20:41:50  <supermop_> which would let one set wires to transparent while keeping poles solid
20:42:32  <supermop_> what's your thinking on nerfing dirt speed now?
20:42:50  <Wolf01> 30kmh max
20:42:51  <supermop_> or do you want to patch nrt to allow traction coefficients
20:43:35  <Wolf01> Eh, everybody should agree, it's not just my decision
20:43:44  <supermop_> new vehicle smoke effect of dust clouds for RVs travelling faster than some given speed on dirt
20:46:19  <andythenorth> I am -1 to traction coefficients
20:46:49  <andythenorth> my only rationale is ‘overkill’
20:46:51  <andythenorth> nothing else
20:49:47  <supermop_> andythenorth: my only rationale in favor is 'rally cars'
20:50:09  <Wolf01> Niche feature ;)
20:50:09  <andythenorth> HEQS crawlers
20:50:19  <andythenorth> I had this idea very very long time ago
20:50:26  <andythenorth> long enough ago to let go of it :)
20:50:29  <andythenorth> also ice roads
20:50:31  <andythenorth> same though
20:50:50  <Wolf01> Change coefficient with season
20:51:01  <Wolf01> Sticky roads in summer on tropic
20:51:41  <supermop_> brb need to grab late lunch and a drywall saw
20:52:38  <Wolf01> Do you need some sandpaper towels too?
20:53:09  <supermop_> plenty of sandpaper here actually
20:53:33  <supermop_> I have the tools of a 70 year old suburban man in this tiny apartment
20:53:56  <supermop_> I am actually surprised to find I am missing a drywall saw tbh
20:54:27  *** Alberth has left #openttd
20:54:43  <Wolf01> And a gimlet, do you have a gimlet?
21:11:34  *** goodger has quit IRC
21:13:10  *** goodger has joined #openttd
21:16:27  *** Montana has quit IRC
21:17:41  <andythenorth> such macro
21:22:07  <supermop_> Wolf01: no gin in the house at the moment
21:22:18  <Wolf01> :D
21:22:56  <supermop_> TE multiplier could be interesting for some things
21:23:10  <supermop_> cable hauled vs adhesion tramways?
21:23:49  <supermop_> I guess cable trams could just get huge HP and the track have huge maintenance
21:25:36  *** Supercheese has joined #openttd
21:28:12  <andythenorth> TE coefficient: 1
21:29:33  <Eddi|zuHause> can it be higher than 1?
21:29:33  <supermop_> hmm the cc stripes on my poles are still just blue
21:30:07  <andythenorth> does NRT support company colour?
21:30:10  <Eddi|zuHause> cc is not available for every sprite
21:30:15  <supermop_> :(
21:30:32  <Eddi|zuHause> maybe you should open a feature request
21:30:36  <supermop_> I assumed it would because railtypes use it for fences
21:30:49  <Eddi|zuHause> fences are different to poles
21:30:50  <supermop_> but I also may have forgot to set a flag
21:31:13  <supermop_> Eddi|zuHause: what is a fence but a bunch of short poles?
21:31:37  <Wolf01> A different sprite
21:31:38  <Wolf01> :P
21:39:24  <Eddi|zuHause> supermop_: some sprites are created more equal than others
21:39:54  <Eddi|zuHause> supermop_: the game is totally spritist
21:40:15  <supermop_> wood sleepers only visible on grey ballast, and concrete sleepers only show up on brown dirt
21:42:48  *** Progman has joined #openttd
21:47:52  *** gelignite has quit IRC
21:58:06  <frosch123> andythenorth: no cc currently
21:58:31  <andythenorth> no surprise :)
21:59:23  <frosch123> we can enable it, if we want to
21:59:52  <frosch123> but we haves mixed road owners
22:00:04  <frosch123> so it would only really work for the underlay
22:00:37  <frosch123> (road depot has cc ofc)
22:01:24  <Wolf01> I would focus on making the base stuff work well first, then we should discuss on flag features
22:01:30  <andythenorth> I don’t see much benefit to cc
22:01:40  <andythenorth> other than not getting asked about it again :P
22:04:10  *** Gja has quit IRC
22:06:15  *** Montana has joined #openttd
22:07:02  *** taco has joined #openttd
22:10:50  *** Progman_ has joined #openttd
22:15:06  *** Progman has quit IRC
22:15:16  *** Progman_ is now known as Progman
22:16:15  <Samu> https://www.tt-forums.net/download/file.php?id=197176
22:18:52  *** czaks has quit IRC
22:18:53  *** Supercheese has quit IRC
22:19:38  *** Snail has joined #openttd
22:21:16  <andythenorth> bye
22:21:18  *** andythenorth has quit IRC
22:24:57  <Samu> Wolf01: end result, can u spot the differences? http://imgur.com/Z7ml00B
22:29:35  <Wolf01> Yes, running costs
22:30:18  *** czaks has joined #openttd
22:30:42  <Wolf01> Also totally unrealistic (between ingame prices) and with a low impact on income...
22:31:13  <Samu> you can set divisor to 64 for ultra cheap wagons
22:31:51  <Samu> let me check what it becomes
22:32:06  <Wolf01> Even more useless, just disable it
22:32:19  <Samu> £26/yr per wagon
22:32:22  <Samu> CHEAP
22:32:43  <Wolf01> I would raise purchase costs for trains and wagons by factor 10
22:34:10  <Samu> or you can disable it alltogether
22:34:19  <Samu> for £0/yr -
22:34:47  <Wolf01> Still can't understand where £1722 comes from
22:35:01  <Samu> formula
22:35:05  <Wolf01> Also, is it specified in purchase list?
22:35:27  <Samu> nope, impossible
22:35:30  <Samu> final_cost = cost_at_this_point + cost_at_this_point * length_of_parts_without_cost / (2 * divisor);
22:35:45  <Wolf01> Bad feature is bad
22:35:50  <Samu> :(
22:36:46  <Samu> purchase window cannot guess where you're attaching it to, can't generate a cost there
22:37:07  <Samu> because "bad feature" yada yada
22:37:16  <Samu> but I like it
22:37:16  <Wolf01> Still can't understand why a wagon running cost must depend to what is attached to
22:37:33  <frosch123> Wolf01: openttd is a game with exponentially growing income
22:37:43  <frosch123> the more you build the more money you get
22:38:05  <frosch123> making stuff more expensive makes the start slower (= boring), while changing nothing in the long run
22:38:17  <Wolf01> Then let's make incremental purchase price for things, more you purchase more you pay ;)
22:38:48  <frosch123> if you look at other games, you can see the same thing
22:39:17  <frosch123> there are different types of resources, some you get exponentially and become pointless, while the game/tec progression is usually tied to linear growing things
22:39:42  <frosch123> example starcraft: the number of workers mostly affects mineral income, but hardly gas income
22:39:53  <Wolf01> There's one thing, only one, which you can introduce to make exponential money growth: taxes
22:40:22  <Samu> @calc 3445 + 3445 * 6.5 / (2 * 1)
22:40:22  <DorpsGek> Samu: 14641.25
22:40:33  <frosch123> example eu 4: when time progresses you make exponentially much money, but most stuff is affected by monarch points, which you can only buy in very limited amounts
22:40:35  <Samu> orly?
22:41:00  <Samu> @calc 3445 * 6.5
22:41:00  <DorpsGek> Samu: 22392.5
22:41:33  <frosch123> the problem with ottd is that it is so old-fashoned, that it only has a single resource
22:42:21  <Samu> @calc 3445 + 3445 * 4.5 / (2 * 1)
22:42:21  <DorpsGek> Samu: 11196.25
22:42:22  <frosch123> Wolf01: how about adding "inefficient administration"
22:42:35  <frosch123> when your company grows, all actions become more inefficient
22:42:45  <Samu> this calc dude sucks or i fail with this calc
22:43:06  <Wolf01> The problem with ottd is that you control every aspect of transport, from infrastructure to vehicles and even fund industries to produce the right cargo where is more comfortable to your network
22:43:34  <Samu> @calc 3445 + 3445 * 4.5 / (8 * 2 * 1)
22:43:34  <DorpsGek> Samu: 4413.90625
22:43:51  <Wolf01> Samu, learn to use the parenthesis
22:44:28  <Samu> @calc 3445 + (3445 * 4.5) / (8 * 2 * 1)
22:44:28  <DorpsGek> Samu: 4413.90625
22:44:31  <Samu> meh
22:44:35  <Wolf01> Also "* 1"... you can leave this out as it can't affect the result
22:45:10  <Samu> it's funny that I can't fool proof my own formula now
22:46:12  <Samu> oh right, those unmentioned values t.t
22:47:08  <Samu> divisor = VEHICLE_LENGTH * 2 * _settings_game.vehicle.train_extra_runcost_divisor;
22:47:17  <Samu> VEHICLE_LENGTH is 8
22:48:51  *** Supercheese has joined #openttd
22:52:05  <Samu> @calc 3445 * 0.5 / (8 * 2 * 1)
22:52:06  <DorpsGek> Samu: 107.65625
22:52:07  <Wolf01> Btw frosch123, you won't solve the problem of money with running costs based on train length, as trains won't extend with time, it becomes just another fixed cost which could be easily calculated from wagon purchase price * factor
22:52:57  <Samu> @calc 3445 * (8 * 2 * 0.5)  / (8 * 2 * 1)
22:52:57  <DorpsGek> Samu: 1722.5
22:53:01  <Samu> ah finally!
22:53:04  <Samu> there
22:53:08  <Samu> 1722.5 per wagon
22:53:17  <Wolf01> And in this way, one doesn't need blackmagic formulae
22:54:25  <Samu> @calc 3445 * (8 * 2 * 0.5)  / (8 * 2 * 64)
22:54:25  <DorpsGek> Samu: 26.9140625
22:54:51  <Samu> yeah, the £26/yr per wagon i mentioned earlier
22:56:56  <Samu> I gave up trying to balance trains by the running cost
22:57:07  <Samu> I only wanted to get this feature done
22:58:20  <frosch123> why would i want to make running cost based on train length
22:58:36  <frosch123> though i think some r-based newgrf add running cost for food vans and stuff
22:59:04  <frosch123> both refridgerated vans and dinner vans
22:59:19  <Samu> r-based? what is r-based?
23:00:12  <Wolf01> "R" stands for Real
23:03:02  *** sla_ro|master has quit IRC
23:07:33  <Samu> openttd has inflation
23:07:47  <Samu> but no one really likes that
23:07:54  <Samu> not multiplayer friendly
23:08:11  <Samu> unless everyone starts exactly at the same time
23:08:13  <Wolf01> Inflation is only regarding prices and costs, it lacks taxes based on bank balance
23:08:19  <Wolf01> Or company value
23:08:58  <Samu> there's also infrastructure maintenance costs
23:09:00  <Wolf01> And even local authority rating imo
23:09:15  <Wolf01> Infrastructure maintenance is like running cost
23:09:32  <frosch123> not quite, infrastructure cost is quadratic
23:09:57  <frosch123> though it mostly punishes bad constructons
23:10:09  <frosch123> with too many signals, or generally too much track for too little vehicles
23:10:31  <Wolf01> Punishes eyecandy
23:10:38  <frosch123> or that :p
23:11:05  <frosch123> the most silly feature is airport noise though
23:11:13  <Wolf01> When you put >30% taxes, you will see how people will stop making money
23:11:23  <Wolf01> And blame government
23:11:33  <frosch123> i believe the original goal was to allow more than 2 airports per city, but usualy you ar enot allowed one
23:11:42  <Samu> inflation + infrastructure maintenance + freigth weight multiplier + forbid 90 degrees + steepness
23:12:03  <ST2> until someone create OpenTTD offshores and later similar to Panama papers appears xD
23:12:14  <Wolf01> Samu, practically my config
23:12:17  <Samu> and now + extra running costs
23:12:36  <Samu> + cargo dist too
23:12:36  <Wolf01> And I still repay the loan with 12 trucks in 6 years
23:12:50  *** maciozo has quit IRC
23:13:29  <Samu> + breakdowns
23:13:31  <Wolf01> What then, nerf trucks? You nerfed trains because too much superior to trucks, then now trucks are godly
23:14:16  <Dackus> Wolf01: Where do you see that?
23:14:46  <Wolf01> ?
23:14:49  <Samu> trucks got nerfed in one of my income formula adjustment patch, forgot exactly what
23:14:58  <Dackus> When you put >30% taxes, you will see how people will stop  making money
23:15:03  *** OsteHovel has quit IRC
23:15:05  <Dackus> The thing with infrastructure costs would be much better if the actaul costs per unit of infra were visible somewhere.
23:15:29  <Samu> patch was aiming to nerf horizontal / vertical income formula
23:15:40  <Wolf01> I don't think that a detailed costs panel will affect something
23:15:42  <Samu> an universal nerf
23:16:07  <Samu> aircraft got the major nerf in that patch
23:16:42  *** OsteHovel has joined #openttd
23:16:47  <Wolf01> Taxes based on company value will evaporate a consistent slice of your earnings
23:18:06  <Dackus> Wolf01: The infrastructure units are already listed, adding the cost would be trivial and underline their importance.
23:18:23  <Wolf01> But it won't change the profit
23:18:31  <Wolf01> It's just a UI tweak
23:18:36  <Dackus> It will. If the player reacts to the information.
23:18:41  <Dackus> Currently you don't know how much a tile of bridge costs vs a tile of staight track.
23:19:08  <Dackus> You would make more single-track lines and possibly less useless lines etc.
23:19:24  <Wolf01> So one will start to carpet the map with useless infrastructure just to reduce the balance by paying more maintenance?
23:19:37  <Dackus> Also, with some scripts, airports are _really_ expensive to run. It would be good if this was more clearly visible.
23:19:52  <Dackus> Huh, didn't understand you now.
23:19:56  <Dackus> Could you rephrase?
23:19:58  *** Dackus is now known as Dakkus
23:20:40  <Wolf01> I wouln't build recklessly just to keep low profit
23:20:59  <Wolf01> It's not the objective of running a company
23:21:28  <Dakkus> ?!
23:21:33  <Wolf01> In fact, a company should reduce costs, and profit should be reduced by external costs
23:21:38  <Dakkus> Why would anybody try to keep low profit?
23:22:09  <Dakkus> I've never even thought somebody might want to do that. And I still can see no reason why they would.,
23:22:40  <Dakkus> I am a bit of a question mark at the moment.
23:22:45  <Wolf01> Then I don't understand you, the discussion is to limit company huge profits in endgame
23:23:12  <Dakkus> Ah, ok, didn't know that.
23:23:21  <Dakkus> Only saw so and so many lines on my screen.
23:23:32  <Wolf01> Eh, just arrive at the middle of the talk
23:23:45  <Dakkus> Indeed. The IRC thing.
23:24:38  *** HerzogDeXtEr has joined #openttd
23:24:41  <Dakkus> My way of playing is such that huge profits aren't really relevant. 4k*4k map, very few cities, very few industry, xUSSR set, daylength patch.
23:24:57  <Dakkus> (well, actually the whole Reddit patch, not only the daylength)
23:25:16  <Dakkus> That way, it's about building an efficient network that is able to serve all the passengers.
23:25:46  <Eddi|zuHause> on a 4kx4k map, how do you have ever NOT huge profit?
23:25:53  <Dakkus> A rather small frog-up will already anger almost all of my passengers, causing a lot of compensations being paid for late arrival.
23:26:33  <Dakkus> And then I end up paying for the transportation (besides the transportation costs, I'm also handing money to my passengers...)
23:27:19  <Dakkus> Creating a seriously efficient system of feeder lines to train stations, different train lines, some regional and some long distance and timetabling eveything perfectly. Thaẗ́s fun :)
23:27:23  <Dakkus> That's*
23:27:34  <Samu> Wolf01: https://www.tt-forums.net/viewtopic.php?f=33&t=74253&start=20 the patch where i nerfed road vehicles, keks
23:28:53  <Dakkus> Hmm, time to go sleepingg... Already half past one and we were trying to get to sleep at latest at 22.
23:30:26  *** HerzogDeXtEr1 has quit IRC
23:39:21  <Eddi|zuHause> that never works :p
23:47:27  <Wolf01> https://www.youtube.com/watch?v=FmbmNp1RDCE this should work
23:52:46  *** frosch123 has quit IRC

Powered by YARRSTE version: svn-trunk