Back to Home / #openttd / 2012 / 04 / Prev Day | Next Day
#openttd IRC Logs for 2012-04-20

---Logopened Fri Apr 20 00:00:35 2012
00:04-!-supermop [] has quit [Quit: supermop]
00:43-!-andythenorth [] has joined #openttd
00:45<DDR>Heck yeah... random refinery just built up opposite to where I was shipping oil to another refinery, so I switched the truck feeders to that refinery to transfers and now my ships are taking oil both ways for double profit! :D
00:47-!-andythenorth [] has left #openttd []
00:54<Rhamphoryncus>oh nice
00:56-!-Eddi|zuHause [] has quit []
00:56-!-Eddi|zuHause [] has joined #openttd
01:12-!-telanus [~Barney_Er@] has joined #openttd
01:26-!-Prof_Frink [] has quit [Ping timeout: 480 seconds]
01:29-!-roadt__ [~roadt@] has joined #openttd
01:57-!-KouDy [~KouDy@] has quit [Quit: Leaving.]
02:00-!-KouDy [~KouDy@] has joined #openttd
02:04-!-mahmoud [] has joined #openttd
02:10-!-HerzogDeXtEr [] has quit [Read error: Connection reset by peer]
02:20-!-kkb110_ [] has quit [Read error: Operation timed out]
02:29-!-cypher [] has joined #openttd
02:29<Eddi|zuHause>[11. April 2012] [21:35:05] <__ln__> <--
02:32<Rhamphoryncus>Eddi|zuHause: words escape me
02:32<Rhamphoryncus>Well actually, I can think of a few words, but none I want to say ;)
02:34-!-kkb110_ [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has joined #openttd
02:35-!-roadt__ [~roadt@] has quit [Ping timeout: 480 seconds]
02:38-!-DOUK [] has joined #openttd
02:43-!-mahmoud [] has quit [Ping timeout: 480 seconds]
02:47-!-TWerkhoven [] has joined #openttd
02:54-!-fonsinchen [] has joined #openttd
03:05-!-cypher [] has quit [Ping timeout: 480 seconds]
03:20<Rhamphoryncus>fun fact: evil mode can be cleared by imposing a temporary speed limit
03:21<Rhamphoryncus>This spaces out the trains that aren't there yet, letting the backlog clear and full speed resume
03:22<NGC3982>Eddi|zuHause: haha
03:26-!-DOUK [] has quit [Ping timeout: 480 seconds]
03:26-!-krinn [] has quit [Quit: Quitte]
03:29-!-TGYoshi [~TGYoshi@] has joined #openttd
03:40-!-Elukka [] has joined #openttd
03:54-!-TWerkhoven [] has quit [Ping timeout: 480 seconds]
03:58-!-roadt__ [~roadt@] has joined #openttd
04:05-!-DDR [] has quit [Quit: for the love of god this is not safe for work]
04:24-!-sla_ro|master [~slaco@] has joined #openttd
04:31-!-kkb110_ [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has quit [Remote host closed the connection]
04:34-!-kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has joined #openttd
04:43-!-TWerkhoven[l] [] has joined #openttd
04:48-!-mal2 [] has joined #openttd
04:55-!-goodger [] has joined #openttd
05:14-!-ffpp [] has joined #openttd
05:21-!-mal2 [] has quit [Ping timeout: 480 seconds]
05:25-!-kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has quit [Ping timeout: 480 seconds]
05:40<NGC3982>ah, NGC3982 has some competition.
05:41<NGC3982>NGC4258 (M106) is fantasticly profiled by CXC with the blue x-rays and red IR
05:43-!-APTX [] has quit [Ping timeout: 480 seconds]
05:55-!-Rhamphoryncus [] has quit [Quit: Rhamphoryncus]
06:11-!-mal2 [] has joined #openttd
06:11-!-pugi [] has joined #openttd
06:14-!-ffpp [] has quit [Ping timeout: 480 seconds]
06:15-!-drac_boy [] has joined #openttd
06:16-!-fonsinchen [] has quit [Ping timeout: 480 seconds]
06:28-!-Guest1005 is now known as planetmaker
06:39-!-FLHerne [] has joined #openttd
06:41<drac_boy>hi FLHerne :)
06:55-!-APTX [] has joined #openttd
07:09-!-HerzogDeXtEr [] has joined #openttd
07:10-!-mal2 [] has quit [Ping timeout: 480 seconds]
07:18-!-zooks [~zooks@] has joined #openttd
07:31-!-Elukka [] has quit []
07:43-!-roboboy [] has joined #openttd
07:46-!-fonsinchen [] has joined #openttd
07:56-!-Firartix [~artixds@] has joined #openttd
08:00-!-DOUK [] has joined #openttd
08:03-!-roboboy [] has quit [Ping timeout: 480 seconds]
08:05-!-glx [glx@2a01:e35:2f59:c7c0:3dd9:1ef1:4c78:8333] has joined #openttd
08:05-!-mode/#openttd [+v glx] by ChanServ
08:23-!-Elukka [] has joined #openttd
08:58<Ammler>[14:56] <vuntz> grr, tarball is openttd-1.2.0-source.tar.xz (not the usual scheme) <-- just you know, I am not the only guy not liking the uncommon -source
08:59<planetmaker>what is usual? *-src-*
08:59<Ammler>the source bundle is usually called package-version.tar.gz
09:01<planetmaker>aha. And how do you distinguish it from a binary package?
09:01<Ammler>the binary package does have a arch in the bundle name
09:01<peter1138>by the lack of a binary indicator
09:02<peter1138>but we've done it this way since forever
09:02<peter1138>don't think it makes a big difference :)
09:03<Ammler>well, it needs custom config
09:04<Ammler>the question is, is more complicated to fix it and so current configs needs to change to default or always need to setup special config for openttd
09:04<peter1138>custom config of what?
09:05<Ammler>to get upstream version
09:05<Ammler>to prepare source bundle
09:06<peter1138>you're talking about something specific without saying what
09:06<peter1138>i don't require any 'config' to grab the latest source and compile it
09:06<Ammler>e.g on rpm, you need to specify the package name as it is not default
09:06<Ammler>like %setup -n openttd-version-source instead just %setup
09:07<peter1138>once that line is there, how many times do you need to reenter it?
09:08<Ammler>as said, hat is the question, what is easier to change existing configs or keep "wrong config"
09:08<Rienzilla>can a dedicated server go on pause if there's no client connected?
09:08<peter1138>it's not "wrong"
09:08<peter1138>Rienzilla, yes
09:09<peter1138>it's not that uncommon either
09:09<peter1138>Rienzilla, check the settings
09:09<Ammler>you know a 2nd project using that uncommon file sheme?
09:13<Rienzilla>foudn it
09:14-!-zooks [~zooks@] has quit [Ping timeout: 480 seconds]
09:24<blathijs>Ammler: planetmaker: I am also slightly discontent with the -source postfix, FWIW
09:24<blathijs>Though it just means that I manually need enter the package version whenever I import a new OpenTTD version, since git-buildpackages autodetects the version as 1.2.0-source
09:39<Ammler>wow, that is even worse as for us :-)
09:39-!-MNIM [] has quit [Remote host closed the connection]
09:40<Ammler>well, the lack of customation for such version grep is prove to me that it _is_ uncommon
09:43-!-kkb110_ [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has joined #openttd
09:46-!-TWerkhoven [] has joined #openttd
09:50<blathijs>Ammler: Well, it's not so bad. I can handle a few extra keystrokes every few months, really :-)
09:53-!-kkb110_ [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has quit [Ping timeout: 480 seconds]
09:58<Ammler>it is less for me, it is just that evryone who setup it needs to customize it
10:05-!-Sacro_ [~ben@] has joined #openttd
10:05-!-Sacro_ [~ben@] has quit []
10:09<blathijs>Ammler: You mean everyone who wants to compile the rpm?
10:10<Eddi|zuHause>more like everyboy who writes a specfile
10:11<Eddi|zuHause>which i don't think happens often... people will just copy an existing one
10:11<Eddi|zuHause>but i don't think i fully understood the problem anyway
10:18-!-Arafangion [] has quit [Remote host closed the connection]
10:24<Ammler>blathijs: no, everyone who setup build
10:25<Ammler>or monitoring version change etc,.
10:25<blathijs>Ah, so no big deal
10:27<Ammler>well, if you fix it, it is work for me, but still I would prefer it :-)
10:53-!-Firartix [~artixds@] has quit [Ping timeout: 480 seconds]
10:57-!-Prof_Frink [] has joined #openttd
11:04<drac_boy>zzz? heh
11:08-!-kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has joined #openttd
11:09-!-Progman [] has joined #openttd
11:21-!-andythenorth [] has joined #openttd
11:23-!-cypher [] has joined #openttd
11:34<drac_boy>hmm vineyards or not
11:34-!-mal2 [] has joined #openttd
11:40-!-supermop [] has joined #openttd
11:48-!-drac_boy [] has left #openttd [I'm done being in this room!]
11:57-!-tokai|noir [] has joined #openttd
11:57-!-mode/#openttd [+v tokai|noir] by ChanServ
12:02<supermop>more alcohol in ottd
12:03<supermop>better throw in poppy fields and marijuana plantations too
12:03-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
12:10-!-fonsinchen [] has quit [Remote host closed the connection]
12:11-!-oskari89 [] has joined #openttd
12:14<telanus>just making certain: da{P g e} would give me dag and dae depending on singular vs multiple
12:17<telanus>thank You
12:19<Eddi|zuHause>vineyards produce fruit, not alcohol :)
12:19-!-Biolunar [] has joined #openttd
12:21<planetmaker>Eddi|zuHause: depends on how ripe you pick the grapes ;-)
12:24<FLHerne>I've had grape juice accidentally ferment in my fridge before...the carton burst in the end, made a sticky mess :P
12:27<Eddi|zuHause>i've had juice ferment outside the fridge... but IN the fridge? how many years did it stand there?!
12:29-!-Devroush [] has joined #openttd
12:31<supermop>well lager yeast could work at fridge temperature
12:31<supermop>not sure i'd want a fruit just fermented with them though
12:31-!-Chris_Booth [] has joined #openttd
12:34<NGC3982>FLHerne: oh fod..
12:34<NGC3982>or god..
12:34-!-Chris_Booth is now known as Guest1087
12:34-!-Chris_Booth [] has joined #openttd
12:34-!-ffpp [] has joined #openttd
12:35<FLHerne>how many years did it stand there?! Not that long actually. The fridge is a bit unreliable though...#
12:36<ffpp>does anybody else think that it would be very helpful to have additional information on cargo you deliver in the game ? like average travel time on a given multi-hop route or something like this
12:37<NGC3982>how can cargo affect average travel time?
12:37<ffpp>not because it affects it, just to see how long it takes for it to travel
12:38<NGC3982>i see.
12:38<ffpp>in large networks where cargo has to take many hops, I find it often difficult to judge which routes lack efficiency
12:39<ffpp>vehicle income and profit is always skewed by transfer vs. final income percentages
12:39-!-Chris_Booth [] has quit [Quit: ChatZilla [Firefox 12.0/20120411064248]]
12:40-!-Guest1087 [] has quit [Ping timeout: 480 seconds]
12:49-!-snack2 [] has joined #openttd
12:52<FLHerne>stupid plasma-desktop
12:54<@Terkhen>too hot?
12:55<FLHerne>I try to move one icon, and then the whole thing goes berserk again :@
12:58<supermop>yeah don't touch a plasma
12:59<supermop>im sure it will ionize your skin
13:00-!-Alberth [] has joined #openttd
13:00-!-mode/#openttd [+o Alberth] by ChanServ
13:02<supermop>i desperately need to find someone to go with me to the opera tomorrow
13:03<andythenorth>supermop: this may not be the best place to advertise ;)
13:03<andythenorth>unless friend-of-a-friend kicks in ;)
13:03<andythenorth>tried Facebook :o
13:04<andythenorth>Alberth: o/
13:04<@Alberth>hi andy
13:05<supermop>also need someone to go to record store day in my place
13:08-!-TWerkhoven2[l] [] has joined #openttd
13:12-!-theholyduck [~holyduck@] has joined #openttd
13:13-!-pugi [] has quit []
13:15-!-|Jeroen| [] has joined #openttd
13:15-!-TWerkhoven[l] [] has quit [Ping timeout: 480 seconds]
13:16<andythenorth>^ this is happening because I removed some strings for station names?
13:16<andythenorth>thereby breaking savegames?
13:17<andythenorth>he's changed the bug report :P
13:18<@Alberth>self-solving bug :)
13:19<andythenorth>maybe not
13:19*andythenorth might have broken all savegames
13:19<andythenorth>and in my experience, removing strings causes ottd crashes
13:20<@Alberth>how can you change a newgrf sitting at my harddisk?
13:21<planetmaker>spooky action at the distance, of course!
13:21<@Alberth>especially, as it was only virtually at my disk :p
13:21<andythenorth>I can break your game with the aid of bananas :P
13:23<planetmaker>andythenorth: nope. OpenTTD won't update existing savegames
13:23<planetmaker>unless you manually force that
13:24<Eddi|zuHause>in that case, change at least the min-compatible-version
13:24<Eddi|zuHause>btw. openttd should try harder to prevent you from (manually) updating to a not compatible version
13:26<@Alberth>nah, you have to be able to shoot yourself in the foot every now and then :p
13:26<@Alberth>like I just did, my 'hg fetch' of firs is broken
13:26<andythenorth>so ottd won't update a FIRS 0.7.2 savegame to 0.7.3 ?
13:27<planetmaker>Eddi|zuHause: how should it do that?
13:27*andythenorth never plays the game so doesn't pay attention
13:27<planetmaker>doesn't it prevent you already quite hard to update to an incompatible one?
13:27<planetmaker>just reload_newgrfs won't do it
13:27<planetmaker>if you overwrite the file
13:27<@Alberth>andythenorth: it tries to find an exact match first
13:27<Eddi|zuHause>planetmaker: no. i mean if you edit the newgrf config from the gui
13:28<Eddi|zuHause>planetmaker: it curently makes no difference if you change to a compatible or incompatible grf
13:28<planetmaker>on a running game? Why should it? You're then a developer and know what you do
13:28-!-pugi [] has joined #openttd
13:28<planetmaker>by definition ;-)
13:28<Eddi|zuHause>planetmaker: no, why would i know that? it doesn't say in the GUI
13:28-!-Wolf01 [~wolf01@] has joined #openttd
13:28<andythenorth>so I don't have to leave all the legacy strings in place?
13:29<planetmaker>Eddi|zuHause: a non-developer can't change it in the GUI
13:29<planetmaker>(on an existing map)
13:29<@Alberth>andythenorth: I don't think so, the savegame contains the exact version newgrf that is used, and it will reload that
13:29<Eddi|zuHause>planetmaker: but i'm a developer
13:29<Eddi|zuHause>planetmaker: i'm talking specifically about me
13:29<@Alberth>hello Wolf01
13:29<+michi_cc>andythenorth: Make sure to bump the compatible version, and then you can just respond with 'changing NewGRFs in game is not supported'.
13:29<Eddi|zuHause>planetmaker: i get no notice whether my replacement now is to a compatible or incompatible version, even though the game could easily test it
13:29<planetmaker>andythenorth: legacy strings are only useful for people who want to update the grf on a running game
13:30<planetmaker>Like you. And maybe a couple of other people
13:30<@Alberth>Eddi|zuHause: perhaps you should protect you from yourself and refrain from using the newgrf dev setting
13:30<planetmaker>"Normal" users don't update NewGRFs on existing maps
13:30<Eddi|zuHause>Alberth: that's not the point
13:30<planetmaker>But removing the strings, of course, requires you to up the min_compatible_version, andythenorth
13:31<@Alberth>planetmaker: "Normal" devs also don't :)
13:31<andythenorth>savegame compatibility is confusing :P
13:31<andythenorth>why do I attempt to preserve compatibility if the game ignores that?
13:31<@Alberth>andythenorth: just make every version incompatible with every other version :)
13:32<andythenorth>I try quite hard to not require version bumps, on the basis that it doesn't ruin people's saves
13:32<andythenorth>seems to be incorrect assumption
13:32-!-|Jeroen| [] has quit [Quit: oO]
13:32<@Alberth>andythenorth: it only becomes important if I don't have the exact version, I guess
13:33<planetmaker>andythenorth: ^^
13:33<TWerkhoven>doesnt openttd automatically retrieve old versions (if available on bananas) if a savegame/server requires it?
13:33<planetmaker>(and if the exact version is not on bananas)
13:33<@Alberth>which is a non-issue, as every version is at bananas
13:33<planetmaker>andythenorth: it is important for people who play with nightly versions or who actually DO change newgrfs on their savegames
13:33<@Alberth>TWerkhoven not automatically
13:34<@Alberth>but you can click 'find missing content' :)
13:34<planetmaker>andythenorth: you might want to do that to do the favour for yourself. To keep your testing savegames
13:34<Eddi|zuHause>maybe the game should make it easier for non-developers to "update" (not add) grfs?
13:36*Alberth is not getting within 20 miles from that can of worms
13:36-!-Chris_Booth [] has joined #openttd
13:37<TWerkhoven>well, thats what i meant
13:37-!-Biolunar_ [] has joined #openttd
13:39<Eddi|zuHause>well, currently the min-compatible-version has exactly no use
13:40<Eddi|zuHause>non-developers can't use it because they can't change newgrfs, and developers can't use it because it's completely hidden from them
13:40<@Alberth>so what remains is removing it entirely :p
13:40-!-kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has quit [Ping timeout: 480 seconds]
13:41<andythenorth>I don't really understand the system
13:41<andythenorth>I have grfid
13:41<andythenorth>min-compatible version
13:41<andythenorth>[shrug] :)
13:42<andythenorth>I understand the core issue, but not the solutions we have
13:42<supermop>i overheard two people on the street last night talking about lawyers using github
13:42<supermop>for domething? i guess drafting documents?
13:43<planetmaker>andythenorth: savegame: grfID + md5sum --> identical file, if accessible
13:44<planetmaker>grfID + version + not matching md5sum --> use the file with the highest rev which still has the min_compatible_version which is lower than version
13:44<planetmaker>will only be used if a newgrf with matching md5sum can't be found nor downloaded
13:44<andythenorth>so...I should leave the legacy strings in?
13:44-!-Biolunar [] has quit [Ping timeout: 480 seconds]
13:44<andythenorth>for maximum compatibility
13:44<andythenorth>I can leave them in english only?
13:45<andythenorth>it might cause bug reports, but not crashes
13:45<planetmaker>Remove all or none IMHO
13:45<planetmaker>but not translations only. That sucks
13:45<CIA-1>OpenTTD: translators * r24156 /trunk/src/lang/ (afrikaans.txt italian.txt):
13:45<CIA-1>OpenTTD: -Update from WebTranslator v3.0:
13:45<CIA-1>OpenTTD: afrikaans - 36 changes by telanus
13:45<CIA-1>OpenTTD: italian - 12 changes by lorenzodv
13:45<planetmaker>it'll show as untranslated strings, also
13:45<planetmaker>and would be very annoying
13:45<andythenorth>now I have to go and find a changeset and forward merge it somehow :(
13:46<andythenorth>and it's a big commit, not atomic :P
13:50-!-andythenorth [] has quit [Read error: Connection reset by peer]
13:51-!-andythenorth [] has joined #openttd
13:54-!-Miguelzinho [~Miguelzin@] has joined #openttd
13:54<@Alberth>hmm, zou een language file met line wrapping niet veel handiger zijn?
13:55<Eddi|zuHause>that is very borderline amount of english in that line :p
13:56<@Alberth>transl: Would'nt a language file with multi-line wrapping be much more usueful?
13:56<@Alberth>Eddi|zuHause: I realized that too 30 seconds after entering it :p
13:59<telanus>andythenorth: is there an afrikaans translation of FIRS?
14:00<andythenorth>telanus: dunno
14:00-!-TheMask96 [] has quit [Ping timeout: 480 seconds]
14:00<planetmaker>telanus: not currently. But you're certainly free to provide it
14:00<andythenorth>Alberth: wrapping lang files :o
14:00<andythenorth>imagine :P
14:00<andythenorth>freedom from horizontal scrolling :P
14:01<planetmaker> <-- see there, telanus. And get the language files from
14:02*andythenorth bumps the savegame
14:02*Alberth bumps andy
14:03<andythenorth>I need a commit prefix for 'broke your savegames' :P
14:03-!-TheMask96 [] has joined #openttd
14:05<@Alberth>-Change: Let's not support old games any more.
14:05-!-valhallasw [] has joined #openttd
14:07<andythenorth>yeah that's roughly what I chose :P
14:08<telanus>Thank Planetmaker
14:08<andythenorth>"Change: broke all your savegames because I can't be bothered to diff a changeset" :P
14:11-!-ffpp [] has quit [Quit: ffpp]
14:12*andythenorth wonders what he started with this FIRS US / Brit English thing
14:14<@Alberth>'prevent opening' <-- what string is used for that text?
14:19<Eddi|zuHause>andythenorth: US and GB english have two different language IDs, so you can offer both
14:20<andythenorth>I know :)
14:20<andythenorth>but all the rivet counters have popped up with opinions :)
14:20<andythenorth>is there a language ID for 'northish'?
14:21<@Alberth>or 'pirate language'? :)
14:21<andythenorth>bork bork bork
14:22<andythenorth>google has a number of silly languages
14:23<FLHerne>andythenorth: US v UK English is because there are differences :P
14:24<FLHerne>And people sometimes find it irritating when the 'wrong' spelling/name is used
14:25-!-snack23 [] has joined #openttd
14:26<@Alberth>indeed, pirate language should be default!! :p
14:28<andythenorth>I've been through that debate ;)
14:28<andythenorth>I've made the set mostly US, it irritates people
14:28-!-ctibor [~ctibor@] has quit [Read error: Connection reset by peer]
14:28-!-cypher [] has quit [Read error: Connection reset by peer]
14:28-!-ctibor [~ctibor@] has joined #openttd
14:28<FLHerne>andythenorth: You did, yes. It irritates me sometimes :P
14:29<@Alberth>FLHerne: make a better industry newgrf
14:29<planetmaker>nah, just help PaulC sort out the differences BE / AE / AU :-)
14:29-!-th_gergo [] has joined #openttd
14:30<andythenorth>declare yourself your own language
14:32-!-snack2 [] has quit [Ping timeout: 480 seconds]
14:32*andythenorth can't make FIRS tickets be 'fewer'
14:32<andythenorth>I close one, write 4 more :P
14:33-!-frosch123 [] has joined #openttd
14:33<andythenorth>so how do I add new translations?
14:33<planetmaker>to FIRS?
14:33<planetmaker>Just copy the lng file to the folder
14:33<planetmaker>add it.
14:34<andythenorth>I don't need to do any quality control?
14:34<planetmaker>make sure the language header is right
14:34<planetmaker>well. sure. You should test it for sanity
14:34<planetmaker>i.e. become a native speaker of that language and start the game with it :-)
14:34<planetmaker>you may skip the pre-requisit with knowledge of the language ;-)
14:34<planetmaker>but not the deduction :-P
14:35*andythenorth envisages someone trolling the grf with lots of 'your mum' jokes instead of industry names :P
14:35<planetmaker>lol :-)
14:35<andythenorth>we're very trusting about all this code we share around freely :P
14:36<andythenorth>I'll compile e.g. patches without reading them
14:36<andythenorth>be trivial to do something like a makefile attack with rm * -r
14:36<andythenorth>I'd run it :P
14:36<planetmaker>who says that they're not read?
14:37<andythenorth>I don't read things I apply ;)
14:37<andythenorth>I just curl and patch :P
14:39*Alberth check whether he can add his trollings into the FIRS repo
14:40<andythenorth>italian doesn't compile
14:40<andythenorth>@seen Snail
14:40<@DorpsGek>andythenorth: I have not seen Snail.
14:40<andythenorth>@seen snail
14:40<@DorpsGek>andythenorth: I have not seen snail.
14:40<andythenorth>issues with plurals
14:41<@Alberth>@seen snails
14:41<@DorpsGek>Alberth: I have not seen snails.
14:42<andythenorth>why would my shell crash :P How silly
14:42<@Alberth>it shouldn't :)
14:43<andythenorth>stupid mac
14:43<FLHerne> :P
14:44<CornishPasty>FLHerne: wat?
14:44<FLHerne>Linux on Apple hardware - Apple build quality, Linux not-awful-ness :D
14:44<andythenorth>one day Linux will be done
14:44<CornishPasty>My mac works just fine on OS X
14:44<andythenorth>the problem with OS X is, it's done, but is being undone
14:44<CornishPasty>Hmm, true
14:44<CornishPasty>Feature creep
14:44*andythenorth has become a conservative crusty in his old age
14:44<FLHerne>My macs work just fine on Linux :D
14:44<andythenorth>Feature uncreep :P
14:45<CornishPasty>2154 is the year of Linux on the desktop
14:46<@Alberth>andythenorth: mine builds ok, but I didn't clean it first
14:46<@Alberth>CornishPasty: yes, at the two desktops that still exist then :p
14:46<FLHerne>CornishPasty: 2012 is :P
14:46<andythenorth>Alberth: your copy of snail's translation? or your translation?
14:46<CornishPasty>FLHerne: lolrofl
14:46<@Alberth>andythenorth: firs trunk
14:47<andythenorth>I didn't commit italian yet
14:47<andythenorth>as it's broken :(
14:47<FLHerne>Linux derivatives are already the dominant OS on smartphones; soon will be on tablets
14:47-!-Chris_Booth [] has quit [Ping timeout: 480 seconds]
14:48-!-supermop [] has quit [Quit: supermop]
14:50<andythenorth>I have no idea how to fix plurals, esp. for a language I can't read :)
14:50<CornishPasty>They're the dominant OS on smartphones because Android is the new Symbian
14:51-!-krinn [] has joined #openttd
14:51<andythenorth>Android is, according to my friends who have to develop for it, a low-quality raging mess
14:51<krinn>hi all
14:51<andythenorth>whereas iOS is a relatively stable predictable environment
14:51-!-KritiK [] has joined #openttd
14:51<andythenorth>except that Apple will shaft you at any point with an update that breaks your app
14:52<CornishPasty>Or by not allowing your app onto the app store for <insert arbitrary reason>
14:52<andythenorth>at least there are only 2 predictable problems
14:52<andythenorth>whereas some of them now have over 1,000 variants to QA for
14:53<andythenorth>which is obviously impossible :P
14:53<krinn>querying if (!vehlist.IsEmpty()) print("aircraft="+cEngine.GetName(vehlist.Begin())+" r_dist="+distance+" e_dist="+AIEngine.GetMaximumOrderDistance(vehlist.Begin())); <<<-- i get e_dist=495616 for name=Douglas DC-8 so... bug ?
14:54<Eddi|zuHause>"it's stable. except when they break it on purpose"
14:54<andythenorth>rock, hard place
14:54<krinn>thru gui this model is set to 704 cases
14:55<planetmaker>@calc 704**2
14:55<@DorpsGek>planetmaker: 495616
14:55<planetmaker>get it? :-)
14:55<krinn>yep easy like that
14:57<krinn>just it's more than origin->target as this is a full go and back
14:57<andythenorth>if I'm breaking savegames, 0.8.0 makes more sense than 0.7.3
14:59<krinn>planetmaker, i now understand what you mean with the a->b->c trouble that a->c is too far
14:59-!-oskari892 [] has joined #openttd
14:59<krinn>but this is awful, this then not limit aircraft distance, this limit aircraft usage
15:00-!-telanus1 [~Barney_Er@] has joined #openttd
15:00<planetmaker>andythenorth: not necessarily
15:00<planetmaker>I'd do versions by features
15:00-!-telanus [~Barney_Er@] has quit [Ping timeout: 480 seconds]
15:00<planetmaker>depends on how you want to do it
15:00<andythenorth>I'm kind of easy, but I'd expect 0.x.y to be compatible with other 0.x
15:00<planetmaker>you could just break things in trunk and not do it in 0.7 branch
15:00<planetmaker>is it used?
15:00<planetmaker>I'd expect that, too :-P
15:00<andythenorth>no branches are in use afaik
15:01<andythenorth>except default
15:01<andythenorth>so 0.7.3 or 0.8.0?
15:01<andythenorth>I am writing changelog now
15:01<planetmaker>so what's new compared to 0.7.2?
15:02<planetmaker>I'd think not much?
15:02-!-oskari89 [] has quit [Ping timeout: 480 seconds]
15:02<andythenorth>not much
15:02<krinn>planetmaker, just to make it clear : having an aircraft range of 10 cases, i suppose i could jump from airport to airport if they are within limit of 10, but will in fact fail at the 3rd airport because total range would be 20, outside the aircraft range
15:02<planetmaker>krinn: yes.
15:02<planetmaker>unless you make orders to fly back the same way
15:02<krinn>so it's not a distance limit, it's a usage limit: i could only use 2 airports
15:03<planetmaker>no, it's not
15:03<planetmaker>if your airports have a mutual distance of 15 in a triangle, you'll have no issue with a plane range of 20
15:03<krinn>oh i get it, your explain, i have take as a->b->c a-c fail when in fact c->a might fail
15:03<planetmaker>but if they're in a line, the distance c->a is 30, thus 20 will not suffice
15:04<andythenorth>0.7.3 smells better :P
15:04<andythenorth>or 0.7.5
15:04<planetmaker>nah, 0.7.3
15:04<krinn>planetmaker, i won't as i have already spent all my amount of time to cry yesterday, else i would again !
15:06<planetmaker>krinn: it's not hard to also check distance of last order -> first order, is it?
15:06<planetmaker>it's a ring anyway
15:06<krinn>no, it's easy
15:07<andythenorth>for i in orders
15:07<krinn>does openttd take 495616 or the 704 as a->b check ?
15:07<andythenorth>if > foo, raise :P
15:08<krinn>andythenorth, except if < foo because foo= foo**2 :)
15:09<andythenorth>sounds fun :P
15:09<krinn>sounds only :)
15:10<frosch123>krinn: both AIOrder::GetOrderDistance and AIEngine::GetMaximumOrderDistance() return squared euclidian distance
15:10<frosch123>so, you can compare them without any conversion
15:10<krinn>except i'm not comparing them
15:10<frosch123>(for aircraft; for ships it is actually manhattan distance)
15:11<krinn>as i compare the max distance an aircraft could do vs my manhattan distance from airport a to b
15:12-!-roadt__ [~roadt@] has quit [Ping timeout: 480 seconds]
15:12<planetmaker>still, easier to compare squares
15:12<frosch123>use AITile::GetDistanceSquareToTile then :)
15:13<frosch123>but, granted, we should document the unit of those vehicle/order distance functions
15:13<krinn>yep, my fisrt thinking as you see would be compare ab bc ca and not check abc
15:13<krinn>hmmm i mean abca
15:14-!-flaa [] has joined #openttd
15:18-!-fonsinchen [] has joined #openttd
15:22<NGC3982>someone said rusty
15:23-!-supermop [] has joined #openttd
15:26-!-sla_ro|master [~slaco@] has quit [Quit: DANGER is OFFLINE DANGER]
15:28-!-Rhamphoryncus [] has joined #openttd
15:32<@Alberth>I have not seen someone for a long time
15:32<TrueBrain>I have seen many people not for a long time
15:36<+michi_cc>krinn: Always use AIOrder::GetOrderDistance to query the distance.You can pass tiles that either are part of a station or are not, it will automatically calculate the right thing.
15:37<krinn>you can solve the problem in two ways: force a bad distance and check AIOrder validity next. Or check the distance and not force AIOrder as you already know the distance will be reject
15:37<krinn>i'm trying the 2nd way
15:37<krinn>because the 1st one is rought, while the 2nd way allow me to pickup an aircraft that will indeed be able to travel that distance
15:37<+michi_cc>AIOrder::GetOrderDistance does not depend on the actual orders of any vehicle. You pass two tiles to it.
15:39<krinn>2s, checking it
15:39<+michi_cc>AIEngine::GetMaximumOrderDistance and AIOrder::GetOrderDistance complement each other, and you can always use > or < on the returned values without knowing if it is square, manhatten or whatever that is applicable for the vehicle type.
15:40<TrueBrain>its like someone thought about it when designing it :D (wasnt me, thats for sure; I dont think things through in general :D)
15:40<krinn>well, except i need to know the two points, while knowing the distance is easy
15:41<krinn>eheh i know this might looks weird at first ok
15:41-!-valhallasw [] has quit [Ping timeout: 480 seconds]
15:41<TrueBrain>your loking for a place to put your second <whatever> down?
15:41<+michi_cc>How do you build an airport at the destination without knowing a tile? :)
15:42<+michi_cc>But if you really want to emulate it, for aircraft the distance is the squared distance between the northern tile of each airport.
15:42<krinn>that's that, i don't have the airport, it's just to handle the engine, so the X & Y aren't important and not pass, only x->y is useful
15:43<krinn>but the solve appears easy, just compare distance**2 and i'm done
15:44<+michi_cc>Anyway, only AIOrder::GetOrderDistance is guaranteed to have the right result of something changes in the future, for anything else you have to watch out yourself.
15:45<frosch123>"I personally prefer FIRS, but that's mainly because it only takes 1 GRF slot while ECS can take up to 7, and the total number of GRFs one can load at once is rather limited." <- haha
15:45<krinn>well, i'm not making magic there, and i don't really see why only the AIOrder::GetOrderDistance is guaranteed vs the MaxOrderDistance michi_cc
15:46<@Terkhen>we need 255 NewGRFs per game :P
15:46<krinn>vehlist.Valuate(AIEngine.GetMaximumOrderDistance); + vehlist.KeepValue(distance*distance)
15:46<frosch123>Terkhen: yup, and 256 cargos with 512 industry types or so
15:47<@Terkhen>I agree, otherwise the game feels unnecessarily limited
15:47<krinn>but we certainly need more than just 1 nogo...
15:47<Eddi|zuHause>well, if you load single-aircraft and single-object grfs, plus every station set out there, you really get to the limit fast
15:48<krinn>if you think about all nogo scripts as "funny script", 1 is enough, you run that mode or that mode of playing, but if you think of nogo helper script, 1 is clearly too limited
15:50<Eddi|zuHause>krinn: the script author can load use the other scripts as modules
15:50<+glx>it's a goal script, not a helper script
15:51<krinn>well, nogo helper script could do wonder, even better than some newgrf as it leave a chance for AI to speak with a NOGO script, while newGRF don't
15:52<krinn>I've seen Eddi|zuHause speak in forum with someone (wow him again!) about newGRF limit per aircraft type, a newGRF that will do that will broke all AI, a NOGO script can do that easy and can speak to AI to tell them what are the limits
15:52<Eddi|zuHause>*hüstel* callback 18!
15:52-!-SilPho [~silpho@] has joined #openttd
15:52<frosch123>krinn: i don't understand your latest question about GetTownAuthority. that functions doe not return a bool
15:53<krinn>frosch123, ah yes my bad, but the it return the townID, and the bool in my mind was compare result vs your check town :/
15:54<SilPho>Not sure if this is a bug on my end or a general bug: Buying land doesn't seem to have a cost. Only the cost of bulldozing. Is that right?
15:54<frosch123>still i don't get your question. are there maybe some negations too few or too many?
15:54<krinn>frosch123, i'll try to make myself clearer
15:54<frosch123>maybe you have an example ai :)
15:54<krinn>frosch123, i wish find a tile that townX handle, so if i build my airport at that tile i then must get sure townX own the airport
15:55<krinn>frosch123, plenty, any AI using airport get the problem
15:55<frosch123>why do you actually want to find a tile within the authority of a town?
15:55<frosch123>i could understand the reverse, but not this way
15:55<krinn>because i just want build an airport for townX and not for townY
15:56<krinn>this cause a lot of trouble else
15:56<frosch123>but townauthority is about town rating
15:56<frosch123>not about "belonging to a town"
15:56<Eddi|zuHause>so you want to valuate a tile list by which town a station would get
15:56<krinn>then that's what i'm seeking, a belonging to a town
15:57<krinn>Eddi|zuHause, yes, just that, but this is impossible to get
15:57<Rubidium>SilPho: that sounds about right
15:57<Eddi|zuHause>make a delaunay triangulation :)
15:57<frosch123>you can use GetClosestTown
15:57<Eddi|zuHause>(i have code :))
15:57<krinn>doesn't work frosch123
15:57<frosch123>that will tell you the name which the station will have
15:58<Eddi|zuHause>(it isn't quite up to date though)
15:58<frosch123>well, i have no idea what you want then :)
15:58<SilPho>Rubidium: Really? Just seems strange that you can "buy" bulldozed land for free
15:59<krinn>frosch123, i just want build an airport in a town, and make sure it will belong and be handle by that town
15:59<krinn>that's seem so easy, but in fact, anything i have try end with a "could chance it work"
15:59<frosch123>what do you mean with "belong" and "handle"?
16:00<krinn>i mean says townX: when built the airport should affect townX
16:01<frosch123>affect what?
16:01<krinn>town and station affect each over you know :)
16:01<Rubidium>SilPho: buying land is a nuisance anyway
16:01<krinn>airport affect noise and rating in the town
16:01<frosch123>krinn: you are asking way to broad. i have no idea what kind of affection you mean
16:02<frosch123>ah, so you want to know about noise
16:02<SilPho>Rubidium: For the buyer or for other players?
16:02<krinn>i know that already frosch123
16:02<Rubidium>everyone (for other reasons)
16:03<frosch123>... what?
16:03<krinn>frosch123, you never build an airport for townX that was in fact affecting townY ???
16:03<frosch123>again... affect what?
16:03<frosch123>an airport affects a town in about a dozen ways
16:03<SilPho>Rubidium: I guess I'm not really disputing that, but I'm sure there used to be a cost for it. Maybe it was intentionally removed
16:03<frosch123>iirc noise even affects multiple towns, not a single one
16:04<krinn>frosch123, in all the ways you wish, i don't care the way, i only care WHO it will affect
16:04<frosch123>then your question is ill-formed
16:04<krinn>and you cannot get it, when per example, two towns are close each other, and might share same tile influence
16:04<frosch123>the various effects on towns all have different radii and rules
16:05<krinn>ok let me try the other way, think about an AI
16:06<krinn>you check AITile.IsWithinTownInfluence for townX
16:06<krinn>it take the tile and townID as param
16:07<krinn>you have sometimes return value > 0, mean townX influence that tile ok
16:07<krinn>but if you try to build the airport, you may per example get "Error too many station" or "townY doesn't accept more noise" for that tile
16:08<krinn>see the problem: that tile is influence by townX, but in fact, an airport at that tile will belong to townY
16:08-!-th_gergo [] has quit [Quit: Leaving.]
16:08<krinn>while there's 0 station in townX (to explain the "too many station" error), and townY indeed as too many stations
16:11<frosch123>so, about noise: the town affected by building an airport is returned by AIAirport::GetNearestTown. you can check the effect using GetNoiseLevelIncrease and GetAllowedNoise
16:11<frosch123>wrt. town rating, the town being asked is returned by GetTownAuthority
16:11<frosch123>and AIAirport::GetNearestTown may indeed return a different town than GetTownAuthority or GetClosestTown
16:12<krinn>please look at the airport sample in the screenshot in the bug report, you might understand better visually see it
16:12<frosch123>your screenshot does not help me about understanding what you actually want
16:12<frosch123>you now asked me twice about town noise, which i answered
16:13<krinn>i told you twice i know how to handle noise
16:13<frosch123>if you want to know some other town effect you have to ask a proper question
16:13<frosch123>there is no such thing as "airport belongs to town"
16:13<frosch123>it is different for each effect
16:13<Eddi|zuHause>maybe that is already the biggest bug
16:14<krinn>that's it Eddi|zuHause, as is, i endup trying to build two airports in the same town because openttd mistake me about the tile owner
16:15<krinn>i cannot get a valid answer from GetTownInfluence, nor from GetTownAuthority, nor from GetClosestTown!
16:15<Eddi|zuHause>krinn: so you only care about which label the station will get?
16:15<krinn>yes! as this really mean that town will handle that station
16:15<frosch123>nope :p
16:16-!-Alberth [] has left #openttd []
16:16<Eddi|zuHause>that would mean GetClosestTown should handle it
16:16<Rhamphoryncus>SilPho: think of it this way: bulldozing itself buys, but unless you plant a sign you soon abandon it
16:16<krinn>Eddi|zuHause, it doesn't :(
16:16<frosch123>krinn: because your assumptions are wrong
16:16<krinn>Eddi|zuHause, you sometimes have a small town next to a big town that have expand close to it
16:16<frosch123>GetClosestTown is the correct answer wrt. name in the station sign
16:16<frosch123>but it is not the correct answer for noise
16:17<SilPho>Rhamphoryncus: I could think of it that way, I'm just wondering if this is desired behaviour. The wiki seems to disagree
16:17<Rhamphoryncus>SilPho: I can think of behaviour I'd like better, but this isn't a bug, no
16:17<Eddi|zuHause>krinn: which effect is wrong when you rely on GetClosestTown?
16:17<SilPho>Rhamphoryncus: Fair enough. Thanks :)
16:18<Rhamphoryncus>np :)
16:19<krinn>Eddi|zuHause, all effects that influence a town: if you remove something there, townY will get crazy, while you are handling townX, same, you have check noise for townX, but anytime you try build it there, townY keep yelling it doesn't want more noise...
16:20<Eddi|zuHause>krinn: so you need to loop over all tiles of the station layout?
16:20<frosch123>Eddi|zuHause: no, he just has to use two functions
16:21<frosch123>GetClosestTown and AIAirport::GetNearestTown are two functions he wants
16:21<krinn> look at this screenshot Eddi|zuHause
16:22<krinn>see the airport, it's name is Chateauroux Est while i was expecting build one for Babyonne (all the 2 are influence tile found for bayonne)
16:22<Eddi|zuHause>krinn: so which function did you use there?
16:23<krinn>2: all 2 are influence over bayonne, all 3 in the screenshot are town authority for over bayonne
16:23<krinn>as you see the 3 are only a few
16:23<Eddi|zuHause>yes, town authority is smaller than the town for very large cities
16:23<Eddi|zuHause>as it does not grow with city size
16:23<frosch123>krinn: your screenshot lacks GetClosestTown
16:24<krinn>yes frosch123
16:24<Rhamphoryncus>So what you want is one that incorporates the rings?
16:25<krinn>a way to find a tile in that ring that really belong to the target town and not another town !
16:25<Eddi|zuHause>krinn: if you didn't use GetClosestTown, then why do you think it is wrong?
16:25<krinn>because i have test it already, and it fail too
16:26<krinn>getclosesttown could tell you the closest town is X while you will have airport build for Y
16:26<Rhamphoryncus>Conceptually, take the distance for each town, subtract the size from the largest ring from each, then take whichever is closest. Note that the distance may be negative
16:27<Eddi|zuHause>krinn: like frosch123 said. GetClosestTown will tell you which name it will get, Airport::GetNearestTown will tell you which noise is affected
16:27<andythenorth>anyone want to build FIRS 0.7.3 and tell me the md5?
16:28<Eddi|zuHause>krinn: so you need to check both to get the "right" airport
16:28<andythenorth>I have 01a3ed84fc554101c44cc5de1a4f7956
16:29<krinn>I can limit it by checking them both, but still both can mistake
16:30<andythenorth>md5s don't match the bundle server
16:30<andythenorth>again :(
16:30-!-Miguelzinho [~Miguelzin@] has quit [Quit: Leaving]
16:30-!-drac_boy [] has joined #openttd
16:32-!-Chris_Booth [] has joined #openttd
16:32<andythenorth>why so many md5s?
16:33<andythenorth>if I use grfid -m I get one md5
16:33<andythenorth>make bundle_zip has written a different md5
16:33-!-DDR [] has joined #openttd
16:33<andythenorth>and the bundle server has yet another
16:33<drac_boy>andythenorth I dunno what to tell you, I have *never* ever used these ever :-/ sorry
16:34<andythenorth>I can't release while they're different
16:34<andythenorth>as it tells me the grf is broken
16:34<andythenorth>how / why I have no idea
16:34<andythenorth>frosch123: would you mind md5-ing FIRS 0.7.3?
16:36<Rhamphoryncus>andythenorth: I'll do it
16:36<frosch123>i am already building :)
16:36<Rhamphoryncus>I'm doing a fresh clone
16:37<andythenorth>2 data points :)
16:38<Rhamphoryncus>unrelated: how much of firs' design is dictated by the 3 in/2 out limit for industries?
16:39<Rhamphoryncus>Where's grfid?
16:39<andythenorth>Rhamphoryncus: quite a lot of it
16:40<frosch123>Rhamphoryncus: grfcodec
16:40<andythenorth>frosch123: so none of my md5s match yours :(
16:41*andythenorth updates nml
16:41<frosch123>oh, i can update nml as well
16:42<frosch123>wow, i was on nml 0.2 branch
16:42<frosch123>hmm, no i was not
16:44<andythenorth>95bc342fc014a0ce1a91e996cd449f11 matches yours now
16:44<frosch123>no changes for me after nml update
16:44<frosch123>the 2 changesets it pulled did not affect the result
16:45<andythenorth>did for me
16:45<andythenorth>how odd
16:45<andythenorth>anyway, release time
16:45<Rhamphoryncus>Guess I have to update nml too
16:47<Rhamphoryncus>I also make sure to make clean every time. FIRS' makefile is not so reliable :/
16:47-!-sla_ro|master [slaco@] has joined #openttd
16:47<frosch123>Rhamphoryncus: hg purge --all
16:47<andythenorth>I have aliased a 'make clean && make install
16:47<frosch123>but make sure to not have any diffs or similar in the firs directory
16:47<frosch123>it will delete everything not from the repo
16:48<Rhamphoryncus>I do make || make clean when working on firs itself, as that seems to work right. However, this is an update of nmlc
16:48*telanus1 think it's cool
16:48<andythenorth>building without the makefile is often much faster
16:48<Rhamphoryncus>I match now too :D
16:49<Rhamphoryncus>You can build without the makefile?
16:49<telanus1>when I started Afrikaans was 95% translated, now 99.4% translated
16:49<Rhamphoryncus>telanus1: woot :)
16:49<telanus1>just 21 lines, then 100%
16:49<frosch123>quick! add new strings :p
16:50<telanus1>Then FIRS translation (hopefully)
16:50<Rubidium>Afrikaans used to be 100% translated
16:50-!-TWerkhoven2[l] [] has quit [Ping timeout: 480 seconds]
16:50<Eddi|zuHause>Rubidium: by google translate :)
16:51<telanus1>a lot by google translate
16:52<frosch123>telanus1: do you maybe also speak traditional chinese?
16:52<andythenorth>most of FIRS 0.7.3 is patches by other people :P
16:52*andythenorth has become a patchpack maintainer, not an author :P
16:52<frosch123>andythenorth: or a boss :p
16:53<andythenorth>Rhamphoryncus: you can build without the makefile if you're only updating graphics :P
16:53<frosch123>only holding a speech when it is done
16:53<andythenorth>using grfcodec
16:53<andythenorth>it's *way* faster
16:53-!-oskari892 [] has quit []
16:53<Rhamphoryncus>andythenorth: That's what happens when you have a good quality, interesting project that's open to outside help :)
16:53<Rhamphoryncus>ah, never done graphics
16:54<Eddi|zuHause>andythenorth: but if you stopped using "make clean", the makefile would figure out that you're only doing graphics, and only call grfcodec
16:55<andythenorth>but I have to use make clean because the dep check doesn't work reliably
16:55<Eddi|zuHause>andythenorth: you're doing it wrong then
16:55<andythenorth>I have to do a mental dep check instead "what did I change"
16:56<telanus1>frosch123: I only speak Afrikaans & English, and understand Dutch 90% of the time, and able to read very-basic german
16:56-!-th_gergo [] has joined #openttd
16:57<frosch123>well, traditional chinese would have been 94.1 % :)
16:57<frosch123>maybe ottd was banned from the chinese web
16:58<Eddi|zuHause>i'm sure it was due to the controverse copyright :p
17:00<frosch123>too sad that we cannot reach 1/3 of the earth population because the marathi translation is incomplete
17:00<frosch123>hmm, maybe i should suggest that in the "marketing"-topic
17:01<Rubidium>frosch123: interestingly Traditional Chinese has zh_TW
17:01<frosch123>oh, did i confuse them?
17:01<frosch123>i though simplified was TW
17:01<Rhamphoryncus>Hrm. This map will be very profitable once setup.. industries are scattered quite well. Unfortunately starting is looking almost impossible ;)
17:02<Eddi|zuHause>Rhamphoryncus: i've had that problem with YACD... it's really only sensible to start with passengers.
17:02<Rhamphoryncus>What YACD? XD
17:03<Rhamphoryncus>This is a 512x512 with 5 towns
17:03<andythenorth>does YACD build against trunk currently?
17:04<Rubidium>andythenorth: ofcourse it does
17:04*andythenorth hasn't tried for some time :P
17:05<Rubidium>... for the right revisions of trunk
17:05<frosch123>andythenorth: you should ask on the forums whether someone can build 1.2+yacd for you :p
17:05<Rubidium>frosch123: that's easy
17:06<andythenorth>does YACD build against trunk tip *right now* ? :P
17:06<frosch123>sounds like you applied distributive law
17:07<Rubidium>after all, the last version of YACD was against (or something similar)
17:07<Eddi|zuHause>didn't someone do an update?
17:09<krinn>ah i found why i get mad with it, i remember now, basically any town north another town invalidate mostly all tiles within both town if you check getclosesttown, because the station sign is north too
17:10*andythenorth ponders a python conversion of FIRS
17:10<krinn>that's game mechanic liimit
17:10<Rhamphoryncus>andythenorth: how much could be converted?
17:10<andythenorth>tradeoff: codebase I don't understand (current), but others do (but are busy)
17:10<andythenorth>versus: codebase *only* I understand :P
17:11<supermop>how can a newgrf be written in python?
17:11<Rhamphoryncus>But most of it would still be in nml?
17:11<@Terkhen>with lot sof workarounds, probably :P
17:11<@Terkhen>lots of*
17:11<Rhamphoryncus>So you'd be replacing the CPP with python?
17:11<krinn>andythenorth, do it in squirrel, you will love other newGRF doing crazy things you cannot see :)
17:12<Rhamphoryncus>With a vague possibility of hacking into nmlc later since it's also written in python..
17:12<andythenorth>Rhamphoryncus: meh
17:12<andythenorth>not needed
17:12<Rhamphoryncus>very very vague? :)
17:12-!-Zuu [] has joined #openttd
17:12<andythenorth>could be done
17:13<andythenorth>nml modules can be loaded
17:13<andythenorth>CETS does it
17:13<Rhamphoryncus>The question is if it gains anything, since you're still limited to the underlying newgrf API
17:13<Rhamphoryncus>or VM as I should say
17:13<Zuu>krinn: I hear your pain with airport tiles. I haven't really found the problem that you have, but probably just because I haven't seen it yet. As it should for sure manifest in probably both PAXLink and CluelessPlus.
17:14<andythenorth>I gain code I can work on
17:14<andythenorth>I lose the other developers and/or annoy them :(
17:14<Rhamphoryncus>I should mention that I have LOTS of experience in python
17:14<andythenorth>I also gain a new round of conversion bugs to fix
17:15<andythenorth>Rhamphoryncus: have you looked at how BANDIT works? Or CETS?
17:15<andythenorth>both python, both different but viable
17:15-!-fonsinchen [] has quit [Remote host closed the connection]
17:16<andythenorth>CETS compiles directly, BANDIT uses templating
17:16<krinn>Zuu, the real problem appears with big airports, by this time, places are short, towns are bigger and many town have "shared" influence tiles, once there, the problem get so tied, because town have many stations and refuse your while you have check some other town noise/rating...
17:16*Rhamphoryncus browses bandit
17:16<andythenorth>BANDIT has a main build script that creates first class python objects for each vehicle
17:16<Zuu>krinn: Good news skip the intercontinental as the international is better
17:16<andythenorth>these are then in scope for the templater that writes out nml
17:17*Rhamphoryncus grumbles about wanting flash
17:17<krinn>Zuu, well, the size increase chance of failure, but even the smallest one can endup bad
17:18-!-SilPho [~silpho@] has quit [Quit: SilPho]
17:18<Zuu>well, I guess that is the joy of all complexity of OpenTTD :-)
17:18<Zuu>Noone has said that making an AI for OpenTTD is easy. :-)
17:19<krinn>at least, it's game mechanic, something "strong written"
17:19<krinn>not like this newGRF hell :)
17:19<Zuu>heh, though also NoGos currently are a black box to AIs I think.
17:20<krinn> look this one, if anyone does this with newGRF, poof, all AI gone mad
17:20<krinn>no Zuu i already think about it ! NoGo can take over an AI, so nogo can "speak" with an AI
17:20<krinn>so the AI will not get blind like with a newGRF
17:21<andythenorth>krinn: you're on a losing battle ;)
17:21<andythenorth>the default approach to features is 'that should be done in newgrf' wherever possible
17:21<andythenorth>so newgrf has an enormous capability to create insanity for AI authors
17:21<krinn>say you make a NoGo script that limit chopper to 20: your AI can put a sign at his HQ, says "nogo chopper" and nogo read it, and alter it to "chopper 20" -> now your AI know chopper limit is set to 20
17:22<Zuu>krinn: Though, I don't know if NoGo know if a given company is an AI. Placing cryptic signs that are part in NoGo<->AI communication for players would be wierd.
17:22<krinn>with newGRF: your AI will get an error after the 20rd choppers without an explain
17:22<krinn>Zuu, nogo doestn't place the sign, the AI place it to query nogo, nogo check it exist and answer
17:23<krinn>nogo and AI can speak, AI & nogo cannot speak with newGRF
17:23<supermop>an unnamed social site i used just made me a moderator without my input....
17:23<Zuu>yes, with your proposal it is like that. I wrote the message before reading your proposal.
17:23<Rhamphoryncus>andythenorth: I hate to say it but bandit looks inscrutable :(
17:23<andythenorth>which parts did you try to scrute?
17:23<Rhamphoryncus>nml is inscrutable to begin with, and templating just adds more confusion
17:23<supermop>there seems to be some script whereby if you've been around long enough and no one complains about it makes you a moderator?
17:24<krinn>of course the AI need to handle it, but at least, you can (and i would say) easy made it, maybe some better communication could be even made
17:24<krinn>but with newgrf, you cannot even know one is load :)
17:24<Zuu>krinn: For that query system to work, it would help greatly to have a common protocol.
17:24<Rhamphoryncus>andythenorth: templates mostly
17:24<Zuu>Or AIs would have to try all different hand shaking messages until NoGo responds :-)
17:25<krinn>that's just a standard to set
17:25<andythenorth>specifically the two main Classes
17:25<krinn>but it could be done, that's why nogo & AI can work really good, while nogo & AI cannot with newgrf and are blind
17:26<Rhamphoryncus>andythenorth: that and the cfg are good
17:26<krinn>this is also why i think nogo limit to 1 script will show its limit fast, or we should build one big nogo that could do anything
17:27<andythenorth>newgrf has a defined spec, but no defined ways to use it, so it won't ever be reliable in the way you want
17:27<andythenorth>Rhamphoryncus: truck_template.pynml is straightforward
17:28<andythenorth>specifically the item{} block
17:28<Rhamphoryncus>Yep, that one's good
17:28<krinn>andythenorth, right now, for AI & nogo, it would be like if newGRF have no callback with openttd : blind
17:28<andythenorth>it will stay blind
17:28<andythenorth>there's simply no way to specify what a newgrf is doing reliably
17:28-!-TGYoshi [~TGYoshi@] has quit [Quit: Popidopidopido]
17:29<andythenorth>you could extend the hinting system and hope authors use it....
17:29<Zuu>krinn: A such protocol would probably need either to cover all possible NoGo usages, or it could have a rather slim standard behaviour and leave the rest up to the NoGo to define.
17:29-!-Chris_Booth [] has quit [Ping timeout: 480 seconds]
17:30<Zuu>Basically there could be "nogo shortname" to get the short name of the NoGo and "nogo version" to get the version and then leave the rest up to the NoGo to decide.
17:30<krinn>Zuu, i was thinking a basic protocol that define how to speak with each other, and a reserved word someone took and we add it as a valid word, a bit like event, if AI doesn't know it, it won't be able to query it anyway
17:30<Zuu>It should then be packed as an AI and GS library :-)
17:31<krinn>Zuu, this would also gave nogo a chance to register who is AI and who is human
17:31<andythenorth>if Newgrf authors could bundle a helper script, then that could interface with AI + NoGo the same way
17:31<Zuu>Though, only AIs that have the AI beacon active :-)
17:31<krinn>and this could be valuable info for nogo, don't ask human what AI can do, don't ask AI what only human can do
17:32<Zuu>Sounds like an interesting project :-)
17:32<krinn>Zuu, yes of course, but most AI would handle it fast i think, just they would handle more or less fast the new "api"
17:32<krinn>i'm pretty sure anyone would agree to add the "speak" part, specially because we could just made a lib that handle it :)
17:33*andythenorth -> sleep
17:33<andythenorth>good night
17:33<krinn>we could try define the easy, register your AI with a nogo script part to see if you wish ?
17:33-!-andythenorth [] has left #openttd []
17:33<krinn>and see the number of AI agreeing to handle it
17:34<Zuu>I just scanned the nogo list and though that perhaps add it to the TransportGoal GS for starter. It is a very simple GS that is more a proof of concept than anything. Could be a good start.
17:35<Zuu>An AI aware of it could value cargo capacity of engines higher for example.
17:36<krinn>yep, also make some GS that dosn't ask goal to AI but only human...
17:36<Zuu>One problem I realize, is that it is common for NoGo to put messages to players on the HQ, so probably a different tile has to be used.
17:36<Zuu>One could use (1, 1 + company ID)
17:37<Zuu>Eg, put the signs in a corner of the map
17:37<krinn>well, we could define to put the sign at tile 0 per example, as the sign is per player
17:37<krinn>they don't overlap no ?
17:37<krinn>i mean player 1 build sign at 0, if player2 build one also at 0, you can see one or the other but both exist right ?
17:38<Zuu>Hmm, yes, in plain OpenTTD I think you can put several signs ontop of each other.
17:38<Zuu>Its only in SuperLib where I have tried to work around that and limit it to one sign per tile.
17:38<krinn>and nogo can already knows the owner of the sign, so it should works
17:39<Zuu>So we could put it at tile 0, only thing to watch out for is that depending on some advanced setting the border of the map is reserved for storage.
17:39<Zuu>So using (1, 1) is probably safer.
17:39<Zuu>Though some dev could probably inform us if we use a dangerous tile, and that is easy to tweak.
17:40<krinn>i think as long as the sign are close to an edge it won't disturb too much
17:40<krinn>and the AI/lib should discard it when read
17:41<Zuu>And for those who have a problem with AIs giving "wierd" names to things, there is now a setting to hide competitor signs :-)
17:42<krinn>Ah good, so we could use station names for saving so :)
17:42-!-Mazur [] has quit [Remote host closed the connection]
17:42<Zuu>hehe, and a NoGo could easily identify AIAI and CluelessPlus based on station names.
17:43<krinn>i also notice the good, remove all sign on AI reload, nice
17:43<krinn>Zuu, well, i have put (dictatorai) in my name for that, i don't think AI should hide their status
17:43<krinn>But i suppose cluelessplus would register itself with nogo :)
17:44<Zuu>Yes, I would update my AIs and NoGos to use this when we have invented the library. :-)
17:44<krinn>sounds a good thing to do
17:45<krinn>the faster it will be done, the faster new nogo script will handle it, AI will follow, i think at good speed
17:45-!-telanus1 [~Barney_Er@] has left #openttd []
17:45<krinn>specially nogo & AI share their forum
17:46<krinn>once nogo & ai can speak, we could make them yell both at newGRF :) (kidding)
17:46<Zuu>So, first we need a name :-)
17:47<Zuu>ANT - Ai Nogo Talk
17:48<krinn>oh i like ANT
17:48<krinn>the idea, each ant work for the group :)
17:48<Eddi|zuHause>but it's either AI and Goal or NoAI and NoGo
17:48<Zuu>ANSI = Ai Nogo Standard Interface
17:48<krinn>lol you're good at finding name zuu
17:49<Zuu>Eddi|zuHause: Good point
17:49<Zuu>well, andy has set the standards high on that point
17:50<@Terkhen>good night
17:50<krinn>night Terkhen
17:51<krinn>:) aren't trying to do the opposite
17:51<Zuu>No worse than NoAI :-)
17:51<krinn>ah yes :P
17:53<krinn>ComPro just the short for communcation protocol
17:53-!-snack23 [] has quit []
17:53<Zuu>In the end, I kind of like library names that actually describe what they do :-)
17:54<Zuu>ComPro make me think of HiPro, an interface to program hearing aids.
17:54<krinn>NT (No-aigo talk)
17:54<krinn>if MS don't sue us :)
17:55<krinn>hihi SCP script communication protocol (and people will think they could copy using ssh with nogo/noai)
17:56<Zuu>I like that one
17:56<krinn>in fact, i like it too, it's simple
17:56<krinn>and script include both nogo & noai
17:57<Zuu>and future additional scripts that might be supported
17:57<krinn>You never know with those mad devs !
17:58<Zuu>Though, none of them shown any mad behaviour at the r20k party.
17:59<Eddi|zuHause>not mad behaviour? were you at the same party as me?
18:00<Zuu>Eddi|zuHause: Not mad as in angry. But perhaps mad as in crazy people takling about OpenTTD in a garden all night? :-)
18:00-!-Mazur [] has joined #openttd
18:02<krinn>Zuu, two bytes should be enough for base : one to query/answer, another one for the query itself, and then anything need to feel the needs of the query
18:02-!-MNIM [] has joined #openttd
18:03<Zuu>krinn: I will not have much time to start coding this weekend, so if you want to start coding this weekend you can do so.
18:03<krinn>i work this weekend
18:04<krinn>but break on monday
18:04<Zuu>Sounds nice with some vacation.
18:04<krinn>but i think i could start this weekend to read nogo API better
18:05<Zuu>A similar libary to what we want to do, but still not really is TileLabels.
18:06<krinn>it's in openttdcoop?
18:07-!-Progman [] has quit [Remote host closed the connection]
18:07<Zuu>It reads all signs at start that match a pattern and store them in memory (and remove the signs from the map). It then provides an interface for the GS to ask for the tile index that has a given name/label.
18:07<krinn>this one?
18:07<Zuu>I use it to have signs in the Tutorial save game to declare the location of where the user should build the canal rather than hard coding the tile indices into the NoGo.
18:08<Zuu>No, this one:
18:08<krinn>oh you made that one
18:09<Zuu>If we write the library for AIs and then just translate it to GS, we can re-use the translation script of SuperLib, though it is not really rocket sciense to translate between NoAI and NoGo.
18:10<Zuu>But that we'll see if it is easiest to use a single code base or two separete code bases. Though I would guess a single code base for both AI and GS will help.
18:10<krinn>i was thinking two would be easier
18:10<krinn>with a shared file that record/define the keywords
18:11<krinn>but we could do one for both yes
18:11-!-FLHerne [] has left #openttd []
18:12<Zuu>it needs a script to "bake" the other version, but that is how I do it for SuperLib and it works quite well.
18:12<krinn>so we will do like that, specially that both should shared a lot of code
18:12<Zuu>Though in our case we'll probably want to have at least one source file that is unique for each library defining the specific behaviour of the AI / Goal script edition.
18:13<krinn>maybe, or we could also fake the functions and redefine them
18:13<Zuu>But if you see that it is hard to do and feel like you want to do it the other way, its up to you if you start coding it. :-)
18:15<Zuu>Here you see the of SuperLib:
18:17<krinn>isn't it easier to just extends the class ?
18:17<krinn>class NCPAccounting extends AIAccounting and another file with extends GSAccounting
18:18<krinn>so we just use any function with NCP in front
18:18<Zuu>You need to substitute the API calls with the other prefix.
18:18<krinn>yes, but we will make the call :)
18:18-!-Elu [] has joined #openttd
18:19<Zuu>You could of course define APIRoad <- AIRoad etc. for AI and with <- GSRoad for NoGo and load the correct defition depending on scipt type.
18:19<Zuu>However, that pollutes the global scope so it should probably be _SCP_APIRoad or so.
18:20<krinn>yep, but it would be easy, we need just two different files that define the GS or AI extends
18:21<Zuu>Hmm, actually the code that reads/writes signs should probably be different as they need to be different enough as NoGo need to handle companies etc. while AI not.
18:21<Zuu>Lots of possibilities...
18:21-!-Elukka [] has quit [Ping timeout: 480 seconds]
18:21<krinn>this could be easy handle, with default
18:22<Zuu>I trust you to come up with a solution :-)
18:22<krinn>function NCPSign.GetName(SignID, companyID=NCSCompany.COMPANY_SELF)
18:23<krinn>nogo will pass companyID, AI won't and it will be COMPANY_SELF)
18:24-!-Elu [] has quit []
18:25<Zuu>I think the SCP library should abstract away sign ids etc. and just allow a query interface. So the library will need to adress that the NoGo edition contains a scan-function that probes for incomming messages which will need to loop over all companies.
18:26<Eddi|zuHause>LEX/YACC or FLEX/BISON?
18:27<krinn>ah yes, so both could share the same GetName(SignID) and the nogo part lookup the company itself
18:27-!-Wolf01 [~wolf01@] has quit [Quit: Once again the world is quick to bury me.]
18:31<Zuu>Both ends might use some sort of callback mechanism to register a function to be called when the Scan method finds a message. This way a NoGo can register queries with a function to call when there is a message. I know some AIs use a callback mechanism. The GS Tutorial have a CodeStep that uses a callback function. But these things are extra when the basic library is there.
18:33<Zuu>For the NoGo-side the callback could return the response.
18:33<Zuu>Then the NoGo will after seting up the library only need to call the Scan function in the main loop and it should be able to handle all registred commands.
18:33<krinn>well, i'm not sure of what you have in mind there
18:34<krinn>the scan function can just trigger some parsing function
18:34<krinn>ah yes, sorry, i see now, yes, a callback so the ai and nogo can directly handle the event
18:36<krinn>you want leave the user to choose himself what name the function will be when trigger
18:38<krinn>ok i'm going bed, the big lines are there, i will think about it this we, and start monday
18:40<krinn>last even it appears good, the gslib-tilelabels doesn't have a license
18:40<Zuu>great, have a good night
18:40<krinn>if we reuse it...
18:41<Zuu>TileLabels should be GPL v2. and I've written all code so it shouldn't be a problem. :-)
18:41<krinn>ok seen, it's in the headers of the files
18:42<Zuu>You can see it here too:
18:42-!-Devedse [] has joined #openttd
18:42<krinn>ok Zuu night then
18:42-!-krinn [] has quit [Quit: Quitte]
18:44-!-Djohaal [] has joined #openttd
18:45-!-sla_ro|master [slaco@] has quit [Quit: DANGER is OFFLINE DANGER]
18:46-!-Devroush [] has quit []
18:47-!-frosch123 [] has quit [Remote host closed the connection]
18:54*drac_boy is still having a hard time making sense of some of that topic
18:55<drac_boy>maybe its just me -_-
18:56-!-Zuu [] has quit [Ping timeout: 480 seconds]
18:59*drac_boy goes back to more sprites work
19:01-!-supermop [] has quit [Quit: supermop]
19:04-!-cypher [] has joined #openttd
19:06-!-cyph3r [] has joined #openttd
19:12-!-cypher [] has quit [Ping timeout: 480 seconds]
19:16-!-kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-02.NATPOOL.NYU.EDU] has joined #openttd
19:18-!-GT [] has joined #openttd
19:24-!-TWerkhoven [] has quit [Quit: He who can look into the future, has a brighter future to look into]
19:26*GT wonders why is completely ignored.
19:34*drac_boy has no idea? :)
19:35-!-kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-02.NATPOOL.NYU.EDU] has quit [Read error: Operation timed out]
19:37<GT>In general, or about this post
19:40<drac_boy>a bit of both maybe, 8bpp here forever :)
19:49-!-kkb110 [] has joined #openttd
19:49<Rhamphoryncus>GT: it's a bikeshed argument
19:49<GT>Well, 32bpp can deliver stunning graphics, but 8bpp has its own, nostalgic atmosphere. Everyone is free to choose what he likes best.
19:50<GT>What does a bikeshed argument mean?
19:50<Rhamphoryncus>Google for it, but basically it's an analogy about a bike shed for a nuclear reactor
19:51<Rhamphoryncus>Everybody understands a bikeshed so they all have their 2¢ to put in. Very few understand the nuclear reactor so they all stay quiet
19:51<Rhamphoryncus>Yet the nuclear reactor is extremely important to get right, the bikeshed is harmless
19:53<Rhamphoryncus>In this case everybody can nitpick the art (I can too), but few are capable of actually doing it
19:53<drac_boy>GT I have another reason but I don't know about going into it here tho :p
19:55-!-theholyduck [~holyduck@] has quit [Ping timeout: 480 seconds]
19:57-!-zpmorgan [] has joined #openttd
20:00<GT>@Rhamphoryncus, I did google for the bikeshed argument, and understand what you mean now. Thanks for your reply, I learned a new expression, and you gave me a new insight, one that I really thought of. Thanks a lot for that.
20:01<GT>s/really thought/ really never thought/
20:01<Rhamphoryncus>I've done it way too much in here, but you often don't see all the bikeshed discussions that come before
20:02<Rhamphoryncus>speaking of
20:02<Rhamphoryncus>Rubidium: do you have any sort of wishlist for 1.3? Stuff you'd like to do, and especially stuff you'd like other people to look into?
20:07-!-goodger [] has quit [Read error: Operation timed out]
20:10-!-GT [] has left #openttd []
20:13-!-roboboy [] has joined #openttd
20:22-!-flaa [] has quit [Quit: leaving]
20:29-!-drac_boy [] has left #openttd [I'm done being in this room!]
20:35-!-theholyduck [~holyduck@] has joined #openttd
20:52-!-DOUK [] has quit [Ping timeout: 480 seconds]
21:11-!-valhallasw [] has joined #openttd
21:15-!-collinp [] has joined #openttd
21:16-!-KritiK [] has quit [Quit: Leaving]
21:20-!-th_gergo [] has quit [Quit: Leaving.]
21:21-!-Biolunar__ [] has joined #openttd
21:21-!-Biolunar__ [] has quit []
21:23-!-mal2 [] has quit [Ping timeout: 480 seconds]
21:26-!-roboboy [] has quit [Ping timeout: 480 seconds]
21:28-!-Biolunar_ [] has quit [Ping timeout: 480 seconds]
21:32-!-Vadtec [~Vadtec@2001:470:1f06:13e0::1337] has quit [Read error: Connection reset by peer]
21:35-!-Vadtec [~Vadtec@2001:470:1f06:13e0::1337] has joined #openttd
21:38-!-valhallasw [] has quit [Ping timeout: 480 seconds]
21:44-!-pugi [] has quit []
21:48-!-DDR [] has quit [Quit: for the love of god this is not safe for work]
21:53-!-theholyduck [~holyduck@] has quit [Quit: Forlater kanalen]
22:00-!-HerzogDeXtEr1 [] has joined #openttd
22:06-!-HerzogDeXtEr [] has quit [Ping timeout: 480 seconds]
22:15-!-k-man [] has quit [Ping timeout: 480 seconds]
22:18-!-kkb110 [] has quit [Ping timeout: 480 seconds]
22:27-!-kkb110 [~kkb110@NYUFGA-WLESSAUTHCLIENTS-02.NATPOOL.NYU.EDU] has joined #openttd
22:46-!-glx [glx@2a01:e35:2f59:c7c0:3dd9:1ef1:4c78:8333] has quit [Quit: bye]
23:01-!-collinp [] has quit [Quit: Colloquy version 2.3]
23:09<planetmaker>Rhamphoryncus: get the more height levels up to trunk standard
23:09<planetmaker>Rhamphoryncus: or split your head about newgrf state machines
23:11<planetmaker>Rhamphoryncus: did you look at the nice-to-have patches in our wiki?
23:11<planetmaker>Rhamphoryncus: or devise NewGRF bridges
23:12<planetmaker>Rhamphoryncus: or NewGRF road types
23:12<planetmaker>Rhamphoryncus: you wanted the hard stuff, did you? :-)
23:13<planetmaker>Rhamphoryncus: also, there's the long-standing issue with how settings / options / difficulty /... are scattered
23:14<planetmaker>Rhamphoryncus: and ... presets for settings (similar to newgrf presets) come to mind there, too
23:30-!-ccfreak2k [] has quit [Ping timeout: 480 seconds]
23:40-!-cyph3r [] has quit [Quit: Miranda IM! Smaller, Faster, Easier.]
23:44-!-andythenorth [] has joined #openttd
23:49-!-andythenorth [] has left #openttd []
---Logclosed Sat Apr 21 00:00:32 2012