Log for #openttd on 11th October 2012:
Times are UTC Toggle Colours
00:08:09  *** KritiK [] has quit [Quit: Leaving]
00:08:59  *** brambles [] has quit [Ping timeout: 480 seconds]
00:17:27  *** KnogleAFK [] has joined #openttd
00:21:24  *** roadt [~roadt@] has joined #openttd
00:23:05  *** Knogle [] has quit [Ping timeout: 480 seconds]
00:34:43  *** Supercheese [~Password4@] has quit [Quit: ChatZilla 0.9.89 [Firefox 15.0.1/20120905151427]]
00:40:55  *** perk11 [~perk11@] has quit [Quit: Miranda IM! Smaller, Faster, Easier.]
00:41:15  *** tokai|mdlx [] has joined #openttd
00:42:17  *** Supercheese [~Password4@] has joined #openttd
00:47:09  *** tokai|noir [] has quit [Ping timeout: 480 seconds]
00:54:43  *** Supercheese [~Password4@] has quit [Quit: ChatZilla 0.9.89 [Firefox 15.0.1/20120905151427]]
01:00:54  *** valhallasw [] has joined #openttd
01:12:55  *** Supercheese [~Password4@] has joined #openttd
01:15:16  *** KnogleAFK [] has quit []
01:16:56  *** valhallasw [] has quit [Remote host closed the connection]
01:20:46  *** Devroush [] has quit []
01:25:06  *** Djohaal [~Djohaal@] has quit [Quit: Leaving]
01:33:13  *** Elukka [] has quit []
01:54:03  *** supermop [] has joined #openttd
01:54:15  <supermop> hi
02:14:04  *** glx [glx@2a01:e35:2f59:c7c0:8dff:fb7c:567a:8c6e] has quit [Quit: bye]
02:17:37  *** TrueBrain [] has quit [Ping timeout: 480 seconds]
02:20:18  *** TrueBrain [] has joined #openttd
02:20:27  *** Markavian` [] has quit [Read error: Connection reset by peer]
02:35:40  *** Pixa [] has quit [Remote host closed the connection]
03:22:14  *** Zeknurn [] has quit [Ping timeout: 480 seconds]
03:27:04  *** Zeknurn [] has joined #openttd
03:48:37  *** Jake is now known as Jake|afk
04:28:33  *** telanus [] has joined #openttd
04:56:02  *** Eddi|zuHause [] has quit []
04:56:19  *** Eddi|zuHause [] has joined #openttd
05:16:21  *** supermop [] has quit [Quit: supermop]
05:16:46  *** Hyronymus [] has joined #openttd
05:17:14  *** Hyronymus [] has quit []
05:30:05  *** Prof_Frink [~proffrink@] has quit [Ping timeout: 480 seconds]
05:40:47  *** sla_ro|master [slaco@] has joined #openttd
05:46:27  *** KouDy [~KouDy@] has joined #openttd
06:24:57  *** TheMask96 [] has quit [Ping timeout: 480 seconds]
06:26:47  *** valhallasw [] has joined #openttd
06:31:24  *** TheMask96 [] has joined #openttd
06:38:01  *** sla_ro|master [slaco@] has quit [Ping timeout: 480 seconds]
06:39:31  <Terkhen> good morning
06:39:42  <Supercheese> salve
06:40:16  *** valhallasw [] has quit [Ping timeout: 480 seconds]
07:03:15  *** valhallasw [] has joined #openttd
07:24:52  *** perk11 [~perk11@] has joined #openttd
07:34:28  *** Knogle [] has joined #openttd
07:50:48  *** Zeknurn` [~Zeknurn@] has joined #openttd
07:52:35  *** Zeknurn` [~Zeknurn@] has quit []
07:56:42  *** Zeknurn [] has quit [Ping timeout: 480 seconds]
07:56:42  *** Zeknurn` [] has joined #openttd
08:03:50  *** mucht_home [] has joined #openttd
08:10:06  *** Mucht [] has quit [Ping timeout: 480 seconds]
08:16:48  *** Zeknurn` [] has quit [Quit: .]
08:18:54  *** Zeknurn [] has joined #openttd
08:34:20  *** peter1138 [] has joined #openttd
08:34:23  *** mode/#openttd [+o peter1138] by ChanServ
08:37:36  <peter1138> Czy mogę zadać pytanie na temat najnowszej wersji najnowszej?
08:38:36  <szaman> chyab tak ale in english
08:39:11  <__ln__> Gesundheit.
08:39:26  *** DDR [] has quit [Ping timeout: 480 seconds]
08:39:28  <planetmaker> Moin
08:45:39  <peter1138> Ale ja lubię łamania zasad w temacie kanału
08:46:58  <szaman> 'lubisz łamanie' czy 'nie lubisz łamania' ?
08:48:50  *** mucht_home [] has quit [Remote host closed the connection]
08:48:56  <peter1138> Lubisz łamanie, oczywiście :-)
08:49:18  <__ln__> Zdezynfekowano.
08:49:28  <peter1138> Dobra, jestem znudzony Google Translate teraz.
08:50:19  <szaman> you are the bored google translator now? :]
08:50:53  <peter1138> Approximately
08:51:35  <szaman> you can't use google translate to speak polish, it outputs garbage in most cases
08:51:49  <szaman> like every slavic language i think
08:51:53  <peter1138> I know.
08:52:01  <planetmaker> *every language ;-)
08:52:03  <__ln__> it looked convincing though.
08:52:13  <peter1138> Exactly, planetmaker.
08:53:44  <__ln__> Google should train their translator monkeys/gnomes better.
08:59:07  <szaman> so we had our lesson, don't use google translate to translate openttd :]
09:06:14  <NGC3982> Morning.
09:11:03  <peter1138> Fish heads, fish heads, roly poly fish heads.
09:11:09  <peter1138> Fish heads, fish heads, eat them up, yum!
09:12:27  <planetmaker> szaman, that's why we usually only want native speakers to be translators (though we have no means to check that) :-)
09:12:54  <szaman> peter1138: you mean to eat 'ukha' ? :]
09:13:32  <peter1138> The UK Housekeepers Association?
09:14:01  <szaman> clear Russian soup, made from various types of fish, fish heads including
09:14:13  <peter1138> Lovely.
09:14:20  <peter1138>
09:16:56  <szaman> well, it looks like they don't know that fish heads are eated usually in soup
09:17:38  <peter1138> __ln__ to the rescue?
09:23:09  *** HerzogDeXtEr1 [~Flex@] has quit [Read error: Connection reset by peer]
09:26:35  <peter1138> There's no pirate translation :-(
09:29:02  <NGC3982> fish heads are great for soup
09:30:05  <peter1138> Okay, so is there any good network games going on at the moment?
09:31:12  <planetmaker> I think openttd is going on ;-)
09:31:25  <peter1138> Well I mean of OpenTTD, yes.
09:31:45  <NGC3982> is empty, i guess.
09:32:18  *** argoneus [] has joined #openttd
09:38:18  <NGC3982> Wait what.
09:38:22  <NGC3982> It's not even running.
09:38:26  <NGC3982> I have broken something. ;_;
09:40:09  *** Pixa [] has joined #openttd
09:46:01  <peter1138> That'll be why it's empty.
09:49:22  *** argoneus [] has quit [Ping timeout: 480 seconds]
09:54:06  <__ln__> szaman: *eaten
09:54:33  <__ln__> excuse my late appearance as i was having a lunch
09:56:33  <NGC3982> What did you have?
09:56:40  <szaman> __ln__: yep, i've realised but was too lazy to correct myself :P
09:58:16  <__ln__> NGC3982: chinese food
09:58:53  <NGC3982> Ah, nice.
09:59:00  <NGC3982> Im going to have a sallad in a few minutes.
09:59:07  <__ln__> *salad
09:59:18  <__ln__> and *I'm
09:59:37  <NGC3982> I'm the only supervisor here today, and i don't think i'll have time to eat properly.
09:59:41  <szaman> there is metallica song about salad
09:59:57  <NGC3982> szaman: Enter sandman? *badum tiss*
10:00:21  <szaman> I f*ck this! I f*ck that! Salad! Salad!
10:02:51  <NGC3982> :(
10:03:05  <NGC3982> Mr Cabbagehead feels very offended.
10:03:22  *** Pixa [] has quit [Remote host closed the connection]
10:04:41  <szaman> well, today is the day of Mr Fishhead, so i don't feel guilty
10:13:26  *** Pixa [] has joined #openttd
10:21:16  *** Devroush [] has joined #openttd
10:29:44  *** Pixa [] has quit [Read error: Connection reset by peer]
10:39:18  *** Pixa [] has joined #openttd
10:40:52  *** brambles [] has joined #openttd
10:47:34  *** fonsinchen [] has joined #openttd
10:53:38  *** Hirundo_ [] has joined #openttd
10:53:38  *** SmatZ- [] has joined #openttd
10:54:08  *** avdg_ [] has joined #openttd
10:54:08  *** Yexo- [] has joined #openttd
10:54:28  <peter1138> hmm, #openttdcoop public server using a non-bananas newgrf :-(
10:54:38  *** pm [] has joined #openttd
10:54:41  *** mode/#openttd [+o pm] by ChanServ
10:55:08  *** tneo- [] has joined #openttd
10:55:38  *** Osai^2 [] has joined #openttd
10:56:08  *** ^ekipS^ [] has joined #openttd
10:56:22  *** XeryusTC_ [] has quit [Ping timeout: 480 seconds]
10:56:28  *** Osai [~Osai@] has quit [Ping timeout: 480 seconds]
10:56:38  *** |Terkhen| [] has joined #openttd
10:57:42  *** V453000 [] has quit [Ping timeout: 480 seconds]
10:58:36  *** Hirundo [~Hirundo@] has quit [Ping timeout: 480 seconds]
10:58:37  *** SmatZ [~smatz@] has quit [Ping timeout: 480 seconds]
10:59:06  *** avdg [~avdg@] has quit [Ping timeout: 480 seconds]
10:59:06  *** avdg_ is now known as avdg
10:59:21  *** ^Spike^ [~Spike@] has quit [Ping timeout: 480 seconds]
10:59:21  *** ^ekipS^ is now known as ^Spike^
11:00:06  *** Terkhen [] has quit [Ping timeout: 480 seconds]
11:00:06  *** tneo [~tneo@] has quit [Ping timeout: 480 seconds]
11:00:16  *** planetmaker [~planetmak@] has quit [Ping timeout: 480 seconds]
11:00:16  *** pm is now known as planetmaker
11:00:17  *** Yexo [~Yexo@] has quit [Ping timeout: 480 seconds]
11:00:18  *** Biolunar [] has joined #openttd
11:03:21  <NGC3982> :3
11:04:39  <peter1138> 3:
11:04:42  <Knogle> I never understood that smiley, it looks like you've balls in your face.
11:07:38  <SpComb> (:
11:11:34  <peter1138> :³
11:12:40  <peter1138> ☺
11:15:05  <peter1138> Ɛ:
11:15:53  <peter1138> ö
11:20:33  <peter1138> ⍢
11:20:48  <peter1138> ⍚
11:21:12  <fonsinchen> unicode kills smilies.
11:22:19  <dada__> (Ž・ω・)
11:23:47  <Eddi|zuHause> that is definitely _not_ a face...
11:24:21  <peter1138> ⢈⣹
11:25:20  <peter1138> ⵓⵔ
11:25:50  <dada__> 凞(△Ž
11:26:22  <Eddi|zuHause> :ö:
11:27:28  *** telanus1 [] has joined #openttd
11:30:30  *** Elukka [] has joined #openttd
11:31:36  *** telanus [] has quit [Ping timeout: 480 seconds]
11:32:02  *** Supercheese [~Password4@] has quit [Read error: Connection reset by peer]
11:32:30  *** Supercheese [~Password4@] has joined #openttd
11:42:04  *** Jake|afk [] has quit [Read error: No route to host]
11:42:32  *** Jake|afk [] has joined #openttd
11:46:08  <planetmaker> I guess I'm trolling. But I enjoy it :-)
12:00:32  *** argoneus [] has joined #openttd
12:00:38  *** V453000 [] has joined #openttd
12:01:09  *** XeryusTC_ [] has joined #openttd
12:20:51  <peter1138> It ain't that clever.
12:30:34  *** Yexo- is now known as Yexo
12:38:23  <Eddi|zuHause> planetmaker: if you're playing on the "data" directory being replaced, that doesn't even make sense, because it is still being supported for backwards compatibility
12:48:15  <dada__> hahaha he said "contact a developer for help" :)
12:48:22  <dada__> not noticing the "openttd developer" user title
12:52:52  <planetmaker> dada__, he does know
12:53:19  <planetmaker> Eddi|zuHause, not playing that (yet) :-P
12:56:50  *** LordPixaII [] has joined #openttd
13:01:26  *** Pixa [] has quit [Ping timeout: 480 seconds]
13:07:48  <peter1138> What are you "playing" on then?
13:09:11  <planetmaker> all the pitfalls in manual installation ;-) Nothing I said is invented. It's all a replay from cases I tried to help solve
13:11:47  <peter1138> I for one am very not impressed with devs trolling like that.
13:15:25  <planetmaker> yes. Sadly you don't handle all the support requests for manual installation and where to find non-bananas newgrfs either, though
13:16:43  <planetmaker> where this is an illustrations where things do go wrong. regularily
13:18:41  *** Knogle [] has quit [Read error: Connection reset by peer]
13:19:41  *** Knogle [] has joined #openttd
13:19:58  <Belugas> hello
13:20:07  <peter1138> Sir Belugas!
13:21:12  <Belugas> hi hi sir :)
13:23:14  <planetmaker> hi Belugas
13:25:28  <peter1138> Eddi|zuHause: I provided a dirty hack? Hmm...
13:25:41  <Eddi|zuHause> peter1138: a veeeery long time ago
13:30:11  <Belugas> sir maker :)
13:31:06  <Eddi|zuHause> [Di Nov 7 2006] [13:37:51] <peter1138>  Eddi|zuHause2: maybe ;p
13:31:49  <peter1138> No longer there...
13:31:58  <V453000> totally not shady and suspicious file name :D
13:32:13  <Eddi|zuHause> i still have the file, but it's probably not very interesting
13:33:27  <Eddi|zuHause>
13:33:39  <peter1138> Ooh, nice :-)
13:34:47  <Eddi|zuHause> also, it was posted at 13:37 ;)
13:34:51  *** argoneus [] has quit [Ping timeout: 480 seconds]
13:35:12  <peter1138> planetmaker, incidentally, I used to have some patches on the go that would've ultimately supported files contained in zip files...
13:35:30  <planetmaker> well... would be nice, if zips be treated as tars?
13:35:46  <peter1138> No because they're not.
13:36:06  <Eddi|zuHause> temporarily uncompress zip, rar, xz, ... ?
13:36:13  <peter1138> But you probably mean transparently, which was the case.
13:37:25  <Eddi|zuHause> ./openttd: error while loading shared libraries: cannot open shared object file: No such file or directory <-- i guess i'd have to recompile it :/
13:37:30  <peter1138> Originally I was thinking about mmaped file IO, but it's pointless because most of the time we copy stuff around into memory anyway.
13:40:20  <Eddi|zuHause> hm... about two million warnings
13:40:45  <peter1138> Oh crap, sorry Belugas...
13:41:03  * peter1138 copies a few audio files for previewing purposes.
13:41:17  <Eddi|zuHause> hey, it actually runs
13:41:47  <Belugas> peter1138 : why are you sorry for? audio files? where?
13:41:58  <Belugas> ho... the stuff i sent you a while ago?
13:42:26  <peter1138> Erm
13:42:33  <peter1138> Seems I never got around to listening to much of it.
13:42:43  <peter1138> Last stuff was Led Zep, which was, er, 2010.
13:43:01  <Belugas> hehehe
13:43:45  <peter1138> Good job this is only 30 second tasters of each track... *cough*
13:49:41  *** TheMask96 [] has quit [Ping timeout: 480 seconds]
13:54:34  *** TheMask96 [] has joined #openttd
14:38:06  *** argoneus [] has joined #openttd
14:45:49  *** sla_ro|master [slaco@] has joined #openttd
15:02:02  *** perk11 [~perk11@] has quit [Ping timeout: 480 seconds]
15:06:58  *** HerzogDeXtEr [~Flex@] has joined #openttd
15:07:42  *** perk11 [~perk11@] has joined #openttd
15:11:07  *** fonsinchen [] has quit [Remote host closed the connection]
15:11:27  *** peter1138 [] has quit [Remote host closed the connection]
15:21:56  *** Prof_Frink [~proffrink@] has joined #openttd
15:23:32  *** perk111 [~perk11@] has joined #openttd
15:27:44  *** perk11 [~perk11@] has quit [Ping timeout: 480 seconds]
15:28:34  *** supermop [] has joined #openttd
15:35:20  *** pugi [] has joined #openttd
15:51:19  *** pippo64 [~tel.santa@] has joined #openttd
15:53:03  *** frosch123 [] has joined #openttd
15:53:33  *** pippo64 [~tel.santa@] has quit []
15:55:16  *** valhallasw [] has quit [Ping timeout: 480 seconds]
16:01:34  *** perk111 [~perk11@] has quit [Ping timeout: 480 seconds]
16:12:02  *** Hyronymus [] has joined #openttd
16:17:42  *** |Terkhen| is now known as Terkhen
16:18:24  *** keoz [] has joined #openttd
16:27:08  <__ln__> now in english:
16:38:47  *** roadt [~roadt@] has quit [Ping timeout: 480 seconds]
16:41:58  <V453000> andythenorth: did the fruit cargo label in FIRS change?
16:42:15  <V453000> FRUT doesnt seem to be correct, not sure if it was originally
16:42:23  <V453000> but I think it worked
16:42:32  <V453000> oh andy aint here :z
16:42:46  <V453000> anyone knows? :)
16:43:46  <V453000> k FRVG there we go
16:47:16  *** Progman [] has joined #openttd
16:52:49  *** keoz [] has quit [Quit: keoz]
16:53:13  *** Elukka [] has quit []
16:53:51  *** glx [glx@2a01:e35:2f59:c7c0:100:4d0e:7768:1d66] has joined #openttd
16:53:54  *** mode/#openttd [+v glx] by ChanServ
16:58:55  *** Alberth [] has joined #openttd
16:58:55  *** mode/#openttd [+o Alberth] by ChanServ
17:02:33  *** Guilux [] has quit [Ping timeout: 480 seconds]
17:02:38  *** DanMacK [] has joined #openttd
17:02:53  <DanMacK> Hey all
17:02:58  <DanMacK> !seen andy
17:05:38  <supermop> hi
17:06:55  <DanMacK> Hey
17:07:08  <DanMacK> I'm a bit behind the times.  You re-released your roundhouses yet?
17:07:36  <Alberth> DanMacK:  andy was here at least yesterday
17:08:11  <DanMacK> cool
17:09:26  <supermop> oh man
17:09:27  <supermop> no
17:09:36  <supermop> i haven't coded anything in so long
17:09:44  *** Guilux [] has joined #openttd
17:09:56  <supermop> and nml can't do stations
17:10:17  <supermop> so working with that batch of nfo is really hard for me
17:10:28  *** Guilux [] has quit []
17:10:52  <supermop> i don't think there is anyone looking to help code it for me either
17:10:53  <Alberth> extend nml with station support first :p
17:10:54  *** Guilux [] has joined #openttd
17:11:08  <supermop> i have no idea how to do that!
17:11:19  <supermop> also as i told andy a week or so ago
17:11:49  <supermop> getting frustrated drawing imaginary toy buildings for me is doubly annoying for me
17:12:04  <supermop> as i am an architect who can't find work in architecture
17:12:17  <supermop> am stuck in furniture
17:12:22  <DanMacK> ick
17:12:46  <supermop> so slogging through train sheds or stations or houses just reminds me of that
17:13:00  <supermop> so i sort of stopped
17:13:21  <supermop> i only played the game again for the first time in a year or so a couple weeks ago
17:13:36  <supermop> as i was on a flight and wanted to try out GS
17:14:23  <DanMacK> I started playing again but the lack of time-period things irritated me, so I stopped :P
17:14:29  <DanMacK> and started drawing again.
17:14:35  <supermop> ah
17:14:55  <supermop> even though i don't work on newgrfs anymore
17:14:58  <DanMacK> If I'm playing 1800 I don't want diesel cranes and stuff
17:15:17  <supermop> i find i cant get through a game without wishing something was different
17:15:25  <DanMacK> Same here
17:15:27  <supermop> so i think about how i would prefer it to be
17:15:38  <supermop> then think about how hard it would be to do that
17:15:53  <supermop> then i just go read or go out for a beer
17:16:33  <DanMacK> heh
17:17:35  <DanMacK> thought about period industries for FIRS?
17:17:58  <supermop> i had an idea for one yesterday but it was silly
17:18:23  <DanMacK> What was that?
17:18:25  *** KouDy [~KouDy@] has quit [Quit: Leaving.]
17:19:07  <supermop> fufillment center
17:19:13  <supermop> for 1995 or so on
17:19:25  <supermop> accepts goods, produces mail
17:19:50  <DanMacK> I like it
17:20:25  <supermop> would be easy to draw as well - buildings like that are usually just steel or tilt-slab boxes
17:21:31  <DanMacK> What are you waiting for?  :P
17:23:16  *** Wolf01 [] has joined #openttd
17:23:17  <supermop> same thing i am waiting for to go to grad school, leave the city, start a design studio, etc
17:23:24  <Wolf01> hello o/
17:24:17  <Alberth> oddink Wolf01
17:25:30  *** Elukka [] has joined #openttd
17:28:55  <supermop> i wish nml did bridges too
17:30:07  <supermop> i thought yesterday about printing a dimetric grid on a piece of 11x17, putting it on my drawing board, then doing free hand pen sketches on tracing paper over it
17:34:21  <DanMacK> to draw TTD buildings you mean?
17:35:14  <supermop> yeah
17:35:21  <supermop> or ttd-ish buildings
17:35:31  <DanMacK> It works well
17:35:36  <supermop> aiming for a house set etc might be too overwhelming
17:35:47  <supermop> but if i have an idea sketch it out
17:35:56  <DanMacK> Talk to Pikka, he may need a few buildinfs
17:36:21  <supermop> later if i want to scan a shoebox full of thumbnail sketches i could hand someone the pngs
17:36:38  <supermop> more like
17:36:57  <supermop> i saw an interesting 60s/70s facade in chinatown a week or so ago
17:37:19  <supermop> a bit out of place but looked very much like part of the tt world
17:37:31  <DanMacK> Get a pic?
17:38:13  <supermop> i could have just sketched it out without having to worry about all the views, construction stages, palette, and whether the scale or level of detail looked good
17:38:50  *** NataS [] has joined #openttd
17:43:07  *** fonsinchen [] has joined #openttd
17:45:45  <DorpsGek> Commit by translators :: r24585 /trunk/src/lang (6 files) (2012-10-11 17:45:33 UTC)
17:45:46  <DorpsGek> -Update from WebTranslator v3.0:
17:45:47  <DorpsGek> belarusian - 2 changes by KorneySan
17:45:48  <DorpsGek> catalan - 2 changes by arnau
17:45:49  <DorpsGek> english_US - 2 changes by Rubidium
17:45:50  <DorpsGek> french - 2 changes by glx
17:45:51  <DorpsGek> lithuanian - 2 changes by Stabilitronas
17:45:52  <DorpsGek> vietnamese - 74 changes by myquartz
17:46:08  *** Nat_aS [] has quit [Ping timeout: 480 seconds]
17:53:46  *** Pixa [~pixa@] has joined #openttd
17:59:31  *** LordPixaII [] has quit [Ping timeout: 480 seconds]
18:13:09  *** dondaniel [] has joined #openttd
18:13:27  <dondaniel> hi
18:13:34  <Alberth> hi
18:13:45  <dondaniel> where are you from
18:14:11  <dondaniel> i from russia
18:14:11  <Alberth> here?
18:14:19  <dondaniel> )
18:14:23  <dondaniel> eemmmm
18:14:24  <dondaniel> ok
18:14:46  <dondaniel> you are beginner in open ttd
18:15:03  <dondaniel> ????
18:15:13  <Alberth> yeah, I only played it 10 years or so
18:15:14  <__ln__> yeah, all of us have barely seen openttd
18:15:22  <dondaniel> ONLY
18:15:37  <dondaniel> i have idea
18:16:01  <dondaniel> to make the leage
18:16:06  <dondaniel> of champions
18:16:09  <dondaniel> ))))
18:16:31  <__ln__> please write full sentences on one line
18:17:31  <dondaniel> but i dont know how say for all tycoon players about this
18:17:34  <dondaniel> ok
18:17:52  <dondaniel> can you help me??
18:18:04  <Alberth> many users read the site, you can post there
18:18:47  <dondaniel> ok thanks
18:19:20  *** dondaniel [] has quit [Quit: ajax IRC Client]
18:49:05  *** andythenorth [] has joined #openttd
18:53:06  *** kais58_ [] has joined #openttd
18:55:02  *** kais58 [] has quit [Ping timeout: 480 seconds]
19:11:45  *** TheDude [] has joined #openttd
19:12:07  <TheDude> hi
19:25:57  *** heffer [] has quit [Quit: No Ping reply in 180 seconds.]
19:26:33  *** heffer [] has joined #openttd
19:32:56  *** KritiK [] has joined #openttd
19:33:33  <Yexo> hi
19:41:20  *** HerzogDeXtEr1 [] has joined #openttd
19:42:09  *** mahmoud [] has joined #openttd
19:44:37  *** George [~George@] has quit [Read error: Connection reset by peer]
19:47:16  *** HerzogDeXtEr [~Flex@] has quit [Ping timeout: 480 seconds]
19:47:48  <TheDude> hi andythenorth
19:47:58  <andythenorth> lo
19:48:16  <andythenorth> you had a question? :)
19:48:32  <TheDude> I am trying to save value in temporary storage 100 and 101 to use variable 68 ( for industries
19:48:39  <TheDude> but I am failing with it
19:48:57  <TheDude> even with some code I found on forums
19:50:13  <TheDude> what I have is this     02 0A A0 89 1A 20 FF FF FF FF sto 1A 00 \d100 01 \d0 \d0 A0 00
19:53:40  *** frosch123 [] has quit [Remote host closed the connection]
19:53:48  <TheDude> there should be link to another varact2 at the npar, but that wasnt the problem
19:55:09  *** DanMacK [] has quit []
19:55:20  <andythenorth> nml? :)
19:56:48  <TheDude> what with it?
19:58:56  <andythenorth> easier ;)
19:59:04  <TheDude> hm, ok
19:59:33  <andythenorth> TheDude: this is industry code?  or something else (I didn't look up the type)
20:00:00  <TheDude> yes, it is
20:00:31  <Eddi|zuHause> TheDude: it must be \dx100
20:00:35  <andythenorth> you could try using permanent storage to test your code
20:00:43  <andythenorth> then you can see the value in the newgrf debug gui
20:00:53  <Eddi|zuHause> TheDude: 100 as hexadecimal number
20:00:54  <andythenorth> once it works, go back to temp storage register
20:01:13  <andythenorth> also what Eddi|zuHause said
20:01:29  <andythenorth> but getting debug info is essential for your sanity when coding industry newgrf
20:01:56  <TheDude> where can I see permanent storage?
20:02:25  <Eddi|zuHause> you need to enable newgrf_developer in the console
20:02:37  <TheDude> sure
20:02:45  <TheDude> but when is it then?
20:02:57  <Eddi|zuHause> then you get a "bug" icon in the title bar of the industry
20:03:07  * andythenorth looks in wiki
20:03:15  <TheDude> if I inspect industry, there are variables, properties, but no storage
20:03:15  <andythenorth>
20:04:52  <andythenorth> hmm
20:05:01  <TheDude> yes, exactly, what is the persistent storage there? I dont know
20:05:11  <andythenorth> they appear after the first month or so of gameplay
20:05:28  <andythenorth> maybe they aren't shown if all storage is 0 or null
20:05:47  <andythenorth> they probably won't show for default industries
20:05:51  <andythenorth> they do show for FIRS
20:07:38  <TheDude> ok, I will play with it little bit more, thanks for the push
20:11:55  <andythenorth> new ship
20:11:56  <andythenorth>
20:12:00  <andythenorth> from DanMacK
20:12:47  *** sla_ro|master [slaco@] has quit [Quit: DANGER is OFFLINE DANGER]
20:17:06  <Eddi|zuHause> how good could ships from denmark be?
20:17:16  *** George [~George@] has joined #openttd
20:22:17  <andythenorth> Eddi|zuHause: as good as ships from Canada?
20:22:47  <andythenorth> I can't think of any other alternative spellings for DanMacK :P
20:24:32  *** DDR [~chatzilla@] has joined #openttd
20:30:20  <Terkhen> good night
20:35:24  <Supercheese> OTTD doesn't allow each smokestack on a ship to emit its own steam puff, right?
20:35:34  <Supercheese> limited to one IIRC
20:35:52  *** FLHerne [] has joined #openttd
20:36:28  <FLHerne> andythenorth: Hey! Your ships are useful! :P
20:36:45  <Eddi|zuHause> <-- that looks totally weird, with the "red lips" and "tongues"
20:37:29  <Eddi|zuHause> Supercheese: yes, only one puff, and the position can't be adjusted properly (afair only length-wise, not height-wise)
20:37:48  <Supercheese> Yeah, was hoping that had changed since I last checked, but alas
20:38:12  * Supercheese wonders if he should attempt a patch to fix that
20:40:25  <Supercheese> Having never really inspected the code, though, naturally I've quite a bit of reading to do
20:42:24  <andythenorth> FLHerne: 'useful' ?
20:42:45  *** andythenorth [] has left #openttd []
20:42:49  *** andythenorth [] has joined #openttd
20:42:49  *** andythenorth [] has left #openttd []
20:42:56  <FLHerne> andythenorth: Move loads of cargo, with the autorefitting :-)
20:42:58  *** andythenorth [] has joined #openttd
20:43:12  <FLHerne> andythenorth: Move loads of cargo, with the autorefitting :-)
20:43:19  <FLHerne> Dodgy client?
20:43:25  <andythenorth> dodgy keypress
20:43:57  * FLHerne screenshots
20:44:17  *** Alberth [] has left #openttd []
20:46:08  <Supercheese> Jeez, weird BubbleMovement arrays or something under effectvehicle.cpp
20:46:46  <Supercheese> guess all the movement is hardcoded?
20:48:21  <Supercheese> ach, most of this goes over my head
20:49:05  <FLHerne> andythenorth: Integrated ship/rail transport :D
20:49:23  *** Eddi|zuHause [] has quit [Remote host closed the connection]
20:50:04  <Supercheese> "double tracked" canals, eh? :)
20:50:16  * FLHerne puts on his 'blatant screenshot plug' hat :D
20:50:20  *** Eddi|zuHause [] has joined #openttd
20:50:32  <FLHerne> Supercheese: Giant barges going through each other look silly :P
20:50:36  <Supercheese> indeed
20:50:52  <Eddi|zuHause> there's a "ships avoid each other" patch
20:51:16  <FLHerne> Eddi|zuHause: I know. Forgot to apply it before starting this game
20:51:27  <FLHerne> PF-only, might not break if I add it?
20:51:29  <Eddi|zuHause> but doing that strictly may deadlock
20:51:47  <Eddi|zuHause> FLHerne: depends if it adds a setting
20:52:01  <andythenorth> FLHerne: but ships are so slow :o
20:52:06  <FLHerne> Well, I might as well try :P
20:52:20  <FLHerne> andythenorth: Trains on water are slower :P
20:52:33  <FLHerne> Also, it's 1928 so the trains are slow too :D
20:52:38  <Eddi|zuHause> FLHerne: if it does, you might want to change its changes to settings.ini, to be a gui-only option
20:52:46  <Supercheese> but ships are the only vehicles that offer indefinitely large route capacities
20:52:54  <Supercheese> need to transport more stuff? just add more ships
20:53:09  <Eddi|zuHause> FLHerne: you will lose multiplayer stability, but you gain savegame compatibility
20:53:10  <NGC3982> FLHerne: What NewGRF is that?
20:53:11  <Supercheese> they never get jammed, they clip through each other, they all can load and unload at the same time etc. etc.
20:53:13  <FLHerne> Supercheese: That's going to prove important soon :D
20:53:27  <Supercheese> all other vehicle types can get bogged down
20:53:32  <Supercheese> and capacity is limited
20:53:33  * FLHerne is going to route the core of his network through that canal :-)
20:53:42  <FLHerne> NGC3982: Which one?
20:53:53  <NGC3982> Oh, sorry. The station tiles
20:53:59  * FLHerne is finding the grf-limit a pain ;-)
20:54:02  <FLHerne> ISR?
20:54:10  <NGC3982> The GRF-limit?
20:54:12  * NGC3982 googles
20:54:23  * Supercheese learned how to compile OTTD just so he could increase the GRF limit ;)
20:54:29  <FLHerne> There's a maximum number :P
20:54:47  <NGC3982> There is?
20:54:50  <NGC3982> Jeez.
20:55:05  <Supercheese> fios.h: line 94: LAST_GRF_SLOT
20:55:17  <Supercheese> I increased mine to 254 from 63, IIRC
20:55:21  <FLHerne> It's higher than you'd normally encounter, unless you were to fill them all with eyecandy and vehicles :D
20:55:29  <Supercheese> also line 96: MAX_FILE_SLOTS
20:56:32  <Supercheese>
20:56:46  <Supercheese> 64 is _not enough_.
20:56:49  <Supercheese> :P
20:57:04  <Supercheese> (also, old grf list is old)
20:58:29  *** telanus1 [] has left #openttd []
21:06:05  *** valhallasw [] has joined #openttd
21:07:53  <andythenorth> what's all this patch talk about
21:07:59  <andythenorth> all my patches go into trunk quickly
21:08:02  <andythenorth> :P
21:13:46  <andythenorth> FLHerne: FISH feedback in the thread if you have any btw
21:14:14  * andythenorth bed
21:14:15  *** andythenorth [] has quit [Quit: andythenorth]
21:14:35  <Eddi|zuHause> why do i get bored so quickly lately?
21:14:42  <NGC3982> Why is there a maximum in the first place?
21:15:03  <Eddi|zuHause> NGC3982: because computers are not turing complete
21:15:13  <Eddi|zuHause> they lack infinite storage
21:15:54  <SpComb> uh huh
21:16:30  <SpComb> OpenTTD would run out of available "if"s, you see, with too many GRFs loaded
21:16:48  <SpComb> "if"s are the things that computer programs are made out of
21:16:51  <NGC3982> Eddi|zuHause: That sounds like a user problem.
21:17:21  <Supercheese> Apparently the grf list has to fit into a single UDP packet for network games
21:17:31  <NGC3982> Oh
21:17:36  <Supercheese> so there's a reason for the limit
21:17:41  <NGC3982> I see
21:17:45  <Supercheese> singleplayer games there isn't a reason insofar as I can tell
21:17:56  <NGC3982> That sounds logical
21:18:25  <Supercheese>
21:18:50  <Supercheese> "For the multiplayer lobby all used NewGRFs must be put into a single UDP packet. A UDP packet is very limited in size."
21:19:45  <Eddi|zuHause> one could increase that by using a smaller checksum instead of md5
21:20:01  <SpComb> sounds like OpenTTD needs a protocol for reassembling fragmented UDP packets!
21:20:02  * Supercheese doesn't really know what that means :P
21:20:36  <Eddi|zuHause> checksums are a means to compare two files, without transferring the whole file to the other location
21:20:58  <Supercheese> So use a fewer-bits checksum or some such?
21:21:03  <Eddi|zuHause> yes
21:21:39  <Supercheese> I rarely if ever play network games, though, so am I correct in assuming there's no reason for the limit in singleplayer games?
21:21:47  <Eddi|zuHause> if you use a half-size checksum, you can pack more grfs into the list
21:21:55  <Supercheese> I mean, I have ~90 grfs loaded in my game here, so it seems to work fine ;)
21:21:56  *** Hyronymus [] has quit [Quit: Hyronymus]
21:22:35  <Eddi|zuHause> there may be type troubles if you set more than 255
21:22:51  *** Hyronymus [] has joined #openttd
21:22:59  <NGC3982> 255 seems good.
21:23:09  <Supercheese> yep, that's what I upped the limit to
21:23:46  <FLHerne> Why can't it use two UDP packets? :P
21:24:01  *** DDR [~chatzilla@] has quit [Ping timeout: 480 seconds]
21:24:01  <NGC3982> Two!? You mad man..
21:24:06  <Yexo> it possible can, but nobody bothered to code support for that
21:24:16  <NGC3982> That would inflate the universe to another dimension!
21:24:31  * NGC3982 just realized that things don't inflate into spatial dimensions.
21:24:36  <Rubidium> NGC3982: because that significantly increases the complexity
21:24:45  <Yexo> and to be fair: all newgrf lists that contain more than 50 items I've seen contain a lot of unused grfs
21:25:04  <NGC3982> Rubidium: What increases the complexity?
21:25:05  <FLHerne> Yexo: Mine doesn't :P
21:25:22  <Supercheese> Some grfs have the nasty problem of only containing one vehicle
21:25:23  <Rubidium> if with 1 packet there is a 50% chance the packet gets lost, then with 2 packets it's 75% and with 4 even a 94% chance
21:25:32  <NGC3982> Rubidium: Oh. Using two? Let's re-direct that answer to FLHerne.
21:25:32  *** DDR [] has joined #openttd
21:25:34  <FLHerne> Unless you equate 'eyecandy' with 'useless', which is a potentially valid obsevation :D
21:26:21  <Yexo> I don't, I meant using for example old opengfx grfs from before the opengfx baseset, or 20 stations sets but only the default stations build
21:26:36  <Yexo> having both ecs and firs in the list and one error out due to incompatibility, that kind of things
21:26:41  <Rubidium> and since UDP is 'fire and forget', adding support for multiple packets means retries, getting the packet order right and all kinds of nasty stuff
21:26:41  <NGC3982> Not to be obtuse, but why is it important to store all the NewGRFs in a UDP file?
21:26:49  *** DDR [] has quit []
21:27:08  <NGC3982> That's not really related to the inquiry, by the way.
21:27:12  <FLHerne> Yexo: For MP servers, the latter in your first point can be valid ;-)
21:27:26  <Rubidium> because people want to know whether they have the right NewGRFs to join a server
21:27:38  <FLHerne> You don't know what players want to build, so it's good to have a range of station grfs
21:27:45  <Rubidium> and clicking each server to see whether that's the case is more cumbersome than showing a nice green blob
21:27:51  *** DDR [] has joined #openttd
21:27:55  <Rubidium> (or a yellow blob when NewGRFs are missing)
21:28:04  <NGC3982> I see.
21:28:11  <FLHerne> Rubidium: Would TCP be better at all?
21:28:12  <Yexo> FLHerne: for mp there is also the problem that having too many newgrfs might scare off users
21:28:18  <NGC3982> Other games have similar systems with addons. How do they solve it?
21:28:21  <Yexo> FLHerne: that's use a lot more resources
21:28:22  * FLHerne hasn't done networking at that level :P
21:28:46  <FLHerne> Yexo: I have a CDist server anyway :P
21:28:52  <Rubidium> FLHerne: that requires many more round trips to get just a kB of data across
21:29:20  <FLHerne> I get user shortages anyway, but I doubt grfs are the issue ;-)
21:29:22  <Rubidium> FLHerne: and certain OSes seemed to have a limit on the number of TCP connections that could be opened
21:29:28  <Rubidium> (as a server)
21:30:03  <Yexo> <NGC3982> Other games have similar systems with addons. How do they solve it? <- can you name some other games where you can have >50 addons loaded at the same time?
21:30:29  <FLHerne> Mmm. No then :P
21:32:49  *** Hyronymus [] has quit [Quit: Hyronymus]
21:32:57  <NGC3982> Yexo: Yes, indeed. Any MMORPG where your character uses equipment that are visible to others should be ..basicly the same thing?
21:33:16  <NGC3982> Yexo: If i understand carrying sets of data correctly, that is.
21:33:22  <Supercheese> Skyrim has a Mod manager, I've seen folks will zillions of mods enabled in it
21:33:39  <Yexo> NGC3982: but at that point you already have a completely connection to the server
21:33:44  <Supercheese> things get pretty hairy after a few dozen mods though
21:33:54  <Yexo> that's not the case in the openttd server overview
21:34:11  <NGC3982> Yexo: I think i understand the issue.
21:34:30  <NGC3982> Users does not connect to the actual server to retrieve the NewGRF list, but uses that wimpy UDP package.
21:34:32  <Yexo> using UDP means we don't need to have create a complete connection to the server
21:35:22  <NGC3982> And implementing a system where you actually download a real list (let's say, a text file) from the server - is tedious/hard/not worth it?
21:35:53  <NGC3982> Note that im not trying to convince you here, i litterally don't know how the game should be built, so.
21:35:56  <NGC3982> :P
21:36:12  <Yexo> compare it to using the phone vs using texts: if you call someone you can say as much as you want without any problems, but calling takes some time, you greet someone, say goodby etc. This is using a TCP connection. What we do is send a text "what newgrfs do you use" and wait for a response "a, b and c". Since we can text all servers at the same time and get responses asynchrounsly this is fast. see this as UDP
21:36:45  <NGC3982> I see.
21:36:56  <NGC3982> Good analogy.
21:36:59  <NGC3982> Yet,
21:38:05  <Yexo> one text (UDP packet) is limited in size, that's where the newgrf limit comes from. If you want to increase that you have to either switch to a phone call or use multiple texts. However since there is no synchronization, you are not sure if and in which order your texts arrive
21:38:15  <Yexo> if you limit it to one text it doesn't matter, but otherwise it does
21:38:24  <NGC3982> Ah.
21:38:40  <Yexo> that means the receiver needs to keep track of the amount of packets it expects and put them in the right order, which is quite a bit of work
21:38:43  *** Progman [] has quit [Remote host closed the connection]
21:38:46  <NGC3982> I guess this is a bigger problem then users simply downloading a list from a server.
21:39:04  <Yexo> downloading a list would mean using the phone call
21:39:10  <NGC3982> I see.
21:39:17  <Rubidium> NGC3982: try calling 250 people
21:39:17  <Yexo> now a computer is not human, but is still limited in the the amount of calls it can answer
21:39:22  <NGC3982> Rubidium: True.
21:39:43  <NGC3982> I was only thinking in the terms of a single user downloading (or using a phone call) the list from a single sever.
21:39:46  <NGC3982> server*
21:40:12  <Rubidium> that's what happens in the window where you choose the company to join
21:40:16  <Yexo> a central openttd server could fullfill that role, but you don't want to rely on an internet server for local lan games
21:40:16  <Eddi|zuHause> NGC3982: to send the same data in a TCP packet, you take 9 times the bandwidth, and a lot of memory
21:40:29  <NGC3982> Yexo: True.
21:40:44  <NGC3982> Eddi|zuHause: Ah, i see.
21:40:50  <NGC3982> Well, that kind of settles it.
21:40:54  <Yexo> now the amount of servers in a lan is probably always very limited, so a TCP connection could be used there
21:41:17  <Yexo> but all in all: it's definitely possible, but a lot of hassle to get it working correctly and the current limit is deemed "high enough"
21:41:29  <Eddi|zuHause> some routers may have problems with opening 250 connections at the same time
21:41:32  <Rubidium> also a TCP connection to the LAN broadcast is not likely to work right
21:42:03  <Rubidium> they already crash when dumping 250 UDP messages at the same time onto the router
21:42:05  <Eddi|zuHause> i have never reached the GRF limit
21:42:15  <Wolf01> 'night all
21:42:17  *** Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
21:42:26  <Yexo> servers broadcast the ip/port they're using, right? so why would it be a problem to use a tcp connection?
21:43:03  <Yexo> or does the broadcast message currently include all information?
21:43:10  <FLHerne> How does CPU load on a dedicated server scale?
21:43:21  <Eddi|zuHause> Rubidium: this is about the "online" status of servers, not the server search/masterserver
21:43:28  * FLHerne was thinking of running one on a MIPS blob :P
21:43:48  <Eddi|zuHause> FLHerne: very high
21:43:48  <NGC3982> FLHerne: Operating system?
21:43:56  *** Zeknurn [] has quit [Remote host closed the connection]
21:43:56  <Rubidium> Eddi|zuHause: but a LAN search simply broadcast's the "I want your info" UDP packet
21:44:07  <NGC3982> I love how the dedicated server works so well in Windows.
21:44:16  <Eddi|zuHause> Rubidium: ok, that would have to be split in two parts then
21:44:17  <Rubidium> Yexo: that port is the one used for player connections as well
21:44:23  <FLHerne> Eddi|zuHause: Aw :-(
21:44:37  *** Zeknurn [] has joined #openttd
21:44:45  <Rubidium> which means the connections end up in the pool used for client connections
21:44:49  <NGC3982> By the way, didn't we discuss the potential of using RPI as OpenTTD servers?
21:44:52  <FLHerne> NGC3982: Linux, of course :P . What else even runs on MIPS devices?
21:45:02  <Eddi|zuHause> FLHerne: this isn't an FPS game, where the majority of the load is 3D graphics rendering
21:45:06  <NGC3982> FLHerne: I have no idea what a MIPS is. It sounds like a pet.
21:45:10  <NGC3982> FLHerne: ;-)
21:45:34  <Rubidium> what is RPI actually?
21:45:48  <Eddi|zuHause> NGC3982: MIPS is a microprocessor architecture typically found in small devices like routers or phones
21:46:19  <NGC3982> Rubidium: Raspberry Pi is an ARM based Linux/GNU computer. It's tiny and quiet powerful.
21:46:22  <NGC3982> Rubidium: And cheap.
21:46:26  <Rubidium> oh, that thing
21:46:28  <NGC3982> Eddi|zuHause: I see.
21:46:33  <Rubidium> not some vague university
21:46:39  <FLHerne> NGC3982: Someone did ;-)
21:46:46  * FLHerne considered it too
21:47:04  <NGC3982> Ah, yes. I abandoned the RPI OpenTTD thingy because of the map sizes.
21:47:07  <NGC3982> And the RAM.
21:47:51  <FLHerne> Thing is, my big, inefficient Pentium D slurps power, so I can't justify running an always-on TTD server :-(
21:47:55  <NGC3982> 256MB GPU shared RAM*
21:48:05  <NGC3982> FLHerne: But hey.
21:48:42  <NGC3982> I fail to see a dedicated server being hard on any newer CPU
21:49:08  <NGC3982> Ive been using my HTPC (Windows 7, Atom230) as a dedicated server for months, and it copes without a sweat.
21:49:26  *** antihero [~antihero@2a01:7e00::f03c:91ff:fe93:79e7] has quit [Quit: ZNC -]
21:49:57  *** antihero [~antihero@2a01:7e00::f03c:91ff:fe93:79e7] has joined #openttd
21:50:48  * NGC3982 should google what a Pentium D is before he say things like that.
21:50:59  <Eddi|zuHause> NGC3982: the age doesn't really matter. you need a decent amount of ram, and something above 2GHz would be helpful for medium sized maps
21:51:59  <Eddi|zuHause> NGC3982: he didn't say it was too slow. he said it costs too much power (money) to run 24/7
21:52:07  *** argoneus [] has quit [Ping timeout: 480 seconds]
21:52:21  <FLHerne> NGC3982: The speed on here isn't a problem
21:52:25  <FLHerne> It's that it eats vast numbers of amps :P
21:52:57  <FLHerne> One of my spare routers would eat a fraction of the power, but might be too slow :P
21:53:29  <NGC3982> Eddi|zuHause: Ah.
21:53:45  <NGC3982> Oh, now i'm following.
21:54:00  <NGC3982> Running a dedicated OpenTTD server on a router would be computer intercourse.
21:54:50  <FLHerne> Well, my routers already have an FTP server, a mail server and an HTTP server, also 500GB of storage :D
21:54:59  * FLHerne loves misusing routers
21:55:55  <NGC3982> I haven't explored all that yet, but i have been using DD-wrt on my e3000 for a year know
21:56:16  <NGC3982> I think i have a (closed) FTPS on the USB-jack, but nothing on it.
21:56:50  <FLHerne> NGC3982: You should. Mid-range routers are actually surprisingly versatile for lightweight stuff :-)
21:56:56  <NGC3982> The newer routers with opensource firmwares are really stuff of legends
21:57:18  <NGC3982> It keeps suprising me with litteraly thousands of stuff to use them for
21:58:08  <Eddi|zuHause> oh lovely statistics. "In the entire year 2011, the german police fired 86 bullets. the new york police fires 89 bullets to hunt one single maniac, killing several innocent bystanders"
21:58:36  <NGC3982> Hehe
21:58:40  <FLHerne> Guns in the US don't obey normal logic :-(
21:59:00  <NGC3982> My father works with the police here in Sweden
21:59:22  <NGC3982> The last bullet he shot was in 1973
21:59:46  <NGC3982> During the Norrmalmstorg robbery.
22:02:15  <NGC3982> I would be scared that my father would not survive his 46 years in the service, if we were American..
22:03:07  <SpComb> I wonder if there exist some kind of set-based hashes
22:03:11  <NGC3982> Speaking of router firmware, of course.
22:03:12  <NGC3982> :E?
22:03:30  * NGC3982 surely contributes to off-topic nights.
22:03:41  <SpComb> i.e. somehow encode "this set of hashes" and be able to subset that off of some bigger local set
22:05:19  <Eddi|zuHause> SpComb: you cannot decode hashes on the other end. hashes only work if you can reproduce them at both sides from local data
22:05:35  <SpComb> not a simple one-way hash
22:05:53  <Eddi|zuHause> hashes are always one-way. that's kinda their point
22:06:15  <SpComb> some kind of set-hash that allows one to calculate subsets
22:06:26  <Eddi|zuHause> you should attend a lesson of compression theory somewhen :)
22:06:46  <SpComb> "is this hash a subset of this other hash"
22:07:28  <SpComb> e.g. given a defined ordering of items in the set
22:07:50  <Eddi|zuHause> what problem are you trying to solve?
22:08:38  *** mahmoud [] has quit [Ping timeout: 480 seconds]
22:08:41  <Eddi|zuHause> SpComb: what i am trying to say is: the client might not have the GRFs, so it cannot calculate the hashes
22:08:47  <SpComb> something very theoretical :)
22:08:56  <SpComb> quite, in that case it would not be a subset
22:09:15  <Yexo> don't send every md5sum but only the xor of N (small, like 4) md5sums. On the receiving end there is a very low amount of md5sums per grfid, so you can bruteforce to see if you have them all. Remaining problem: if you don't have all N correct NewGRFs you can't tell which one you're missing
22:10:02  <Eddi|zuHause> SpComb: the point of the exercise is to tell the client which GRFs to get
22:12:25  <SpComb> isn't it to display the no grfs/missing grfs/ok grfs indicator?
22:12:25  <Eddi|zuHause> that is only part of it
22:12:25  <SpComb> you can query the full set after clicking it or whatever
22:13:06  <Eddi|zuHause> you'd only get the full list after joining, at which point you must already have them
22:13:45  <supermop> oh man rode up to 30th street with two flat tires
22:13:49  <supermop> 28 blocks
22:13:54  <supermop> because i am stupid
22:14:29  <Eddi|zuHause> how do you get two flat tires?!
22:14:33  * SpComb ponders taking a fourier transform of his NewGRFs
22:14:53  <SpComb> been studying up too much mathematics, I guess :)
22:14:53  <supermop> hadnt ridden the bike in a couple month and all the air had leaked out
22:15:24  <Eddi|zuHause> fourier transform is only going to help you if you consider lossy compression :p
22:15:40  *** Biolunar [] has quit [Quit: My life for Aiur]
22:16:04  <supermop> so i was just thinking - 'this ride feels a lot bumpier than I remember'
22:16:09  <Eddi|zuHause> wait... you sit on a bike without noticing a flat tire?
22:16:26  <supermop> haha yeah
22:16:34  <supermop> thats the 'idiot' part i mentioned
22:17:08  <Eddi|zuHause> that's like the VERY FIRST thing i check whenever i get on a bike... and that isn't that often either
22:18:07  <Yexo> I never check it, but it's something I'd still notice
22:18:14  <Yexo> I mean, how can you not notice having a flat tire?
22:18:41  <FLHerne> Also, how can you do without a bike for that long?
22:19:10  <FLHerne> Mine broke on Tuesday, and that's messed up most of the week :-(
22:20:21  <supermop> i walk everywhere
22:21:45  <SpComb> my tire went flat sometime sunday-monday :(
22:22:05  <SpComb> the outer tire had worn through in one place
22:22:49  <fonsinchen> bloom filters, maybe
22:24:35  <fonsinchen> I can't come up with a good scheme, though.
22:24:35  <SpComb> total number of GRFs + a bloom filter?
22:24:48  <SpComb> and bruteforce available GRFs against it?
22:24:55  <fonsinchen> problem is that bloom filters have false positives
22:25:27  <fonsinchen> so total number of GRFs and bloom filter of _not_ included GRFs
22:26:04  <fonsinchen> another problem is that you have to check all possible GRF ids
22:26:09  <fonsinchen> nasty
22:27:32  <fonsinchen> actually included GRFs + number, exactly because of the false positives ...
22:28:10  <SpComb> have OpenTTD display the calculated probability in the list? :P
22:29:09  <Yexo> "There is an 80% chance you have the correct NewGRFs to join this server"
22:29:15  <Yexo> I'm sure users will love that ;)
22:29:47  <SpComb> "Bloom filters can be used for approximate data synchronization as in Byers et al. (2004). Counting Bloom filters can be used to approximate the number of differences between two sets and this approach is described in Agarwal & Trachtenberg (2006)."
22:30:02  <SpComb> Yexo: all in the name of science
22:30:11  <fonsinchen> Of course you can just make it download all missing GRFs and then there might be one you don't really need because it was a false positive
22:30:44  <fonsinchen> However, the problem of determining the base set and the effort of checking all of the base set against the filter remains
22:30:48  <supermop> i don't even have a monthly metrocard
22:32:32  <SpComb> bloom filter of included GRFs + count + md5 hash of included GRFs?
22:33:25  <fonsinchen> still makes you run all possible GRFs through the filter, doesn't it?
22:33:39  <SpComb> all grfs that the client has available
22:34:06  <SpComb> to detect if the client is missing a grf that is included in the set
22:34:26  <SpComb> and then count/md5 to weed out false positives
22:34:27  <fonsinchen> The filter has false positives.
22:34:31  <fonsinchen> ah
22:34:48  <SpComb> so figure out what local grfs are in the set, and then validate against count/md5
22:35:06  <fonsinchen> however, if the md5sum fails you don't know what is wrong ...
22:35:11  <fonsinchen> or do you?
22:35:34  <SpComb> I'm assuming that it's enough to know if you either have all grfs or are missing any
22:35:43  <SpComb> bonus if you can tell how many GRFs you are missing
22:35:43  <Yexo> as eddi said half an hour ago, basic compression theory
22:36:05  <Yexo> the required information we need to have if the check fails is the grfid + md5sum of all failed newgrfs
22:36:15  <Yexo> since all newgrfs can be missing, we really need to have all information
22:37:12  <Yexo> so any way to only send part of it can reduce data if you only want to know whether or not you have all newgrfs, but it cannot help for the case OpenTTD has: which exact version do we need to join the server
22:37:12  <SpComb> kinda depends on the UI, I guess, but I was thinking just display no/missing/all-grfs in the server list, and then further query if trying to actually join/click a server with missing GRFs
22:38:10  <Yexo> for that you can do other things, like send grfid + grfversion + first 4 bytes of md5sum
22:39:15  <SpComb> but hmm... essentially a hash over the entire set, and then a bloom filter to narrow down the selection of candidates for the hash
22:39:39  <SpComb> would that work, in theory?
22:39:52  <SpComb> to perform a subset operation
22:40:25  <fonsinchen> If you're lucky you get no false positives from the filter and then the md5sum will match.
22:40:50  <SpComb> the bloom filter might give you more candiates than are actually in the set
22:40:54  *** valhallasw [] has quit [Ping timeout: 480 seconds]
22:40:57  <fonsinchen> If not you get a false positive and the md5sum doesn't match even though you have the right GRFs
22:41:03  <SpComb> hence the count, so you cound then try combinations of those candidates
22:41:35  <SpComb> i.e. the bloom filter is just an optimization for brute-forcing all combinations of items against the hash
22:41:58  <SpComb> plus assuming a defined ordering for the items in the hash
22:42:04  <fonsinchen> If you're even more unlucky you're missing one GRF and get a false positive instead and then the md5sum won't match either.
22:42:41  <fonsinchen> well, yeah, might work after all
22:43:00  <fonsinchen> the number is important
22:43:00  <SpComb> basically the server has some set of active GRFs A, and the client some set of available GRFs B
22:43:09  <SpComb> and the goal is to figure out if A is a subset of B
22:43:39  <SpComb> the server could just send a hash over A, and client could brute-force all of its GRF combinations to figure out if it can get that same hash
22:43:47  <fonsinchen> The hassle of running all of B through the filter for each entry of the server list is substantial, though.
22:44:08  <SpComb> so the server sends the number of GRFs in the hash, and the client knows what combination-lengths to try
22:44:33  <SpComb> and then the server sends a bloom filter across the active GRFs B, and the client can test each item in A against that filter before considering it a candidate for the combinations
22:45:01  <SpComb> swap A and B there, oops
22:45:01  <fonsinchen> This is still _a lot_ of work.
22:45:17  <SpComb> well, A might be 100 GRFs, and B might be a 1000 or whatever
22:45:20  <fonsinchen> People have hundreds of GRFs and there are hundreds of servers
22:45:25  <SpComb> true
22:45:37  <fonsinchen> that gives you 10000s of filter operations
22:46:21  <SpComb> each individual server should be fairly O(N) across the number of GRFs though, I guess, depending on the number of false positives
22:47:10  <fonsinchen> yes, but the effort is #servers * #GRFs
22:47:14  <fonsinchen> sounds dangerous
22:47:24  <SpComb> I wonder what the current O(N) properties are
22:47:35  <SpComb> servers * active grfs against some hash of local GRFs
22:47:59  <fonsinchen> basically O(1) if OpenTTD keeps a lookup table of GRF IDs to GRFs
22:48:06  <fonsinchen> (which I guess it does=
22:48:21  <fonsinchen> OK. O(N) in number of servers
22:48:39  <SpComb> yeah, you end up having to validate the candidates with the theoretical bloom-set wanking :)
22:49:06  <Yexo> don't forget the time required to implement all of this
22:49:13  <SpComb> but think of it, support for arbitrary(*) numbers of GRFs in a constant[*]-length UDP packet :)
22:49:42  <SpComb> yeah, not really pratical
22:50:06  <SpComb> but interesting on a theoretical level :)
22:50:16  <Yexo> definitely :)
22:51:04  <fonsinchen> well, I'll sleep some.
22:51:10  *** fonsinchen [] has quit [Remote host closed the connection]
23:09:28  *** George|2 [~George@] has joined #openttd
23:09:28  *** George is now known as Guest1405
23:09:29  *** George|2 is now known as George
23:15:57  *** Guest1405 [~George@] has quit [Ping timeout: 480 seconds]
23:20:16  *** FLHerne [] has quit [Ping timeout: 480 seconds]
23:50:38  *** pugi [] has quit []
23:50:45  *** Pixa [~pixa@] has quit [Read error: Connection reset by peer]
23:52:11  *** Pixa [~pixa@] has joined #openttd
23:54:41  *** supermop [] has left #openttd []
23:55:07  *** George is now known as Guest1410
23:55:11  *** George [~George@] has joined #openttd

Powered by YARRSTE version: svn-trunk