Times are UTC Toggle Colours
00:20:04 *** valhallasw [~valhallas@193.52.24.37] has quit [Quit: leaving] 00:20:05 <michi_cc> Rhamphoryncus: If you (re)calculate something on load take very good care that the result will deterministically match what the server has at the same time. If not, you're on direct route to a desyncer. 00:23:21 *** MJP [~TdlQ@hq.z77.fr] has quit [Ping timeout: 480 seconds] 00:23:53 *** JVassie [~James@2.30.129.36] has quit [Ping timeout: 480 seconds] 00:28:05 *** _11Runner_ [~Daniel@c-24-20-61-147.hsd1.or.comcast.net] has joined #openttd 00:32:40 <Rhamphoryncus> Yeah, I was thinking about that 00:34:49 <michi_cc> You probably don't do that, but as a general note: *Never* sort by memory address. 00:37:15 <planetmaker> by square of it? :-P 00:38:27 *** Progman [~progman@p57A1A27D.dip.t-dialin.net] has quit [Remote host closed the connection] 00:38:27 *** Neon [~Neon@dslb-094-219-017-244.pools.arcor-ip.net] has quit [Quit: Python is way too complicated... I prefer doing it quickly in C.] 00:52:44 *** sla_ro|master [~slaco@95.76.26.172] has quit [Quit: ttw.sla-company.net - free first person shooter based of c&c 3] 00:55:36 *** Biolunar [~mahdi@blfd-5d820b8b.pool.mediaWays.net] has quit [Quit: All your IRC are belong to us] 01:02:59 *** kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has quit [Ping timeout: 480 seconds] 01:08:34 *** Pixa [~pixa@79-68-101-195.dynamic.dsl.as9105.com] has quit [Read error: Connection reset by peer] 01:09:28 *** roboboy [~robotboy@CPE-58-173-43-55.nxzp1.ken.bigpond.net.au] has joined #openttd 01:24:23 *** Snail_ [~jacopocol@CPE78cd8e5ccf20-CM78cd8e5ccf1d.cpe.net.cable.rogers.com] has joined #openttd 01:28:43 *** Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has quit [Remote host closed the connection] 01:30:41 *** kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has joined #openttd 01:33:49 *** cmircea [~cmircea@86.124.218.99] has quit [Ping timeout: 480 seconds] 01:45:57 <Wolf01> 'night 01:46:01 *** Wolf01 [~wolf01@host101-141-dynamic.31-79-r.retail.telecomitalia.it] has quit [Quit: Once again the world is quick to bury me.] 02:04:36 *** roboboy [~robotboy@CPE-58-173-43-55.nxzp1.ken.bigpond.net.au] has quit [Ping timeout: 480 seconds] 02:14:20 *** roboboy [~robotboy@CPE-58-173-43-55.nxzp1.ken.bigpond.net.au] has joined #openttd 02:20:45 *** tensai_cirno [~cirno@77.232.15.216] has quit [Quit: Leaving] 02:40:53 *** roboboy [~robotboy@CPE-58-173-43-55.nxzp1.ken.bigpond.net.au] has quit [Read error: Connection reset by peer] 02:47:12 *** kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has quit [Read error: Connection reset by peer] 02:47:36 *** kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has joined #openttd 02:54:19 *** peteris [~peteris@78.84.97.170] has quit [Quit: Ex-Chat] 03:07:23 *** kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has quit [Read error: Operation timed out] 03:39:51 *** vodka [~paper@212.Red-83-55-54.dynamicIP.rima-tde.net] has quit [Quit: Leaving] 04:06:39 <Rhamphoryncus> michi_cc: My primary thing would be schedule offsets, but I was considering falling back to unitnumber if the offset was somehow the same. However, that should ONLY be for importing old save games; active games should always maintain it perfectly sorted. 04:18:20 *** mahmoud [~KEM@ALyon-158-1-113-57.w90-29.abo.wanadoo.fr] has quit [Ping timeout: 480 seconds] 04:19:23 *** roboboy [~robotboy@CPE-58-173-43-55.nxzp1.ken.bigpond.net.au] has joined #openttd 04:26:02 *** glx [glx@2a01:e35:2f59:c7c0:80eb:e191:ffee:b1a3] has quit [Quit: bye] 04:38:14 *** DDR_ [~chatzilla@142.179.78.88] has joined #openttd 04:38:28 *** DDR [~chatzilla@142.179.78.88] has quit [Ping timeout: 480 seconds] 04:38:40 *** DDR_ is now known as DDR 04:44:13 *** Snail_ [~jacopocol@CPE78cd8e5ccf20-CM78cd8e5ccf1d.cpe.net.cable.rogers.com] has quit [Read error: Connection reset by peer] 05:20:51 *** roboboy [~robotboy@CPE-58-173-43-55.nxzp1.ken.bigpond.net.au] has quit [Ping timeout: 480 seconds] 05:28:24 *** Rhamphoryncus [~rhamph@d161-184-227-133.abhsia.telus.net] has quit [Quit: Rhamphoryncus] 05:46:48 *** Brianetta [~brian@188-220-91-30.zone11.bethere.co.uk] has quit [Quit: TschÃŒÃ] 06:11:34 *** Xrufuian [~link@pool-98-119-100-3.lsanca.btas.verizon.net] has joined #openttd 06:20:18 *** kkb110 [~kkb110@cpe-69-203-124-125.nyc.res.rr.com] has joined #openttd 06:44:48 *** Eddi|zuHause [~johekr@p54B7460B.dip.t-dialin.net] has quit [] 06:45:07 *** Eddi|zuHause [~johekr@p54B73AC0.dip.t-dialin.net] has joined #openttd 08:05:43 *** andythenorth [~Andy@host86-169-180-203.range86-169.btcentralplus.com] has joined #openttd 08:06:41 <andythenorth> morning 08:06:50 *** cmircea [~cmircea@86.124.218.99] has joined #openttd 08:08:07 <Rubidium> morning andy 08:13:51 <Eddi|zuHause> more ning 08:14:46 *** andythenorth [~Andy@host86-169-180-203.range86-169.btcentralplus.com] has quit [Ping timeout: 480 seconds] 08:20:57 *** andythenorth [~Andy@host86-169-180-203.range86-169.btcentralplus.com] has joined #openttd 08:27:40 *** sla_ro|master [~slaco@95.76.26.172] has joined #openttd 08:44:27 <Terkhen> good morning 08:45:20 <andythenorth> hola 08:48:00 *** |Jeroen| [~jeroen@d5152B25B.access.telenet.be] has joined #openttd 08:53:43 *** _11Runner_ [~Daniel@c-24-20-61-147.hsd1.or.comcast.net] has left #openttd [] 09:02:21 * andythenorth adventures again in the makefil 09:02:23 <andythenorth> e 09:03:32 <andythenorth> with limited success :( 09:05:34 <peter1138> hello 09:05:42 <Terkhen> hi peter1138 09:12:22 <andythenorth> moin 09:14:15 *** tokai|noir [~tokai@port-92-195-22-29.dynamic.qsc.de] has joined #openttd 09:14:18 *** mode/#openttd [+v tokai|noir] by ChanServ 09:16:16 *** Elukka [Elukka@78-27-90-104.bb.dnainternet.fi] has joined #openttd 09:20:01 *** tokai|mdlx [~tokai@port-92-195-9-150.dynamic.qsc.de] has quit [Ping timeout: 480 seconds] 09:20:24 *** Phoenix_the_II [~ralph@home.deboom.biz] has joined #openttd 09:22:49 *** DDR [~chatzilla@142.179.78.88] has quit [Read error: Operation timed out] 09:24:16 <planetmaker> moin 09:24:56 <andythenorth> bonjour 09:25:06 <planetmaker> andythenorth: makefile principle is easy: 09:25:27 <planetmaker> target_file: files_it_needs_present_to_be_build 09:25:35 <planetmaker> rules_to_create_file 09:26:03 *** snack2 [~nn@dsl-prvbrasgw1-fe05dc00-37.dhcp.inet.fi] has joined #openttd 09:26:04 <andythenorth> k 09:26:33 <andythenorth> ah 09:26:39 <andythenorth> does the dep check rely on hg? 09:26:48 <andythenorth> i.e. a file hg has forgotten won't be seen by dep check 09:27:11 <andythenorth> or the path rather than file 09:27:51 <Ammler> no, it works also without, but a file not in the repo will be missing on remote :-) 09:28:26 <andythenorth> I have been moving files in the BANDIT repo so it makes more sense 09:28:44 <andythenorth> but make is now failing 09:28:50 <andythenorth> I have the rule bandit.nml: sprites/nml/bandit.pnml 09:29:01 <andythenorth> and sprites/nml/bandit.pnml is present 09:29:07 <andythenorth> but bandit.nml is not built 09:29:48 <andythenorth> although....maybe now is the time to eliminate the .pnml step anyway 09:30:19 * andythenorth will hack a bit 09:31:26 <andythenorth> ho 09:31:28 <andythenorth> that might work 09:32:28 <Eddi|zuHause> the easiest way to test whether such a rule is actually evaulated is "touch sprites/nml/bandit.pnml" 09:34:04 <andythenorth> seems I've fixed it 09:34:10 <andythenorth> the structure is a bit more logical I hope 09:34:17 <andythenorth> [for repo filesystem] 09:35:32 <Eddi|zuHause> i'm sure there are plenty of inconsistencies left :) 09:35:42 <andythenorth> there are 09:35:45 * andythenorth has....questions :P 09:36:45 *** DDR [~chatzilla@142.179.78.88] has joined #openttd 09:36:56 <Ammler> also moving around is not supported by Redmine, so do it as less as possible :-) 09:37:07 <andythenorth> ok 09:37:10 <andythenorth> too late :o 09:37:21 <andythenorth> but I will try not to 09:37:28 <andythenorth> it's often tmwftlb 09:37:30 <Ammler> well, it's ok 09:37:46 <Ammler> you just will lose history view there 09:38:36 <andythenorth> I have a few inconsistencies to figure out 09:38:44 <andythenorth> filename extensions is one 09:39:02 *** Neon [~Neon@dslb-094-219-017-244.pools.arcor-ip.net] has joined #openttd 09:40:09 <andythenorth> what's a good extension for a file that contains nml with templating markup? 09:40:12 <andythenorth> .tnml? 09:40:44 <Eddi|zuHause> sounds about right 09:41:25 <Ammler> also you might consider replacing the targets with wildcards: %.nml: %.pnml 09:41:28 <andythenorth> the convention for the template module I use is .pt (page template), but it's not enforced 09:41:28 <Ammler> etc... 09:41:50 <andythenorth> Ammler: so they are decoupled from the extension? 09:42:21 <Ammler> from the grf name 09:43:29 <andythenorth> ah 09:44:25 <Ammler> the future goal is move the content of Makefile.in to the makefile framework, right? 09:44:37 <andythenorth> I'm not sure :) 09:44:43 <andythenorth> I hadn't thought that far ahead 09:44:56 <andythenorth> it's kind of not my decision either ;) 09:45:29 <Ammler> well, if you prepare a nice patch, planetmaker would sure welcome it, I guess 09:46:31 <Ammler> at least the parts you share with cets 09:46:39 <planetmaker> I could add a variant w/o gcc indeed 09:47:20 <andythenorth> so makefile.in is this: http://paste.openttdcoop.org/show/1032/ 09:47:27 <andythenorth> what would need to be generic? 09:47:35 <andythenorth> - build script name 09:47:51 <andythenorth> - config data file name 09:48:21 <Eddi|zuHause> maybe take the prepocessing part out of Makefile.nml, and make it a Makefile.cpp 09:48:24 <planetmaker> but renaming the main file to tnml IMHO is stupid 09:48:29 <Eddi|zuHause> then you could add a Makefile.python 09:48:41 <Eddi|zuHause> and it would be arbitrarily combinable by the config 09:48:42 <planetmaker> it's not a template 09:48:47 <andythenorth> planetmaker: I'm open to suggestions 09:48:51 <planetmaker> it's still a file which needs pre-processing. Thus pnml 09:49:06 <planetmaker> template is something which is being re-used 09:49:11 <planetmaker> that is not 09:49:24 <andythenorth> different semantics I guess 09:49:31 <andythenorth> for the templating module, it's a template 09:49:43 <planetmaker> basically I think your whole last commit there was... wrong by my definition of what's a template 09:49:49 <andythenorth> it's called by PageTemplateLoader class 09:50:03 <andythenorth> I'm happy to agree a convention 09:50:15 <andythenorth> I don't really have strong opinions on this stuff, just whatever makes sense to other people 09:50:15 <planetmaker> pnml :-P 09:50:22 <andythenorth> processed nml? 09:50:31 <planetmaker> nml to-be- pre-processed 09:50:43 <andythenorth> using [pre-processor of choice] 09:50:49 <planetmaker> thus everything is a pnml. 09:50:53 <andythenorth> ok 09:50:57 <andythenorth> I'll just flip them 09:51:08 <andythenorth> anybody else rabidly disagree with planetmaker ? 09:51:10 <planetmaker> Except those parts which are reused several times in the coding of individual vehicles 09:51:10 <Eddi|zuHause> i do think it's sensible to keep extensions for cpp-processed and python-processed nml separate 09:51:13 <andythenorth> before I play commit tennis? 09:51:18 <andythenorth> nmlt? 09:51:39 <Eddi|zuHause> pynml? 09:51:54 <andythenorth> I considered cnml 09:51:59 <andythenorth> for chameleon-processed nml 09:52:00 <planetmaker> cnml?! 09:52:04 <andythenorth> but that's specific to my templater 09:52:13 <andythenorth> "other python templaters are available" 09:52:15 <Ammler> shouldn't it be possible to use both in one project? 09:52:20 <andythenorth> it is 09:53:08 <Eddi|zuHause> this is one of those questions where you shouldn't just make your mind up in 2 minutes and commit it 09:53:25 <andythenorth> I won't 09:53:33 <andythenorth> second time around :P 09:53:56 <Ammler> how do you create target line, if you the source depends on different preprocessor? 09:54:41 <andythenorth> Ammler: not sure 09:54:52 *** Phoenix_the_II [~ralph@home.deboom.biz] has quit [Ping timeout: 480 seconds] 09:54:59 <andythenorth> the pipeline I had was python build script -> cpp -> nml 09:55:02 <andythenorth> it worked 09:55:09 <andythenorth> I've cut the cpp step afaict 09:55:22 <Ammler> ah 09:55:33 <Ammler> so you just run a file through both 09:55:42 <andythenorth> yup 09:55:42 <andythenorth> same as CETS is doing 09:55:50 <planetmaker> well. At least tnml is for source code templates which are re-used 09:55:56 <andythenorth> I've eliminated all the cpp now though 09:56:30 <planetmaker> a CTT or the main file never are re-used in a project, they're one-time code snippets 09:57:01 *** kkb110 [~kkb110@cpe-69-203-124-125.nyc.res.rr.com] has quit [Ping timeout: 480 seconds] 09:57:27 <Ammler> so it isn't possible to setup makefile rules depending on source available, e.g. I need %.nml and have either %.cnml or %pnml which need either python or cpp? 09:57:50 <andythenorth> planetmaker: seems you'd like the semantics to refer to how file is used, rather than what module uses the file? 09:57:58 <andythenorth> which is fine, just want to be sure 09:58:02 <planetmaker> that's not possible. You'd need to add a configure step. Or individual rules, Ammler 09:58:12 <planetmaker> andythenorth: of course 09:58:16 <andythenorth> ok 09:58:18 <andythenorth> hmm 09:58:46 <planetmaker> .cpp is also not about what's in it. Not about the module using it 09:58:51 <planetmaker> it's about the language it contains 09:58:59 <andythenorth> what about the case where I have a template, but only re-use it once? :o 09:59:12 <planetmaker> then it's silly to use a template tbh 09:59:22 <planetmaker> it's over-engineered then 09:59:42 <andythenorth> could be 09:59:44 <peter1138> if you re-use it once, then you've used it twice 10:00:14 <andythenorth> I wonder if it's confusing though 10:00:15 <planetmaker> well, yes :-) For two usages it makes sense :-) 10:01:14 *** MJP [~TdlQ@hq.z77.fr] has joined #openttd 10:01:31 <andythenorth> authors using python will be calling Template() class or PageTemplateLoader() or whatever 10:01:31 <andythenorth> even to setup things which are singletons 10:01:31 <andythenorth> I'll leave it as tnml with the agreement to change it when we have agreement 10:02:48 *** sla_ro|master [~slaco@95.76.26.172] has quit [Quit: ttw.sla-company.net - free first person shooter based of c&c 3] 10:03:02 <planetmaker> ach, whatever 10:05:14 <Rubidium> andythenorth: make it ntl 10:05:34 <Rubidium> nml template language, or rather newgrf meta language template language ;) 10:06:10 <Ammler> andythenorth: pnml is not because it needs cpp, it is because it needs preprocessing, same as your tnml needs 10:07:19 <andythenorth> mntl 10:07:19 <andythenorth> meta (blah) 10:07:19 <andythenorth> sure 10:07:19 <andythenorth> I'm only not changing it right now because of what Eddi reminded me - don't decided in 2 mins then commit in haste 10:07:21 <Ammler> I don't think, it is a good idea to invent new names just for good readability 10:07:33 <andythenorth> I'd be fine with .pnml as well 10:07:40 <planetmaker> tnml is really unfortunate. Functunally it's the same as the pnml in the other projects. And additionally it has already a meaning in the other projects different from this tnml 10:08:03 <planetmaker> and... you already went for the hasty renaming 10:08:23 <planetmaker> so the damage is done and now festers 10:08:41 <Ammler> we wait for hg 2.1, where you can push such things as draft :-p 10:08:50 <planetmaker> :-) 10:09:24 *** Xrufuian [~link@pool-98-119-100-3.lsanca.btas.verizon.net] has quit [Quit: Good morning.] 10:09:28 * andythenorth ponders :P 10:09:31 <andythenorth> .ptnml 10:09:43 <andythenorth> as the templater by convention uses .pt :P 10:09:47 * andythenorth is not serious 10:10:04 <Ammler> but I fear redmine will not be able to handle hg phases 10:10:11 <Eddi|zuHause> permutation(l,m,n,p,t) 10:10:25 <planetmaker> you use python for pre-processing. then eddi's suggestion to use pynml is a quite good one 10:10:49 <andythenorth> I kind of like it too 10:11:04 <andythenorth> but the point was made that .pnml is not specific to cpp? 10:11:55 <Eddi|zuHause> that's kind of an unfounded argument 10:12:14 <Eddi|zuHause> it was only used for cpp in the past 10:12:24 <Eddi|zuHause> so it was never defined 10:12:51 <Eddi|zuHause> so now it's exactly the right time to define it 10:13:01 <Ammler> Eddi|zuHause: the method you use to preprocess should not define the source 10:13:34 <Eddi|zuHause> yes, that's the entire point of extensions 10:13:41 <Eddi|zuHause> specify the program it should be used with 10:13:59 <Ammler> but makefile can't handle it anyway 10:14:25 <andythenorth> I don't have text files called .letter .angry_note_to_wife .tax_evasion_plan 10:15:19 <andythenorth> maybe I should 10:15:28 <Eddi|zuHause> but you have xml files called .odf 10:15:38 <Eddi|zuHause> and RIFF files called .avi 10:15:56 <Rubidium> isn't .odf a zip? 10:16:02 <andythenorth> and mac folders called .app 10:16:06 <Eddi|zuHause> yes, a zipped xml 10:16:19 <andythenorth> is this bikeshedding? :D 10:16:26 <SpComb> yellow 10:16:35 <Rubidium> vcxproj is a xml as well ;) 10:16:43 <andythenorth> what should the precedence order be for .tnml and .pnml? 10:16:45 <Rubidium> on the other hand, it's a text file too 10:17:14 <andythenorth> all .tnml files are processed. but not all .pnml files are templates used more than once 10:17:20 <Eddi|zuHause> extensions are used to let meta-tools like filemanagers or makefiles make assumptions about the content without looking at the content 10:18:01 <planetmaker> andythenorth: pnml does NOT indicate template 10:18:22 <Eddi|zuHause> i don't use tnml in CETS 10:18:31 <planetmaker> it indicates need for pre-processing 10:18:36 <Eddi|zuHause> it's all just pnml to me 10:18:36 <planetmaker> and only that 10:20:12 <planetmaker> and my idea behind tnml was that those are files which are included multiple times 10:21:09 <planetmaker> and yes, again as eddi says: extensions are meant to give one-glance idea of what's inside 10:21:09 *** TGYoshi [~TGYoshi@86.81.146.146] has joined #openttd 10:21:35 <planetmaker> in terms of file type / language contained 10:22:57 <andythenorth> so repeat_inclusion > processing? 10:23:08 <andythenorth> i.e. a pnml file is a tnml file if used > once? 10:24:06 <planetmaker> kinda 10:24:21 <andythenorth> it made total sense with cpp 10:24:27 <andythenorth> there were no problems with the convention 10:24:29 <Rubidium> hahaha... in some town somewhere in Belgium the preschools apparantly sent a letter to everyone "of the right birth year" to start preschool, so everyone whom's birth year ended in 09 got the letter 10:24:31 <andythenorth> it was obvious 10:24:47 <planetmaker> haha @ Rubidium :-) 10:24:54 <planetmaker> I can imagine the result :-P 10:25:04 <Rubidium> including a 102 year old guy ;) 10:25:23 <Rubidium> I fear he's not going to finish his second round of education 10:25:28 <planetmaker> :-P 10:25:53 <planetmaker> also in the sports classes he might not be up to some challanges 10:26:34 <planetmaker> he might also get marks deducted for "bad" handwriting ;-) 10:26:56 <andythenorth> planetmaker: it seems that to avoid bikeshedding this, I should just follow the convention established 10:27:02 <andythenorth> .pnml and .tnml 10:28:01 <planetmaker> I don't really mind which you follow. But if you use another, it's bad to use the same extensions with different meaning 10:28:15 <Eddi|zuHause> Rubidium: these y2k bugs never die out 10:28:30 <andythenorth> planetmaker: agreed on extension collisions 10:28:58 <andythenorth> so either .tnml and .pnml, or .pynml 10:28:59 <Eddi|zuHause> a few years ago i think it was in finland, where a 106 year old got the notification for school-enrollment 10:29:05 <andythenorth> I'll decide later :P 10:29:12 <andythenorth> classic decision by committee :P 10:30:52 * andythenorth just thought of an evil practical joke 10:31:08 <andythenorth> swap someone's smiley set to invert :( and :) 10:31:13 <andythenorth> assuming they use graphic smileys 10:31:37 <planetmaker> so you changed the files in a split second to clash with "standard" and decide later whether to use something sane? :-P 10:31:41 <andythenorth> yes 10:31:48 <planetmaker> great 10:31:48 <andythenorth> standard andythenorth haste :P 10:32:00 <andythenorth> no point repeating the mistake twice 10:32:24 <planetmaker> yeah. Let it rest, forget and build on... a bad decision :-P 10:32:33 *** Alberth [~hat3@a82-95-164-127.adsl.xs4all.nl] has joined #openttd 10:32:36 *** mode/#openttd [+o Alberth] by ChanServ 10:32:56 <andythenorth> planetmaker last time I asked the question about extension you weren't here 10:33:09 <planetmaker> omg 10:33:11 <andythenorth> I was told 'stop asking dumb questions, just decide something and write code' effectively 10:33:31 <Alberth> hi hi 10:33:37 <planetmaker> hi Alberth 10:33:59 <andythenorth> advice varies by person giving it :D 10:34:23 <planetmaker> the question in the first place is: why does it need a change at all? 10:34:28 <planetmaker> And that wasn't IMHO asked at all 10:34:48 <planetmaker> but your game, your call 10:35:17 <andythenorth> why does the extension need a change? 10:35:36 <andythenorth> only that I had files in my repo that started life as cpp and migrated to python 10:35:45 <andythenorth> and the extension use had no consistency 10:35:54 <andythenorth> it's just cleanup 10:37:41 <planetmaker> "cleanup"? Interesting definition 10:38:28 <andythenorth> hmm 10:38:33 <andythenorth> we seem to be at cross purposes 10:38:44 <andythenorth> I need to use correct extensions according to a convention 10:38:47 <andythenorth> they were wrong 10:38:51 <andythenorth> I needed to change them 10:38:58 <andythenorth> my first attempt was...hasty 10:39:25 <Alberth> first one always is ;) 10:39:55 <andythenorth> the makefile project convention of 'template' suffers an unfortunate naming collision with python templates 10:39:57 <Alberth> it's more 'an exploration of possibilities', I think, in general :) 10:40:00 <andythenorth> which confused me a bit 10:40:20 <andythenorth> we now have two entities in play, with the same name 10:40:35 <andythenorth> python template modeules/classes, which load template files 10:40:46 <andythenorth> and templates, which are template files used more than once 10:41:12 <andythenorth> I'm sorry if the decision was wrong or annoying 10:41:19 <andythenorth> I'm just confused by what is the right thing to do 10:41:37 <planetmaker> just use unique extensions, if you must use something different 10:41:39 <planetmaker> that's all 10:42:13 <planetmaker> anyway, RL is calling. See you later 10:42:20 <Alberth> bye planetmaker 10:44:00 *** andythenorth [~Andy@host86-169-180-203.range86-169.btcentralplus.com] has quit [Quit: andythenorth] 10:46:15 *** KouDy [~KouDy@115.133.14.167] has joined #openttd 10:47:12 *** chester [~chester@128-68-70-204.broadband.corbina.ru] has joined #openttd 10:49:21 *** Chris_Booth [~chatzilla@client-82-31-3-132.midd.adsl.virginmedia.com] has joined #openttd 10:50:28 *** Progman [~progman@p57A19F27.dip.t-dialin.net] has joined #openttd 10:54:45 *** Zuu_ [~Zuu@2.67.27.47.mobile.tre.se] has joined #openttd 11:04:28 *** DDR [~chatzilla@142.179.78.88] has quit [Quit: ChatZilla 0.9.88 [Firefox 9.0.1/20111221202647]] 11:05:54 *** Brianetta [~brian@188-220-91-30.zone11.bethere.co.uk] has joined #openttd 11:10:28 *** OpenTTD_Johannes [2e0519df@ircip2.mibbit.com] has joined #openttd 11:10:56 <OpenTTD_Johannes> Hey all 11:11:16 <Zuu_> Hello 11:11:25 <OpenTTD_Johannes> I have a map save for the title-image contest. Do I need to register in the forum to submit? 11:12:33 <Alberth> yes, otherwise you cannot post 11:12:40 <Zuu_> That would make it easier for pm to organize it. 11:13:00 <OpenTTD_Johannes> Don't send me spam after registration :P 11:13:06 *** pjpe [ade6a119@ircip3.mibbit.com] has quit [Quit: http://www.mibbit.com ajax IRC Client] 11:13:21 <Zuu_> If you email he would need to monitor his email too for saves. 11:13:28 *** mahmoud [~KEM@ALyon-158-1-113-57.w90-29.abo.wanadoo.fr] has joined #openttd 11:13:35 *** tensai_cirno [~cirno@77.232.15.216] has joined #openttd 11:13:43 <Alberth> OpenTTD_Johannes: did not happen with me so far 11:14:02 <Alberth> be sure to disable the email address display in your preferences 11:14:04 <OpenTTD_Johannes> Only kidding. Thanks for the advice, I'll upload it soon! :) 11:14:12 <OpenTTD_Johannes> Sure. 11:15:46 *** KouDy [~KouDy@115.133.14.167] has quit [Ping timeout: 480 seconds] 11:16:14 <Zuu_> You will only soon get addicted to the forums. ;) 11:16:21 *** frosch123 [~frosch@frnk-590f69de.pool.mediaWays.net] has joined #openttd 11:18:07 *** Zuu_ [~Zuu@2.67.27.47.mobile.tre.se] has quit [Quit: Bye] 11:18:57 *** KouDy [~KouDy@175.137.98.122] has joined #openttd 11:19:17 <frosch123> yay, it's not even noon, and i am already here :p 11:21:16 <Ammler> Alberth: do you have any clue, how fedora handles "recommends" with package manager (rpm)? 11:22:18 *** JVassie [~James@2.30.129.36] has joined #openttd 11:23:07 <Eddi|zuHause> # it's so cold it's so cold it's so cold it's so cold 11:25:00 <Alberth> Ammler: it has 'recommends'? never noticed it 11:25:16 <__ln__> only -16,3°C now 11:25:31 <Elukka> http://thefuckingweather.com/?zipcode=Hyvink%C3%A4%C3%A4&CELSIUS=yes 11:25:33 <Elukka> it was -24 earlier 11:25:36 *** pugi [~pugi@host-091-097-007-013.ewe-ip-backbone.de] has joined #openttd 11:25:38 *** KouDy [~KouDy@175.137.98.122] has quit [Quit: Leaving.] 11:25:57 <OpenTTD_Johannes> The perfect weather for playing openttd all day :) 11:26:01 *** KouDy [~KouDy@175.137.98.122] has joined #openttd 11:28:15 <V453000> Elukka: AMAZING website :D :D :D 11:29:07 <frosch123> Elukka: you are living in a weird climate, if it snows at -18°C 11:29:19 <Elukka> ...yeah 11:29:20 <Elukka> the site is wrong 11:29:34 <V453000> it says snowing even here, and no snowing :) but still F cold 11:34:21 <Ammler> Alberth: it seems not having it, that is why I ask, how do you Fedora guys handle that? 11:34:24 <OpenTTD_Johannes> Ummm is openttd interested in C/C++-Coders? 11:34:59 <Alberth> OpenTTD_Johannes: the top-left corner of the save game stays where it is, so perhaps if you move that (in your screenshot at least), it may be better for small screens 11:35:01 <Eddi|zuHause> certainly 11:35:25 <Alberth> OpenTTD_Johannes: as well as squirrelers :) 11:35:35 <OpenTTD_Johannes> okay Alberth, I'll fix it, thanks! 11:35:44 <Alberth> Ammler: what is it? 11:36:24 <Alberth> OpenTTD_Johannes: in the game options you can switch to smaller window sizes so you can see how it looks 11:36:41 <OpenTTD_Johannes> Oh? Squirrel is an animal, right? Sorry, I am bad in English... :( 11:37:32 <Eddi|zuHause> yes, but it's also a scripting language 11:37:36 <Alberth> OpenTTD_Johannes: it's an animal but also the programming language for AIs and goal scripts: http://squirrel-lang.org/doc/squirrel2.html 11:39:06 <OpenTTD_Johannes> Ahhh, okay, I usually only code in C++. But I have time left, and if there was anything that needed to be done, I could try it. 11:39:15 *** tokai|mdlx [~tokai@port-92-195-203-118.dynamic.qsc.de] has joined #openttd 11:41:07 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has joined #openttd 11:41:32 <planetmaker> just back from shopping I updated the titlegame page 11:43:29 *** DayDreamer [~DayDreame@178.248.252.196] has joined #openttd 11:43:52 *** tokai|noir [~tokai@port-92-195-22-29.dynamic.qsc.de] has quit [Read error: Operation timed out] 11:44:37 <planetmaker> ^ OpenTTD_Johannes, thus you can just browse the screens 11:45:54 <Alberth> too much temperate climate :( 11:47:46 <planetmaker> Alberth: we had arctic and desert already :-) 11:47:57 <planetmaker> kinda time for a temperate ;-) 11:48:12 <planetmaker> But then, I know what you mean 11:48:22 <planetmaker> and somewhat feel with you 11:48:46 *** Brianetta [~brian@188-220-91-30.zone11.bethere.co.uk] has quit [Quit: TschÃŒÃ] 11:49:24 *** OpenTTD_Johannes [2e0519df@ircip2.mibbit.com] has quit [Quit: http://www.mibbit.com ajax IRC Client] 11:50:19 <V453000> toyland.! 11:51:00 <Alberth> I'd like that, but it is too controversial I fear to ever get enough votes for 11:52:16 *** hbccbh [~hbc@116.27.166.159] has joined #openttd 11:53:56 <frosch123> it's funny how the screenshots randomly switch between english and german :p 11:54:18 <planetmaker> :-) Different times they were generated 11:54:25 <planetmaker> And ... I switched languages, I guess 11:54:26 * Alberth watches a screenshot intently to see it change 11:54:45 <frosch123> :p 12:01:18 *** lmergen [~lmergen@5352EA70.cm-6-3d.dynamic.ziggo.nl] has joined #openttd 12:01:32 *** KouDy [~KouDy@175.137.98.122] has quit [Ping timeout: 480 seconds] 12:03:06 *** |Jeroen| [~jeroen@d5152B25B.access.telenet.be] has quit [Remote host closed the connection] 12:10:07 *** andythenorth [~Andy@host86-169-180-203.range86-169.btcentralplus.com] has joined #openttd 12:13:36 <andythenorth> Eddi|zuHause: .gnml - generated nml? 12:15:01 <Alberth> generic nml 12:15:10 *** KouDy [~KouDy@115.133.1.106] has joined #openttd 12:15:19 <andythenorth> it's used in CETS ;) 12:15:45 <Alberth> xnml could be fun too ;) 12:16:07 <andythenorth> sounds like it would be xml :P 12:16:14 <andythenorth> mine contains some xml :P 12:16:21 <andythenorth> but it's not a valid xml doc 12:16:23 <Alberth> it's extended nml :) 12:16:26 <andythenorth> ho 12:16:32 <andythenorth> fun with extensions :o 12:16:50 <andythenorth> I want to use .pynml for templates 12:17:17 <Alberth> seems fine to me 12:17:23 <andythenorth> but I'm kind of reluctant to make the change without some agreement 12:17:52 <Alberth> it contains python code? 12:18:01 <andythenorth> yes 12:18:14 <andythenorth> and I can't find the extension in use by other projects 12:18:39 <Alberth> the number of 'nml' projects is not so large :) 12:19:29 <Alberth> I'd just use .py, but that is much less exciting 12:20:55 <planetmaker> andythenorth: what is a template in your context? 12:22:02 <andythenorth> it's a file used by chameleon templating module 12:22:02 <andythenorth> http://chameleon.repoze.org/docs/latest/ 12:22:25 <andythenorth> although I was considering just now writing a python module that aliased all references to 'template' to something else :) 12:22:34 <andythenorth> but then the docs will be harder to use ;) 12:25:22 <andythenorth> I also need to think about the dir I have called 'templates' 12:25:46 <andythenorth> as that's a convention for the python module, but collides with our convention for newgrfs 12:26:03 <andythenorth> 'templates' in HEQS currently means something quite different to templates in 'BANDIT' 12:26:09 <andythenorth> hmm 12:26:17 <andythenorth> those quote marks were wrong :P 12:28:14 *** KouDy [~KouDy@115.133.1.106] has quit [Read error: Connection reset by peer] 12:30:57 *** DayDreamer [~DayDreame@178.248.252.196] has quit [Quit: Leaving.] 12:31:46 *** KindOne [~lol@h50.81.18.98.dynamic.ip.windstream.net] has joined #openttd 12:32:17 *** KindOne [~lol@h50.81.18.98.dynamic.ip.windstream.net] has left #openttd [] 12:32:41 <andythenorth> maybe I don't need them in a dir 12:32:46 <andythenorth> a bigger project might 12:33:43 <andythenorth> Alberth: would you have time to review some more code? 12:33:50 <andythenorth> it might help figure out the structure too 12:38:17 <Alberth> sure, just need to get a coffee 12:39:30 *** KouDy [~KouDy@115.133.7.255] has joined #openttd 12:39:50 <Eddi|zuHause> andythenorth: yes, .gnml is the generated files. that is to easily do "rm -rf *.gnml" on clean 12:40:36 <Eddi|zuHause> and "**.gnml" in hg 12:40:41 <Alberth> -f ? you protect them? 12:40:44 <Eddi|zuHause> hgignore 12:41:02 <Eddi|zuHause> Alberth: no. 12:41:07 <Eddi|zuHause> Alberth: that was just an example 12:42:26 <Eddi|zuHause> actually... the makefile doesn't currently seem to do that 12:45:25 <Alberth> I normally explicitly calculate which files to delete: for i in $(OBJFILES) $(CXXFILES:.cpp=.d) table/strings.h $(TARGET); do if test -f $$i; then rm $$i; fi; done 12:47:08 <CIA-1> OpenTTD: rubidium * r23878 /trunk/ (6 files in 4 dirs): -Prepare: 1.2.0-beta4 12:48:57 *** yorick_ [~yorick@ip51cd0513.speed.planet.nl] has joined #openttd 12:50:49 <CIA-1> OpenTTD: rubidium * r23879 /tags/1.2.0-beta4/: -Release: 1.2.0-beta4 12:51:22 *** yorick [~yorick@ip51cd0513.speed.planet.nl] has quit [Ping timeout: 480 seconds] 12:52:53 <Eddi|zuHause> Alberth: right, but not all .gnml files have a makefile rule 12:53:45 <Eddi|zuHause> and that fails to remove files whose original got removed 12:54:38 <Ammler> does distcc or ccache have advantage for the final binary? 12:55:02 <Alberth> Eddi|zuHause: nah, CXXFILES=config_reader.cpp fileio.cpp language.cpp main.cpp map.cpp math_func.cpp ... :) 12:56:16 <Alberth> Ammler: other than building it possibly faster, not that I am aware of 12:56:21 <Eddi|zuHause> Alberth: but if one of those files is removed from the repository (moved, split, obsoleted, etc.), then it won't be in CXXFILES anymore 12:57:03 <Eddi|zuHause> Alberth: the repository makes sure the .cpp file is removed, but the compiler files remain 12:57:25 * Alberth nods 13:02:20 *** JVassie [~James@2.30.129.36] has quit [Ping timeout: 480 seconds] 13:03:43 *** sla_ro|master [~slaco@95.76.26.172] has joined #openttd 13:05:32 * Alberth prods andythenorth 13:06:29 *** |Jeroen| [~jeroen@d5152B25B.access.telenet.be] has joined #openttd 13:06:34 *** Brianetta [~brian@212.183.140.58] has joined #openttd 13:07:07 <andythenorth> hola 13:07:16 <andythenorth> Alberth: might be worth getting a checkout 13:07:18 <andythenorth> ? 13:07:34 <andythenorth> http://dev.openttdcoop.org/projects/bandit/repository 13:07:38 <Alberth> ah, you are not frozen :) 13:09:04 <Alberth> oops, wrong url :) 13:09:12 <andythenorth> I am building lego forest police with a toddler 13:09:19 <andythenorth> but I can multi-task ;) 13:09:57 <andythenorth> most of my code is now written with some > 0 amount of child-based brain contention 13:11:44 <Alberth> what should I read? 13:12:58 <andythenorth> a few oddities 13:13:10 <andythenorth> worth reading the templates 13:13:17 <andythenorth> the syntax is easy enough 13:13:23 <andythenorth> I learnt it 7 years ago without docs :) 13:13:53 <andythenorth> I'm not convinced I need the 'vehicle.properties' dict 13:14:05 <andythenorth> I could just create instance variables on vehicle 13:14:36 <andythenorth> but I don't know an easy way to do that without manually writing out every var 13:14:58 <andythenorth> and afaik, programmatic creation of vars is frowned upon anyway, due to possible collisions 13:16:26 <andythenorth> could just do a self[i] = j for [i,j in properties.items()] 13:16:27 <andythenorth> or such 13:21:09 <andythenorth> Alberth: if you look at the templates, I should mention that where you see <tal:foo ...> the foo part is arbitrary 13:21:44 <Alberth> you could make properties queryable from the instance 13:22:50 <Alberth> I sort of skipped lines with "<tal: ......>" :) 13:22:58 <Alberth> what's tal? 13:23:57 <Alberth> (I am considering to have a go at a WT3 REST server) 13:25:33 <Alberth> BANDIT_vehicles_config.py is generated? 13:25:58 <Alberth> it could be moved to a ConfigParser file :) 13:26:13 *** lmergen [~lmergen@5352EA70.cm-6-3d.dynamic.ziggo.nl] has quit [Ping timeout: 480 seconds] 13:28:42 <andythenorth> BANDIT_vehicles_config.py is generated from my web server 13:29:01 <andythenorth> although I want to try building a browser app to generate it locally 13:29:14 <andythenorth> using pyramid framework, or just simple python wsgi 13:29:24 <andythenorth> tal is template attribute language 13:29:33 <andythenorth> chameleon is a tal implementation 13:30:02 <andythenorth> it's one of about 4 or 5 widely used python templaters for web stuff 13:30:03 <Ammler> wsgi is just a way deploy... 13:30:23 <andythenorth> well it's a little more 13:30:42 <andythenorth> but yes 13:31:11 *** valhallasw [~valhallas@193.52.24.37] has joined #openttd 13:32:33 <andythenorth> Alberth: if I've understood your goal with WT3 correctly, you might also use either pyramid (or a similar lightweight framework), or just write a from-scratch python app, using wsgi for the http server interface etc 13:33:10 <Ammler> just meant, using wsgi should not be up to the dev :-) 13:33:41 <andythenorth> well yes 13:33:54 <andythenorth> you might use paste as server to dev locally, but not maybe in production :) 13:34:02 <andythenorth> etc 13:34:23 <Alberth> yeah, smaller frameworks are better, but you need authentication and utf-8 support 13:35:14 <Ammler> we don't use wsgi to deploy hg or paste 13:35:32 <Ammler> hmm, do we? 13:37:22 <andythenorth> not sure 13:37:34 <andythenorth> what's in front of hg? anything? 13:38:58 <Mazur> I don't know the table by heart, but I believe it's Au. 13:40:13 <andythenorth> Alberth: ConfigParser? 13:40:34 <andythenorth> so that's a module... 13:41:03 <frosch123> Au is correct 13:41:15 <frosch123> Tl is behind 13:42:48 <Eddi|zuHause> @calc 8 13:42:48 <DorpsGek> Eddi|zuHause: 8 13:42:54 <Eddi|zuHause> @calc 8*255 13:42:54 <DorpsGek> Eddi|zuHause: 2040 13:43:00 <Eddi|zuHause> @calc 9*255 13:43:00 <DorpsGek> Eddi|zuHause: 2295 13:43:09 <Alberth> andythenorth: the INI file parser module of Python 13:43:49 <Eddi|zuHause> @calc 6*9*255 13:43:49 <DorpsGek> Eddi|zuHause: 13770 13:43:57 <Eddi|zuHause> @calc 8*9*255 13:43:58 <DorpsGek> Eddi|zuHause: 18360 13:43:59 <andythenorth> is it overkill? :D 13:44:05 <andythenorth> my config file is a dict... 13:45:43 <Alberth> it is less cluttered with quotes, commas, and curly brackets, and more human readable, but that's all 13:46:39 <andythenorth> hmm 13:46:51 <andythenorth> those are all the things I want to get rid of, (except for human readable) 13:47:09 <andythenorth> currently I use the web cms to abstract from those things 13:47:16 <andythenorth> let's see about ConfigParser then 13:47:26 <Eddi|zuHause> ini format sounds like a sensible solution 13:47:46 <Alberth> http://en.wikipedia.org/wiki/INI_file#Example 13:47:47 <andythenorth> "You can use this to write Python programs which can be customized by end users easily." 13:48:09 *** Chris_Booth [~chatzilla@client-82-31-3-132.midd.adsl.virginmedia.com] has quit [Ping timeout: 480 seconds] 13:48:24 <Alberth> I used it as file format for state machines :p 13:48:46 <andythenorth> can it handle equivalent of list structures? 13:49:02 <andythenorth> foo = (value1,value2,value3) etc 13:50:08 <Alberth> it's just strings, so after reading, you can do some string processing, like [val.strip() for val in split(line, ',')] 13:50:17 <andythenorth> ok 13:50:25 <Alberth> hmm, line.split(',') of course 13:50:26 <andythenorth> so this is basically sane name value parits 13:50:28 <andythenorth> pairs 13:50:29 <andythenorth> oh 13:50:39 <andythenorth> it has utilities for modifying the config file as well 13:50:59 <andythenorth> that's the main reason I'm using a web cms: I can batch add / remove / change attributes 13:51:00 <Alberth> you can create and write a config file too :) 13:51:22 <andythenorth> is writing a dict then importing it just a bit dumb then? 13:51:30 <andythenorth> it's not very human readable for starters 13:51:39 <andythenorth> I tried pretty print, but it was tmwftlb 13:52:10 <Alberth> import is inherently dangerous, as you execute the imported file 13:52:25 <andythenorth> easy attack vector 13:52:40 <Alberth> but as machine-readable format, it would be fine imho 13:52:42 <andythenorth> especially as my instructions are 'paste here [stuff from the interwebs]' 13:53:33 <Alberth> json would be another option, which has support for different data structs as well 13:53:46 <andythenorth> I considered JSON too 13:53:54 <andythenorth> the INI style file is very simple 13:53:57 <andythenorth> I like it 13:55:05 <Alberth> the only disadvantage imho is that it does not give you a true dict, you have to fiddle with method calls a bit to get all data you want 13:55:26 <andythenorth> the dict arrives at Truck class anyway and is parsed 13:55:30 <andythenorth> it's only an intermediate format 13:55:38 <andythenorth> I'm not convinced it's necessary 13:55:49 <andythenorth> especially as I am not happy with vehicle.properties in the templates 13:57:15 <andythenorth> I'll rewrite the CMS to output INI style format 13:57:22 <andythenorth> later though 13:57:32 <andythenorth> in case you point out anything else that should be done first 14:01:30 <andythenorth> Alberth: you might raise your eyebrows at how I am getting some global constants into the templates 14:05:01 <Alberth> http://paste.openttdcoop.org/show/1036/ an idea to hide the self.properties dict 14:05:35 *** Rhamphoryncus [~rhamph@d161-184-227-133.abhsia.telus.net] has joined #openttd 14:05:41 <andythenorth> oh ok 14:05:51 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has left #openttd [] 14:05:53 <andythenorth> __setattr__ and __getattr__ are new to me 14:06:04 <andythenorth> although they match a slightly more abstracted version used in my cms 14:09:46 <Rubidium> @topic set 1 1.1.5, 1.2.0-beta4 14:09:47 *** DorpsGek changed the topic of #openttd to: 1.1.5, 1.2.0-beta4 | Website: *.openttd.org (translator: translator, server list: servers, wiki: wiki, patches & bug-reports: bugs, revision log: vcs, release info: finger) | Don't ask to ask, just ask | 'Latest' is not a valid version, ever | English only 14:09:58 <andythenorth> so this is a mapping into the properties dict? 14:10:10 <andythenorth> rather than creating instances of variables directly on the object? 14:10:54 <Alberth> the indenting of build_bandit.py is not PEP8 compliant :) 14:10:54 <Alberth> but otherwise mostly fine. Not sure what to change further tbh 14:11:14 <Alberth> yes, it redirects attribute access to the properties dict 14:11:38 <Alberth> at the cost of not being able to make your own variables, as you can see in the init 14:13:01 <andythenorth> worth knowin 14:13:02 <andythenorth> g 14:14:10 <Alberth> I would have moved all the assignments to below the classes, and put all the stuff in a run() function, but that's not a big issue 14:14:35 <andythenorth> might be worth considering 14:14:42 <andythenorth> I have no problem binning code 14:14:45 <andythenorth> all code dies 14:16:40 <Alberth> together with if __name__ == '__main__': run() it allows you to import the file without running the code 14:17:20 <CIA-1> OpenTTD: michi_cc * r23880 /trunk/src/core/alloc_type.hpp: -Add: A simple smart pointer. 14:17:25 <CIA-1> OpenTTD: michi_cc * r23881 /trunk/src/spriteloader/grf.cpp: -Codechange: Move GRF sprite decoding into a separate function. 14:17:29 <CIA-1> OpenTTD: michi_cc * r23882 /trunk/src/ (newgrf.cpp newgrf_sound.cpp newgrf_sound.h sound.cpp): -Codechange: Delay parsing of NewGRF sound effects until first usage. 14:17:33 <CIA-1> OpenTTD: michi_cc * r23883 /trunk/src/newgrf.cpp: -Fix: [NewGRF] It wasn't possible to import sounds from a NewGRF later in the load order. 14:17:37 <CIA-1> OpenTTD: michi_cc * r23884 /trunk/src/spritecache.cpp: -Codechange: Store recolour sprites in memory directly during GRF loading. 14:17:41 <CIA-1> OpenTTD: michi_cc * r23885 /trunk/src/ (landscape.cpp spritecache.cpp): -Codechange: Use the GRF sprite loader for then mapgen sprites as well. 14:17:45 <CIA-1> OpenTTD: michi_cc * r23886 /trunk/src/ (base_media_base.h base_media_func.h gfxinit.cpp): -Codechange: Allow limiting the MD5 file hash to the first x bytes of the file. 14:17:50 <CIA-1> OpenTTD: michi_cc * r23887 /trunk/src/ (12 files in 2 dirs): -Feature: [NewGRF] Support for container version 2. 14:17:54 <CIA-1> OpenTTD: michi_cc * r23888 /trunk/src/table/ (misc_settings.ini settings.ini): -Change: Move the min/max zoom settings to the "misc" section so they are valid before sprites are loaded. 14:18:02 <CIA-1> OpenTTD: michi_cc * r23889 /trunk/src/ (9 files in 3 dirs): -Codechange: Centralise sprite resizing in one place. (peter1138) 14:18:04 <CIA-1> OpenTTD: michi_cc * r23890 /trunk/src/spriteloader/grf.cpp: -Add: [NewGRF] Support for RealSprites with multiple zoom levels. 14:18:08 <andythenorth> commit spree :o 14:19:32 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has joined #openttd 14:19:42 <Rhamphoryncus> commitgasm? 14:21:35 <Alberth> feature :) 14:23:16 <andythenorth> Alberth: I have two other things I'm not convinced by: 14:23:26 <andythenorth> - structure of /src, specifically use of /templates dir 14:23:33 <andythenorth> - global_constants.pt 14:28:02 <andythenorth> I'm not sure nesting into /templates is needed 14:28:49 <Alberth> global_constants.py somewhat screams INI file, but on the other hand, this may be easier to manage, and they change very little probably 14:29:03 <Alberth> better a directory too much than too few 14:30:04 <Alberth> it reduces clutter in the src directory, and I found it useful for understanding the repo structure 14:30:08 <andythenorth> k 14:30:28 <andythenorth> global_constants.pt is basically a cheat to make CONSTANTS appear in the template namespace 14:30:38 <andythenorth> it's one extra place to find when looking where things are defined 14:30:50 <andythenorth> and it's one extra piece of code to write when adding a global var 14:31:07 <Alberth> you seem to have more trickery around the template stuff 14:31:23 <andythenorth> maybe I could make globals() an object 14:31:33 <andythenorth> and then use __setattr__ and __getattr__ for names 14:31:44 <andythenorth> hmm 14:31:45 * andythenorth ponders 14:32:02 <andythenorth> the template namespace only contains what is passed to it, or what it imports 14:32:04 <Alberth> in my view the template stuff is broken if it needs global vars 14:32:16 <andythenorth> it doesn't need them particularly 14:32:30 <andythenorth> I am trying to preserve the ability to use things like SOLO_TRUCK_TYPE_NUM 14:32:39 <andythenorth> without accessing another obj or structure 14:32:47 <andythenorth> but that might not be a valid goal 14:32:56 <andythenorth> magic constants :o 14:33:12 <Eddi|zuHause> what's a "container version 2"? 14:33:20 <andythenorth> where is it? 14:33:41 <Eddi|zuHause> in the commitgasm 14:33:53 <andythenorth> probably replaces version 1 :P 14:34:05 <andythenorth> is it vehicles in vehicles? :D 14:34:09 <andythenorth> probably not 14:38:57 <michi_cc> Eddi|zuHause: The magic stuff that enables multiple zoom levels and colour depths per sprite and allows stripping of unneeded zoom levels/colourdepths without affecting network compatibility. 14:39:02 <Alberth> in Python I only have global constants, but that may be due to the sort of things I normally program 14:39:52 <andythenorth> I considered putting them on the vehicle objects 14:40:07 <andythenorth> I don't really like code where you have to read 10 loc to find the actual point a var is defined though 14:40:33 <andythenorth> e.g. foo = truck.foo = global foo = from globals import stuff{foo:10} 14:40:38 <andythenorth> or so 14:40:54 <andythenorth> annoys other people :) 14:40:59 <Eddi|zuHause> don't read my code then 14:41:01 <Eddi|zuHause> :p 14:41:52 <andythenorth> I should have probably explained that differently :) 14:41:55 <andythenorth> one line assignments are fine 14:42:17 <andythenorth> but playing 'hunt the actual value' in 3 or 4 different files is dull 14:42:25 <frosch123> michi_cc: nice summary ^^ 14:45:30 *** Phoenix_the_II [~ralph@home.deboom.biz] has joined #openttd 14:56:06 *** Brianetta [~brian@212.183.140.58] has quit [Quit: TschÃŒÃ] 14:56:30 *** kkb110 [~kkb110@cpe-69-203-124-125.nyc.res.rr.com] has joined #openttd 14:57:49 *** Aygar[Work|afk] [~quassel@160.129.129.92] has joined #openttd 14:57:50 *** Aygar [~quassel@160.129.129.92] has quit [Ping timeout: 480 seconds] 15:07:29 <andythenorth> hmm 15:07:40 <andythenorth> Alberth: can config parser sort out types? 15:07:52 <andythenorth> or will I be calling int() and such a lot? 15:08:06 <andythenorth> here's some test input http://213.133.67.181:8192/zz_dangerous_things/tt_foundry/sets/BANDIT/render_trucks_to_config_file 15:10:19 <Alberth> no, it only does strings 15:11:10 <Alberth> json does I think 15:11:38 <Alberth> but otherwise, that's why loading text is so much safer than importing :p 15:12:46 *** lmergen [~lmergen@5352EA70.cm-6-3d.dynamic.ziggo.nl] has joined #openttd 15:13:10 <andythenorth> I ruled out JSON, it has all the same scaffolding issues - braces, etc 15:15:39 * andythenorth ponders, split lists on | or , 15:15:47 <andythenorth> , might appear validly in strings 15:16:11 <Alberth> or use ; or : 15:16:22 <Alberth> or \n :p 15:16:43 <Alberth> the latter messes up ini file formatting though 15:17:40 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has joined #openttd 15:18:18 <Eddi|zuHause> <andythenorth> , might appear validly in strings <-- that's why i used tsv and not csv 15:18:48 <SpComb> psv fixes all the delimiter issues! 15:19:34 <andythenorth> I used to use || for passing lists in url query strings 15:19:35 <valhallasw> csv supports escaping 15:19:50 <valhallasw> a,b,"boo,hoo",d,etc 15:20:07 <valhallasw> at least, escaping is generally accepted by parsers 15:20:15 <SpComb> valhallasw: and " in values? :P 15:20:35 <valhallasw> "" 15:20:46 <valhallasw> at least, that's what excel does 15:20:53 <SpComb> CSV is great, because it supports escaping in a variety of different fashions, all depending on what generated it and what's parsing it! 15:20:56 <SpComb> .. 15:21:04 * Alberth ponders using a scanner for this kind of things 15:21:12 <andythenorth> scanner? 15:21:58 <valhallasw> >>> x.writerow(["a", ",", "'", '"']) 15:21:58 <valhallasw> a,",",',"""" 15:22:13 <valhallasw> SpComb: everybody uses the excel dialect 15:22:33 <SpComb> python's csv is cofigureable for different dialects 15:22:50 <SpComb> and excel uses something bizarre like UTF-8 CSV 15:22:56 <SpComb> err, UTF-16 15:23:08 <SpComb> which severely messes things up 15:23:40 <SpComb> (and python's csv module does neither unicode nor NULs) 15:23:49 *** Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has joined #openttd 15:24:06 <SpComb> pain and suffering, etc 15:24:25 <valhallasw> point taken 15:24:28 <Alberth> andythenorth: https://dev.openttdcoop.org/projects/nml/repository/entry/nml/tokens.py#L66 <-- that's the scanner of nml, it takes your text, and it spits out a sequence of tokens which have a token-type (eg NUMBER) and optionally a value attached 15:25:05 <Alberth> but you may want something more light-weight :) 15:25:12 <valhallasw> however, creating /another/ new format is even worse ;-) 15:25:37 <valhallasw> andythenorth: you could also consider YAML 15:25:54 <valhallasw> or just go enterprise with XML directly 15:28:18 <Alberth> xml doesn't do text-int conversion automagically either 15:29:21 <Alberth> bleh, the scanner debug code got removed from nml :( 15:33:10 *** TWerkhoven[l] [~twerkhove@cpc3-linl7-2-0-cust522.sgyl.cable.virginmedia.com] has joined #openttd 15:40:35 <Eddi|zuHause> so, is this how passing "static" parameters to strings is supposed to work? i didn't find any documentation about it: name: string(STR_NAME_ENG_pruss_E_Abt4,string(STR_NAME_ENG_PASSENGER),string(STR_NAME_ENG_ACCELERATED),string(STR_NAME_ENG_FOUR_AXLE)); 15:41:11 <Eddi|zuHause> the language file contains this: 15:41:13 <Eddi|zuHause> STR_NAME_ENG_pruss_E_Abt4 :{STRING} - {STRING} (Abteilwagen, {STRING}) 15:44:43 <Eddi|zuHause> and what happens if there's too few (or too many) parameters? 15:45:31 <Hirundo> demons may fly out of your nose 15:46:12 <Hirundo> I wouldn't know really, string handling is 99% Yexo's work 15:47:08 *** Biolunar [~mahdi@blfd-4d08fee0.pool.mediaWays.net] has joined #openttd 15:47:16 <Hirundo> Alberth: what 'scanner debug code' ? 15:49:01 <Hirundo> frosch123: Is there any relationship between real sprite 'info version 7 / 32' and grfv7/grfv8? 15:49:28 <michi_cc> http://www.tt-forums.net/viewtopic.php?f=68&t=58421 15:49:45 <Alberth> Hirundo: a function that runs the scanner only, and dumps the found tokens. Would have been nice to show andy 15:49:50 *** lmergen [~lmergen@5352EA70.cm-6-3d.dynamic.ziggo.nl] has quit [Ping timeout: 480 seconds] 15:50:04 <frosch123> Hirundo: there is no relation between grf version, nfo version and grf container version 15:50:09 <frosch123> all combinations are possible 15:50:23 <frosch123> however, only grf container 2 plus nfo32 allow usage of multiple zoom levels or 32bpp 15:50:49 <frosch123> conversion to grf container 1 or nfo < 32 will strip 32bpp and zoom levels, but still work 15:51:04 <Hirundo> OK, thanks for info 15:51:17 <Hirundo> Obviously, I should have checked the forum before asking questions :-) 15:51:21 *** KritiK [~Maxim@176.14.178.78] has joined #openttd 15:51:27 <michi_cc> NFO version is only really relevant for grfcodec though. 15:51:37 <frosch123> you asked your question 2 minutes before the forum post :p 15:52:16 <Hirundo> NML can output both grf (needs container v2) and nfo (needs nfo v32) 15:55:43 <Eddi|zuHause> nmlc: "src/../src/pruss/E_Abt4.gnml", line 126: First parameter of string() must be an identifier. <-- that's probably the wrong error message :p 15:56:31 <Eddi|zuHause> (or maybe i'm doing something else wrong) 15:57:26 <Eddi|zuHause> ah, think i found it 16:01:48 <Eddi|zuHause> openttd: /home/johannes/spiele/OpenTTD/trunk/src/strings_func.h:82: int64 StringParameters::GetInt64(WChar): Assertion `this->offset < this->num_param' failed. 16:01:52 <Eddi|zuHause> that's probably not right... 16:03:55 <Eddi|zuHause> Removed NewGRF: GRF ID 4A430201, filename: newgrf/test/ng_frails.grf (matches GRFID only). Gamelog inconsistency: GrfID was never added! <-- err...?? 16:04:23 <Eddi|zuHause> (that is probably not related, though :p) 16:04:42 <Hirundo> loaded as static grf? 16:05:13 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has quit [Read error: Connection reset by peer] 16:05:36 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has joined #openttd 16:07:28 <Hirundo> frosch123: Currently the GRFTempEngineData::refitmask_grf is set only when setting the xor mask, which I plan to deprecate / remove in NML 16:08:32 <Hirundo> Might it make sense, to also set refitmask_grf when setting the allowed / disallowed cargo lists? 16:08:44 <frosch123> yeah, i guess so 16:10:28 *** frosch123 is now known as frosch 16:11:30 <Eddi|zuHause> anyway... conclusion: NML happily applies too many or too few parameters, but openttd crashes when displaying the string in the vehicle menu 16:11:36 <Eddi|zuHause> it probably shouldn't do that 16:12:54 <andythenorth> openttd is very fussy about strings changing :P 16:13:01 <andythenorth> most times I crash it is because I changed a string :) 16:13:19 <andythenorth> valhallasw: XML has the same 'way too much scaffolding problem' as others 16:13:39 <Eddi|zuHause> for varying values of "same" :) 16:13:51 <andythenorth> I wonder if I'm slightly solving the wrong problem, BANDIT is configured like this anyway: http://dev.openttdcoop.org/attachments/download/2372/BANDIT_build.png 16:14:57 <Alberth> pretty 16:15:06 <andythenorth> could be prettier 16:15:27 <andythenorth> but I like to try INI format 16:15:35 <andythenorth> as intermediary at least 16:15:43 <andythenorth> easier for others to work with 16:15:54 <Hirundo> frosch: Why is the refit mask not translated when parsing the property? 16:15:55 <andythenorth> and I'm not doing write = anonymous on my cms :P 16:16:11 *** Chris_Booth [~chatzilla@client-82-31-3-132.midd.adsl.virginmedia.com] has joined #openttd 16:18:48 <andythenorth> Alberth: anything wrong with this to set attrs on an object? 16:18:49 <andythenorth> for i,j in properties.items(): 16:18:49 <andythenorth> self.__setattr__(i, j) 16:18:53 <andythenorth> seems to work 16:19:08 <andythenorth> I could probably play the one line game on it :P 16:19:16 <Eddi|zuHause> what's wrong with self[i]=j? 16:19:29 <andythenorth> TypeError: 'Truck' object does not support item assignment 16:19:34 <andythenorth> tried that first 16:19:48 <Eddi|zuHause> self should be derived from dict, then 16:19:58 <andythenorth> could do that 16:20:00 <andythenorth> is it wise? 16:20:05 <Eddi|zuHause> probably not :) 16:21:19 <andythenorth> "python is so bracing" 16:21:29 <Rhamphoryncus> Deriving from dict is usually pretty silly 16:21:50 <andythenorth> http://www.ssplprints.com/lowres/43/main/3/81661.jpg 16:21:52 <Rhamphoryncus> andythenorth: use setattr() 16:22:13 <andythenorth> rather than __setattr__() 16:22:14 <andythenorth> ? 16:22:26 <Rhamphoryncus> yes 16:22:32 <andythenorth> because...? 16:22:53 <Rhamphoryncus> __setattr__ is the backend API to be used by setattr() and normal assignment 16:23:04 <andythenorth> setattr() is not available to my class 16:23:11 <Rhamphoryncus> it's a global function 16:23:12 <andythenorth> AttributeError: 'Truck' object has no attribute 'setattr' 16:23:20 <Rhamphoryncus> A builtin more specifically 16:23:42 <Rhamphoryncus> Think of it as a keyword that happens to be build as a function 16:26:07 <andythenorth> not available to me for some reason ;) 16:26:23 <Rhamphoryncus> eh? 16:26:45 <valhallasw> andythenorth: setattr(self, 'attr', 'value') 16:26:47 <Rhamphoryncus> are all the builtins missing? len, zip, int, float, str, list, dict.. 16:26:55 <andythenorth> nope 16:27:12 <valhallasw> andythenorth: you attributeerror suggests you're doing self.setattr 16:27:17 <andythenorth> yup 16:27:19 <andythenorth> that is the error 16:27:21 <valhallasw> don't do that 16:27:28 <valhallasw> setattr(self, 'attr', 'value') < do that instead 16:27:36 <Rhamphoryncus> It's a builtin. It's not a method. 16:28:44 <andythenorth> sorted 16:32:08 *** flaa [~flaa@089-101-093077.ntlworld.ie] has joined #openttd 16:33:12 <Alberth> (16:35:04) andythenorth: Alberth: anything wrong with this to set attrs on an object? <-- except for breaking the data hiding concept and the 'objects take their of their own data' concept, absolutely nothing 16:34:19 <Alberth> imho if you have dynamic entries, use a dict rather than an object. 16:35:21 <Eddi|zuHause> there's probably also "named dicts" or similar 16:35:51 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has quit [Read error: Connection reset by peer] 16:35:55 <Eddi|zuHause> that you can access by both blah["i"] and blah.i 16:35:59 <andythenorth> Alberth: so the solution you posted for mapping into a dict is better? 16:36:07 <andythenorth> more correct? 16:36:39 <Alberth> in my view it is 16:37:03 <andythenorth> what about just explicitly writing out all the attributes I want on the object? 16:37:12 <andythenorth> I don't trust dynamic attributes either 16:37:22 <Alberth> but then I am generally very worried about changing state in ways I cannot find again 16:38:15 <andythenorth> I don't mind explicitly writing them out 16:38:20 <Rhamphoryncus> Eddi|zuHause: no named dicts. Easy to do, but it's frowned upon. Pick one approach and stick to it. 16:38:57 <andythenorth> writing out explicitly makes it easy to understand the interface 16:39:05 <andythenorth> but it's quite a lot of loc 16:39:08 <Alberth> andythenorth: that's the alternative, but you loose the option to iterate over them like in a dict 16:39:20 <andythenorth> I have no requirement for that at the moment 16:39:46 *** SamCat [~samantha@c-98-234-64-12.hsd1.ca.comcast.net] has joined #openttd 16:39:54 <andythenorth> this way there are fewer entities 16:40:01 <Alberth> you need to list the attributes in 'properties' too, which costs also loc 16:40:18 * andythenorth thinks manually write them out 16:40:35 <SamCat> Hello! 16:40:41 <Alberth> hi 16:40:49 <SamCat> how is everyone? 16:40:56 <frosch> cold 16:41:09 <Alberth> in need of some warm food 16:41:33 <SamCat> I live in California... explain to me... what is this 'cold' you speak of? 16:42:00 <planetmaker> -5 ... -20°C 16:42:01 <Alberth> no 'weather in europe' news items there? 16:42:22 <planetmaker> you do the conversion to °F, I can't be bothered ;-) 16:43:06 *** Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has quit [Remote host closed the connection] 16:43:07 <Rubidium> planetmaker: it's simply... just < 0°F and < 0°C 16:43:25 <planetmaker> eh? 16:43:54 <frosch> planetmaker: 0°F is the coldest thing which that fahrenheit guy knew 16:43:59 <Rubidium> or at least it was around 08:00 for me 16:44:01 <frosch> (and thought is possible) 16:44:04 <frosch> currently it is colder :p 16:44:07 <SamCat> heh 16:44:09 <planetmaker> iirc it*s T(°F) = (T(°C) - 32) * 4/9 or so 16:44:18 <SamCat> I guess I'm kinda just tired 16:44:26 <SamCat> I've been playing with trains instead of sleeping like I ought to have 16:44:40 <Rubidium> planetmaker: so, it can be both less than 0 °F and less than 0 °C, right? 16:44:43 <valhallasw> planetmaker: other way around 16:44:45 <frosch> in other words, the lower fixpoint of the fahrenheit unit is one of the most stupid things in human science 16:45:14 <valhallasw> 0°C = 32°F 16:45:30 <planetmaker> yes, I know. I just failed to derive the formula from that knowledge :-P 16:45:37 <valhallasw> frosch: it was 'the lowest temperature'. Which was wrong, but hey. 16:45:47 <valhallasw> it's as arbitrary as 0 and 100°C are 16:45:59 <planetmaker> not quite 16:46:14 <frosch> celsius is very useful for cooking and weather 16:46:16 <SamCat> that would be on the freezing and boiling point of water! 16:46:24 <planetmaker> that is clearly defined as freezing and boiling temperature of destilled water at normal pressure, valhallasw 16:46:33 <frosch> 100°F is useful when caring for cows 16:46:34 <planetmaker> °F is like "cold mixture" and "body temperature" 16:46:37 <planetmaker> oh yeah 16:47:06 <Alberth> http://paste.openttdcoop.org/show/1041/ 16:47:08 <planetmaker> And for added benefit 1K = 1°C 16:47:16 <planetmaker> as differences go. Not absolute 16:47:21 <SamCat> yeah, but having celsius based on water is awesome because everything else in the metric system is based on water 16:47:21 <frosch> so, while 100°F might be more useful than 100°C, 0°F is completely stupid 16:47:23 <Elukka> <@planetmaker> iirc it*s T(°F) = (T(°C) - 32) * 4/9 or so 16:47:25 <valhallasw> planetmaker: and 1°R = 1°F 16:47:26 <SamCat> okay, a lot of stuff is based on water 16:47:34 <frosch> planetmaker: thats what R is for :p 16:47:35 <Elukka> no, these days it's "20 c in f" written in google :p 16:47:36 <SamCat> a cubic centimeter of water weighs a gram, for example 16:47:41 <Rubidium> frosch: at standard atmospheric pressure ;) 16:47:42 <frosch> but neither R not C have a ° :p 16:47:52 <Elukka> google is terribly useful for unit conversions 16:47:58 <planetmaker> valhallasw: your point being? 16:48:03 <valhallasw> frosch: nor K you mean ;-) 16:48:16 <frosch> yeah :) 16:48:29 <Elukka> it can do esoteric stuff too, i once asked google what "200 times the speed of light in AU/s" was :P 16:48:56 <planetmaker> °C - and K of course foremost - goes quite well with the thermodynamic definition of temperature 16:48:59 <planetmaker> the others don't 16:49:00 <valhallasw> planetmaker: my point is: 1°C=1K is not a specific advantage - we could use Rankines as well 16:49:06 <frosch> hmm, i wondered what's so special about 33 16:49:13 <valhallasw> how does °C go well with thermodynamics? 16:49:17 <valhallasw> K goes well and R goes well 16:49:28 <SamCat> yes, but the intervals of K were derived from C so there 16:49:33 <Rubidium> and K&R make C ;) 16:49:36 <frosch> why does °N define 33°N = boiling of water? :o 16:49:53 <planetmaker> yup 16:50:08 <valhallasw> why do we use kelvins or rankines at all? why not just joules! 16:50:13 <planetmaker> South of it it's hot, frosch 16:50:31 <SamCat> because joules are a measure of energy whereas kelvins are a measure of average energy 16:50:33 <planetmaker> valhallasw: then you didn't understand the concept of external and internal thermodynamic properties 16:50:37 <SamCat> (average thermal energy) 16:51:01 <valhallasw> SamCat: how is 'average thermal energy' not an energy? 16:51:04 <Eddi|zuHause> frosch: what's so special about 100? 16:51:06 <Alberth> Rubidium: it's B! >>> chr(ord('K') & ord('R')) --> 'B' 16:51:17 <Elukka> last time there was talk of thermodynamics on this channel someone was arguing the mass of a certain amount of liquid changes with temperature, and volume doesn't... 16:51:23 <planetmaker> with the same argument, valhallasw, you could argue away the concept of (mass) density when we have mass itself 16:51:29 <Eddi|zuHause> well, technically, Celsius wanted 0 to be the boiling point, and 100 the freezing point 16:51:38 <Eddi|zuHause> but it got switched around quite fast 16:51:43 <SamCat> valhallasw: because something with lots of mass has more energy in it than something with less mass? 16:51:47 * andythenorth should maybe learn how to use pdb :P 16:52:00 <valhallasw> SamCat: so? in terms of units it's still energy 16:52:01 <frosch> Eddi|zuHause: i did not ask why 60°RÞ = boiling water 16:52:04 <Alberth> andythenorth: 'print' works too :) 16:52:08 <Rubidium> Alberth: I didn't say is, I said make (although I should have said made) 16:52:10 <frosch> i know about traditional usages of 100 and 60 16:52:12 <frosch> but not 33 :p 16:52:13 <planetmaker> valhallasw: temperature is NOT energy 16:52:16 <valhallasw> it's a different physical quantity 16:52:17 <planetmaker> that's fundamentally wrong 16:52:22 <SamCat> valhallasw: if I apply a blow torch to a pin it's going to get really hot really fast but if I apply it to a ton of steel it's barely going to do anything 16:52:49 <SamCat> valhallasw: you're applying the same amount of energy (joules) but because you're applying it to more mass you get less rise in temperature (kelvin) 16:52:54 <valhallasw> planetmaker: yes, and newtonmeters and newtonmeters can be completely different things. So what? 16:53:21 * andythenorth looks for something like getattrs 16:53:22 <valhallasw> (namely: energy and torque) 16:53:47 <valhallasw> SamCat: yes, I understand. The fact that they are different physical quantities does not mean we cannot use the same units. 16:53:47 <andythenorth> dir()? 16:54:15 <SamCat> SamCat: saying kelvins are the same as joules is like saying a volt is the same as an amp 16:54:22 <Alberth> andythenorth: http://docs.python.org/library/functions.html#getattr 16:54:35 <SamCat> valhallasw: yes, it does, beacuse you can't describe something's temperature by saying how many joules are in it 16:54:39 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has joined #openttd 16:54:57 <SamCat> valhallasw: not only would you need to know the amount of mass but you would need the substance's thermal coefficient 16:55:07 <valhallasw> SamCat: wrong. I can't describe somethings temperature by saying how many *energy* is in it. 16:55:17 <valhallasw> the *units* are seperate from the *physical quantity* 16:55:48 <SamCat> valhallasw: but joules are a measure of energy... 16:56:02 <Eddi|zuHause> valhallasw: next you're trying to tell us that mass is energy as well :p 16:56:08 <valhallasw> joules are *generally used* as a measure of energy 16:56:18 <Rubidium> Eddi|zuHause: that'd be useful 16:56:22 <valhallasw> Eddi|zuHause: that's what theoreticians do generally, yes. 16:56:23 <planetmaker> valhallasw: you cannot describe the temperature by the energy content. You need many other parameters to succeed 16:56:36 <valhallasw> planetmaker: I'm not doing that. I'm describing temperature in Joules. 16:56:36 <SamCat> vahlallasw: saynig something has 100 joules is like saying you have 100 liters of water... saying something is 100K is like saying the water is at 100 mm of hg 16:56:41 <valhallasw> That's something completely different. 16:56:45 <Rubidium> today it's the weather will 42kg in the afternoon and a mere 30kg at night 16:57:06 <SamCat> you know... when I made the joke about someone explaining cold to me I didn't exactly expect a debate about thermodynamics ;) 16:57:09 <Rubidium> and my grammar is totally sucking at the moment 16:57:31 *** lmergen [~lmergen@5352EA70.cm-6-3d.dynamic.ziggo.nl] has joined #openttd 16:57:36 <Alberth> SamCat: we are always highly off-topic here :p 16:57:51 <Eddi|zuHause> well, there _are_ those crazy physicists who define c=1, and thus E=m 16:58:07 <valhallasw> SamCat: saynig something has [Energy] is like saying you have [Volume] of water... saying something is [Temperature] is like saying the water is at [Pressure]. 16:58:09 <Alberth> Eddi|zuHause: they live in a different universe :) 16:58:16 <SamCat> valhallasw: you can't describe temperature with units of energy for the same reason you can't describe speed with just units of distance or just units of time or why you can't describe pressure with just units of mass 16:58:47 <Eddi|zuHause> Alberth: ah well, we have plenty of those :p 16:58:51 <SamCat> vahlallasw: yeah... that's what I said... now I'm completely confused ;_; 16:59:13 <SamCat> valhallasw: nevermind, I misread what you said 16:59:23 <valhallasw> SamCat: it's the difference between *units* [J] and *physical quantity* [Energy] that's important 16:59:39 <valhallasw> you can use the same *unit* (J) for a *different* physical quantity (Temperature) 16:59:42 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has quit [Read error: Connection reset by peer] 16:59:49 <SamCat> valhallasw: right... joules are a measure of thermal energy, why? 16:59:57 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has joined #openttd 16:59:59 <valhallasw> just like you use Nm's for both energy and torque 17:00:05 <Eddi|zuHause> valhallasw: so you're also saying power = loudness? 17:00:23 *** Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has joined #openttd 17:00:28 <valhallasw> Eddi|zuHause: no, I'm not. Those are different physical quantities 17:00:30 <Eddi|zuHause> for sure, if i get speakers with more watts, they're louder 17:00:35 <SamCat> valhallasw: https://en.wikipedia.org/wiki/Joule 17:00:38 <valhallasw> but if you want to use the same units, go ahead 17:01:00 <SamCat> Eddi: no, you've got less efficient speakers. there's a difference! 17:01:05 <Eddi|zuHause> but it's the same thing, if i put more energy in, it gets warmers 17:01:16 <Eddi|zuHause> -s 17:01:17 <valhallasw> SamCat: I can also use Joules to measure Torque 17:01:37 <SamCat> valhallasw: you can use joules to measure torque... but torque is not temperature 17:01:37 <valhallasw> people will look at me as if I'm crazy, but that's a different story 17:01:50 <SamCat> actually... 17:02:23 <SamCat> valhallasw: actually you can't... because torque is usually a description of power, not energy and joules are energy not power. You need Watts or Newtons for that 17:03:14 <Eddi|zuHause> SamCat: actually, if i apply the right torque to your arm, it gets warm :p 17:03:27 <valhallasw> SamCat: again, the difference between units and physical quantities 17:03:35 <valhallasw> Joule = kg m^2/s^2 17:03:43 <Eddi|zuHause> we call that "Brennessel" 17:03:43 <SamCat> ... 17:03:45 <Eddi|zuHause> :p 17:03:51 <SamCat> *head explodes* 17:04:08 <valhallasw> Newton metre = kg m^2/s^2 17:05:12 <valhallasw> but although you use the same units for energy and torque, they are clearly different physical quantities 17:05:23 <andythenorth> Alberth: I concluded on this http://paste.openttdcoop.org/show/1043/ 17:05:35 <andythenorth> it's long but explicit. No 'wtf is that value coming from?' 17:05:55 <andythenorth> tempted to align all the = though :P 17:06:37 <SamCat> Valhallasw: the joule is an SI unit that is DEFINED AS a measure of energy. You can therefore not use it to describe the concentration of said energy in a system (temperature for example) or to describe power without considerations of other variables 17:06:37 <SamCat> blah 17:06:59 *** Pixa [~pixa@85.210.71.22] has joined #openttd 17:07:02 <SamCat> oh hey look! something OpenTTD related! 17:08:51 <SamCat> by the way... the reason I came here was to ask: how can you tell when an industry has reached that point in its production where it's incapable of increasing production? I've been playing a larger map than my usual 64*64 where there are multiples of industries but they're not going away and they don't increase production either even when it says they have 17:08:58 <valhallasw> SamCat: as far as I know, it's only defined as J=kg m^2/s^2 - the rest is convention 17:09:43 <valhallasw> and inventing a new temperature scale is breaking with convention anyway ;-) 17:10:15 <SamCat> because I see a lot of industries that are producing 40 units of something per month which is kinda where I assumed the point of no return was 17:10:16 <planetmaker> Point is though that the Kelvin is one of the 7 base units 17:10:57 <planetmaker> SamCat: there's no general way to tell 17:11:22 <SamCat> planetmaker: damn... so how come the damn things won't sod off already?! 17:11:50 <planetmaker> depends on the industry. Any newgrf there? 17:12:10 <SamCat> yes, but no industries 17:12:14 <planetmaker> the last instance of an industry actually might never close 17:12:17 *** kkb110 [~kkb110@cpe-69-203-124-125.nyc.res.rr.com] has quit [Read error: Operation timed out] 17:12:29 <SamCat> I know that last bit but this is in a map with at least two of everything 17:12:48 <planetmaker> and "no industries" is... not clear. There's quite a few newgrfs which are not industry newgrfs on first sight :-) But which actually are 17:13:10 <CIA-1> OpenTTD: rubidium * r23891 /trunk/src/video/sdl_v.cpp: -Fix-ish: compile failures with SDL 1.3 17:13:24 <planetmaker> And even then, the industry might need several years before it decides to close down 17:13:52 <SamCat> the newgrfs I was using: ukrs2, ukrs2+,finescale tracks, uk town set, bob's random british vehicles, BATS, use-able default aircraft, city stations, rural stations, suburban stations, industrial stations renewal, generic cars, and FISH 17:14:27 <SamCat> *nods* 17:16:17 <planetmaker> I'm not sure about uk towns 17:16:23 *** KouDy [~KouDy@115.133.7.255] has quit [Quit: Leaving.] 17:16:49 <SamCat> I'll look it up then 17:16:50 <planetmaker> I simply don't know it enought 17:17:10 <SamCat> my understanding is it just adds a bunch of new house graphics but I should double check 17:17:53 <andythenorth> would it be useful if a newgrf reported what features it implements? 17:18:00 <planetmaker> let's assume it doesn't do anything. Then it's just the default industries where there's basically a random chance to increase or decrease production - or not change 17:18:05 <andythenorth> (action 0 features) 17:18:09 <planetmaker> Thus... it's quite random how long it takes, SamCat 17:18:27 <planetmaker> andythenorth: no. It does that already 17:18:58 <andythenorth> did I miss that :o 17:19:19 <planetmaker> andythenorth: feature byte 17:19:24 <planetmaker> you did not miss that ;-) 17:19:31 <SamCat> planetmaker: thanks... it's just frustrating when you see it reporting increases and decreases by percentage of an industry which is stuck at minimum and unsalvigable 17:19:56 <SamCat> by the way... would it make sense in the code to have it check to see if the production value is at 1 and, if so, to add one instead of trying to multiply it? 17:20:08 <SamCat> or subtract one instead of trying to multiply it 17:20:51 <planetmaker> SamCat: it's up to the newgrf 17:21:05 <andythenorth> I was thinking of a window in newgrf config 17:21:05 <planetmaker> and up to the economy you enabled 17:21:16 <planetmaker> rough vs. smooth 17:21:18 <andythenorth> This grf modifies: (list) 17:21:38 <SamCat> yeah, that would be nice Andythenorth 17:21:44 <planetmaker> andythenorth: iirc that's part of grf-topia 17:22:44 *** Wolf01 [~wolf01@host101-141-dynamic.31-79-r.retail.telecomitalia.it] has joined #openttd 17:23:05 <Wolf01> hello 17:24:42 <SamCat> hi 17:25:09 *** lmergen [~lmergen@5352EA70.cm-6-3d.dynamic.ziggo.nl] has quit [Ping timeout: 480 seconds] 17:26:36 * andythenorth is unconvinced by 17:26:36 <andythenorth> from global_constants import * #import all stuff from constants for easy reference in python scripts 17:27:05 <andythenorth> means it's guesswork where the actual values / objects in global_constants are coming from 17:27:11 <Eddi|zuHause> import * is an antipattern 17:27:20 <Eddi|zuHause> or at least code smell 17:27:31 <andythenorth> stinks 17:27:36 <andythenorth> better to be explicit 17:27:48 <Eddi|zuHause> just import global_constants 17:27:56 <Eddi|zuHause> and use global_constants.blah everywhere 17:28:06 <andythenorth> yup 17:28:25 <Rhamphoryncus> SamCat: Do I understand this right? An industry can drop to an internal output value of 1, which gets multiplied up when displayed to the user (which is why I've never seen 1), but all the modifiers aren't sufficient to change it any further? 17:28:42 <andythenorth> I have a non-useful obsession with trying to keep lines short 17:29:01 <andythenorth> e.g. self.non_refittable_classes = standard_class_refits['default']['disallow'] 17:29:04 <andythenorth> instead of 17:29:05 <andythenorth> self.non_refittable_classes = global_constants.standard_class_refits['default']['disallow'] 17:29:17 <SamCat> Rhamphoryncus: that's my understanding of how it works, yes, but I'm not one of the devs so I can't be sure 17:29:18 <andythenorth> but it makes for bad reading 17:30:28 *** kermie [567917ca@ircip2.mibbit.com] has joined #openttd 17:30:32 <kermie> Hello 17:30:36 <SamCat> hy Kermie 17:30:40 <SamCat> hi 17:30:40 <Eddi|zuHause> Rhamphoryncus: an industry produces every 255 ticks, which is 8 or 9 times per month, the GUI will only ever display the sum of all these. so the lowest an industry can produce per month is 8 17:30:44 <kermie> I need help installing openttd 1.0.5 17:30:49 <kermie> on ubuntu 17:30:56 <Eddi|zuHause> kermie: don't install 1.0.5 17:30:57 <kermie> + I am beginner with ubuntu 17:30:59 <Rhamphoryncus> Eddi|zuHause: *nods* 17:31:00 <kermie> Why not? 17:31:10 <SamCat> kermie: because it's old 17:31:12 <Eddi|zuHause> kermie: because that is outdated by over a year 17:31:17 <kermie> Uhm 17:31:18 <Eddi|zuHause> kermie: we have 1.1.5 now 17:31:22 <Rhamphoryncus> SamCat: I'd definitely call it a bug for an intended increase/decrease to have no effect 17:31:27 <kermie> 1.1.5 * 17:31:28 <kermie> Sorry 17:31:28 <Eddi|zuHause> kermie: and 1.2.0-beta4 17:31:31 <SamCat> I think the 1.0.5 is the one in the ubuntu repos 17:31:47 <SamCat> oh! okay! 17:31:47 <kermie> I currently have 1.0.0 installed 17:31:52 <kermie> How do i update it? 17:31:53 <Eddi|zuHause> kermie: so, what did you try, and what fails? 17:32:21 <SamCat> http://www.openttd.org/en/download-stable 17:32:23 <kermie> Let me delete it and try to download 1.1.5 and install it again and i'll tell you what happens 17:32:27 <SamCat> download the .deb and install it ;) 17:32:36 <SamCat> that's what I did on my computer 17:33:06 <planetmaker> you don't even need to install it actually 17:33:11 <kermie> An older version is available in a software channel Generally you are recommended to install the version from the software channel, since it is usually better supported. 17:33:14 <planetmaker> much easier to update without insall 17:33:15 <kermie> This is what i get 17:33:34 <kermie> That's why i used ubuntu repos 17:34:05 <SamCat> ubuntu's repos are outdated last I chicked 17:34:13 <kermie> Yes they are 17:34:19 <SamCat> if you install the .deb ubuntu will recognize that it's a newer version of the same program, too 17:34:27 <SamCat> or it should 17:34:28 <SamCat> it did on mine 17:34:33 <kermie> I clicked install 17:34:52 <kermie> It gave me error 17:35:02 <kermie> version 1.0.0.0-2 is installed 17:35:08 <kermie> conflicting packages 17:35:17 *** Progman [~progman@p57A19F27.dip.t-dialin.net] has quit [Remote host closed the connection] 17:35:18 <SamCat> hmm 17:35:20 <SamCat> odd 17:35:26 <SamCat> uninstal the old one first? 17:35:27 <kermie> I'll try to uninstall it first 17:35:29 <SamCat> yeah 17:35:30 *** JVassie [~James@2.30.129.36] has joined #openttd 17:35:32 <SamCat> just don't purge 17:35:38 <kermie> What is purge 17:36:08 <kermie> Complete removal? 17:37:03 * andythenorth concludes that trying to make GLOBAL_CONSTANTS_LIKE_THIS is tmwftlb 17:37:18 <andythenorth> in python templates 17:38:30 <SamCat> kermie: yes, it removes config files as well as the app itself 17:39:53 <Eddi|zuHause> andythenorth: if you have a module as prefix, there's no use syntactically separating the constants by capitalizing them 17:39:56 <kermie> i did not select complete removal 17:40:10 <kermie> i have removed (normal) all 3 entries of openttd installed 17:40:15 <kermie> I have installed it succesfully 17:40:30 <kermie> Now it won't start 17:40:36 <andythenorth> Eddi|zuHause: I was trying to preserve the CPP method, I quite like it. This is specific to use in the template files, not the python script ;) 17:40:43 <andythenorth> but it's just wrong 17:41:08 <SamCat> kermie: are you sure you're using the right .deb? 17:41:14 <SamCat> kermie: what version of ubuntu are you using? 17:41:31 <andythenorth> ${FOO} is not much better than ${global_constants.foo} 17:42:23 <kermie> SamCat: You are using Ubuntu 10.04 LTS - the Lucid Lynx - released in April 2010 and supported until April 2013. 17:43:17 <kermie> SamCat: openttd-1.1.5-linux-ubuntu-lucid-i386.deb 17:43:27 <SamCat> Kermie: okay... I'm using 11.10 here... 17:43:39 <SamCat> that's really odd 17:43:42 <kermie> SamCat: I've also updated ubuntu 17:43:52 <kermie> Maybe it's because i have no GFX 17:43:53 <SamCat> have you tried running it from a terminal and seeing if it pukes any error messages at you? 17:43:57 <kermie> 1.0.0 worked fine 17:44:07 <kermie> SamCat: i don't know how to do that 17:44:09 <SamCat> ooooh yeah... you need the gfx 17:44:21 <kermie> I have the original GFX can i use those? 17:44:25 *** kkb110_ [~kkb110@cpe-69-203-124-125.nyc.res.rr.com] has joined #openttd 17:44:27 <kermie> The new ones are just... ugly 17:44:32 <SamCat> open a terminal and type openttd 17:44:38 <SamCat> yeah, you can use the original 17:44:49 <SamCat> I like the new ones... 17:45:06 <kermie> yes 17:45:12 <kermie> needs graphic set 17:45:20 <SamCat> cool, install graphics set 17:45:30 <kermie> What should i get from my windows ? 17:45:43 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has quit [Read error: Connection reset by peer] 17:45:46 <Eddi|zuHause> all .grf files and sample.cat 17:46:06 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has joined #openttd 17:46:06 <Eddi|zuHause> and the .gm files if you want music 17:46:16 <kermie> all grf sample.cat and .gm 17:46:16 <kermie> ok 17:46:20 <kermie> where do i put them? 17:46:37 <Eddi|zuHause> the grfs and sample.cat in ~/.openttd/data 17:46:50 <planetmaker> in ~/.openttd/baseset 17:46:50 <Eddi|zuHause> the gms in ~/.openttd/gm 17:47:00 <Eddi|zuHause> planetmaker: also in 1.1.5? 17:47:04 <planetmaker> there not 17:47:05 <Alberth> http://vcs.openttd.org/svn/browser/trunk/readme.txt#L163 17:47:19 <kermie> how do i reach ~/.openttd 17:47:35 <Eddi|zuHause> kermie: select "show hidden files" in your filemanager 17:47:58 <kermie> Done 17:48:11 <kermie> I am in file system 17:48:13 <Eddi|zuHause> ~ is your home directory 17:48:13 <kermie> i see 17:48:28 <Eddi|zuHause> /home/<username>/ 17:48:30 <kermie> bin boot cdrom dev etc home 17:48:41 <kermie> Ahaaaa 17:48:45 <Alberth> that's root :) 17:48:50 <kermie> There they are 17:50:02 <kermie> They can not escape the craving of ottd 17:50:32 <kermie> content_download/data you mean 17:50:36 <Eddi|zuHause> no 17:50:39 <Eddi|zuHause> just data 17:50:44 <kermie> There is no just data 17:50:48 <Eddi|zuHause> then make it 17:50:51 <kermie> Okay 17:51:01 <kermie> I made it 17:51:34 <Eddi|zuHause> now put the .grfs in 17:51:37 <kermie> It worked 17:51:43 <kermie> I don't have the gms 17:51:44 <kermie> =( 17:52:03 <Eddi|zuHause> well, they are on your original cd :) 17:52:14 <Eddi|zuHause> (if you have the windows version) 17:52:22 <kermie> i take that back 17:52:24 <Eddi|zuHause> (they're not on the dos version) 17:52:26 <kermie> i have them 17:52:35 <kermie> Why can't i alt tab from the game 17:53:08 <Eddi|zuHause> no idea 17:53:17 <Eddi|zuHause> that has always worked... 17:53:38 *** Phoenix_the_II [~ralph@home.deboom.biz] has quit [Ping timeout: 480 seconds] 17:56:08 <kermie> Okay 17:56:20 <kermie> Thanks for the help but i'm dissapointed about 2 things 17:56:23 <kermie> I can't alt tab 17:56:57 <kermie> And scrolling fast with right click throughout the land skips and isn't smooth 17:57:26 <kermie> Thanks again for the help. I'm going back to windows :D 17:57:44 *** kermie [567917ca@ircip2.mibbit.com] has quit [Quit: http://www.mibbit.com ajax IRC Client] 18:00:10 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has left #openttd [] 18:11:11 <andythenorth> bah 18:11:28 * andythenorth just decided that debugging python-driven newgrfs was way too hard 18:11:30 <andythenorth> then... 18:11:51 <andythenorth> ...found I have wrong version of grf in game 18:13:09 <SamCat> *sighs* I wish industries would close once they become unrecoverable 18:15:04 <Alberth> nothing the magic bulldozer cannot fix :) 18:15:32 <SamCat> yeah, but then I have to use cheats 18:16:37 *** KritiK [~Maxim@176.14.178.78] has quit [Ping timeout: 480 seconds] 18:17:11 <Rubidium> are you using an industry NewGRF? 18:18:52 <andythenorth> so .pynml ok then? 18:19:03 <andythenorth> for nml files templated with python 18:19:06 *** eQualizer [~lauri@dyn-xdsl-77-86-195-47.nebulazone.fi] has quit [Quit: kikkeli] 18:27:18 *** [1]Mark [~Mark@5ED06D58.cm-7-1b.dynamic.ziggo.nl] has joined #openttd 18:27:19 *** Mark is now known as Guest1544 18:27:19 *** Guest1387 is now known as Mark 18:30:17 *** vodka [~paper@212.Red-83-55-54.dynamicIP.rima-tde.net] has joined #openttd 18:30:43 *** Chris_Booth [~chatzilla@client-82-31-3-132.midd.adsl.virginmedia.com] has quit [Quit: ChatZilla 0.9.88 [Firefox 11.0/20120201153158]] 18:30:50 *** KritiK [~Maxim@176.14.178.78] has joined #openttd 18:32:19 *** Guest1544 [~Mark@5ED06D58.cm-7-1b.dynamic.ziggo.nl] has quit [Ping timeout: 480 seconds] 18:32:47 *** |Jeroen| [~jeroen@d5152B25B.access.telenet.be] has quit [Quit: oO] 18:35:52 <andythenorth> hmm 18:36:08 <andythenorth> || sucks as a separator for lists in config files 18:37:56 <andythenorth> maybe just | 18:38:40 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has quit [Read error: Connection reset by peer] 18:39:07 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has joined #openttd 18:45:39 *** Pixa [~pixa@85.210.71.22] has quit [Quit: TTFN!] 18:50:18 *** lmergen [~lmergen@5352EA70.cm-6-3d.dynamic.ziggo.nl] has joined #openttd 18:56:12 *** glx [glx@2a01:e35:2f59:c7c0:7cdc:1099:124a:4d7e] has joined #openttd 18:56:15 *** mode/#openttd [+v glx] by ChanServ 19:01:49 <planetmaker> andythenorth: ";" 19:02:04 <planetmaker> or , 19:02:10 <andythenorth> , might turn up in strings sadly 19:02:15 <andythenorth> | less so I gope 19:02:17 <andythenorth> gope? 19:03:00 <planetmaker> short for "guess and hope" ;-) 19:05:07 * andythenorth wonders if python has equivalent of setdefault() for casting something to an int 19:05:13 <andythenorth> try: except: seems overkill 19:05:51 <andythenorth> calling int('') is not valid for obvious reasons 19:07:46 <Alberth> http://paste.openttdcoop.org/show/1048/ 19:08:23 <andythenorth> thought so 19:08:27 <andythenorth> try except 19:08:29 <Alberth> andythenorth: explicit is better than implicit :) 19:08:44 <andythenorth> Alberth: http://paste.openttdcoop.org/show/1049/ 19:08:48 <andythenorth> I'm not sure this is wise 19:09:05 <andythenorth> but it would catch a user who set num trailers = 2, but forgot to define their capacities :P 19:09:32 <andythenorth> the issue is that I end up calling int('') on vehicles where trailer_capacities = '' 19:09:44 <andythenorth> which can be valid, or a user mistake 19:10:13 <andythenorth> I think I'll use your method 19:11:46 <Alberth> http://paste.openttdcoop.org/show/1050/ without try/except :p 19:12:19 <Alberth> I'd throw an error back to the user rather than guess what he meant 19:13:10 <andythenorth> ooh 19:13:12 <andythenorth> new things 19:13:15 <andythenorth> pat.match etc 19:13:36 <andythenorth> I think it's best to write a function that cleanly parses config file strings into lists 19:13:37 <Prof_Frink> patch.man? 19:14:47 *** yoshi [75c39092@ircip2.mibbit.com] has joined #openttd 19:15:25 <Alberth> you might as well use a proper parser such as ply :p 19:15:31 *** yoshi [75c39092@ircip2.mibbit.com] has left #openttd [] 19:18:11 <andythenorth> hmm 19:18:16 <andythenorth> let the errors pass? 19:18:26 <andythenorth> it's not a nice pattern, but a common one :P 19:18:26 *** Mark is now known as Guest1547 19:18:26 *** [1]Mark is now known as mark 19:18:46 <andythenorth> Alberth: http://paste.openttdcoop.org/show/1051/ 19:18:49 <andythenorth> ugly? 19:19:18 <Eddi|zuHause> hm... so the string(STR, PARAM1, ...) thing doesn't seem to work in translations 19:19:32 <Alberth> "except:" is wrong by definition, you catch ALL errors, including your typos in that try line 19:19:40 <andythenorth> yup 19:19:57 <andythenorth> so I could check for txt='' 19:20:04 <andythenorth> but that would only catch one kind of error 19:20:19 <Eddi|zuHause> i find it sometimes hard to find an exception specific enough to catch only what i want to catch 19:20:25 <Alberth> I hate the "absorb all errors" pattern 19:20:25 <andythenorth> I could check the string is in the literals 19:20:38 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has joined #openttd 19:20:43 *** LordAro [~LordAro@host86-156-237-225.range86-156.btcentralplus.com] has joined #openttd 19:20:51 <LordAro> evenings 19:20:56 <andythenorth> string.digits 19:20:57 <andythenorth> ? 19:20:58 <Alberth> evenink 19:21:24 <Alberth> what about it? 19:22:07 <andythenorth> if i in digits: 19:22:07 <andythenorth> ? 19:22:12 <Eddi|zuHause> clarification for the above: string(STR, PARAM1, ...) doesn't work if STR doesn't exist in the translation file 19:22:38 <Eddi|zuHause> which is probably a correctable error... 19:22:49 <andythenorth> hmm 19:22:52 <Alberth> andythenorth: that's what '\d+' does 19:23:01 <andythenorth> is that magic? 19:23:49 <Eddi|zuHause> Alberth: tried r'\d+' yet? (raw string literals disable the whole escaping mess) 19:24:06 <andythenorth> hmm 19:24:17 <andythenorth> regular expressions scare me 19:24:18 <Alberth> Eddi|zuHause: until you try r'\' :p but yeah, I know 19:24:28 <andythenorth> incidentally, why can't I import digits? 19:24:43 <andythenorth> http://docs.python.org/library/string.html 19:24:47 <Alberth> from string import digits 19:24:54 <andythenorth> nah 19:24:58 <andythenorth> I'm doing it wrong 19:26:17 <Eddi|zuHause> anyone looked at http://dev.openttdcoop.org/issues/3636 yet? 19:26:39 <Eddi|zuHause> to me it looks like a simple "is already at the end of the string" check is missing 19:27:25 * andythenorth didn't think that parsing a list would be this hard :o 19:33:39 *** mark is now known as Mark 19:34:15 <CIA-1> OpenTTD: translators * r23892 /trunk/src/lang/ (french.txt latvian.txt spanish.txt unfinished/tamil.txt): 19:34:15 <CIA-1> OpenTTD: -Update from WebTranslator v3.0: 19:34:15 <CIA-1> OpenTTD: french - 65 changes by OliTTD 19:34:15 <CIA-1> OpenTTD: latvian - 23 changes by Parastais 19:34:15 <CIA-1> OpenTTD: spanish - 1 changes by Terkhen 19:34:15 <CIA-1> OpenTTD: tamil - 15 changes by aswn 19:34:26 <andythenorth> maybe config parser should be a separate module 19:34:28 *** flaa [~flaa@089-101-093077.ntlworld.ie] has quit [Quit: leaving] 19:35:30 *** Pixa [~pixa@85.210.71.22] has joined #openttd 19:35:41 *** _11Runner_ [~Daniel@c-24-20-61-147.hsd1.or.comcast.net] has joined #openttd 19:48:14 *** LordAro [~LordAro@host86-156-237-225.range86-156.btcentralplus.com] has quit [Quit: KVIrc 4.0.4 Insomnia http://www.kvirc.net/] 19:50:29 *** pjpe [ade6a119@ircip1.mibbit.com] has joined #openttd 19:51:47 <Eddi|zuHause> what happened to the idea to make nmlc ignore the value of the magic pink palette entries? 19:52:19 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has left #openttd [] 19:53:00 *** FLHerne [~francis_h@dsl-217-155-24-22.zen.co.uk] has joined #openttd 19:56:19 <michi_cc> Today's nightly will be delayed by a few minutes till we sort out a code problem :) 19:57:46 *** HerzogDeXtEr [~Flex@88.130.185.10] has joined #openttd 20:04:19 *** HerzogDeXtEr1 [~Flex@i59F6DBA2.versanet.de] has quit [Ping timeout: 480 seconds] 20:08:18 <andythenorth> so does this look like a sane way to edit a newgrf? http://paste.openttdcoop.org/show/1056/ 20:08:29 <andythenorth> I could add comments 20:09:19 *** Pixa [~pixa@85.210.71.22] has quit [Read error: Connection reset by peer] 20:09:31 *** Pixa [~pixa@85.210.71.22] has joined #openttd 20:10:07 *** tensai_cirno [~cirno@77.232.15.216] has quit [Remote host closed the connection] 20:10:16 <CIA-1> OpenTTD: michi_cc * r23893 /trunk/src/spriteloader/grf.cpp: -Change: [NewGRF] Extended chunked sprite encoding to work for bigger sprites. 20:10:36 <michi_cc> Thank you for your patience, we now resume or regular nightly service :) 20:14:01 <Alberth> thank you for your nice announcements :) 20:15:28 <Alberth> andythenorth: looks like it needs a default entry, which you use as base 20:15:43 <andythenorth> ? 20:16:08 <planetmaker> Eddi|zuHause: iirc it was considered a nice idea. But no-one wrote code so far 20:16:13 <Alberth> or just default properties 20:18:57 <andythenorth> you refer to things that are duplicated so could be defaults? 20:19:00 <andythenorth> or something else 20:20:37 <Alberth> yes, either seperately for each property, or per vehicle (eg 'default = <section-name>') 20:20:44 <__ln__> anyone been to Falkland Islands? 20:21:05 <Alberth> so you just need to list the differences 20:21:28 <andythenorth> ok 20:21:29 <andythenorth> hmm 20:21:43 <Alberth> and aligning the '=' would make it much more readable 20:21:49 <andythenorth> mostly the options should be different, as each vehicle should be unique 20:21:58 <andythenorth> but there are some that are choices from a limited list 20:22:02 *** pjpe [ade6a119@ircip1.mibbit.com] has quit [Quit: http://www.mibbit.com ajax IRC Client] 20:22:55 <Eddi|zuHause> falkland islands has a mine field. and the penguins are light enough to not trigger the mines, so they actually now have a protected area :) 20:23:48 <__ln__> nice 20:23:53 * andythenorth ponders a way to do 30 * ' ' 20:23:59 <andythenorth> to get 30 spaces 20:24:07 <Alberth> andythenorth: ok, not much use thus 20:24:35 <Alberth> andythenorth: ' ' * 30 20:24:40 <andythenorth> really? 20:24:46 <Eddi|zuHause> Alberth: doesn't python do that natively? 20:24:51 <Eddi|zuHause> andythenorth: i meant 20:25:15 <andythenorth> I was going to do ' '.join([0:30]) or such 20:25:25 <andythenorth> guess that's silly 20:25:26 <Alberth> oh, even 30 * ' ' works :o 20:25:47 <Alberth> Eddi|zuHause: I thought you had to put the string first 20:25:54 <andythenorth> Alberth: closer? http://213.133.67.181:8192/zz_dangerous_things/tt_foundry/sets/BANDIT/render_trucks_to_config_file 20:26:21 *** mahmoud [~KEM@ALyon-158-1-113-57.w90-29.abo.wanadoo.fr] has quit [Read error: Connection reset by peer] 20:26:37 *** Biolunar [~mahdi@blfd-4d08fee0.pool.mediaWays.net] has quit [Quit: All your IRC are belong to us] 20:27:15 *** Biolunar [~mahdi@blfd-4d08fee0.pool.mediaWays.net] has joined #openttd 20:30:31 <Alberth> http://paste.openttdcoop.org/show/1058/ somewhat nicer layout :) 20:30:58 <andythenorth> ho 20:31:03 <andythenorth> indeed 20:31:18 <andythenorth> there is but one small problem 20:31:23 <andythenorth> I am lazy :P 20:31:40 <andythenorth> this is the script on the cms that outputs the config file 20:31:41 <andythenorth> http://paste.openttdcoop.org/show/1059/ 20:31:51 <andythenorth> making it output in your format is not hard 20:32:04 <andythenorth> it just means changing the last few lines 20:32:50 <Alberth> ok :) I just grouped similar setting next to each other in blocks 20:32:55 <andythenorth> could write a python script in the repo to do the reformat 20:33:00 <andythenorth> but that's a bit magical 20:33:02 <andythenorth> gah 20:33:15 *** SamCat [~samantha@c-98-234-64-12.hsd1.ca.comcast.net] has quit [Quit: Leaving.] 20:33:22 <andythenorth> now I'll have to change the cms script :) 20:33:32 <andythenorth> "look what you made me do" 20:33:46 <Alberth> make a ini-file template :p 20:33:50 <andythenorth> could do 20:33:52 <andythenorth> yes 20:33:58 <andythenorth> why not 20:34:06 <andythenorth> maybe you could? 20:34:11 <andythenorth> you can learn tal that way :P 20:34:17 * andythenorth will do it though 20:36:50 *** Pixa [~pixa@85.210.71.22] has quit [Read error: Connection reset by peer] 20:37:01 *** Pixa [~pixa@85.210.71.22] has joined #openttd 20:42:08 *** pjpe [ade6a119@ircip3.mibbit.com] has joined #openttd 20:42:11 *** pjpe [ade6a119@ircip3.mibbit.com] has quit [] 20:42:14 *** pjpe [ade6a119@ircip4.mibbit.com] has joined #openttd 20:42:31 *** bryjen [~bryjen@75.81.252.118] has joined #openttd 20:45:32 *** DDR [~chatzilla@142.179.78.88] has joined #openttd 20:51:28 *** mahmoud [~KEM@ALyon-158-1-113-57.w90-29.abo.wanadoo.fr] has joined #openttd 20:58:56 *** Keyboard_Warrior [~holyduck@ip-85-155-106-77.eidsiva.net] has joined #openttd 21:00:50 <CIA-1> OpenTTD: michi_cc * r23894 /trunk/src/spriteloader/grf.cpp: -Fix (r23893): Use the right variable, not the one that's always going to be 0. 21:01:05 <michi_cc> All the effort, and still a slightly broken nightly :( 21:04:05 *** eQualizer [~lauri@dyn-xdsl-77-86-195-47.nebulazone.fi] has joined #openttd 21:06:28 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has quit [Ping timeout: 480 seconds] 21:17:25 *** Phoenix_the_II [~ralph@home.deboom.biz] has joined #openttd 21:19:14 *** DDR [~chatzilla@142.179.78.88] has quit [Quit: ChatZilla 0.9.88 [Firefox 9.0.1/20111221202647]] 21:19:33 *** tparker [~tparker@2600:3c03::1d:4242] has quit [Quit: brb] 21:20:22 *** DDR [~chatzilla@142.179.78.88] has joined #openttd 21:21:47 <Hirundo> hmm... how does the 32bpp 'mask' thingie work? 21:22:12 *** tparker [~tparker@2600:3c03::1d:4242] has joined #openttd 21:23:10 *** Keyboard_Warrior is now known as theholyduck 21:23:31 *** _11Runner_ [~Daniel@c-24-20-61-147.hsd1.or.comcast.net] has quit [Quit: Leaving.] 21:24:31 <Hirundo> you specify a palette colour, and the pixel is recoloured as if it were that colour but with intensity / alpha adjustments? 21:24:32 <Hirundo> or not? 21:26:02 <michi_cc> If the pixel has a mask with color index 0, the blitter simply takes the rgb colour. If it is non-zero, the rgb part is converted to a brightness value which is then used to modulate the palette colour from the mask pixel. 21:27:59 <michi_cc> Very simplified pseudo-code: colour = (mask == 0) ? rgb : pal2rgb[mask] * max(r,g,b) / 64 21:28:42 *** vodka [~paper@212.Red-83-55-54.dynamicIP.rima-tde.net] has quit [Quit: Leaving] 21:39:38 <andythenorth> Alberth: http://213.133.67.181:8192/zz_dangerous_things/tt_foundry/sets/BANDIT/render_trucks_to_config_file 21:39:46 <andythenorth> took longer than it should have due to errors by me :P 21:40:15 *** Markavian` [~Markavian@j616s.co.uk] has joined #openttd 21:43:43 *** Markavian` [~Markavian@j616s.co.uk] has quit [] 21:45:32 *** Markavian [~Markavian@j616s.co.uk] has quit [Ping timeout: 480 seconds] 21:49:09 <Alberth> looks nice, perhaps add a space behind the '=' ? 21:52:30 *** Progman [~progman@p57A19F27.dip.t-dialin.net] has joined #openttd 21:52:43 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has quit [Read error: Connection reset by peer] 21:52:58 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has joined #openttd 22:02:33 *** peteris [~peteris@78.84.97.170] has joined #openttd 22:03:44 *** cmircea [~cmircea@86.124.218.99] has quit [Read error: Connection reset by peer] 22:03:49 *** Belugas [~belugas@216.191.111.237] has quit [Ping timeout: 480 seconds] 22:07:46 *** Belugas [~belugas@216.191.111.237] has joined #openttd 22:07:49 *** mode/#openttd [+o Belugas] by ChanServ 22:10:10 *** cmircea [~cmircea@86.124.218.99] has joined #openttd 22:11:39 *** kkb110_ [~kkb110@cpe-69-203-124-125.nyc.res.rr.com] has quit [Ping timeout: 480 seconds] 22:12:15 *** Brianetta [~brian@188-220-91-30.zone11.bethere.co.uk] has joined #openttd 22:15:36 <andythenorth> Alberth: done: http://213.133.67.181:8192/zz_dangerous_things/tt_foundry/sets/BANDIT/render_trucks_to_config_file 22:20:25 <Alberth> finished :) 22:25:14 *** tparker [~tparker@2600:3c03::1d:4242] has quit [Quit: leaving] 22:26:24 <andythenorth> Alberth: thanks for the config file tip, it's a good format 22:26:49 <andythenorth> also - Eddi|zuHause - thanks, what you did with CETS encouraged me that python is a good route 22:27:05 <andythenorth> + I couldn't have hooked up the makefile alone without the copy-paste from CETS 22:28:05 *** tparker [~tparker@2600:3c03::1d:4242] has joined #openttd 22:29:03 <andythenorth> hmm 22:29:25 <andythenorth> if a file doesn't get processed by python, but is included by python, should the extension be .nml? or .pynml? 22:29:34 <andythenorth> before I rush into a commit ;P 22:29:40 <Alberth> .py :p 22:30:04 <planetmaker> if it's pure nml... either .nml or .pnml, I'd say 22:30:24 <andythenorth> it's pure nml 22:30:34 <andythenorth> cargo table 22:30:38 <andythenorth> disable default vehicles 22:30:45 <andythenorth> I'm not even sure they should be separate files 22:31:08 <andythenorth> one of them is 2 loc, 50% of that is comment :P 22:31:17 <andythenorth> seems dubious 22:31:22 <Alberth> .nml then 22:31:33 *** xahodo [53a011b0@ircip4.mibbit.com] has joined #openttd 22:32:04 <xahodo> Hello 22:32:43 <xahodo> Hello 22:32:56 <__ln__> echo 22:33:03 <xahodo> I've got an assertion failed when I choose advanced settings in the main menu. 22:33:56 <Rubidium> sounds like you patched OpenTTD 22:34:08 <xahodo> Nope, nightly. 22:34:09 <MJP> same problÚme here 22:34:19 <MJP> zoom_min not found 22:35:19 * Rubidium blames r23888 22:35:35 <Rubidium> michi_cc: ^ (good luck) 22:36:16 <xahodo> In r23874 advanced settings works as normal. 22:37:44 <xahodo> same for r23877 22:39:28 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has quit [Read error: Connection reset by peer] 22:39:36 * andythenorth wonders if .pylng is good for .lng files templated with python? 22:39:59 *** theholyduck [~holyduck@ip-85-155-106-77.eidsiva.net] has joined #openttd 22:41:51 *** xahodo [53a011b0@ircip4.mibbit.com] has quit [Quit: http://www.mibbit.com ajax IRC Client] 22:42:54 *** Phoenix_the_II [~ralph@home.deboom.biz] has quit [Ping timeout: 480 seconds] 22:46:56 <andythenorth> do I need to put a GPL notification in every file? 22:46:58 <Alberth> perhaps use a .pytemplate or so, instead of the zillion different extensions? 22:47:28 <andythenorth> you mention that after i commit :P :o :D 22:48:28 <Alberth> haven't you yet learned that 8 minutes is nothing in IRC time? ;) 22:49:01 <andythenorth> I think I'll leave them be for now 22:49:07 <Alberth> good idea 22:49:11 <andythenorth> I think the lesson for me here is that I should have used .pt 22:49:18 <andythenorth> which is what all the docs refer to 22:49:32 <andythenorth> and the same as I type for these files every day of the week at work :P 22:49:48 <Alberth> it looks like a translation :) 22:50:04 <andythenorth> .pt? 22:50:46 <Alberth> yeah, not sure why I associate it with translations, perhaps the gnutext thngie uses it 22:51:27 *** Progman [~progman@p57A19F27.dip.t-dialin.net] has quit [Remote host closed the connection] 22:51:42 <andythenorth> it's quite widely used, 7 or 8 different meanings it seems 22:53:27 *** lmergen [~lmergen@5352EA70.cm-6-3d.dynamic.ziggo.nl] has quit [Ping timeout: 480 seconds] 22:58:12 <Alberth> good night 22:58:39 *** Alberth [~hat3@a82-95-164-127.adsl.xs4all.nl] has left #openttd [] 22:59:26 <andythenorth> moi aussi 22:59:27 *** andythenorth [~Andy@host86-169-180-203.range86-169.btcentralplus.com] has quit [Quit: andythenorth] 23:03:00 <CIA-1> OpenTTD: michi_cc * r23895 /trunk/src/table/ (misc_settings.ini settings.ini): -Revert (r23888): Broken and not even needed anymore in the container format 2 implementation that was committed. 23:03:04 <CIA-1> OpenTTD: michi_cc * r23896 /trunk/src/spritecache.cpp: -Fix (r23884): Don't free unallocated memory. 23:07:40 <CIA-1> OpenTTD: michi_cc * r23897 /trunk/src/ (6 files in 2 dirs): -Feature: [NewGRF] 32bpp sprites in GRFs. 23:07:45 <CIA-1> OpenTTD: michi_cc * r23898 /trunk/ (8 files in 4 dirs): -Remove: PNG sprite loader. 23:23:28 <Hirundo> r23898 does not appear in the hg repo 23:25:00 *** kkb110_ [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has joined #openttd 23:27:42 <michi_cc> No idea, it does appear on the git repo though. 23:28:05 <michi_cc> So it can't be the complete convert process that is stuck. 23:30:13 *** TWerkhoven[l] [~twerkhove@cpc3-linl7-2-0-cust522.sgyl.cable.virginmedia.com] has quit [Quit: He who can look into the future, has a brighter future to look into] 23:33:10 *** macee [~macee@dsl5402C703.pool.t-online.hu] has joined #openttd 23:34:22 *** sla_ro|master [~slaco@95.76.26.172] has quit [Quit: ttw.sla-company.net - free first person shooter based of c&c 3] 23:41:02 <__ln__> http://www.flightradar24.com/RYR94TC http://www.flightradar24.com/EZY2270 23:41:41 <Elukka> random flights? 23:46:34 *** TGYoshi [~TGYoshi@86.81.146.146] has quit [Quit: Popidopidopido] 23:46:39 *** macee [~macee@dsl5402C703.pool.t-online.hu] has left #openttd [] 23:47:11 <__ln__> not very random 23:47:42 <Elukka> well, what's notable with them? 23:47:53 *** Markavian [~Markavian@j616s.co.uk] has joined #openttd 23:48:56 <Elukka> the ryanair one looks like it's been stuck for a while but i'm not sure that's particularly weird... 23:49:41 <Elukka> i imagine there might be issues with snow 23:49:45 <Elukka> on airports 23:50:38 <__ln__> and the ezy one doesn't look like it's been stuck for a while? 23:52:33 <Elukka> i guess 23:58:26 *** HerzogDeXtEr [~Flex@88.130.185.10] has quit [Quit: Leaving.] 23:58:32 *** HerzogDeXtEr [~Flex@88.130.185.10] has joined #openttd 23:58:41 *** HerzogDeXtEr [~Flex@88.130.185.10] has quit []