Back to Home / #openttd / 2012 / 02 / Prev Day | Next Day
#openttd IRC Logs for 2012-02-05

---Logopened Sun Feb 05 00:00:41 2012
00:01-!-LordPixaII [~pixa@] has joined #openttd
00:01-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
00:02-!-KouDy1 [] has quit [Ping timeout: 480 seconds]
00:04-!-DDR [~chatzilla@] has quit [Ping timeout: 480 seconds]
00:07-!-hbccbh [~hbc@] has joined #openttd
00:15-!-DDR [~chatzilla@] has joined #openttd
00:19-!-KouDy1 [~KouDy@] has joined #openttd
00:22-!-KouDy [~KouDy@] has quit [Ping timeout: 480 seconds]
00:22-!-LordPixaII [~pixa@] has quit [Read error: Connection reset by peer]
00:22-!-Pixa [~pixa@] has joined #openttd
00:24-!-_11Runner_ [] has joined #openttd
00:33-!-LordPixaII [~pixa@] has joined #openttd
00:33-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
00:39-!-Pixa [~pixa@] has joined #openttd
00:39-!-LordPixaII [~pixa@] has quit [Read error: Connection reset by peer]
00:56-!-Eddi|zuHause [] has quit []
00:56-!-Eddi|zuHause [] has joined #openttd
01:17-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
01:18-!-Pixa [~pixa@] has joined #openttd
01:20-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
01:20-!-Pixa [~pixa@] has joined #openttd
01:30-!-andythenorth [] has joined #openttd
01:30<andythenorth>the toddler woke up early
01:31<Eddi|zuHause>good luck for him
01:32<Eddi|zuHause>he'll have an excellent carreer :)
01:32<Eddi|zuHause><andythenorth> + I couldn't have hooked up the makefile alone without the copy-paste from CETS <-- that was mostly planetmaker's work
01:32-!-kkb110_ [] has quit [Ping timeout: 480 seconds]
01:32<andythenorth>oh good
01:32<andythenorth>you're awake :)
01:32*andythenorth has a string design problem
01:32<andythenorth>did you solve concatenation in nml?
01:33<andythenorth>well planetmaker is due thanks also :)
01:34<Eddi|zuHause>yeah it works
01:34<andythenorth>I'm not even sure what my spec is yet
01:35<andythenorth>I have a headache about translations
01:35<andythenorth>say I do an english string "This vehicle carries " <value> t in <value> trailers"
01:36<andythenorth>that's five substrings
01:36<andythenorth>or I use the text stack
01:36<Eddi|zuHause>"This vehicle carries {WEIGHT} in {NUM} trailers"
01:36<Eddi|zuHause>string(STR_DESC, weight, num)
01:36<Eddi|zuHause>that should basically work
01:37<Eddi|zuHause>as long as weight and num are known
01:37<Eddi|zuHause>at compile time
01:37<Eddi|zuHause>the names could be off though :)
01:37<andythenorth>they are
01:38<andythenorth>so string() is using templating?
01:38<Eddi|zuHause>it can evaluate the same parameters that the game can use
01:39<Eddi|zuHause>you can also just use string(STR_DESC) and push weight and num on the stack during CB23
01:39<andythenorth>so does that compile to text stack manipulation?
01:39<Eddi|zuHause>the first method will evaluate the full string, and make a static string out of it
01:40-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
01:40-!-Pixa [~pixa@] has joined #openttd
01:40<Eddi|zuHause>the stack manipulation was apparently too difficult to figure out, so you'll have to do that manually
01:40<andythenorth>think I'd better experiment :)
01:40<andythenorth>dunno why I'm scared of the text satck
01:40<andythenorth>used it loads in FIRS
01:41-!-kkb110_ [] has joined #openttd
01:41<andythenorth>the main arse with the text stack is (a) remembering the order of the stack (b) packing / unpacking values into dwords
01:41<andythenorth>nml might hide that
01:44-!-LordPixaII [~pixa@] has joined #openttd
01:44-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
01:47<Eddi|zuHause>like i said, nobody could figure that out yet
01:52-!-cornjuliox [~cornjulio@] has joined #openttd
01:56<Eddi|zuHause>what this probably needs is a deeper hiding of the switch-structure, so the compiler has more freedom in shuffling stuff around
01:56-!-andythenorth is now known as Guest1594
01:56-!-andythenorth_ [] has joined #openttd
01:56-!-andythenorth_ is now known as andythenorth
01:58-!-Guest1594 [] has quit [Read error: Connection reset by peer]
02:01<andythenorth>I considered doing all the concatenation with python when I write the string to the lang file
02:01<andythenorth>it's more robust
02:01<andythenorth>but smells wrong for translations
02:02<andythenorth>I can't see how I avoid code like "if spanish: do_stuff() elif: norwegian: do_other_stuff:
02:02<andythenorth>which is a horrible pattern
02:02-!-bryjen [~bryjen@] has quit [Quit: Leaving]
02:02<andythenorth>can someone tell me I'm overthinking it please?
02:02<Eddi|zuHause>you're overthinking it
02:03<andythenorth>do you assemble any strings with python in CETS?
02:06<Eddi|zuHause>i handle two strings: the vehicle name, and the vehicle description
02:06<Eddi|zuHause>the vehicle name is assembled at compile time, and the vehicle description at run time
02:07*andythenorth experiments further
02:07<Eddi|zuHause>the vehicle name may be a standard string, or look like "{STRING} - {STRING} (Abteilwagen, {STRING})"
02:08<Eddi|zuHause>in which case i check whether i have the right amount of parameters, and the parameters will look like "string(STR_PASSENGER_WAGON),string(STR_EXPRESS_TRAIN)" or similar
02:08<Eddi|zuHause>also, i expand "{SUP:1}" to "¹" in that step
02:10<Eddi|zuHause>the vehicle description consists of multiple parts, e.g. the axle scheme and railtype info, and some stats that aren't mentioned in the normal purchase info
02:10<Eddi|zuHause>means i have a string:STR_ENG_DESCRIPTION :{BLACK}Axle Scheme: {GOLD}{STRING}{BLACK} Use: {GOLD}{STRING}{BLACK}{}Track Class: {GOLD}{STRING}{BLACK}
02:11-!-tokai|noir [] has joined #openttd
02:11-!-mode/#openttd [+v tokai|noir] by ChanServ
02:11<Eddi|zuHause>and do the stack-pushing:
02:11<Eddi|zuHause> file.write('switch(FEAT_TRAINS, SELF, VEH_ID(text_switch_certs), [STORE_TEMP(string(STR_AUTO_%d) | string(%s) << 16, 0x100), STORE_TEMP(string(STR_TRACK_TYPES_CERTS) | string(STR_TRACK_CLASS_CERTS_%s) << 16, 0x101), STORE_TEMP(string(STR_TRACK_TYPE_%s%s), 0x102), 0]) {\n'%(tables.strings.index(axle_scheme), tables.usage_strings[usage], track_type[1], track_type[0], track_type[4]))
02:13<Eddi|zuHause>the axle_scheme string is also processed by python, in that it reads them from the tracking table, weeds out duplicates, and gives them string-ids
02:14-!-tokai|mdlx [] has quit [Read error: Operation timed out]
02:15-!-andythenorth [] has quit [Ping timeout: 480 seconds]
02:15-!-cmircea [~cmircea@] has joined #openttd
02:16-!-tokai|mdlx [] has joined #openttd
02:18-!-_11Runner_ [] has left #openttd []
02:21-!-tokai|noir [] has quit [Ping timeout: 480 seconds]
02:22-!-tokai|noir [] has joined #openttd
02:22-!-mode/#openttd [+v tokai|noir] by ChanServ
02:25-!-andythenorth [] has joined #openttd
02:27-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
02:27-!-LordPixaII [~pixa@] has quit [Read error: Connection reset by peer]
02:27-!-theholyduck [] has quit [Ping timeout: 480 seconds]
02:27-!-Pixa [~pixa@] has joined #openttd
02:30-!-tokai|mdlx [] has joined #openttd
02:30-!-andythenorth is now known as Guest1596
02:30-!-andythenorth_ [] has joined #openttd
02:30-!-andythenorth_ is now known as andythenorth
02:30-!-andythenorth_ is "(unknown)" on (unknown)
02:35-!-tokai|noir [] has quit [Read error: Operation timed out]
02:37-!-Guest1596 [] has quit [Ping timeout: 480 seconds]
02:38<andythenorth>my approach to strings is defective
02:38<andythenorth>I'm going to end up creating my own lang file system
02:38<andythenorth>which seems stupid
02:41-!-sla_ro|master [slaco@] has joined #openttd
02:44-!-LordPixaII [~pixa@] has joined #openttd
02:44-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
02:45*andythenorth waits for inspiration to strike :P
02:49*SmatZ suggests the approach used in openttd :)
02:52*andythenorth ponders
02:52<andythenorth>either I have lots of ugly code in the language template
02:52<andythenorth>or I delegate it all to the class, but then it's harder to find
02:52<andythenorth>and hard-coding english strings into the class is a big no-no
02:53<andythenorth>either route starts to imply having a strings file
02:53<andythenorth>but that's just replicating privately what nml lang files are supposed to do already
02:53<andythenorth>maybe I should parse the lang files :o
02:54<andythenorth>and then rewrite them dynamically
02:54<andythenorth>because that never goes wrong :P
02:54<andythenorth>an example of ugly code in a lang file -
02:55<andythenorth>the code itself isn't ugly, but in this context it sucks
02:55<Eddi|zuHause>i just take the file, and append my autogenerated strings
02:56-!-Pixa [~pixa@] has joined #openttd
02:56<andythenorth>Eddi|zuHause: how would translators translate your strings?
02:56-!-LordPixaII [~pixa@] has quit [Read error: Connection reset by peer]
02:57<Eddi|zuHause>they only translate the file
02:57<Eddi|zuHause>the autogenerated strings are always the same
02:57*andythenorth will read CETS
02:57<Eddi|zuHause>the next-to-last commit especially
02:58<Eddi|zuHause>or the one before that
03:00<Eddi|zuHause>actually, r617
03:01<Eddi|zuHause>no, misread that
03:01<Eddi|zuHause>r619 is right
03:02<andythenorth>STR_TRACK_TYPES_DEFAULT :{STRING}
03:02<andythenorth>then pass something?
03:03-!-lmergen [] has joined #openttd
03:03<Eddi|zuHause>you pass "electrified", "unelectrified" or "3rd rail" to that
03:03<andythenorth>do you parse the lang files at all? Or just read them in and write them out with appends?
03:03<Eddi|zuHause>just read and write out again
03:04<Eddi|zuHause>nml does the assembling
03:05*andythenorth reads further
03:07<Eddi|zuHause>r277 may also be interesting
03:07<Eddi|zuHause>it was the initial cb23 commit, afaict
03:08<Eddi|zuHause>before it got "complicated" with the railtype stuff
03:11-!-lmergen [] has quit [Remote host closed the connection]
03:12<andythenorth>for BANDIT the correct solution seems to be switching to different strings according to various conditions
03:12<andythenorth>I think
03:12<Eddi|zuHause>and r30, which handled the autogeneration of the vehicle names
03:15-!-lmergen [] has joined #openttd
03:15*andythenorth looks at r277
03:16<andythenorth>generation I have covered ;)
03:16<andythenorth>what I'm missing is how to make the nml {} substitution work
03:16*andythenorth will try again
03:18<andythenorth>r617 might help me
03:21<andythenorth> additional_text: string(str_buy_menu_text_default, string(str_foo));
03:21<andythenorth>^ look valid for calling a string with {STRING} in it?
03:21<andythenorth>seems to work
03:22<andythenorth>that makes things easier :)
03:22<andythenorth>now I work with nml, instead of inventing silly ways to circumvent it
03:22<Eddi|zuHause>may also work with numbers and weights, not tested that
03:22<andythenorth>it's used in FIRS for cargo units etc
03:23-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
03:23-!-Pixa [~pixa@] has joined #openttd
03:23<andythenorth>ok this is pretty easy now
03:27<andythenorth>buy_menu_text: {STRING} {STRING} {STRING} etc
03:27<andythenorth>then call functions on the vehicle to decide what the identifier for each string is
03:27<andythenorth>la la la
03:28<andythenorth>should be ok for translation too
03:29-!-hbccbh [~hbc@] has quit [Remote host closed the connection]
03:33<andythenorth>is there anything like string(EMPTY) or string(NULL)
03:33<andythenorth>before I go inventing one?
03:33<andythenorth>I can't find anything in docs
03:34<andythenorth>for when a {STRING} replacement should be blank
03:34<@planetmaker>you need to define your own STR_EMPTY
03:34*andythenorth keeps reinventing things nml already provides
03:34<andythenorth>and is trying not to
03:35<@planetmaker>ehm, no, there really is no such string
03:35<@planetmaker>just... OpenTTD calls its empty string STR_EMPTY ;-)
03:35<@planetmaker>iirc that is
03:38<andythenorth>for a string like str_buy_menu_text_default :{STRING} {STRING} {STRING}
03:38<andythenorth>the last token can be dropped when calling string
03:38<andythenorth>but not others
03:38<andythenorth>e.g. this works additional_text: string(str_buy_menu_text_default, string(str_empty), string(str_empty));
03:38<andythenorth>this doesn't additional_text: string(str_buy_menu_text_default, string(str_empty), , string(str_empty));
03:39*andythenorth doesn't want to leave empty tokens, it was an accidental find....
03:39<Eddi|zuHause>that's just a syntax error, has nothing to do with the string
03:48-!-Eddi|zuHause is now known as Eddi|zuHause2
03:48-!-Eddi|zuHause2 is now known as Eddi|zuHause
03:53-!-Progman [] has joined #openttd
03:53-!-DayDreamer [~DayDreame@] has joined #openttd
03:53-!-tokai|noir [] has joined #openttd
03:53-!-mode/#openttd [+v tokai|noir] by ChanServ
03:54-!-TWerkhoven [] has joined #openttd
03:55<andythenorth>this makes complete sense right? :P
03:55<andythenorth> additional_text: string(str_buy_menu_text_${}, string(${vehicle.get_vehicle_type_string()}), string(${vehicle.get_trailer_info_string()}));
03:56<andythenorth>I could hide some of that in the class, (one big string as return value) but that's a bit magical
03:59-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
04:01<andythenorth>do we have any magic for plurals?
04:02<andythenorth>(if we do, probably not accessible to my class) :P
04:02-!-tokai|mdlx [] has joined #openttd
04:05-!-JVassie [~James@] has joined #openttd
04:05<Eddi|zuHause>yes, we do
04:06<Eddi|zuHause>also for genders and stuff
04:06<andythenorth>more magic than this?
04:06<andythenorth>trailer${['','s'][vehicle.truck_num_trailers > 1]}
04:07<andythenorth>^ blunt instrument
04:08-!-tokai|noir [] has quit [Ping timeout: 480 seconds]
04:08-!-DayDreamer1 [~DayDreame@] has joined #openttd
04:09<Eddi|zuHause>"string(STR_TRAILER,num_trailers)" and "STR_TRAILER:{NUM} trailer{P "" s}"
04:10<Eddi|zuHause>keep in mind that some translations will want to make different plurals
04:10<Eddi|zuHause>so in this case there's no way around using the "official" method
04:12<andythenorth>this will need a little thought
04:12<andythenorth>I have to pass quite a lot of params to multiple nested strings
04:13-!-DayDreamer [~DayDreame@] has quit [Ping timeout: 480 seconds]
04:13<andythenorth>incidentally, is there a convention for string identifiers to be UPPER_CAPS ?
04:13<@planetmaker>yes. OpenTTD does so
04:13<Eddi|zuHause>yes, but i don't stick to it...
04:13<@planetmaker>and all NewGRFs
04:13<@planetmaker>CETS doesn't?
04:13<Eddi|zuHause>the autogenerated strings are different
04:13<Eddi|zuHause>i append the vehicle-identifier
04:14<Eddi|zuHause>which is mixed case
04:14<andythenorth>I can call .upper() on stuff I'm concatenating
04:14<Eddi|zuHause>don't do that
04:14<andythenorth>por quoi?
04:14<Eddi|zuHause>can of worms
04:15<andythenorth>also makes the code overly facetted
04:15<Eddi|zuHause>but you should simply be able to nest strings: "string(STR_DESCRIPTION,string(STR_CAPACITY,60),string(STR_TRAILERS,2))"
04:16-!-lmergen [] has quit [Ping timeout: 480 seconds]
04:16-!-Neon [] has joined #openttd
04:17<andythenorth>that's kind of what I'm doing
04:17<andythenorth>just I have a few more strings than that
04:17<Eddi|zuHause>so? :)
04:17<andythenorth>so more code :)
04:17<andythenorth>takes longer to write
04:18<@planetmaker>there's a limit though on how much you can nest
04:18<andythenorth>also - sometimes just writing out strings manually is easier than dynamically building them...
04:18<@planetmaker>might be around 6, including arguments
04:18<Eddi|zuHause>planetmaker: only for the dynamic composition
04:19<Eddi|zuHause>planetmaker: the nml static composition shouldn't have that limit
04:19<@planetmaker>yes. Didn't we talk about that?
04:19<Eddi|zuHause>planetmaker: nml resolves those strings directly
04:20*andythenorth wonders
04:20-!-TWerkhoven[l] [] has joined #openttd
04:20<andythenorth>is str_buy_menu_truck_1: Truck type: heavy duty {} Hauls 20t in 1 trailer or 40t in 2 trailers
04:20<andythenorth>is that just easier than code and lots of substrings
04:21<andythenorth>it imposes maintenance burden
04:21<Eddi|zuHause>yes if you have 3 trucks, no if you have 300
04:24<Eddi|zuHause>how did people ever write programs for atari 2600? 128 byte of ram, no framebuffer, 1-dimensional sprites, and maximum 2 sprites per line
04:28-!-LordPixaII [~pixa@] has joined #openttd
04:28-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
04:30-!-KouDy1 [~KouDy@] has quit [Read error: Connection reset by peer]
04:30-!-LordPixaII [~pixa@] has quit [Read error: Connection reset by peer]
04:30-!-Pixa [~pixa@] has joined #openttd
04:31-!-Alberth [] has joined #openttd
04:31-!-mode/#openttd [+o Alberth] by ChanServ
04:33-!-kkb110_ [] has quit [Ping timeout: 480 seconds]
04:36-!-TWerkhoven [] has quit [Ping timeout: 480 seconds]
04:43-!-kkb110_ [] has joined #openttd
04:43<CIA-1>OpenTTD: rubidium * r23899 /extra/website/bananas/ [website] -Change: use grfid -m to determine the GRFID of a NewGRF
04:50<andythenorth>one function for vehicle.get_buy_menu_string() then
04:50<@Rubidium>s/GRFID/MD5/ :(
04:50*andythenorth ponders adding plenty of squirrely 'if' statements
04:50<andythenorth>maybe /me should learn 'switch'
04:56-!-KouDy [~KouDy@] has joined #openttd
04:57-!-MJP [] has joined #openttd
05:00-!-DDR [~chatzilla@] has quit [Quit: ChatZilla 0.9.88 [Firefox 10.0/20120129142603]]
05:00-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
05:01*andythenorth wonders if BANDIT is a truck set, or a framework for truck sets
05:01-!-tensai_cirno [~cirno@] has quit [Quit: Leaving]
05:01<@Alberth>truck-frames :)
05:02<andythenorth>how about a truck framework called Convoy?
05:02<@Alberth>truck-chassis is a better name :p
05:02<andythenorth>did I accidentally write a framework?
05:02<andythenorth>I didn't intend to
05:03<@Alberth>you didn't? you mentioned the idea to allow further customization by others earlier already iirc
05:03-!-Pixa [~pixa@] has joined #openttd
05:04<andythenorth>it wouldn't take much work to make this reusable for other sets
05:04<andythenorth>removable of some BANDIT specific references
05:05<andythenorth>customisation of this set is one thing, reuse for others is another
05:05<andythenorth>one involves somehow making the framework an upstream dependency for starters
05:05-!-Cybertinus [] has joined #openttd
05:07<@Alberth>do starters make enough truck graphics to warrant a framework?
05:07<andythenorth>I doubt it
05:07<andythenorth>you talked me out of it :)
05:08<andythenorth>so many web projects start out making a site or an app
05:08<andythenorth>then spend all their time making uber-framework that will solve world peace
05:08<andythenorth>then never ship
05:09<SpComb>shipping is important
05:10-!-pjpe [] has quit [Quit: ajax IRC Client]
05:11<@Alberth>andythenorth: not only web-apps, game-development IDEs do that too ;)
05:14-!-LordPixaII [~pixa@] has joined #openttd
05:14-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
05:15-!-Cybertinus [] has quit [Remote host closed the connection]
05:17<@peter1138>gimp... led to the gnome desktop ;)
05:19<Eddi|zuHause> <andythenorth> it wouldn't take much work to make this reusable for other sets <-- that's what i thought, but then nobody wanted it... "for having even the slightest clue what he's actually doing"
05:20<@Alberth>peter1138: and the pictures are very pretty, but it is very complicated to use ;)
05:21<@Alberth>Eddi|zuHause: yep, you need tons of documentation to explain how you are supposed to use a framework
05:21<@Alberth>sadly, for 90% of the frameworks that is not available :(
05:22*andythenorth will continue making a set in that case
05:24<andythenorth>with the easter egg feature that you can edit it yourself IFF you have (hg && GCC && python > 2.6 && Chameleon )
05:28-!-Pixa [~pixa@] has joined #openttd
05:29-!-HerzogDeXtEr [~Flex@] has joined #openttd
05:30-!-LordPixaII [~pixa@] has quit [Read error: Connection reset by peer]
05:31<@planetmaker>andythenorth: that all is of no importance, if it is a set and the author (i.e. you) are content with it
05:31<@planetmaker>for a framework it needs a certain balance between benefit and complexity to use. Which includes amount of requirements and documentation
05:33-!-TGYoshi [~TGYoshi@] has joined #openttd
05:33<andythenorth>also, making a framework based on what I've learnt from one set would be dumb
05:33<andythenorth>it would be geared to the assumptions of this set
05:34<andythenorth>Eddi|zuHause: incidentally I considered quite seriously re-using CETS code
05:34<andythenorth>but generators still scare me
05:34<andythenorth>you would have ended up with 50% credit for the set
05:34<@planetmaker>it would not be dumb. But it would not necessary lead to a set. And there's not yet a set, is there?
05:34<andythenorth>due to support requests :P
05:34<andythenorth>no there is no set
05:34<@planetmaker>First I'd make a really working and "full" set.
05:34<andythenorth>"there is no spoon"
05:34<@planetmaker>Then you'll where the rough edges are which could be made better
05:35<@planetmaker>And then might be the time to think of modifying to make it a useful framework. IMHO
05:35<andythenorth>currently I am making the actual set
05:35<@planetmaker>Doesn't mean you can't do it now in the way to make it easy to "rip out" a framework afterwards
05:35<andythenorth>does risk over-engineering though
05:35<@planetmaker>great :-)
05:36<andythenorth>if I put things like ${set_name} everywhere
05:36<andythenorth>it's complexity I don't need
05:36<@planetmaker>more important than that risk though is that you have fun :-)
05:36<andythenorth>learning python is fun ;)
05:36<@planetmaker>see. Than it's "aim reached" :-)
05:37-!-pugi [] has joined #openttd
05:37-!-TWerkhoven [] has joined #openttd
05:38*andythenorth advocates python adventures for all
05:38<andythenorth>but one man's pleasure is another's poison :P
05:44<andythenorth>nobody made a poisonous python joke? :P
05:47<@planetmaker>andythenorth: I doubt ;-)
05:49-!-KouDy [~KouDy@] has quit [Ping timeout: 480 seconds]
05:52-!-KouDy [~KouDy@] has joined #openttd
05:54-!-KouDy [~KouDy@] has quit []
05:55-!-KouDy [~KouDy@] has joined #openttd
05:58-!-KouDy1 [~KouDy@] has joined #openttd
05:58-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
05:58-!-Pixa [~pixa@] has joined #openttd
05:58-!-valhallasw [~valhallas@] has joined #openttd
06:00-!-sla_ro|vista [slaco@] has joined #openttd
06:01-!-Brianetta [] has joined #openttd
06:02*andythenorth can't figure out a clean way to generate texts like this:
06:02<andythenorth>where the number of trailers, and the capacity of each varies per truck
06:03<andythenorth>I can think of horrible ways to do it
06:03-!-KouDy [~KouDy@] has quit [Ping timeout: 480 seconds]
06:03<@Rubidium> {WEIGHT} in {NUM} trailer{P "" s}
06:04<andythenorth>it's iterating over a variable number of trailers that is trouble
06:04<andythenorth>(without writing if: blah lots of times)
06:04-!-sla_ro|master [slaco@] has quit [Ping timeout: 480 seconds]
06:05<andythenorth>maybe an iterator can do it cleanly
06:05<@Alberth>and a dict mapping count to text
06:06<@Alberth>sum() might be helpful here
06:06-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
06:06-!-Pixa [~pixa@] has joined #openttd
06:07-!-Chris_Booth [] has joined #openttd
06:07<Eddi|zuHause>STR_ONE_MORE_LINE:{STRING}{}{STRING} => string(ONE_MORE_LINE,string(STR_TRAILER,20,1),string(ONE_MORE_LINE,string(STR_TRAILER,40,2),string(STR_TRAILER,60,3)))
06:08<Eddi|zuHause>where STR_TRAILER is what Rubidium wrote
06:12<andythenorth>Eddi|zuHause: that, only generated by python
06:12-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
06:12-!-Pixa [~pixa@] has joined #openttd
06:12<andythenorth>anyway, I'll poke at it
06:13<Eddi|zuHause>generate_string(items): reverse(items); s = "string(STR_TRAILER,%d,%d)"%items[0]; del items[0]; for item in items: s="string(ONE_MORE_LINE,%s,%s)"%("string(STR_TRAILER,%d,%d)"%item,s)
06:13<Eddi|zuHause>or something similar
06:13<andythenorth>yup that
06:14<andythenorth>or similar
06:14<Eddi|zuHause>important is that you work backwards
06:15<Eddi|zuHause>so you start with (60,3)
06:15<Eddi|zuHause>and go on with (40,2) and (20,1)
06:15<andythenorth>it's intriguing that the strings nest
06:16<Eddi|zuHause>if you frequently expect more than 3 items, you can also make it a tree
06:16<andythenorth>I don't expect >3
06:16<andythenorth>but it might happen
06:16<andythenorth>a tree might be fun
06:19<Eddi|zuHause>make_tree(items): if len(items) == 1: return "string(STR_TRAILER,%d,%d)"%items[0]; return "string(ONE_MORE_LINE,%s,%s)"%(make_tree(items[:len(items)/2]),make_tree(items[len(items)/2:]))
06:19<andythenorth>so it recurses until there's only one node left?
06:19<Eddi|zuHause>typical divide and conquer
06:20<Eddi|zuHause>it won't give any advantage for 3 items, though
06:23<Eddi|zuHause>>>> make_tree([(20,1),(40,2),(60,3)])
06:23-!-KouDy1 [~KouDy@] has quit [Quit: Leaving.]
06:23<andythenorth>I would never have thought of the ONE_MORE_LINE approach :)
06:23<Eddi|zuHause>>>> make_tree([(20,1),(40,2),(60,3),(80,4)])
06:23<andythenorth>it's completely logical, but also spooky
06:24-!-KouDy [~KouDy@] has joined #openttd
06:24<Eddi|zuHause>that's what 1st year computer science lectures do to you :)
06:26<andythenorth>I need to def make_tree?
06:26<Eddi|zuHause>as the lines above
06:31<__ln__>zomg, english only
06:34<Eddi|zuHause>spanish is the new english
06:34<andythenorth>Eddi|zuHause: I've probably split the lines incorrectly? make_tree is receiving 2 args somewhere, it expects 1
06:34<__ln__>sí, estoy de acuerdo
06:35<Eddi|zuHause>andythenorth: @staticmethod, or give "self" parameter
06:37<Eddi|zuHause>and you should probably guard against calling with 0 arguments
06:37<Eddi|zuHause>i mean an empty list
06:38-!-flaa [] has joined #openttd
06:38-!-Chris_Booth [] has quit [Quit: ChatZilla 0.9.88 [Firefox 11.0/20120201153158]]
06:41-!-pugi [] has quit []
06:41-!-Biolunar [] has joined #openttd
06:42<andythenorth>Eddi|zuHause: I'm failing ^
06:42<andythenorth>I'm also learning. But not winning.
06:42<Eddi|zuHause>must put that _before_ the def :)
06:47-!-LordPixaII [~pixa@] has joined #openttd
06:47-!-Pixa [~pixa@] has quit [Read error: Connection reset by peer]
06:47*andythenorth reads
06:48-!-Elukka [] has joined #openttd
06:49<andythenorth>do I need to import @staticmethod
06:49<andythenorth>chameleon.utils.TypeError: 'staticmethod' object is not callable
06:54<Eddi|zuHause>dunno what you did
06:54<@Alberth>just put the def outside the class :)
06:55<andythenorth>same error
06:57-!-KritiK [] has joined #openttd
07:00<andythenorth>NameError: global name 'make_tree' is not defined
07:00<andythenorth>context is wrong when I call?
07:00<andythenorth>my class has (self) ?
07:01<Eddi|zuHause>you must call self.make_tree
07:01<Eddi|zuHause>or Truck.make_tree
07:02<@Alberth>self reduces confusion :)
07:03<Eddi|zuHause>how did you ever write a python program? :p
07:05-!-KasperVld [] has joined #openttd
07:07-!-tokai|noir [] has joined #openttd
07:07-!-mode/#openttd [+v tokai|noir] by ChanServ
07:08<Eddi|zuHause>'school prinicpal in Passau (Bavaria) forbids using "Hallo" and "Tschüs"'
07:09<@Rubidium>moin, quak, bonjour, au revoir ;)
07:09-!-LordPixaII [~pixa@] has quit [Read error: Connection reset by peer]
07:10-!-Pixa [~pixa@] has joined #openttd
07:10<Eddi|zuHause>if even "Hallo" is 'too northern' for them, i don't think they'd approve "moin" :p
07:11<@planetmaker>I wondered about that, too, Eddi|zuHause :-)
07:12<@planetmaker>I guess I'd go for 'moin' just for the sake of "just because"
07:12-!-valhallasw [~valhallas@] has quit [Quit: leaving]
07:12<@Rubidium>alternatively moimoi, which is even northerner
07:12<andythenorth>Eddi|zuHause: I tried self.make_tree first
07:13<andythenorth>NameError: global name 'make_tree' is not defined
07:13<Eddi|zuHause>andythenorth: you're doing something horribly wrong...
07:13-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
07:13<Eddi|zuHause>andythenorth: and it doesn't have anything to do with my code...
07:14<andythenorth>I shouldn't call make_tree in the __init__ ?
07:14<andythenorth>does it exist at that point?
07:14<Eddi|zuHause>and "self.make_tree" can never throw a "global name" error
07:14<andythenorth>moving elsewhere in the flow doesn't help
07:15<Eddi|zuHause>it can only ever throw "has no member" error
07:16<CIA-1>OpenTTD: rubidium * r23900 /trunk/src/lang/english.txt: -Update [FS#5041]: some error/inconsistencies in the UK base "translation"
07:20<andythenorth>it's the calls to make_tree in this line that are failing
07:20<andythenorth> return "string(ONE_MORE_LINE,%s,%s)"%(make_tree(items[:len(items)/2]), make_tree(items[len(items)/2:]))
07:20<andythenorth>calling Truck.make_tree() works
07:20<andythenorth>self.make_tree() fails
07:20<Eddi|zuHause>then you should probably make it a @classmethod
07:20<Eddi|zuHause>and put "cls" as first parameter
07:20<Eddi|zuHause>and call cls.make_tree
07:21-!-Cybertinus [] has joined #openttd
07:22*andythenorth is mostly a lego brick coder
07:22<andythenorth>if it can't be done with a dumb iterator, I probably can't do it ;)
07:22-!-frosch123 [] has joined #openttd
07:23<Eddi|zuHause>Rubidium: only thing more northern than the "moin"-region could be danish
07:24<@Rubidium>Eddi|zuHause: moimoi is Finnish ;)
07:24<Eddi|zuHause>or "färöisch"... :p
07:24<@Rubidium>oh.. I meant "moi moi" ;)
07:27<andythenorth>nml is not happy with {NUM}
07:28<andythenorth>I think it's another tag
07:29<frosch123>COMMA maybe
07:33<andythenorth>Invalid number of arguments to plural command, expected 0 but got 2
07:33<andythenorth>string is {WEIGHT} in {COMMA} trailer{P "" s}
07:33<Eddi|zuHause>need to define a ##plural?
07:33<andythenorth>is the call
07:35-!-FLHerne [] has joined #openttd
07:37<Eddi|zuHause> doesn't say anything about plural
07:39<@Rubidium>Eddi|zuHause: I think the plural is implicit
07:40<Eddi|zuHause>Rubidium: but then nml handles it incorrectly
07:42-!-Pulec [] has joined #openttd
07:42<andythenorth>this turns out to be more complex than expected :)
07:43<Hirundo>You need to set #plural
07:43<Hirundo>See for a list of code, it seems indeed missing from NML docs
07:44-!-KasperVld [] has quit [Quit: ajax IRC Client]
07:45-!-TWerkhoven[l] [] has quit [Quit: He who can look into the future, has a brighter future to look into]
07:46*andythenorth boggles
07:48-!-ZevaKa [] has joined #openttd
07:48*andythenorth skips plurals for now
07:49<andythenorth>nmlc: "bandit.nml", line 755: First parameter of string() must be an identifier.
07:49<ZevaKa>hello! can anyone help me with that ? here's screenshot: - fighting with that error for 3 hours already ... :(
07:49<Eddi|zuHause>just write "##plural 0" in the lang file, can't be that hard
07:49<andythenorth>I'll come back to it
07:49-!-ZevaKa [] has quit []
07:50<andythenorth>for definite
07:50<andythenorth>but even without plurals, which of these 1st parameters is not an identifier?
07:50<andythenorth>they all look like identifiers to me
07:51<Eddi|zuHause>the first string() is wrong
07:54*andythenorth fixes
07:55-!-Neon [] has quit [Quit: Python is way too complicated... I prefer doing it quickly in C.]
07:57<andythenorth>that's going to work
08:09-!-Strid [] has joined #openttd
08:10-!-Strid__ [] has quit [Ping timeout: 480 seconds]
08:14-!-Rhamphoryncus [] has joined #openttd
08:21<andythenorth>just plurals to fix :)
08:22<Eddi|zuHause>has a few alignment quirks
08:22<andythenorth>code first, formatting second ;)
08:25-!-andythenorth [] has quit [Read error: Connection reset by peer]
08:25-!-andythenorth [] has joined #openttd
08:25<Elukka>will you have any european vehicles in bandit? most of the time i play with european trucks, so most others would look out of place
08:25-!-cornjuliox [~cornjulio@] has quit []
08:25<andythenorth>Elukka: yes
08:25<andythenorth>assuming ${someone} draws them
08:26<andythenorth>or you can patch it yourself :P
08:26<andythenorth>nmlc: A plural or gender choice list {P} or {G} has to be followed by another string code or provide an offset
08:26-!-Stimrol_ [] has joined #openttd
08:26<andythenorth>STR_TRAILER :{COMMA} in {COMMA} trailer{P "" s}
08:26<Elukka>i'd try if i didn't have cets to work on :P
08:26*andythenorth has no idea how plurals work, but is prepared to learn
08:27-!-Stimrol [] has quit [Ping timeout: 480 seconds]
08:27<andythenorth>the docs I've found read as though you already know how plurals work
08:28-!-lmergen [] has joined #openttd
08:29<Eddi|zuHause>andythenorth: tried {1:P ...} or something?
08:30*andythenorth tries
08:30<andythenorth>same result
08:30<andythenorth>Hirundo: are there examples of how nml plurals should be used?
08:32<Hirundo>In this case, I'd guess {P 1 "" s}
08:33<andythenorth>Hirundo guesses right :)
08:33<Hirundo>For examples I'm not sure which NML projects really use strings this way
08:33<Eddi|zuHause>right, i just found that in the docs :)
08:34<andythenorth>Eddi|zuHause: link? :)
08:34<Hirundo>andythenorth: You are of the minority that doesn't need a translation to play OpenTTD in his native language
08:34<andythenorth>can NML wiki link that usefully?
08:34<Hirundo>Many others have experience with OpenTTD's string format, which NML basically copies
08:35<Hirundo>(Although I play ottd in en-GB)
08:36<andythenorth>next issue, if I pass an int to {WEIGHT_SHORT} nml doesn't like it
08:36<andythenorth>what's a valid argument?
08:37<andythenorth>it's happy with comma, but that's not going to include the weight unit
08:38<Eddi|zuHause>tried "5t"?
08:40<andythenorth>unexpected token 't'
08:40<@Yexo>andythenorth: nml can't replace {WEIGHT_SHORT} with a constant value at compile time
08:40<@Yexo>it only works of the parameter is supplied via temporary parameters
08:40<andythenorth>can I just write 't' in my string then?
08:40<@Yexo>you can do {COMMA}t if you want to
08:41<andythenorth>if that's translation + locale safe...I'm happy to
08:41<@Yexo>not really
08:41<@Yexo>{WEIGHT_SHORT} is the best option
08:42*andythenorth is stumped then :)
08:43<@Yexo>STR_SOMETHING: A weight: {WEIGHT_SHORT}
08:44<@Yexo>switch(..., STORE_TEMP(500 /* in tons I think */, 0x100)) { return string(STR_SOMETHING); }
08:45<andythenorth>i.e. use the text stack properly then? :)
08:45-!-cornjuliox [cornjuliox@] has joined #openttd
08:45<@Yexo>that's the only way to be locale-safe
08:45<Eddi|zuHause>well, this is kind of a corner case
08:45<andythenorth>I was hoping to get away with compile time strings, but I can see the issue...
08:45<@Yexo>Eddi|zuHause: not really, same holds for speed
08:46<@Yexo>while {COMMA}km/h works, it doesn't look so nice if the user has selected mph as unit
08:46<andythenorth>possibly I should just move to text stack
08:46<Eddi|zuHause>but there is no other "weight unit"
08:46<Eddi|zuHause>as far as capacities go
08:47<Eddi|zuHause>the problem with the "stack" is that it's not really a stack
08:47<Eddi|zuHause>in the sense of "push(value)" and be done with it
08:47<@Yexo>Eddi|zuHause: there is. if you select SI units you'll get 5000kg instead of 5t
08:48*andythenorth is no lover of the stack :P
08:48<andythenorth>it's fiddly
08:49<andythenorth>if you want to put an extra value into your string somewhere, it can mean a lot of shuffling
08:49<Eddi|zuHause>the grf-text-"stack"-magic-registers are really a misdesign
08:49<andythenorth>or changing masks
08:49<andythenorth>Eddi|zuHause +1
08:49<andythenorth>although don't ask me for a better one
08:49<andythenorth>why I can't just call register nums I don't know
08:49<@Yexo>Eddi|zuHause: it isn't really a design
08:49<andythenorth>register nums work for industry production cb
08:49<@Yexo>it's exactly how the text stack in TTD works
08:49<Eddi|zuHause>better would have been one magic register that makes a "push" operation
08:50<Eddi|zuHause>i.e. can be stored to multiple times
08:50*andythenorth probably doesn't understand significant implementation issues :P
08:50<@Yexo>hmm, that'd be better indeed, however such a push operation would need to know the size
08:50<Eddi|zuHause>always 32 bit
08:50<@Yexo>unless you go for a different stack like what openttd implements internally
08:51<@Yexo>which is 64bit always, but still uses addressing instead of push/pop
08:51<Eddi|zuHause>misc grf flag: use TTD stack/use OpenTTD stack
08:51<Eddi|zuHause>it doesn't really matter how it works internally
08:52*andythenorth ponders
08:53<andythenorth>although Eddi|zuHause's tree solution is very neat for compile time strings, it would have been relatively easy to do this with a stack where I could pull values and add in substrings
08:53<andythenorth>the current stack could do it, I just can't face that today :P
08:53<andythenorth>not alone :P
08:53<Eddi|zuHause>the current stack has the nasty habit of being limited to like 6 entries
08:53<andythenorth>maybe doing it with the stack would show what's wrong with the stack though :)
08:54-!-Progman [] has quit [Remote host closed the connection]
08:54<@Yexo>Eddi|zuHause: a lot of entries are only word-sized, so that would mean a limit of 12 entries
08:55<Eddi|zuHause>The string parameters itself are assigned in units of dwords (4 bytes), starting with temporary storage 256, up to 259 or 261. <-- that's not very clear
08:56<@Yexo>hmm, it's not clear indeed
08:57<Eddi|zuHause>and it still has the problem of knowing exactly where you are in the stack, in order to push something
08:57<andythenorth>Eddi|zuHause: a stack works like %s replacement?
08:57*andythenorth is trying to get concepts straight
08:58<andythenorth>foo %s, ham %('bar','ham')
08:58<andythenorth>ugh, wrong syntax
08:58<Eddi|zuHause>andythenorth: no, not at all
08:58<andythenorth>I used it a lot in FIRS, it seems akin to that, only reversed
08:58<@Yexo>andythenorth: now try "foo %d %s %d" % (1, "! %d !", 2, 3)
08:59<@Yexo>will the output be "foo 1 ! 2 ! 3" or "foo 1 ! 3 ! 2"?
08:59<andythenorth>no idea
08:59<@Yexo>of course this example doesn't work in any language, but that's approximately how the newgrf textstack works
08:59<andythenorth>I used it successfully in FIRS, it just took a lot of shuffling when I wanted to insert a new value or substring into my string
09:01<andythenorth>e.g. lines 354-414 here
09:01<Eddi|zuHause>it is possible to solve that, but needs more work
09:01<@Yexo> //Remember text stack is LIFO (like array.pop) - put values to render first in highest registers <- that comment is wrong
09:02*andythenorth is unsurprised
09:02<andythenorth>many of my comments turn out to be false assumptions
09:03<andythenorth>anyway, currently we have a text stack that I managed to use whilst having entirely wrong mental model of it :)
09:03<andythenorth>what's the problem again?
09:03<@Yexo>there are many problems with the current textstack
09:03<@Yexo>however replacing it isn't easy
09:04<Eddi|zuHause>andythenorth: problem is autogenerating
09:05<Rhamphoryncus>My biggest problem was I didn't realize those .txt files magically turned in to the constants, without any visible temp file to grep
09:06<@Yexo>Rhamphoryncus: are you sure you're talking about the same thing?
09:06<Rhamphoryncus>nope :P
09:06<@Yexo>textstack in newgrfs as implemented in nml, not openttd language files
09:06<Rhamphoryncus>Oh, this is just the newgrf form?
09:06<andythenorth>Eddi|zuHause: surely you can mangle autogenerated strings and register numbers until it works? :P
09:06<andythenorth>or you run out...
09:07<@Yexo>Rhamphoryncus: no, but we were discussing that
09:08<Eddi|zuHause>andythenorth: first step would be to make a function that takes a nested array like (STR_ONE_MORE_LINE, (STR_TRAILER,20,1), (STR_TRAILER,40,2)) and write a STORE line for the stack
09:08<Eddi|zuHause>then the rest should be easy
09:10<andythenorth>is this an interesting problem to solve?
09:12<Eddi|zuHause>no, "interesting" would be to replace the text stack
09:12<Eddi|zuHause>this is a workaround, which is generally only "annoying"
09:12-!-Wolf01 [] has joined #openttd
09:13<Eddi|zuHause>Yexo: where in nml is the string code?
09:13<@Yexo>and a bit in
09:14-!-KritiK_ [] has joined #openttd
09:15<andythenorth>FIRS industry texts were always intended to show current production levels etc. But I couldn't be arsed to go to war with the text stack for varying numbers of cargos etc
09:15<andythenorth>the text stack is not a common problem for vehicles, not many sets would bother using it
09:15<andythenorth>but for industry sets it's an arse
09:15-!-valhallasw [~valhallas@] has joined #openttd
09:18-!-KritiK [] has quit [Ping timeout: 480 seconds]
09:18-!-cornjuliox [cornjuliox@] has quit []
09:18-!-KritiK_ is now known as KritiK
09:19<andythenorth>{NBSP} gets me a triangle (apex ^)
09:19-!-peteris [~peteris@] has joined #openttd
09:23-!-Belugas [~belugas@] has quit [Quit: On snow, everyone can follow your traces]
09:24-!-SamCat [] has joined #openttd
09:25<SamCat>hello world
09:29<SamCat>okay, scratch that off my list of rumors... apparently you folks *do* sleep
09:29<SamCat>oh wait, nevermind!
09:30<SamCat>apparently I was wrong about the industries getting stuck at minimum production
09:30<SamCat>they don't actually get stuck, they just take REALLY REALLY LONG to recover
09:30<SamCat>like, ridiculously long
09:30<__ln__>we monitor the channel 24/7 and never sleep
09:31<SamCat>my secret's amphetamines, what's yours?
09:31<Eddi|zuHause>Yexo: i don't find the code that evaluates the string() macro there
09:35-!-TWerkhoven [] has quit [Quit: He who can look into the future, has a brighter future to look into]
09:35-!-lmergen [] has quit [Ping timeout: 480 seconds]
09:36<Eddi|zuHause> if not os.path.exists(lang_dir + os.sep + default_lang_file): <-- should use "os.path.join"
09:36-!-pugi [] has joined #openttd
09:38<Eddi|zuHause> <-- like this
09:38<Rhamphoryncus>SamCat: I'm naturally this way
09:39<Rhamphoryncus>And immune to all know pharmaceuticals to the contrary. It's my superpower.
09:40<SamCat>Me too! Wait... is "superpower" the same as "acquired tolerance"?
09:40<Rhamphoryncus>Do not try to undermine my betterererness :P
09:45*andythenorth wonders why {NBSP} returns bad char
09:46<andythenorth>nfo has no equivalent control chode
09:46<andythenorth>code /s
09:48<andythenorth>Yexo: {NBSP} returns the nfo control char for 'Scroll button up'
09:51*andythenorth attempts a fix
09:56*andythenorth fails
09:56<andythenorth>I thought 20h would encode space
09:58<Eddi|zuHause>there's a special code for NBSP
09:59<frosch123>no, just utf8
09:59<frosch123>usage of {NBSP} must enforce utf8
09:59<andythenorth>how does nml encode that to nfo?
10:00<andythenorth>currently it is encoding A0
10:00<andythenorth>which is...wrong
10:00<andythenorth>it's 20h in utf8 as well afaict
10:02<frosch123>nml first tries to encode stuff without using utf8
10:02<frosch123>so it likely just lacks the utf8-trigger
10:03<valhallasw>andythenorth: nbsp = non-breaking space
10:03<andythenorth>thanks :)
10:03<valhallasw>which is not h20 ;-)
10:03<valhallasw>(rather u+00a0)
10:03<andythenorth>when did nfo start discarding whitespace?
10:04<andythenorth>I use plain spaces in HEQS fine
10:04<andythenorth>or does grfcodec encode plain space characters to nbsp?
10:06-!-cornjuliox [cornjuliox@] has joined #openttd
10:06<@Rubidium>nbsp is a space where the line splitting "tools" may not split the words
10:06<Eddi|zuHause>nfo always took the literal string, doesn't do any such conversions
10:06<valhallasw>Rubidium: in the specific case of html it also is used as 'don't remove this space'
10:07*andythenorth is fine with all this :) Just wondering how to patch nml :P
10:07<andythenorth>I tried putting in a literal ' '
10:07<andythenorth>I tried encoding latin space 20h
10:07<andythenorth>that is the limit of my guesses
10:08<Eddi|zuHause>maybe you should give us actual code to test?
10:08<@Rubidium>where are you trying to put a space that doesn't end up in OpenTTD?
10:08<andythenorth>1 min
10:09<frosch123> <- andythenorth: no idea about python or nml, but maybe that even works
10:09*andythenorth can test
10:09<frosch123>i saw some code which checks whether 'ascii' is present in the struct
10:09<frosch123>so maybe just removing it works :)
10:09<andythenorth>I'll try it
10:10<andythenorth>meanwhile - this is the issue. NBSP is substituted by A0h which is the scroll up arrow:
10:11<@Rubidium>spaces should work there, they're just very short so you need lots of them
10:11<andythenorth>maybe that's simply the issue
10:11<andythenorth>looked like they were being stripped to me
10:11*andythenorth will test again
10:12<@peter1138>NBSP = 160 = A0h
10:13-!-TWerkhoven [] has joined #openttd
10:14-!-TWerkhoven[l] [] has joined #openttd
10:14<andythenorth>frosch123: that appears to work
10:15<andythenorth>using lots of plain spaces also works
10:15<andythenorth>but I uncovered an nml bug along the way :)
10:16<andythenorth>I don't really want to commit the fix in case it has unintended consequences
10:16<andythenorth>frosch123: does that actually supply an nbsp? or just a space?
10:20<frosch123>no idea, look at the produced grf? :p
10:20<frosch123>but i would be surprised if it would result in a normal sapce
10:21*andythenorth ponders testing that
10:22<andythenorth>not sure how to prove it either way tbh
10:23<andythenorth>is the result of STR_TRAILER
10:23<andythenorth>{NBSP}{NBSP}{NBSP}{NBSP}{NBSP}{NBSP}{NBSP}{COMMA}t in {COMMA} trailer{P 1 "" s}
10:23<Rhamphoryncus>Hrm. Manual depot orders break timetables. Not sure if it's fixable
10:24<Rhamphoryncus>(Besides a gut and redesign, which I am very tempted to do.)
10:25<Rhamphoryncus>My longterm goal is to replace the order, timetable, and group windows with a route-management window. Create the route without a vehicle, then build or transfer a vehicle into it
10:27<@Rubidium>andythenorth: if you use just plain spaces I reckon you get the same result
10:27<andythenorth>I do
10:27<andythenorth>that's my solution
10:27<andythenorth>I just wonder if frosch123 diff fixes nml
10:28<Rhamphoryncus>But I'm very unsure of how well a drastic change like that would be received.
10:28<@Rubidium>what would show that NBSP works is making the amount of spaces in front so "big" that the remaining string breaks over two lines. Then adding NBSP at the space where the line break is inserted should make the line be broken differently
10:30<andythenorth>what's the case for an NBSP in newgrf?
10:30<andythenorth>nfo lacks it afaict
10:31<@Rubidium>some words/constructs have a space in them, but the line may not be broken at that space
10:31<@Rubidium>and nfo has it at well (for at least openttd)
10:32<@Rubidium>e.g. OS X should always be kept together, so it's OS{NBSP}X in OpenTTD's translation files meaning that if there has to be a newline it won't break up OS and X even if that would be the location to do so
10:34<andythenorth>not sure my test cases are valid though ^
10:34<andythenorth>string is: [lots of spaces or nbsps] {COMMA}t in {COMMA} trailer{P 1 "" s}
10:35<andythenorth>so with nbsp, rather than breaking, it moves words onto following lines I'm guessing (e.g. 'trailer')
10:35<@Rubidium>what you see is that there are places where it normally would put the newline that it now didn't do because there were NBSPs
10:35-!-Chris_Booth [] has joined #openttd
10:35<andythenorth>so it's definitely treating nbsp and space differently
10:36-!-lmergen [] has joined #openttd
10:36<andythenorth>I'll attach it as a patch and Yexo or so can review it :)
10:36<@Rubidium>line breaking happens at spaces. NBSP isn't a space for the line breaking algorithm; it's just as if it is another character/letter
10:38<@Rubidium>kenobi it is
10:38<__ln__>i could almost say that in most contexts many NBSPs in a row means someone is doing something wrong.
10:40<@Rubidium>woopsie.. wrong channel ;)
10:51<CIA-1>OpenTTD: smatz * r23901 /trunk/src/ (fios_gui.cpp gamelog.cpp gamelog.h): -Fix: memory leak everytime one clicked a savegame in the load GUI
10:52-!-Phoenix_the_II [] has joined #openttd
10:53-!-lmergen [] has quit [Ping timeout: 480 seconds]
10:58-!-vodka [] has joined #openttd
11:13<andythenorth>no switch in python
11:13<andythenorth>use if...elif...else instead
11:13<andythenorth>and I thought I was being lazy to do that :P
11:14<@Alberth>you can make a dispatch dict if you want
11:15<@Alberth>ie make a function for each case, make a dict d = {value : function}, d[num]() :)
11:15<andythenorth>oh that has a name? :)
11:15<@Alberth>in pythoneese it does, not sure if it is a common name
11:15<Rhamphoryncus>Rubidium: what was it you said originally about me improving scheduling?
11:16<andythenorth>Alberth: is there any name for (case1, case2)[expression] ?
11:16-!-tokai|mdlx [] has joined #openttd
11:16<andythenorth>which does same as test()
11:16<andythenorth>as long as you get True / False as expression answers :P
11:17<@Alberth>oh, I see what you are doing now
11:17<@Alberth>tuple-indexing? :)
11:18<andythenorth>it's a convenient pattern in web templates, because it's usually short
11:18<@Rubidium>Rhamphoryncus: no clue, check your logs
11:18<Rhamphoryncus>Rubidium: I mean my odds of getting it accepted
11:18<Rhamphoryncus>Because I'm still getting a bad vibe
11:19<@Alberth>and imho more readable than expr ? case2 : case1 or case2 if expr else case1
11:19<andythenorth>it's a very good way to do things like
11:20<andythenorth>attribute="class python: ('', 'error')[form.has_error]"
11:20<andythenorth>or such
11:20<andythenorth>for when you want big red warning boxes :P
11:20-!-tokai|noir [] has quit [Ping timeout: 480 seconds]
11:20<andythenorth>or alternating colours in table rows
11:21<@Alberth>makes sense
11:21-!-tokai [] has joined #openttd
11:21-!-mode/#openttd [+v tokai] by ChanServ
11:21-!-TdlQ [] has joined #openttd
11:22<andythenorth>this buy menu text is *complicated*
11:22<andythenorth>it will work
11:22<andythenorth>but it's a pita
11:22<andythenorth>different conditions to handle :P
11:24*andythenorth will soon have more code to generate one buy menu string than for the rest of the build script
11:25-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
11:26<Rhamphoryncus>I think I should assume I'm forking and if something gets accepted that's just a bonus
11:27*andythenorth hates 'if' statements with a lot of code for each case
11:27<andythenorth>always causes trouble in the long run
11:27-!-MJP [] has quit [Ping timeout: 480 seconds]
11:27-!-TdlQ is now known as MJP
11:28<@SmatZ>andythenorth: will that work with different-sized fonts? what about non-monospaced fonts?
11:28<andythenorth>SmatZ: no idea
11:28<andythenorth>we could have a bet?
11:28<andythenorth>do you bet for or against?
11:29<@SmatZ>I think inserting spaces/NBSPs to vertically align text will break with non-monospaced font
11:30<andythenorth>does same apply to X offset control code?
11:30*andythenorth guesses it might
11:30<@SmatZ>I think it's ignored
11:31<andythenorth>I can lose the space
11:31-!-KouDy [~KouDy@] has quit [Quit: Leaving.]
11:31<andythenorth>in this case - it's same number of leading spaces on every line
11:31<andythenorth>so monospace ~= non-monospace?
11:32<andythenorth>I only care about the initial indent
11:32<@SmatZ>monospaced fonts have fixed width of all characters
11:32<@SmatZ>non-monospaced may have different width for different characters
11:32<andythenorth>I don't want exact number of pixels, just indent(some)
11:33*andythenorth biab
11:44-!-andythenorth is now known as Guest1631
11:44-!-andythenorth [] has joined #openttd
11:45-!-Guest1631 [] has quit [Read error: Connection reset by peer]
11:45<andythenorth>Alberth, Eddi|zuHause any rule of thumb on when I should move my Truck() class to it's own module?
11:49-!-LordPixaII [] has joined #openttd
11:51-!-KouDy [~KouDy@] has joined #openttd
11:52-!-Progman [] has joined #openttd
11:53<@Alberth>when the class becomes too large
11:54-!-Pixa [~pixa@] has quit [Ping timeout: 480 seconds]
11:55<Eddi|zuHause>if i say "100 loc", then i'm sure there's plenty of examples where that's not valid
11:56<andythenorth>but when it starts to obscure the flow of the module it's written in ...?
11:56<@Alberth>100? most of my classes don't fit in that :)
11:57<@Alberth>andythenorth: find a folding editor :p
12:00-!-_11Runner_ [] has joined #openttd
12:00<Eddi|zuHause> <- but i don't really use classes
12:02<Eddi|zuHause>Alberth: probably depends on the language, i guess C++ or Java generally might have more LOC
12:03<Eddi|zuHause>both because of the language itself, and because of the fields of use
12:03<andythenorth>how to make the plural magic work for 'trailer(s)' when I'm not passing the number of trailers :P
12:03<andythenorth>true corner case?
12:05<Eddi|zuHause>andythenorth: probalby that's the wrong approach
12:05<@Rubidium>use the nfo "remove last X bytes from out"?
12:05<@Rubidium>{WEIGHT} in {NUM}{<remove last byte>} trailer{P "" s}
12:05<@Rubidium>not sure AT ALL whether that works though
12:06<@Alberth>Eddi|zuHause: no, in Python. I use doc-strings extensively, which are normally larger than the code
12:06<@Rubidium>yes, more LOC per method is better ;)
12:06<SpComb>but are docstrings LOC..
12:07<Eddi|zuHause>Alberth: ok, comments don't really count as LOC
12:07<@Rubidium>SpComb: ofcourse they are
12:07<@Rubidium>they're lines of comment after all ;)
12:09<@Alberth>weird people not considering documentation a crucial part of the code :p
12:12-!-KGalama [] has joined #openttd
12:12<KGalama>i have a question
12:13<KGalama>does TTD automaticly updates?
12:14<TWerkhoven>no, mainly because different versions are incompatible
12:15-!-KGalama [] has quit []
12:18*andythenorth unusually spent 1 day on code for 1 commit
12:18<andythenorth>usually it's ~1 minute :P
12:19<andythenorth>I could probably optimise this:
12:19<andythenorth>it's quite long
12:19<andythenorth>but completing more of the grf is probably a bigger optimisation
12:21<Hirundo>how many sprites actually exist at this point?
12:22<andythenorth>you mean those silly little pictures?
12:22<andythenorth>with the blue crap around them? :P
12:24<andythenorth>writing python is fun. drawing is not fun
12:25*andythenorth is hoping DanMacK returns to do the sprites
12:25<andythenorth>otherwise I'll have to do it :P
12:25<Hirundo>I agree that fun(python) > fun(drawing)
12:26<Hirundo>Which is why I never even bothered to create grfs
12:26<andythenorth>fortunately trucks mostly look similar
12:26<andythenorth>especially at the scale Dan has chosen
12:26*andythenorth ponders writing procedural truck sprite generator
12:26<andythenorth>real trucks are modular too
12:26<andythenorth>bonnet: cab: sleeper: rear chassis: body
12:27<Hirundo>The new zoom levels allow more detail
12:27<andythenorth>I'm ignoring those
12:27*andythenorth is pretending it's 1994 still
12:27*andythenorth likes boxy zoomed in sprites :P
12:28-!-zombi [] has joined #openttd
12:29<Hirundo>a 2x2 pixel looks just fine on my laptop, but 4x4 pixels are too much for my brain to twist into an actual truck
12:29<zombi>when i setup bus routes, or train routes.. theyre always profitable to begin with but seem to take a dive and i cant figure out why
12:30<Hirundo>new vehicles get somewhat higher ratings, thus make more money
12:30<zombi>is there something i have to do to keep coal wells production up?
12:30<Hirundo>that's a 10-15% difference or so, it shouldn't 'nose dive' just because of that
12:30<Eddi|zuHause>coal well? where liquid coal comes out of the earth?
12:30<zombi>well im just trying to get into the early stages of the game
12:31<zombi>sorry.. coal mine
12:31<zombi>and oil wells
12:31<Eddi|zuHause>the general idea is: always have a vehicle loading
12:31<Eddi|zuHause>as soon as one train leaves with a full load
12:31<Eddi|zuHause>have another one arrive
12:32<zombi>that applies to oil wells too?
12:32<andythenorth>^^ truck no?
12:33-!-SamCat [] has quit [Ping timeout: 480 seconds]
12:33<zombi>but if i look at my rail station theres not even enough oil to load into my train
12:33<zombi>and it only has one tank
12:33<Eddi|zuHause>zombi: that's because when there's no train waiting, your station rating drops
12:33-!-_11Runner_ [] has quit [Quit: Leaving.]
12:33<Eddi|zuHause>zombi: with low rating, you get less oil
12:34<zombi>i seee
12:34<zombi>so i assume i can do things like make a train wait for cargo?
12:34<Elukka>ideally there's always a train waiting for cargo
12:35<Elukka>so another train enters a station a little while before the last one leaves
12:35<zombi>ok so i probably needed a double track with two trains i guess
12:35<Eddi|zuHause>in the train's schedule, choose "wait for full load"
12:35-!-theholyduck [] has joined #openttd
12:35<Eddi|zuHause>zombi: in the beginning, it will suffice to add another track to the loading station
12:35<zombi>you can do that with buses too?
12:35<Eddi|zuHause>and signals in front of the platform
12:36<andythenorth>if I added buses to BANDIT, they could be another class
12:36*andythenorth does not want to draw buses
12:36-!-TWerkhoven [] has quit [Ping timeout: 480 seconds]
12:36<Eddi|zuHause>andythenorth: we have enough(tm) bus sets
12:37<andythenorth>anyone got any nml auto-refit code lying around?
12:37<andythenorth>probably I'll allow refit to same class for free
12:37<Eddi|zuHause>nope, not here
12:37<andythenorth>wonder if that will work
12:38<andythenorth>if I show graphics based on class...will refit be evaluated in same way?
12:39<andythenorth>otherwise I get a refit from PIECE because a cargo is (PIECE, LIQUID), but then the vehicle shows tanker graphics because it finds LIQUID in the class
12:39<andythenorth>which would be...wrong
12:40<Eddi|zuHause>use the animation frame to store which one it is?
12:40-!-Keyboard_Warrior [] has joined #openttd
12:40<andythenorth>nice idea
12:41<Eddi|zuHause>i have never looked up how to set animation frame, actually
12:43<Eddi|zuHause>andythenorth: or you can use the cargo subtype for that
12:43<Eddi|zuHause>so you have Beer (piece) and Beer (liquid)
12:43<andythenorth>subtype is already taken by (num trailers) :)
12:44<Eddi|zuHause>andythenorth: have more bits :)
12:44*andythenorth points and waves at current inadequate use of subtypes to change consist properties :P
12:45<Eddi|zuHause>or make the trailers actually different vehicles in the purchase menu. saves lots of magic
12:45<andythenorth>Eddi|zuHause: you mean trucks with fixed type of trailer?
12:45-!-independent [] has joined #openttd
12:45<andythenorth>e.g. 'tanker truck'
12:45<andythenorth>'flatbed truck' ?
12:46<Eddi|zuHause>no, fixed number of trailers
12:46<andythenorth>[truck] with 1 trailer
12:46<andythenorth>[truck] with 2 trailers
12:47<andythenorth>considered it when designing the set schema
12:47<andythenorth>could work, but potentially lots of buy menu spam
12:47<andythenorth>although it could just be that a truck with 2 trailers just has 2 trailers always
12:47<andythenorth>same amount of vehicles as now
12:47<Eddi|zuHause>the biggest advantage is autoreplace
12:48-!-theholyduck [] has quit [Ping timeout: 480 seconds]
12:48-!-Keyboard_Warrior is now known as theholyduck
12:48<andythenorth>there is some sense in it, but the choice of trailers adds something to gameplay imo
12:49<andythenorth>wrt to being able to balance capacity and power
12:50-!-TWerkhoven2[l] [] has joined #openttd
12:51-!-narra [~arki_guy@] has joined #openttd
12:51-!-adiet_caem_cari_pacar [~^Suami_35@] has joined #openttd
12:51-!-adiet_caem_cari_pacar is "(unknown)" on (unknown)
12:51-!-Cari_cew_REhem_Ehem [~chic_23@] has joined #openttd
12:51-!-PAlopo_co2CO [~Drimette@] has joined #openttd
12:51-!-C0_18_PNgn_NgrASAiN_ML [~Turano238@] has joined #openttd
12:51-!-Anneliese [~di-jual-a@] has joined #openttd
12:51-!-aRaLe [] has joined #openttd
12:51-!-Hanap_GF [] has joined #openttd
12:51-!-ervina_16 [] has joined #openttd
12:51-!-boyts [] has joined #openttd
12:51-!-Dakota_Moss [] has joined #openttd
12:51-!-Tarzan_de_Ch [~CO_EXMUD@] has joined #openttd
12:51-!-Mr_NorTy [~Nanda_swe@] has joined #openttd
12:51-!-aRaLe is "(unknown)" on (unknown)
12:51-!-co_mw_ML [] has joined #openttd
12:51-!-f-cantik [~Aashim@] has joined #openttd
12:51-!-le_chad [~Cow_kece@] has joined #openttd
12:51-!-co_pengen_bercinta [~stivqc@] has joined #openttd
12:51-!-c0_tlanjangin_ce [proxy@] has joined #openttd
12:51-!-cew_mbladuuuzzz [~adeq_^oon@] has joined #openttd
12:51-!-pretty_Nice [~blank_ide@] has joined #openttd
12:51-!-jimmi_jangkrik [] has joined #openttd
12:51-!-adeq_^oon [~scf@] has joined #openttd
12:51-!-Hanap_GF is "(unknown)" on (unknown)
12:51-!-Jake_C00L [] has joined #openttd
12:51-!-Cool_Cute_Dude [~ce_arta@] has joined #openttd
12:51-!-ervina_16 is "(unknown)" on (unknown)
12:51-!-BAYBEEEE^_^BLUEE [] has joined #openttd
12:51-!-situs_bisnis [~admirateu@] has joined #openttd
12:51-!-CE_PS08781034564 [~kismet@] has joined #openttd
12:51-!-XiNoN [~Lumiled@] has joined #openttd
12:51-!-She_Hante_ [~Co_cr_ce_@] has joined #openttd
12:51-!-cwo__bersahabat [~Bnt_aBoha@] has joined #openttd
12:51-!-CO_CR_CWe [~TheBigMan@] has joined #openttd
12:51-!-Midna [~d_flay@] has joined #openttd
12:51-!-Sapola [~Retro^^@] has joined #openttd
12:51-!-Berita [~ce_arta@] has joined #openttd
12:51-!-LeD|oC [~cute-me@] has joined #openttd
12:51-!-cwe_manis [~co_pngn_k@] has joined #openttd
12:51-!-The_Rev [~BOLIHUANG@] has joined #openttd
12:51-!-co_mw_ML is "(unknown)" on (unknown)
12:51-!-cwoPplngskul_smk [] has joined #openttd
12:51-!-DeadMoon [~narra@] has joined #openttd
12:51-!-Frans_Jkt [~Dj_Crazzz@] has joined #openttd
12:51-!-CEZW [~co_ganten@] has joined #openttd
12:51-!-Jake_C00L is "(unknown)" on (unknown)
12:51-!-bikerman [~MARINO_JK@] has joined #openttd
12:51-!-KanwaL [~kismet`] has joined #openttd
12:51-!-BAYBEEEE^_^BLUEE is "(unknown)" on (unknown)
12:51-!-DhOOKha [~sukma^_^@] has joined #openttd
12:51-!-mikie [~Iwan_need@] has joined #openttd
12:51-!-mBendol [~co_cari_^] has joined #openttd
12:51-!-c0_33 [~TheBigMan@] has joined #openttd
12:51-!-situs_bisnis is "(unknown)" on (unknown)
12:51-!-aryo799 [~cow_jmblw@] has joined #openttd
12:51-!-______|RIP| [~cowo-26-c@] has joined #openttd
12:51-!-CE_PS08781034564 is "(unknown)" on (unknown)
12:51-!-pRiNCEsS_89 [~DhOOKha@] has joined #openttd
12:51-!-C0_KTR_CR_CWE_T2_BIADAB_4ML [~satria_pi@] has joined #openttd
12:52-!-co_in_here [] has joined #openttd
12:52-!-XiNoN is "(unknown)" on (unknown)
12:52-!-Aaaanastazzia [~cwo_Pgn_K@] has joined #openttd
12:52-!-s4ndy_k [~rendang@] has joined #openttd
12:52-!-co-mau [] has joined #openttd
12:52-!-co_kerja_o [~smg_binan@] has joined #openttd
12:52-!-CO_CR_CWe is "(unknown)" on (unknown)
12:52-!-mustang04 [] has joined #openttd
12:52-!-siNgLeLady79 [~maya^k}ar@] has joined #openttd
12:52-!-Un|TeD [~bernd@] has joined #openttd
12:52-!-CO_OH_YES [~cowo_jaka@] has joined #openttd
12:52-!-Kelemvord [~Cupank@] has joined #openttd
12:52-!-co_gila [~phita@] has joined #openttd
12:52-!-DeadMoon is "(unknown)" on (unknown)
12:52-!-Co_chn_sk_jilat_toket-ce_jkt [~co_ganten@] has joined #openttd
12:52-!-looking_for_nice_girl_now [~koalaa@] has joined #openttd
12:52-!-ijase [] has joined #openttd
12:52-!-Speedy_bo [~co_cakepz@] has joined #openttd
12:52-!-ce_pengen_mas-mas [] has joined #openttd
12:52-!-Oddity [~Deny_Aja@] has joined #openttd
12:52-!-KanwaL is "(unknown)" on (unknown)
12:52-!-XiNoN is "(unknown)" on (unknown)
12:52-!-XiNoN [~JEeKAaRAa@] has joined #openttd
12:52-!-Un|TeD [~^c0_0nLin@] has joined #openttd
12:52-!-PinoyPride [~cwo_zaja@] has joined #openttd
12:52-!-DhOOKha is "(unknown)" on (unknown)
12:52-!-bo-yaa3gob [~Ennuyee@] has joined #openttd
12:52-!-junky[aa]] [~Andra_Cut@] has joined #openttd
12:52-!-blue_lady [~b0mb@] has joined #openttd
12:52-!-cadyjane09 [~RiE_aLOnE@] has joined #openttd
12:52-!-mikie is "(unknown)" on (unknown)
12:52-!-^^Ady_PeNgeN_KeNyOT_ToKed [~Co_sange1@] has joined #openttd
12:52-!-Gordy [~Amway09@] has joined #openttd
12:52-!-resmea [~Guest6721@] has joined #openttd
12:52-!-_Bianca_ [~QcSFboy22@] has joined #openttd
12:52-!-lita_15 [~LANANG09@] has joined #openttd
12:52-!-MICHEL--047 [~adrien_3@] has joined #openttd
12:52-!-______|RIP| is "(unknown)" on (unknown)
12:52-!-anthy [] has joined #openttd
12:52-!-Vickie [~cE_ucHulL@] has joined #openttd
12:52-!-unixcode [] has joined #openttd
12:52-!-pRiNCEsS_89 is "(unknown)" on (unknown)
12:52-!-co_in_here is "(unknown)" on (unknown)
12:52-!-nice_guyz [] has joined #openttd
12:52-!-Aaaanastazzia is "(unknown)" on (unknown)
12:52-!-erar_li [~kyky@] has joined #openttd
12:52-!-__jaimatadi__ [~eric@] has joined #openttd
12:52-!-co_leo [~gay_siang@] has joined #openttd
12:52-!-s4ndy_k is "(unknown)" on (unknown)
12:52-!-Kelemvord is "(unknown)" on (unknown)
12:52-!-Co20_4_Priamanlydwsa [] has joined #openttd
12:52-!-______|RIP| is "(unknown)" on (unknown)
12:52-!-______|RIP| [~Ce_suka_b@] has joined #openttd
12:52-!-cew_juaal_haandphone_muraah [~steph-F@] has joined #openttd
12:52-!-co_gila is "(unknown)" on (unknown)
12:52-!-ijase is "(unknown)" on (unknown)
12:52-!-Sulteng [] has joined #openttd
12:52-!-Speedy_bo is "(unknown)" on (unknown)
12:52-!-cw0_KuL_CKEPZ [~Om^pgn_di@] has joined #openttd
12:52-!-tyflede [~cew_SMP@] has joined #openttd
12:52-!-cow_17 [~AEGIS@] has joined #openttd
12:52-!-far [~ly^ndsie@] has joined #openttd
12:52-!-Un|TeD is "(unknown)" on (unknown)
12:52-!-PinoyPride is "(unknown)" on (unknown)
12:52-!-No_Bizar [~hotz_babe@] has joined #openttd
12:52-!-cew^72alone [~sara21@] has joined #openttd
12:52-!-co_alvin [~Car0o-Coc@] has joined #openttd
12:52-!-InteRmezO [~plume``] has joined #openttd
12:52-!-cE_jUteX_camFrOg [~karnila@] has joined #openttd
12:52-!-cadyjane09 is "(unknown)" on (unknown)
12:52-!-sayid [~MONGTOR@] has joined #openttd
12:52-!-akhwat_santun [~Cwe_biasa@] has joined #openttd
12:52-!-CO_DOYAN [] has joined #openttd
12:52-!-Oasis- [] has joined #openttd
12:52-!-^^Ady_PeNgeN_KeNyOT_ToKed is "(unknown)" on (unknown)
12:52-!-co_OL_YM_FB [~co-montir@] has joined #openttd
12:52-!-lita_15 is "(unknown)" on (unknown)
12:52-!-cow_gede [~cwo_19@] has joined #openttd
12:52-!-lila [~OM_45@] has joined #openttd
12:52-!-nice_guyz is "(unknown)" on (unknown)
12:52-!-cO_BdgLgNyaRi [~irvand@] has joined #openttd
12:52-!-co_cr_ce_ok_bgt [~Inemz_Man@] has joined #openttd
12:53-!-C0_0nl [~andrew_hu@] has joined #openttd
12:53-!-erar_li is "(unknown)" on (unknown)
12:53-!-co_mw_300_serius [~co_ok@] has joined #openttd
12:53-!-__jaimatadi__ is "(unknown)" on (unknown)
12:53-!-[[Nanda_sweet]] [~anie_pisc@] has joined #openttd
12:53-!-MARINO_JKT [~Eurotrash@] has joined #openttd
12:53-!-Catherine_ [~Tazless@] has joined #openttd
12:53-!-AADDAAWW_BIJI_GW_KEJEPIT_[CAM] [~cw3@] has joined #openttd
12:53-!-co_leo is "(unknown)" on (unknown)
12:53-!-Eurotrash [~Om_muda_p@] has joined #openttd
12:53-!-^C0-KerjaJKT [~sasuke@] has joined #openttd
12:53-!-Co20_4_Priamanlydwsa is "(unknown)" on (unknown)
12:53-!-cew_juaal_haandphone_muraah is "(unknown)" on (unknown)
12:53-!-ZuRiP [~ciput@] has joined #openttd
12:53-!-chasper [~Cowok_Vol@] has joined #openttd
12:53-!-lee_7 [~setia@] has joined #openttd
12:53-!-DedY_jogJa [~BlaDe_33@] has joined #openttd
12:53-!-Botax_bawah [~Co_Kerja_@] has joined #openttd
12:53-!-Sulteng is "(unknown)" on (unknown)
12:53-!-pinay_36 [~cow_cr_to@] has joined #openttd
12:53-!-Cwe_biasa [~CoWw__Cr_@] has joined #openttd
12:53-!-cw0_KuL_CKEPZ is "(unknown)" on (unknown)
12:53-!-cew_SMP [~^Anita20^@] has joined #openttd
12:53-!-Ryuk24 [] has joined #openttd
12:53-!-co__CR__CE [~penol-@] has joined #openttd
12:53-!-tyflede is "(unknown)" on (unknown)
12:53-!-cow_17 is "(unknown)" on (unknown)
12:53-!-cwo_cakep [~Co_Jazz_C@] has joined #openttd
12:53-!-[[KORCH-away]] [~AEGIS@] has joined #openttd
12:53-!-far is "(unknown)" on (unknown)
12:53-!-No_Bizar is "(unknown)" on (unknown)
12:53-!-cew^72alone is "(unknown)" on (unknown)
12:53-!-sallyna [~COcariCEd@] has joined #openttd
12:53-!-jm_920 [~adItyA_mO@] has joined #openttd
12:53-!-Srcaralhomar [] has joined #openttd
12:53-!-harry [] has joined #openttd
12:53-!-co_alvin is "(unknown)" on (unknown)
12:53-!-co_26_jakpuss [] has joined #openttd
12:53-!-LANANG09 [~Guest5743@] has joined #openttd
12:53-!-DropB0t [] has joined #openttd
12:53-!-reigga [~malibu29@] has joined #openttd
12:53-!-Zeppelin [] has joined #openttd
12:53-!-martin24 [~co_gres@] has joined #openttd
12:53-!-COWO_GEDE1 [~Sapola@] has joined #openttd
12:53-!-JUAL_MOBIL_DAN_BLACKBERRY_MRAH [] has joined #openttd
12:53-!-plume`` [~ce_kul_ne@] has joined #openttd
12:53-!-sasuke [~irvan@] has joined #openttd
12:53-!-rick02 [~Cow_Dah_l@] has joined #openttd
12:53-!-ce-telepon-gratis [~mau_enak@] has joined #openttd
12:53-!-kebelet-ml [~galnk@] has joined #openttd
12:53-!-Cow_Dah_lama_gak_gituan [~Sty|] has joined #openttd
12:53-!-C0_KTR_CR_CWE_T2_BIADAB_4ML [~co_MKS@] has joined #openttd
12:53-!-ce-debate [~malibu29@] has joined #openttd
12:53-!-aL^3NeeD [~lika-liku@] has joined #openttd
12:53-!-c0_bdg [~pukey@] has joined #openttd
12:53-!-^pHoLLene^ [] has joined #openttd
12:53-!-ce_berjilbab [~ce_kencan@] has joined #openttd
12:53-!-co_malassbanget [~don_ny@] has joined #openttd
12:53-!-lazydogn80 [~mIRCode@] has joined #openttd
12:53-!-v_q [~GarField-@] has joined #openttd
12:53-!-chasper [~binou@] has joined #openttd
12:53-!-sss_uk^^^ [~cybermale@] has joined #openttd
12:53-!-nazi[_a[] [~Cwo_caRi_@] has joined #openttd
12:53-!-caleb32 [~^^KONSELO@] has joined #openttd
12:53-!-ce_basah_sx [~naq@] has joined #openttd
12:53-!-Oddity [~SiantarMa@] has joined #openttd
12:53-!-cwe_ml [~ce_maniec@] has joined #openttd
12:53-!-co_frustasi [~cW_ViRgO@] has joined #openttd
12:53-!-man_romantic [~anthy@] has joined #openttd
12:53-!-CUTEE-SI-LARKI [~prjonzy87@] has joined #openttd
12:53-!-situs_bisnis [~Herman48R@] has joined #openttd
12:53-!-sayid is "(unknown)" on (unknown)
12:53-!-James79 [~aril_m@] has joined #openttd
12:53-!-yang_terlupakan [~latino071@] has joined #openttd
12:53-!-sukroo [~Komputer1@] has joined #openttd
12:53-!-CO_SAYANG_CO_4_DEWASA_ [~cW_ViRgO@] has joined #openttd
12:53-!-MarcAndreQc [~rise_up@] has joined #openttd
12:53-!-ce_mencobauntuktidurrr [~rHya3@] has joined #openttd
12:53-!-Anneliese [] has joined #openttd
12:53-!-lita_15 is "(unknown)" on (unknown)
12:53-!-lita_15 [~co_1818@] has joined #openttd
12:53-!-ce_perhatian_29 [~OM_cari_c@] has joined #openttd
12:53-!-Chn_Co_JKt_LIke_Someone [~cybermale@] has joined #openttd
12:53-!-belletoile [] has joined #openttd
12:53-!-matche [~oupsilliu@] has joined #openttd
12:53-!-socrat [~co_dews@] has joined #openttd
12:53-!-co_OL_YM_FB is "(unknown)" on (unknown)
12:53-!-DropB0t [~assayu02@] has joined #openttd
12:53-!-CE_cliquerzz [~co_pSnTrE@] has joined #openttd
12:53-!-Co_Mentari [] has joined #openttd
12:53-!-moccacino [~admirateu@] has joined #openttd
12:53-!-cow_t4_curhat [~nazia]Z]@] has joined #openttd
12:53-!-M4Le_27 [~Cow_kece@] has joined #openttd
12:53-!-pinay_36 [~EdHaRdyLa@] has joined #openttd
12:53-!-Co_Beber [] has joined #openttd
12:53-!-James79 [~Cupank@] has joined #openttd
12:53-!-Gordy [~davidde]] has joined #openttd
12:53-!-Hobiku_Dudukin_Perut-6pack [~pras_19@] has joined #openttd
12:53-!-lazydogn80 [~co_criTmn@] has joined #openttd
12:53-!-cow_gede is "(unknown)" on (unknown)
12:53-!-_someday [] has joined #openttd
12:53-!-coXXXjkt [~She_Hante@] has joined #openttd
12:53-!-cowok [~CaRi^BisY@] has joined #openttd
12:53-!-Un|TeD is "(unknown)" on (unknown)
12:53-!-Un|TeD [~Steffy_Cu@] has joined #openttd
12:53-!-cEW_nARzIZ [] has joined #openttd
12:53-!-ad-jie [~wanita_cr@] has joined #openttd
12:53-!-AADDAAWW_BIJI_GW_KEJEPIT_[CAM] [~Car0o-Coc@] has joined #openttd
12:53-!-cew_mbladuuuzzz [~CO_DOYAN@] has joined #openttd
12:53-!-Jipeng [~ftv@] has joined #openttd
12:53-!-sugar_chocolate [~fmimiOQP@] has joined #openttd
12:53-!-GiSSeLLa [~emad28@] has joined #openttd
12:53-!-Mike40 [~co_kantor@] has joined #openttd
12:53-!-loenk [~matche@] has joined #openttd
12:53-!-ce_Free-sms [~cowo_bias@] has joined #openttd
12:53-!-junky[[\]] [~Guest2782@] has joined #openttd
12:53-!-co_sprite [~Mr_NorTy@] has joined #openttd
12:53-!-plume`` [~ce_kul_ne@] has quit [Max SendQ exceeded]
12:53-!-halimaw [~cokulbdg_@] has joined #openttd
12:53-!-BE_NISM [~kismet@] has joined #openttd
12:53-!-JiGz [~shemale_l@] has joined #openttd
12:53-!-lila is "(unknown)" on (unknown)
12:53-!-alexxxx15 [] has joined #openttd
12:53-!-DeviLX [~ghoOst312@] has joined #openttd
12:53-!-TheBigMan [~kept@] has joined #openttd
12:53-!-cwe_cam_naked [~caca@] has joined #openttd
12:53-!-qwweww [~cwo_biasa@] has joined #openttd
12:53-!-kebelet-ml [] has joined #openttd
12:53-!-cochn29 [~ce_mauxxd@] has joined #openttd
12:53-!-cO_BdgLgNyaRi is "(unknown)" on (unknown)
12:53-!-cw0_KuL_CKEPZ is "(unknown)" on (unknown)
12:53-!-cw0_KuL_CKEPZ [~anime_man@] has joined #openttd
12:53-!-Melati [~lemec@] has joined #openttd
12:53-!-Robert_gain [~cwo_cr_tm@] has joined #openttd
12:53-!-caseey`canttik [~WAPPO@] has joined #openttd
12:53-!-co_cr_ce_ok_bgt is "(unknown)" on (unknown)
12:53-!-Ce_Baek_20 [] has joined #openttd
12:53-!-Tarzan_de_Ch [] has joined #openttd
12:53-!-SiantarMan [~co_oasis@] has joined #openttd
12:53-!-co_1818 [] has joined #openttd
12:53-!-co_frustasi [] has joined #openttd
12:53-!-Cow_suka_cewekBondeng [~cow_asik@] has joined #openttd
12:53-!-c0_Lgi_JoMbLo [~dp2@] has joined #openttd
12:53-!-kuwait_no1 [~JoLiEfLeU@] has joined #openttd
12:53-!-f-cantik [~co_26_jak@] has joined #openttd
12:53-!-C0_0nl is "(unknown)" on (unknown)
12:53-!-MeCindy [~klop@] has joined #openttd
12:53-!-co`jomblo`esia [] has joined #openttd
12:53-!-gustavo_enrico [~Sry_86@] has joined #openttd
12:53-!-Orchideus [~DA13@] has joined #openttd
12:53-!-co_mw_300_serius is "(unknown)" on (unknown)
12:53-!-co_nyante [~winerzt@] has joined #openttd
12:53-!-Jack_JKT [] has joined #openttd
12:53-!-cup_cup [~dany33@] has joined #openttd
12:53-!-Frans_Jkt [~Dj_Crazzz@] has quit [Max SendQ exceeded]
12:53-!-couwo [] has joined #openttd
12:53-!-KlausFuchs [~Jipeng@] has joined #openttd
12:53-!-ardy_ [~Guest8820@] has joined #openttd
12:53-!-adyy [~co_kerja_@] has joined #openttd
12:53-!-rendang [] has joined #openttd
12:53-!-baerman [calvin@] has joined #openttd
12:53-!-MARINO_JKT is "(unknown)" on (unknown)
12:53-!-pria_mapan_cr_ce_xxx [~cari_agen@] has joined #openttd
12:53-!-DavidB__ [~CO-HOTMan@] has joined #openttd
12:53-!-Andra_Cute [] has joined #openttd
12:53-!-aaderaai [~GSTARR@] has joined #openttd
12:53-!-LHR^M^LHR [~z4yz4y@] has joined #openttd
12:53-!-No_Christ_Required [~cwo_mau@] has joined #openttd
12:53-!-Eurotrash is "(unknown)" on (unknown)
12:53-!-^GanZetA^ [] has joined #openttd
12:53-!-loneguy [] has joined #openttd
12:54-!-Urania [] has joined #openttd
12:54-!-^C0-KerjaJKT is "(unknown)" on (unknown)
12:54-!-co-montir [~co_crcw@] has joined #openttd
12:54-!-CUTEESGIRL [~mit@] has joined #openttd
12:54-!-Gamacca02 [~co_cakepz@] has joined #openttd
12:54-!-nur_cahaya [~jual_treo@] has joined #openttd
12:54-!-COWO_GEDE1 [] has joined #openttd
12:54-!-aaderaai [~m_smart@] has joined #openttd
12:54-!-ZuRiP is "(unknown)" on (unknown)
12:54-!-G\e\e\k [] has joined #openttd
12:54-!-co_OL_YM_FB is "(unknown)" on (unknown)
12:54-!-co_OL_YM_FB [~GentL3meL@] has joined #openttd
12:54-!-rise_up [] has joined #openttd
12:54-!-pRiNCEsS_89 [~Cow_Dah_l@] has joined #openttd
12:54-!-co_hobi_nongkrong_dmol [~co_fs_fb_@] has joined #openttd
12:54-!-Om_Bayar_Serius [~Gamacca02@] has joined #openttd
12:54-!-Assuradda [~vj_adam@] has joined #openttd
12:54-!-Sask [~martin24@] has joined #openttd
12:54-!-SELL_TOSHIBA_TABLET [] has joined #openttd
12:54-!-woww [~ce_lezzcs@] has joined #openttd
12:54-!-skrooo [~kebelet-m@] has joined #openttd
12:54-!-cow_lg_pengen [~DA13@] has joined #openttd
12:54-!-jUstin|away [~]S|] has joined #openttd
12:54-!-Botax_bawah is "(unknown)" on (unknown)
12:54-!-co_renkarnasi [~naziaa]] has joined #openttd
12:54-!-c0_Lgi_JoMbLo [~co-keren@] has joined #openttd
12:54-!-Ce_ceJie_mks [] has joined #openttd
12:54-!-Cwe_biasa is "(unknown)" on (unknown)
12:54-!-di-jual-anion-500rb-1set [] has joined #openttd
12:54-!-CO-muslim [~lydya@] has joined #openttd
12:54-!-cew_SMP is "(unknown)" on (unknown)
12:54-!-Aaaanastazzia [] has joined #openttd
12:54-!-v_cky [~co_cr_ce-@] has joined #openttd
12:54-!-Ryuk24 is "(unknown)" on (unknown)
12:54-!-Co_Jazz_Cakepz [~NassGorr@] has joined #openttd
12:54-!-buns0til_25 [~cwoPplngs@] has joined #openttd
12:54-!-cwo_cakep is "(unknown)" on (unknown)
12:54-!-_Ivan_masih_sendiri_ [] has joined #openttd
12:54-!-[[KORCH-away]] is "(unknown)" on (unknown)
12:54-!-Andree [] has joined #openttd
12:54-!-co-keren [~cWe_17_tM@] has joined #openttd
12:54-!-squ1z5 [] has joined #openttd
12:54-!-cintaalaauraa [~jh4|||3s@] has joined #openttd
12:54-!-_ce_cerfie [~Guest3380@] has joined #openttd
12:54-!-aze [] has joined #openttd
12:54-!-mngyqc [] has joined #openttd
12:54-!-ezi_aza [] has joined #openttd
12:54-!-sallyna is "(unknown)" on (unknown)
12:54-!-Berita [~Jipeng@] has joined #openttd
12:54-!-muthia [~JLove@] has joined #openttd
12:54-!-jm_920 is "(unknown)" on (unknown)
12:54-!-cEW_nARzIZ [~CoDWS_giO@] has joined #openttd
12:54-!-andrean [~wanita_cr@] has joined #openttd
12:54-!-Srcaralhomar is "(unknown)" on (unknown)
12:54-!-co_jkt_27_chn_ [] has joined #openttd
12:54-!-Cow_suka_cewekBondeng [~ADEERAI@] has joined #openttd
12:54-!-cwo_keren [~Co_Hotzzz@] has joined #openttd
12:54-!-CO_LG_NGCOK_KONTL [] has joined #openttd
12:54-!-ghany [~Co_Keren_@] has joined #openttd
12:54-!-harry is "(unknown)" on (unknown)
12:54-!-co_26_jakpuss is "(unknown)" on (unknown)
12:54-!-RadioAum2K [~Herc__@] has joined #openttd
12:54-!-COcariCEdwsaTE2Kecil [~ce_seksi@] has joined #openttd
12:54-!-C0_bGt [~Laki-Bang@] has joined #openttd
12:54-!-CE_cliquerzz is "(unknown)" on (unknown)
12:54-!-DOOLCE [~GAMBUS@] has joined #openttd
12:54-!-coXXXjkt [~co`] has joined #openttd
12:54-!-FSa [~lila@] has joined #openttd
12:54-!-co_pSnTrEn [~cr4ck0rz@] has joined #openttd
12:54-!-enda_independent [~agas@] has joined #openttd
12:54-!-cow_libra [~Un|] has joined #openttd
12:54-!-Co_Mentari is "(unknown)" on (unknown)
12:54-!-zibeon [~Wine@] has joined #openttd
12:54-!-darney [~erichard@] has joined #openttd
12:54-!-Co_Bikers_____ [~cwo_19@] has joined #openttd
12:54-!-moccacino is "(unknown)" on (unknown)
12:54-!-Co^Cam^Cs [] has joined #openttd
12:54-!-Sponge_B_B [~newtoblr@] has joined #openttd
12:54-!-Lava [] has joined #openttd
12:54-!-cow_gede [~Dr^] has joined #openttd
12:54-!-MARINO_JKT is "(unknown)" on (unknown)
12:54-!-MARINO_JKT [] has joined #openttd
12:54-!-Gordy is "(unknown)" on (unknown)
12:54-!-co-18 [~COW_DJ@] has joined #openttd
12:54-!-CUTEESGIRL [~DOOLCE@] has joined #openttd
12:54-!-nav [~cowk-pang@] has joined #openttd
12:54-!-cow_17 [] has joined #openttd
12:54-!-Keren_ne [~pukey@] has joined #openttd
12:54-!-kebelet-ml is "(unknown)" on (unknown)
12:54-!-Abelencita_loca [] has joined #openttd
12:54-!-MaRcIn [~PRIA^DEWA@] has joined #openttd
12:54-!-c0_arabian [] has joined #openttd
12:54-!-cochn29 is "(unknown)" on (unknown)
12:54-!-Tau-maru [~dark_ange@] has joined #openttd
12:54-!-Man_cYbeR [~cE_19_cri@] has joined #openttd
12:54-!-Melati is "(unknown)" on (unknown)
12:54-!-Co_V-IXION [] has joined #openttd
12:55-!-woww [~CO_Mau_no@] has joined #openttd
12:55-!-cow_ol_dikantor [~kebelet-m@] has joined #openttd
12:55-!-COW_DJ [] has joined #openttd
12:55-!-caseey`canttik is "(unknown)" on (unknown)
12:55-!-pervers- [~co_fine@] has joined #openttd
12:55-!-cwo_keren is "(unknown)" on (unknown)
12:55-!-co_nyante is "(unknown)" on (unknown)
12:55-!-darney [] has joined #openttd
12:55-!-co_kluarmain [~ichigo_lu@] has joined #openttd
12:55-!-Sry_86 [] has joined #openttd
12:55-!-Jack_JKT is "(unknown)" on (unknown)
12:55-!-cow_tmn_co [] has joined #openttd
12:55-!-cutiegUy [] has joined #openttd
12:55-!-LeRebel [] has joined #openttd
12:55-!-cari_butuh_tante [~andre^@] has joined #openttd
12:55-!-couwo is "(unknown)" on (unknown)
12:55-!-PijatSensualUtkWanitaSerius [] has joined #openttd
12:55-!-Urania is "(unknown)" on (unknown)
12:55-!-CO_HORNY_BGT [~Ayo_Tamba@] has joined #openttd
12:55-!-Om_dikantor [~kismet`@] has joined #openttd
12:55-!-Cartoon_ [] has joined #openttd
12:55-!-StePH[G] [~RocketQUE@] has joined #openttd
12:55-!-CUTEESGIRL is "(unknown)" on (unknown)
12:55-!-CUTEESGIRL is "(unknown)" on (unknown)
12:55-!-TorontoGuy4F [] has joined #openttd
12:55-!-teh [] has joined #openttd
12:55-!-Gamacca02 is "(unknown)" on (unknown)
12:55-!-rise_up is "(unknown)" on (unknown)
12:55-!-Cwo_caRi_tmen [~IcHanTiQu@] has joined #openttd
12:55-!-Om_dikantor [~CO_cibubu@] has joined #openttd
12:55-!-Assuradda is "(unknown)" on (unknown)
12:55-!-Cowok_Volley [] has joined #openttd
12:55-!-co_gres [] has joined #openttd
12:55-!-Sask is "(unknown)" on (unknown)
12:55-!-woww is "(unknown)" on (unknown)
12:55-!-woww is "(unknown)" on (unknown)
12:55-!-co_kantor [] has joined #openttd
12:55-!-cow_lg_pengen is "(unknown)" on (unknown)
12:55-!-f-cantik [] has joined #openttd
12:55-!-steffany [~shine`] has joined #openttd
12:55-!-TWerkhoven2[l] [] has quit [Quit: He who can look into the future, has a brighter future to look into]
12:55-!-erar_li [] has joined #openttd
12:55-!-jUstin|away is "(unknown)" on (unknown)
12:55-!-PokerBoys24 [~JEeKAaRAa@] has joined #openttd
12:55-!-c0_Lgi_JoMbLo is "(unknown)" on (unknown)
12:55-!-diisi_nama_anda [] has joined #openttd
12:55-!-doel [] has joined #openttd
12:55-!-di-jual-anion-500rb-1set is "(unknown)" on (unknown)
12:55-!-agas [] has joined #openttd
12:55-!-grig_58 [~karnila@] has joined #openttd
12:55-!-ino_crz36 [] has joined #openttd
12:55-!-CO-muslim is "(unknown)" on (unknown)
12:55-!-cew_chuby [] has joined #openttd
12:55-!-ripcord [] has joined #openttd
12:55-!-Zyrcov [] has joined #openttd
12:55-!-CE_BTHKRJ [~co_kana@] has joined #openttd
12:55-!-co_confuse [] has joined #openttd
12:55-!-co_mau_tete_gd [] has joined #openttd
12:55-!-ZAVIER_CRUZ [] has joined #openttd
12:55-!-pria_mapan_0k [~alexxxx15@] has joined #openttd
12:55-!-Aaaanastazzia is "(unknown)" on (unknown)
12:55-!-boy_Jkt [] has joined #openttd
12:55-!-kefin_aja [~Awoman_Ca@] has joined #openttd
12:55-!-neneksky [~aji_mau_c@] has joined #openttd
12:55-!-co_1818 [] has joined #openttd
12:55-!-cwe_imoet [] has joined #openttd
12:55-!-L1thium [] has joined #openttd
12:55<Rhamphoryncus>Hide join/part works well
12:55-!-dhiean^moet [] has joined #openttd
12:55-!-co_skxxx [] has joined #openttd
12:56-!-freaK_sOuL [~cow_jmblw@] has joined #openttd
12:56-!-v_cky is "(unknown)" on (unknown)
12:56-!-belegug [] has joined #openttd
12:56-!-cwe_imoet [] has quit [Remote host closed the connection]
12:56-!-AADDAAWW_BIJI_GW_KEJEPIT_[CAM] [~Car0o-Coc@] has quit [Remote host closed the connection]
12:56-!-buns0til_25 [~cwoPplngs@] has quit [Remote host closed the connection]
12:56-!-co_confuse [] has quit [Remote host closed the connection]
12:56-!-grig_58 [~karnila@] has quit [Remote host closed the connection]
12:56-!-Co_Jazz_Cakepz [~NassGorr@] has quit [Remote host closed the connection]
12:56-!-aaderaai [~m_smart@] has quit [Remote host closed the connection]
12:56-!-L1thium [] has quit [Remote host closed the connection]
12:56-!-Cow_suka_cewekBondeng [~ADEERAI@] has quit [Read error: Connection reset by peer]
12:56-!-Co_Bikers_____ [~cwo_19@] has quit [Remote host closed the connection]
12:56-!-boy_Jkt [] has quit [Remote host closed the connection]
12:56-!-ZAVIER_CRUZ [] has quit [Remote host closed the connection]
12:56-!-cup_cup [] has quit [Read error: Connection reset by peer]
12:56-!-lee_7 [~setia@] has quit [Remote host closed the connection]
12:56-!-co-keren [~cWe_17_tM@] has quit [Remote host closed the connection]
12:56-!-Cwo_caRi_tmen [~IcHanTiQu@] has quit [Remote host closed the connection]
12:56-!-MaRcIn [~PRIA^DEWA@] has quit [Remote host closed the connection]
12:56-!-freaK_sOuL [~cow_jmblw@] has quit [Remote host closed the connection]
12:56-!-COW_DJ [] has quit [Write error: connection closed]
12:56-!-c0_arabian [] has quit [Remote host closed the connection]
12:56-!-matche [~oupsilliu@] has quit [Remote host closed the connection]
12:56-!-cwe_cam_naked [~caca@] has quit [Remote host closed the connection]
12:56-!-ce_pengen_mas-mas [] has quit [Read error: Connection reset by peer]
12:56-!-StePH[G] [~RocketQUE@] has quit [Remote host closed the connection]
12:56-!-Co_Jazz_Cakepz is "(unknown)" on (unknown)
12:56-!-^om-botak-buncit-cr-cinta [] has joined #openttd
12:56-!-akhwat_santun [] has quit [Remote host closed the connection]
12:56-!-dini_bandung [] has joined #openttd
12:56-!-^om-botak-buncit-cr-cinta [] has quit [Remote host closed the connection]
12:56-!-dini_bandung [] has quit [Remote host closed the connection]
12:56-!-PokerBoys24 [] has quit [Remote host closed the connection]
12:56-!-pervers- [~co_fine@] has quit [Remote host closed the connection]
12:56-!-Man_cYbeR [~cE_19_cri@] has quit [Remote host closed the connection]
12:56-!-co_1818 [] has quit [Remote host closed the connection]
12:56-!-Andree is "(unknown)" on (unknown)
12:56-!-co_mw_ML [~co_alvin@] has joined #openttd
12:56-!-co_mw_ML [~co_alvin@] has quit [Remote host closed the connection]
12:56-!-cew_jojoba [] has joined #openttd
12:56-!-cew_jojoba [] has quit [Remote host closed the connection]
12:56-!-Tau-maru [~dark_ange@] has quit [Read error: Connection reset by peer]
12:56-!-co-keren is "(unknown)" on (unknown)
12:56-!-ezi_aza [] has quit [Remote host closed the connection]
12:56-!-squ1z5 is "(unknown)" on (unknown)
12:56-!-cintaalaauraa is "(unknown)" on (unknown)
12:56-!-mngyqc is "(unknown)" on (unknown)
12:56-!-Berita is "(unknown)" on (unknown)
12:56-!-co_jkt_27_chn_ is "(unknown)" on (unknown)
12:56-!-Cow_suka_cewekBondeng is "(unknown)" on (unknown)
12:56-!-CO_LG_NGCOK_KONTL is "(unknown)" on (unknown)
12:56-!-SiantarMan [~co_oasis@] has quit [Read error: Connection reset by peer]
12:56-!-mode/#openttd [+i] by peter1138
12:56-!-ghany is "(unknown)" on (unknown)
12:56-!-RadioAum2K is "(unknown)" on (unknown)
12:56-!-COcariCEdwsaTE2Kecil is "(unknown)" on (unknown)
12:56-!-C0_bGt is "(unknown)" on (unknown)
12:56<Prof_Frink>Rhamphoryncus: Good idea.
12:56-!-DOOLCE is "(unknown)" on (unknown)
12:56-!-FSa is "(unknown)" on (unknown)
12:56-!-zibeon is "(unknown)" on (unknown)
12:56<Prof_Frink>peter1138: Better idea.
12:56-!-Co^Cam^Cs is "(unknown)" on (unknown)
12:56-!-Lava is "(unknown)" on (unknown)
12:56-!-co-18 is "(unknown)" on (unknown)
12:57-!-nav is "(unknown)" on (unknown)
12:57-!-Abelencita_loca is "(unknown)" on (unknown)
12:57-!-Tau-maru is "(unknown)" on (unknown)
12:57-!-Man_cYbeR is "(unknown)" on (unknown)
12:57-!-Co_V-IXION is "(unknown)" on (unknown)
12:57-!-TWerkhoven[l] [] has quit [Ping timeout: 480 seconds]
12:57-!-cow_ol_dikantor is "(unknown)" on (unknown)
12:57-!-pervers- is "(unknown)" on (unknown)
12:57-!-darney is "(unknown)" on (unknown)
12:57-!-co_kluarmain is "(unknown)" on (unknown)
12:57-!-Sry_86 is "(unknown)" on (unknown)
12:57-!-cow_tmn_co is "(unknown)" on (unknown)
12:57-!-cutiegUy is "(unknown)" on (unknown)
12:57-!-PijatSensualUtkWanitaSerius is "(unknown)" on (unknown)
12:57-!-CO_HORNY_BGT is "(unknown)" on (unknown)
12:57-!-PAlopo_co2CO [~Drimette@] has quit [Read error: Connection reset by peer]
12:57-!-Om_dikantor is "(unknown)" on (unknown)
12:57-!-Om_dikantor is "(unknown)" on (unknown)
12:57-!-Cartoon_ is "(unknown)" on (unknown)
12:57-!-StePH[G] is "(unknown)" on (unknown)
12:57-!-TorontoGuy4F is "(unknown)" on (unknown)
12:57-!-teh is "(unknown)" on (unknown)
12:57-!-Cwo_caRi_tmen is "(unknown)" on (unknown)
12:58-!-Cowok_Volley is "(unknown)" on (unknown)
12:58-!-co_gres is "(unknown)" on (unknown)
12:58-!-co_kantor is "(unknown)" on (unknown)
12:58-!-steffany is "(unknown)" on (unknown)
12:58-!-PokerBoys24 is "(unknown)" on (unknown)
12:58-!-doel is "(unknown)" on (unknown)
12:58-!-grig_58 is "(unknown)" on (unknown)
12:58-!-ino_crz36 is "(unknown)" on (unknown)
12:58-!-cew_chuby is "(unknown)" on (unknown)
12:58-!-ripcord is "(unknown)" on (unknown)
12:58-!-Chris_Booth [] has quit [Ping timeout: 480 seconds]
12:58-!-Zyrcov is "(unknown)" on (unknown)
12:58-!-boy_Jkt is "(unknown)" on (unknown)
12:58-!-freaK_sOuL is "(unknown)" on (unknown)
12:58-!-belegug is "(unknown)" on (unknown)
12:58-!-^om-botak-buncit-cr-cinta is "(unknown)" on (unknown)
12:58-!-dini_bandung is "(unknown)" on (unknown)
13:03*andythenorth discovers a bug in FISH
13:03<andythenorth>ships only show tanker graphics for cargos where the *only* class is LIQUID
13:04<andythenorth>cargos that set LIQUID and other classes don't get tanker sprites
13:04<andythenorth>the technical solution to this would be a better mask I guess
13:04<andythenorth> shows why relying on classes for graphics is prone to fail
13:08<andythenorth>e.g. milk doesn't get shipped in tanker ships
13:08<andythenorth>wine does though :)
13:13*andythenorth prepares to eat own dog food
13:14-!-tokai [] has quit [Ping timeout: 480 seconds]
13:14*andythenorth has said more than once 'newgrf authors should prefer labels over classes for graphic support'
13:14<andythenorth>let's see how that tastes :P
13:24-!-Xaroth [] has quit [Read error: Connection reset by peer]
13:37<andythenorth>`yexo is there any nml expression similar to cargotable[MILK] or such? To get values for use in switches
13:37<andythenorth>or cargotable.setdefault(MILK, default) might be safer :P
13:37-!-vodka [] has quit [Quit: Leaving]
13:38<@Yexo>andythenorth: just use MILK
13:38-!-glx [glx@2a01:e35:2f59:c7c0:f11d:24d1:b2a5:c342] has joined #openttd
13:38-!-mode/#openttd [+v glx] by ChanServ
13:38<@Yexo>or cargotype("MILK"), although I'm not 100% sure on the name of that function
13:38-!-tokai [] has joined #openttd
13:38-!-mode/#openttd [+v tokai] by ChanServ
13:42<andythenorth>ok just using the label works great
13:45<CIA-1>OpenTTD: translators * r23902 /trunk/src/lang/ (5 files in 2 dirs):
13:45<CIA-1>OpenTTD: -Update from WebTranslator v3.0:
13:45<CIA-1>OpenTTD: catalan - 2 changes by Catalan
13:45<CIA-1>OpenTTD: english_US - 4 changes by Rubidium
13:45<CIA-1>OpenTTD: finnish - 2 changes by jpx_
13:45<CIA-1>OpenTTD: french - 48 changes by OliTTD
13:45<CIA-1>OpenTTD: tamil - 6 changes by aswn
13:45<andythenorth>that's embarassingly easy
13:46<andythenorth>grf authors who use nml have no excuse for using classes if they want cargo-specific graphics :D
14:01-!-tokai [] has quit [Ping timeout: 480 seconds]
14:04-!-flaa [] has quit [Quit: leaving]
14:11-!-DayDreamer1 [~DayDreame@] has left #openttd []
14:15-!-HerzogDeXtEr [~Flex@] has quit [Ping timeout: 480 seconds]
14:17<TrueBrain>@mode +R
14:17<@DorpsGek>TrueBrain: I don't recognize you.
14:17<TrueBrain>I hate you
14:17<TrueBrain>@mode +R
14:17-!-mode/#openttd [+R] by DorpsGek
14:17<TrueBrain>@mode -i
14:17-!-mode/#openttd [-i] by DorpsGek
14:17<TrueBrain>@mode -l
14:17-!-mode/#openttd [-l] by DorpsGek
14:30*andythenorth ponders auto-generated cargo table
14:30<andythenorth>generate it only from known cargos
14:30<andythenorth>kind of the inverse of an idea we had for refitting based only on cargo table :P
14:32<CIA-1>OpenTTD: rubidium * r23903 /trunk/ (readme.txt src/misc_gui.cpp): -Fix [FS#4993]: some instances had issues due to a value being out of range
14:32-!-macee [] has joined #openttd
14:33-!-macee [] has left #openttd []
14:34-!-theholyduck [] has quit [Ping timeout: 480 seconds]
14:36-!-Xrufuian [] has joined #openttd
14:44*andythenorth ponders trucks with random trailer types for some cargos
14:44<andythenorth>e.g. engineering supplies as lowbed, flatbed, box
14:47<Eddi|zuHause>i'd push that feature way down the priority queue
14:47<andythenorth>ss = random.choice('flat', 'lowbed','box')
14:47<andythenorth>it's remarkably trivial to code :P
14:48<andythenorth>not to draw
14:48<Eddi|zuHause>yes, just a random_switch
14:48<andythenorth>not even that
14:48<andythenorth>it's templated in by one line
14:48<andythenorth>I have a dict with ENSP = 'flat'
14:48<andythenorth>I just change the string for a tuple :P
14:49<andythenorth>it would suffer from the downside of being compile time :P
14:49*andythenorth puts that idea on the spike for a bit
14:50*andythenorth is not very good at remembering compile time vs run time
14:50<andythenorth>web apps don't have that distinction
14:50<andythenorth>compile time = page load in a web app
14:50<andythenorth>recompile = refresh :P
14:54-!-nat_as [] has joined #openttd
14:54<nat_as>since when did you have to be registered to join here?
14:54<nat_as>anyways I have a question
14:54<nat_as>somebody explain this to me
14:54<nat_as>I thought subways were impossible in OTTD
14:54<Eddi|zuHause>in CETS you'd just write "cargo:(ENSP:random:(1:flat,1:low.1:box))" or something similar
14:54<@Rubidium>nat_as: since there were a few hundred spammers trying to join
14:54<andythenorth>Eddi|zuHause: code generator ftw?
14:55<TrueBrain>nat_as: the impossible only takes a little bit longer
14:55<@Rubidium>nat_as: that's someone's personal attempt to introducing that
14:55<nat_as>I found it on a non english form
14:55<nat_as>googling OpenTTD subways
14:55<@Rubidium>but there were some issues with it
14:56*andythenorth tries to keep code generation out of templating where possible. Write a compiler...or write templates.
14:56<nat_as>Why does Simutrans have to be so ugly while OpenTTD lacks all the cool features?
14:56<andythenorth>because you have't coded the features or redrawn simutrans yet :D
14:56<nat_as>Open TTD has better construction, and better art, but Simutrans has all the features I want in OpenTTD ARGH
14:56<andythenorth>ach, it's only one switch to generate
14:57<andythenorth>for i in (body types): add switch lines
14:57<andythenorth>could be worse
14:57*andythenorth ponders doing it
14:58<Eddi|zuHause>andythenorth: you could easily copy my Switch classes from
14:58<nat_as>to make simutrans un-ugly would be as much work as implementing subways in OTTD I think
14:58<@Rubidium>nat_as: I guess simutrans misses some cool features that OpenTTD has as well
14:59<nat_as>pretty much every spirte would have to be re-done.
14:59<Eddi|zuHause>skip the magic with the parser and the conversion functions
14:59<@Rubidium>although most of the time "features" are taken for granted
14:59<nat_as>the cool features from OpenTTD that Simutrans misses are graphics that aren't traced areal photos :V
14:59<@Rubidium>people always say that there are barely any new (major) features in OpenTTD releases
14:59<nat_as>it's the worst example of art by commitee
15:00<@Rubidium>however, when you let them try a significantly older version they start to notice how much the small features actually matter to gameplay
15:00<nat_as>and it gets even worse in the high rez texture packs.
15:00<nat_as>yeah I will say OpenTTD has gotten a lot better
15:00<nat_as>the ability to load newgrifs IN GAME is awesome
15:01<nat_as>cargo dist is also kind of cool, but it fustrates sometimes
15:01<nat_as>although i think i'd have the same problems only worse in non cargo dist.
15:01<Elukka>i want a cargo destinations patch that has the features of yacd but works as well as cargodist :P
15:01<Eddi|zuHause>those are both features that we DON'T have :p
15:01<nat_as>if only there was a way to set a train to transfer some of the cargo and unload some of the cargo
15:02<nat_as>would make delevering food and goods better
15:02<nat_as>because dammit i want to send food and goods to ALL THE TOWNS.
15:02<nat_as>ALL OF THEM
15:02<@Rubidium>Eddi|zuHause: unless he meant configuring NewGRFs from the main menu ;)
15:02<nat_as>AT ONCE
15:02<Elukka>it would work that way with cargo destinations, nat
15:02<nat_as>I use that
15:02<Elukka>it'd work more sensibly with yacd
15:02<nat_as>but I still have problems with cargo not working
15:02<nat_as>how does yacd work?
15:02<@Rubidium>nat_as: do you use cargodist or yacd?
15:02<nat_as>I ought to try it?
15:02<Elukka>badly :P
15:03<nat_as>I did find out the most profitable thing ever is commuter rail.
15:03<Elukka>YACD has cargo that knows where it wants to go regardless of where you have connections
15:03<@Rubidium>cargodist distributes cargo to all the (accepting) end points in your own network, yacd gives destinations to all cargo and if you don't go there, the cargo won't be transported
15:03<Elukka>i think the yacd system is much better
15:04<Elukka>but yacd has some serious issues and doesn't seem to be under active development so i guess they won't be fixed
15:04<nat_as>maybe if you could set destinations MANUALY
15:04<nat_as>like you click on the factory, and then click on the destination, and then build a train.
15:04<nat_as>control destinations via the industries or stations?
15:04<@Rubidium>Elukka: just come up with the algorithm to make it go smoothly and I guess it'll be active again
15:04<Elukka>i use cargodist since it works
15:05<nat_as>instead of via the vehicles.
15:05<Eddi|zuHause>that's what cargodist basically does, only implicitly through your orders
15:05<nat_as>yeah, the problem there is it does things I don't intend it to.
15:05<Eddi|zuHause>if you don't provide a route, then the cargo won't be routed that way
15:05<Eddi|zuHause>simple enough
15:05<Elukka>i have neither the skill or inclination to develop that sort of thing, rubidium
15:05<nat_as>like say I want to distribute food to three stations down a line
15:05<nat_as>all three accept food though
15:06<nat_as>so it all gets dumped at the first.
15:06<nat_as>unless i set transfer
15:06<nat_as>then it all does not get dumped.
15:06<nat_as>If I could set it to transfer some and dump the rest.
15:07<nat_as>Passengers/mail using a different algorithm completely might also be important.
15:07<nat_as>esp if it could differentiate between commuters, and tourists.
15:08<nat_as>also pay attention to the fact that people usualy want to come back once they get somewhere.
15:08<nat_as>even with cargodist, if you ship people from a big city to a small one
15:08<nat_as>they will all vanish once they get to the small city
15:09<nat_as>and it will come back empty!
15:11<nat_as>anyways IIRC passingers in simutrans have houses and travel from them to places, and then try to return home.
15:11<nat_as>and factories also have employees who live in nearby towns.
15:12-!-Chris_Booth [] has joined #openttd
15:12<Chris_Booth>that is new
15:12<Elukka>somehow it manages to do this without melting the cpu, i assume
15:13<Elukka>which is a problem for yacd
15:13<nat_as>Bah, everyone has multi core processors and a billion gigs of ram nowdays.
15:14-!-KouDy [~KouDy@] has quit [Quit: Leaving.]
15:14<Elukka>well, openttd doesn't support that
15:14<Elukka>it doesn't even support graphics cards
15:14<nat_as>If you can get the GPU to do things like pathfinding and shit it's even better.
15:14<nat_as>IT SHOULD
15:14<Elukka>it should but nobody wants to develop it
15:14<nat_as>I guess the biggest advantage of Simutrans is that it is not tied down to a 20? year old game
15:14<Elukka>so we get a game that doesn't have the resources to do many of the things people would want it to do
15:15<Elukka>like fancy cargo destinations
15:15<nat_as>18 years.
15:15<+michi_cc>A GPU will suck ass big time on pathfinding. Multi-threading would help, but introducing that is close the simply starting over fresh.
15:15<@Rubidium>it's not the old game that holds back multithreading/multicore/GPU code, but network play does that
15:16<Chris_Booth>I think you guys should thanks the people that run this project rather than moan about them not doing the things you want
15:16<@Rubidium>without network play we don't have to care that everything runs in the same order every time
15:16<Chris_Booth>a small team of people do all of this for nothing
15:16<Elukka>other games certainly support GPUs and multiple cores and multiplayer
15:16<Elukka>i bet it's easier to do in a purely single player game though
15:16<+michi_cc>Other games have a ridiculously small game state compared to OpenTTD.
15:16<@Rubidium>Elukka: name me one simulation game like OpenTTD that does
15:16<Chris_Booth>Elukka: other games are developed by paid people and made by massive teams
15:17<Chris_Booth>closest thing I can think of is Age of Empiers 3 or AOE Online
15:17<Elukka>what counts as a simulation game?
15:17<Chris_Booth>but they are no where near as complex
15:17<Elukka>arma 2, flight sim?
15:18<@Rubidium>age of empires doesn't have much pathfinding IIRC
15:18<@Rubidium>flight sims are mostly drawing stuff
15:18<nat_as>>Not much pathfinding
15:18<+michi_cc>Chris_Booth: Does that have tree growth on the map?
15:18<nat_as>then again pathfinding algorithms in RTS tend to suck.
15:19<Elukka>almost every game supports GPUs and multiplayer
15:19<Elukka>many games do stuff with multiple cores too
15:19<TrueBrain>every game also supports CPUs
15:19<nat_as>Chris_Booth: don't you know how open source works?
15:19<TrueBrain>and singleplayer
15:19<TrueBrain>it is epic
15:19<@Rubidium>Elukka: we support GPU as well
15:19<nat_as>it's a constant battle between lazy developers and entitled users.
15:19<@Rubidium>just the GPUs don't support us much anymore, but palette animation is/was offloaded to the GPU when they supported it
15:19<Chris_Booth>nat_as: I do, and michi_cc I am sure I said that AOE is no where near as complex
15:19<Elukka>i think generally the way 2D games do it is they have it run on a 3D graphics engine
15:20<TrueBrain>Elukka: depends on which 2D game :) Not possible in a general statement ;)
15:20<TrueBrain>but there are many that do :)
15:20<@Rubidium>that makes me remember...
15:20<nat_as>well I like the idea of using GUPs to do other sorts of caluclations, like physics and pathfinding
15:20<Elukka>it's very rare these days that a game doesn't use GPUs for graphics, multiplayer or not
15:20<nat_as>even if they are specalized for other things, they have lots of firepower.
15:20<+michi_cc>Elukka: And almost no game uses for example GPU physics for game-play relevant things. The few games using it only do pure eye-candy with it.
15:20<Elukka>they often get used for physics too
15:21<@Rubidium>openttd with 32bpp-optimized blitter (no animations) ran at ~800 FPS with less CPU than with opengl at ~60 FPS
15:21<Elukka>i dunno about that, but nearly all of them use them for graphics
15:21<nat_as>in general I think physics and pathfinding are a better use of computer power than eye candy
15:21<+michi_cc>Duh, what do you think OpenTTD uses to display graphics?
15:21<Elukka>i thought it was all software rendering on the CPU
15:21<nat_as>games like DF are the best, ASKII art and Fluid mechanics!
15:22<nat_as>(yes this is after I complained about Simutrans' art)
15:22<+michi_cc>Bitmaps don't get rendered.
15:22<Elukka>point being the CPU draws the graphics, not the GPU
15:23<nat_as>hey, do oil rigs have heliports on them?
15:23<nat_as>like the way they have docks?
15:23<TrueBrain>what I do wonder; for years now I am reading stories about people saying how OpenTTD _should_ do things, yet none of those ever made a patch showing how it can be done :)
15:23<nat_as>oh cool
15:23<nat_as>that gives me silly ideas though
15:23<+michi_cc>You can make the GPU do the sprite blitting, but it is slower than what the CPU can achive.
15:23<nat_as>OIL RIG AIRSHIPS!
15:24<Elukka>surely it's helpful to have this big graphics-dedicated brick in your computer do it than having your cpu do it, though
15:24<nat_as>(would this even be profitable?)
15:24<Elukka>especially since said brick currently does nothing
15:24<TrueBrain>to me it always feels like how people say how politicians should run a coutnry, yet they never contribute in helpnig with that :)
15:24<nat_as>like I said
15:25<@Rubidium>Elukka: you read my comment about the opengl blitter (= GPU) being slower than the 32bpp-optimized blitter (=CPU)?
15:25<nat_as>free softwhere is a constant battle between lazy devs and entitled users.
15:25<TrueBrain>nat_as: I take offense to that
15:25<+michi_cc>Is it really helpful to let the GPU do something of the game runs slower as a result?
15:25<TrueBrain>the second time more than the first time
15:25<nat_as>users want shit for free, and devs work for free.
15:25<TrueBrain>it is silly to consider any of us lazy
15:25<TrueBrain>in fact, it is rude
15:25<TrueBrain>and it is unrelated to free software
15:25<TrueBrain>people always moan about Microsoft too
15:25<TrueBrain>yet you pay top dollars for it
15:26<TrueBrain>so I do not appreciate it that you call all of us devs
15:26<TrueBrain>it doesnt help, nor contribute
15:26<Elukka>rubidium: but surely it's not taking any cpu cycles away from an already overloaded cpu?
15:26<TrueBrain>(like moaning about how politicians run a country)
15:26<Elukka>when it's ran on the gpu
15:26<TrueBrain>+lazy, how did that word drop off :D
15:27*andythenorth like, writes some code and stuff
15:27<nat_as>in general though the people who want the most can't or wont do it themselves, and the people who can have less initiative to do so.
15:27<TrueBrain>yet everyone knows how to tell us how to do it
15:27<TrueBrain>it is just funny to me; and this is the story for years already
15:28<Elukka>i sometimes draw things, but i don't tell people who don't draw who criticize it to do it better themselves
15:28<TrueBrain>"you should have multicore support!!" - " how?" - "No, YOU SHOULD HAVE IT"
15:28<TrueBrain>it is like this buzz word, if you dont use it, you suck
15:28<andythenorth>is it actually desirable to randomise truck trailer graphics?
15:28<Elukka>i consider the criticism and then might follow it if it sounds good
15:28<andythenorth>would it be better if all trucks for cargo x had same trailer type
15:28<nat_as>I did some art for simutrans but don't have the time to re-sprite a whole game (won't), and I don't understand programing enough to add features to OTTD (can't)
15:28<nat_as>so I complain instead.
15:29<TrueBrain>Elukka: there is a huge difference between criticizing, or giving positive feedback, and moaning over and over that something is not being used :)
15:29<TrueBrain>nat_as: that, that is a fact; people love to complain :)
15:29<TrueBrain>it is easier I guess
15:29*andythenorth discovers the /ignore command
15:29<TrueBrain>andythenorth: you should ask Rubidium for a list :)
15:29<@Rubidium>Elukka: it actually does as for GL is needs to update the WHOLE visible state, whereas the software blitter only does a small piece
15:29<andythenorth>TrueBrain I don't think it will work, I'm probably on it :P
15:30<@Rubidium>i.e. the piece that needs changing
15:30<nat_as>Publicly announcing your use of the /ignore command is a bitch move but whatever.
15:30<TrueBrain>I think we should start a topic about: common suggested failures :)
15:30<Elukka>i don't know how specific implementations work, but sometimes it may be useful to look at how other games do things
15:31<@Rubidium>as a consequence it needs to determine the sprite order for the whole screen each and every drawing, which takes time. You can't offload that easily to the GPU because of the way perspective hacks are used
15:31<nat_as>Anyways, TTD is an 18 year old game. It was not meant for features like Multi-Core support, advanced cargo handling, or layered maps.
15:31<@Alberth>andythenorth: I just don't bother reading the backlog :p
15:31<@Rubidium>and here I'm "gathering" knowledge of the 3+ attempts of an OpenGL blitter for OpenTTD
15:31<TrueBrain>nat_as: unrelated :)
15:31<TrueBrain>but that was already said :)
15:31<nat_as>It does however have the advantage of an established art style and interface
15:31<TrueBrain>the TT is 18 years old, doesnt make OpenTTD 18 years old :)
15:31<@Rubidium>nat_as: yet it has IPv6 support
15:31<andythenorth>anybody care about truck trailers? not that I take requests, but I do listen to opinion
15:31<andythenorth>or ignore it :P
15:32<TrueBrain>nat_as: OpenTTD uses many modern techniques, I guess you would be surprised
15:32<+michi_cc>Microsoft made $6.624 billion profit last quarter; give me 0.06% of that and you can have a full time OpenTTD developer :p (The resulting amount is what reliable xkcd lists as amount to comfortably live off :)
15:32<@Rubidium>simutrans apparantly doesn't even offer that out-of-the-box in their binaries
15:33<nat_as>Simutrans on the other hand is a new game, it has the advantage of being a blank slate which is easy to add new things to. However it's art team is a million ideas about what the game should look like and it's interface was clearly made by programers not game designers.
15:33<@Rubidium>although I have to agree, my DOS binary does not support IPv6 either :(
15:33-!-theholyduck [] has joined #openttd
15:33<nat_as>Simutrans does not have multiplayer at all.
15:33<andythenorth>@calc 6.624 * 0.06
15:33<@DorpsGek>andythenorth: 0.39744
15:33<+michi_cc>andythenorth: You've missed two 0's
15:33<andythenorth>I missed 9 on the other end though
15:33<@Alberth>looks very comfortable :)
15:33<nat_as>although I don't care about multiplay as much as having a nice trainset where cargo goes places perfectly.
15:34<andythenorth>it's enough either way
15:34<+michi_cc>It's only about 4 million :)
15:34<nat_as>andythenorth: I care about tuck trailers
15:34<nat_as>andythenorth: are you talking about making trucks work like trains? because that would be cool
15:35<andythenorth>enough for at least one mac
15:35<andythenorth>you can work on the os x bugs
15:35<TrueBrain>some OSX bugs ... you need hardware for that more than software :)
15:36<TrueBrain>on that specific CPU with that specific OSX version, it doesnt work
15:36<andythenorth>but several macs
15:36<andythenorth>for 4 million you get at least 3
15:37<TrueBrain>I wonder if it is solvable in the software tbh; some issues are odd at best :)
15:37<TrueBrain>there is a reason OSX runs in 32bpp for years :P
15:37<TrueBrain>the 8bpp issues were odd .... to say the least :D
15:37<@Rubidium>TrueBrain: you mean the GPU acceleration not working? ;)
15:38<TrueBrain>it worked in some instances ... and not in some others :P
15:38<+glx><TrueBrain> it is like this buzz word, if you dont use it, you suck <-- we use it, so it's ok ;)
15:38*andythenorth needs to learn about random_switch
15:38*andythenorth ventures into CETS
15:39<TrueBrain>andythenorth: take with you this torch and diamand pickaxe
15:39<@Rubidium>also... on windows we use irectx. That means that the graphics are offloaded to the GPU, right?
15:39<andythenorth>go north
15:39<andythenorth>there is a CETS here
15:39<TrueBrain>do we use DX?
15:39<TrueBrain>thought we used GDI :)
15:39<@Rubidium>TrueBrain: why else would we need directx sdk headers? ;)
15:40<+glx>a very old sdk header ;)
15:40<@Rubidium>yes, so it works on lots of versions of Windows
15:40<TrueBrain>Rubidium: dsound? :)
15:40<+glx>midi is deprecated anyway
15:41<TrueBrain>I hate midi :P
15:41<TrueBrain>(OpenDUNE issues, arghhhh)
15:41*andythenorth fails to understand random_switch
15:41<nat_as>what are we talking about now?
15:41<@Rubidium>also... GDI is hardware accelerated in Windows 7
15:41<TrueBrain>Rubidium: that it is :)
15:41<+glx>TrueBrain: opendune issues are not because midi but because timers ;)
15:41<TrueBrain>Areo or what is the name :P
15:41<TrueBrain>glx: and ALSA :'(
15:42<+glx>no alsa on windows but still random freezes
15:42<TrueBrain>Rubidium: it blits a 2D frame on a 3D object, a bit what Elukka meant 2D games do :P
15:42<andythenorth>Eddi|zuHause: why do so many of your random_switches return results for 1 twice?
15:42<+glx>but I agree it's worse with ALSA
15:42<@Rubidium>so he should just get a newer version of Windows and he magically gets hardware acceleration for drawing stuff
15:42<TrueBrain>the abuse of terms and their meaning
15:43<TrueBrain>reminds me of the Windows commercial for .. Windows ME I think?
15:43<TrueBrain>or was it Intel with their Dual core?
15:43<TrueBrain>well, the commercial was: "now with 2 cores, you can browse the internet AND check your email AT THE SAME TIME"
15:43<TrueBrain>still no clue how you could do that
15:43<@Rubidium>TrueBrain: webmail
15:43<TrueBrain>I tried typing with 2 hands on 2 keyboards, but I kinda fail processing that information
15:43<+glx>Windows ME or how to use the worst part of win9x and win2000 ;)
15:43<andythenorth>email-> speech
15:44<TrueBrain>but besides that; their claim was that before multicores you didn't have threading
15:44*andythenorth scratches head at random_switches
15:44<andythenorth>I never understood random in nfo either
15:44<andythenorth>where's the fricking range? :P
15:44<andythenorth>it's just magic
15:44<andythenorth>bit magic
15:45<TrueBrain>I guess commercials like that make people think multicore support is the mekka for performance related issues :)
15:45<+glx>andythenorth: it's probably just an random 32bit number
15:45<andythenorth>depends on the feature:
15:45<andythenorth>some are 8bit
15:46<+glx>and you define the range yourself using shifts and mask
15:46*andythenorth has brain ache
15:46<TrueBrain>try mine
15:47<andythenorth>can you paste it somewhere?
15:47<nat_as>I like how everyone tells you to buy more ram, but the one time I did, my computer was still slow.
15:47<nat_as>because it had a shitty CUP
15:47<nat_as>(it was a netbook)
15:47<andythenorth>so the value is the probability. ok
15:47<TrueBrain>didnt know cup-size mattered for computers; I know it does for females :D
15:48<andythenorth>with 8 bits, how much range do I get?
15:48<andythenorth>random range^
15:48<@Rubidium>andythenorth: what do you think yourself?
15:48<nat_as>CPU stupid fingers disobeying me.
15:48<andythenorth>I remember they had to be powers of two or something unexpected
15:49<+glx>just try to see how big a 8bit value can be
15:49<nat_as>Two cores one CPU
15:49<andythenorth>@calc 2^8
15:49<@DorpsGek>andythenorth: Error: Something in there wasn't a valid number.
15:49<+glx>@calc 2**8
15:49<@DorpsGek>glx: 256
15:49<@Rubidium>I got a quad core + 4GB at work and it's still dead slow
15:49<@Rubidium>it just got a ginormously slow disk
15:50<nat_as>everyone ignores my joke
15:50<@Rubidium>be happy it's your joke
15:50<@Alberth>Rubidium: you need (much) more RAM :p
15:51<andythenorth>nml docs imply that 8 bits = probability range 11
15:51<nat_as>4gb is enough for almost everything that's not like graphics work.
15:51<@Rubidium>Alberth: doesn't help much, it's still slow at boot and everything I start for the first time
15:51<TrueBrain>pff, we need more RAM in the server .. ffs :P
15:51<TrueBrain>Rubidium: ever tried SSD? It seriously is awesome :D
15:51<TrueBrain>I even boot Windows in 8 seconds
15:51<nat_as>yeah SSDs are what we need.
15:51<@Alberth>Rubidium: why would you even want to turn off your system???
15:52<+michi_cc>andythenorth: No, the doc page says that you define a probability range and nml will figure out how many of the random bits it has to use for it.
15:52<@Rubidium>TrueBrain: suggested it, but $boss doesn't "bite"
15:52<nat_as>the biggest bottleneck right now is HD speed not memory
15:52<nat_as>memory was the issue in the 2000s because of XP and vista
15:52<TrueBrain>nat_as: lol; such a general statement is false by default
15:52<nat_as>it's true for most
15:52<TrueBrain>Rubidium: SSDs are relative cheap, now WDs factory is offline :P
15:52<nat_as>it's true for most "why is my computer so slow" questions.
15:52<@Rubidium>Alberth: because I take it home so I can do some troubleshooting if that needs to be done at home instead of rushing to work ;)
15:52<+michi_cc>andythenorth: And it uses the "dependent" and "independent" statements to figure out if some bits may be used for more than one random_switch.
15:53<nat_as>in the 2000s it was usually XP and vista hogging ram
15:53<andythenorth>michi_cc: I am blind to the section on range :o
15:53<@Yexo>andythenorth: why do you expect a range?
15:53<@Yexo>there is no range in a random_switch
15:53<nat_as>but IIRC 7 uses as much as XP did, but the average computer has more than 4x as much ram by default as it did in the 2000s
15:53<@Rubidium>Alberth: and the ram would "only" help if it's far into the three digits of GBs
15:54<@Yexo>just a list of "probability: result;" pairs
15:54<+michi_cc>6 + 3 + 2 == 11, there's your range.
15:54<TrueBrain>Rubidium: 1024GB :D:D
15:54<andythenorth>so for 8 bit, range is 11?
15:54<@Alberth>Rubidium: can't use the power cable they so conveniently put overhead of where you travel? bummer
15:54<TrueBrain>Alberth: lolz :D
15:54<+michi_cc>No, the range is 11 because the author of the example used 6, 3 and 2.
15:54<@Yexo>andythenorth: again, what do you mean with range?
15:55<andythenorth>I got it now
15:55<@Yexo>the maximum sum of probabilities is 2^(num_bits)
15:55<@Yexo>so 256 if you have 8 bits
15:55<@Rubidium>Alberth: if I leave it on my backpack gets too hot
15:55<@Yexo>if you use less nml will scale your given probabilities to the closest higher factor of 2
15:55<+michi_cc>11 would be rounded up to the next power of two, which is 16 for which you need 4 bits.
15:55<@Yexo>so the 6/11 chance in the example will be scaled to x/16
15:55<andythenorth>the so probabilities are like industry probability property
15:56<andythenorth>they're relative
15:56<andythenorth>so eddi's 1 and 1 are 50:50
15:56<@Yexo>if you use a random_switch in anything other than for graphics output (ie in a callback), the triggers will most likely not work
15:56<andythenorth>that's ok - it's graphics
15:57<Hirundo>you'll need a random_trigger cb for that, but the process is very convoluted and ill-documented (even more in nfo)
15:57*andythenorth grew up doing "random_quiz_question = list[math.floor(list.len() * math.random()])"
15:57<andythenorth>so /me is used to thinking about ranges :)
15:58<@Rubidium>I hope math.random never returns 1 ;)
15:58<TrueBrain>or never 0 :P
15:58<andythenorth>I guess flash guards against that :P
15:58<andythenorth>but I wouldn't put money on it
15:59<@Yexo>it's usually designed to never return 1
15:59<@Rubidium>andythenorth: but wouldn't random_quiz_question = random.choice(list) be better?
16:00<andythenorth>it would if flash came with a python interpreter
16:00<TrueBrain>Yexo: only usually? :D
16:01<TrueBrain>aren't they considered broken if they do? :D
16:01<andythenorth>someone actually made a python -> actionscript compiler a few years ago
16:01<andythenorth>it's kind of helpful to do array.pop() as well when writing quizes :P
16:01<@Yexo>making statements like that too general is dangerous. someone is bound to have deisnged a random() function that returns values between 0 and <2 or something like that :p
16:02<TrueBrain>Yexo: hehehe :D Fair point :)
16:02<andythenorth>the nml docs are mostly awesome, but the random page bamboozled me
16:02<TrueBrain>I once had one that did not return 0, but did return 1; gives very .. unusual results
16:02<andythenorth>I could try and 'improve' the page
16:02<TrueBrain>easy solution of course was doing 1 - random()
16:02<@Yexo>was about to say that ^^
16:02<andythenorth>but probably not wise as I have yet to write a random_switch that works
16:02<@Yexo>but quite unexpected indeed
16:02<TrueBrain>takes a few crashes
16:03<@Yexo>andythenorth: I'd say the page is fine as technical spec, but it could do with a tutorial with a more in-depth explenation
16:04-!-Jupix2 [] has quit [Ping timeout: 480 seconds]
16:04-!-Mucht [] has joined #openttd
16:05<andythenorth>it wouldn't take much
16:06<andythenorth>just a clarification of how 'probability' is used in this context
16:06<andythenorth>"probabilities are relative" might be enough of a cluestick
16:07<andythenorth>with maybe an example of how to do a 50:50 and another example
16:08<@Yexo>why does that need clarification? What else than releative can the probabilities be?
16:16-!-andythenorth is now known as Guest1651
16:16-!-andythenorth [] has joined #openttd
16:16<andythenorth>grr - stupid wifi
16:16<andythenorth>Yexo: in retrospect, yes it should have been obvious probabilities are relative.
16:16-!-Guest1651 [] has quit [Read error: Connection reset by peer]
16:16<andythenorth>probability confuses a lot of people, me included though
16:21<zombi>can you tell buses to wait until theyre full before they set off?
16:22<@Yexo>zombi: use full load orders
16:22<zombi>just wondering how i can make decent money using buses
16:22<andythenorth>if a tuple only has one item (string), a python iterator will iterate over the string instead
16:22<zombi>they always seem ok
16:22<andythenorth>that's unwanted in this case :O
16:22<zombi>for a while.. and then the number of passengers plumets
16:22<@Alberth>andythenorth: ("abc") is not a tuple, ("abc",) is
16:23<andythenorth>that was my solution, glad it's valid
16:23<@Alberth>the former is just an expression in parentheses :p
16:23<andythenorth>so the , is significant
16:23<andythenorth>does same apply to lists?
16:24<andythenorth>this is only a tuple because I never intend to write to it. Does that gain anything?
16:24<andythenorth>it could also be a set
16:24<@Alberth>andythenorth: [..] cannot be confused for parenthesized expressions :)
16:24<andythenorth>items should be unique
16:24<andythenorth>I don't use tuples much; have never used a set before
16:25<@Alberth>python 3 has nicer syntax iirc
16:26<Hirundo>set is basically a dictonary without values, i.e. an unordered set of keys only
16:26-!-Mucht [] has quit [Remote host closed the connection]
16:26<andythenorth>I don't gain much from sets
16:27<andythenorth>duplicate entries in this case are non-showstopping
16:27<@Alberth>you gain uniqueness
16:27<andythenorth>will nml care if a random_switch has the same return value more than once?
16:27<@Alberth>and lose order :)
16:28<andythenorth>potato / potato in this case I think ;)
16:28<@Alberth>andythenorth: I'd doubt it
16:28<Hirundo>^^ I recall more than 1 NML bug wrt lost order
16:28<@Yexo>andythenorth: no, nml will not care
16:28<andythenorth>actually, an item in the list more than once is probably a convenient hack on probabilities
16:28<andythenorth>as the code generator makes all of them 1
16:28<@Yexo>if you do "1: return a; 1: return a; 1: return b;" the value a will be returned twice as often as b
16:28<andythenorth>that's possibly useful
16:28<andythenorth>thanks all
16:29<andythenorth>this is fun btw
16:29<@Yexo>it's the same as "2: return a; 1: return b;"
16:29<andythenorth>someone else should code a set this way
16:29<@Yexo>there might be differences when the sum of probabilities is not a power of 2
16:29<andythenorth>I believe BROS has lots of sprites and little progress :P
16:30<@Yexo>theyre too disorganised
16:30*andythenorth might convert some other sets to this method
16:30<@Alberth>I am somewhat tempted to make a long vehicle set (that is, normal vehicles with a long model life time)
16:31<andythenorth>reusing base set graphics?
16:31<@Alberth>probably, as the best I can draw are cube-ish vehicles :p
16:31<@Yexo>Alberth: perhaps that could be an option for opengfx+trains / opengfx+rv?
16:32<@Alberth>would the authors fall for such a feature request? :p
16:32<@Alberth>Mostly, I consider it an experiment to see how that works out
16:32<@Yexo>perhaps, I'm not one of them :p
16:33<andythenorth>my cunning plan has a flaw
16:33<andythenorth>I have 1 zillion unreferenced switches
16:33<andythenorth>can I suppress that warning ?
16:33<andythenorth>locally to just part of code?
16:34<@Alberth>reference them? :)
16:36<andythenorth>so for some cargos, trucks now show body / trailer type at random from a list
16:36<andythenorth>what should the re-random trigger be?
16:37<andythenorth>depot visit?
16:37<andythenorth>currently it's never
16:37-!-theholyduck [] has quit [Read error: Connection reset by peer]
16:37*andythenorth is not sure this is wise anyway
16:37<andythenorth>maybe a parameter should be offered
16:38-!-theholyduck [] has joined #openttd
16:38-!-LordAro [] has joined #openttd
16:38<andythenorth>maybe it's best used for small variations not large ones
16:38<LordAro>evening peoples
16:38<andythenorth>like 'large machinery load' or 'small machinery load'
16:39<andythenorth>rather than 'box truck' or 'flat bed'
16:39<LordAro>@fs 5047
16:39<LordAro>^ DorpsGek spaming :)
16:45<@Alberth>the number of lines by one 'LordAro' is larger :p
16:45<@Alberth>hi :)
16:45<LordAro>hi :)
16:46-!-Chris_Booth [] has quit [Ping timeout: 480 seconds]
16:46<LordAro>not sure i understand the previous comment though - a reference to the fact that i wrote most of the patch myself this time?
16:46<andythenorth>a reference to DorpsGek being quiet relative to certain others :)
16:47<andythenorth>is a solar flare expected tonight? It was a good day's work, I would be sad to lose it :)
16:47<+michi_cc>LordAro: You should move as much of TextfileWindow as possible into the .cpp.
16:47<LordAro>my comment was more "^ using DorpsGek to spam" but yes, i understand noaw :)
16:48<Hirundo>andythenorth: `Do you want me to hg clone the bandit repo as a backup?
16:48<andythenorth>LordAro: did I mention: readme in game \o/
16:48<andythenorth>Hirundo: is your backup EMP shielded?
16:48*andythenorth is paranoid
16:48<zombi>what affects the rating of a bus station?
16:49<andythenorth>keeping a few hundred lines of python is obviously my main concern when faced with the breakdown of the electrical grid and most electronic devices :P
16:49<@Alberth>zombi: look for 'game mechanics' at the wiki
16:49<Hirundo>then print it (you know, with paper and ink)
16:49<andythenorth>Hirundo: that would be kind :)
16:49<LordAro>andythenorth: naturally, i am just as concerned about my patch :)
16:49<andythenorth>you can skip the printing step
16:50<Rhamphoryncus>ink fades, paper breaks down. Use engraved aluminium plates.
16:50<Hirundo>andythenorth: and obviously, my 1'' thick laptop is about as effective as a sheet of paper against a strong EMP
16:50<andythenorth>put it in a foil hat, should be ok
16:51<Hirundo>ever heard of 'usability'?
16:51*andythenorth has occasional irrational paranoias
16:51<andythenorth>last year it was a celestial EMP
16:51<andythenorth>this year...who knows
16:51<Hirundo>laptops with tin foil around them tend to be not that useful
16:52<Hirundo>heads with tin foil around them neither, FWIW
16:52<andythenorth>put the foil around the building
16:52<andythenorth>you need to do something with earth too I think
16:52<@Alberth>Hirundo: as storage device against solar flames they may work quite well :p
16:52<andythenorth>Hirundo: more interesting would be whether BANDIT builds for you :)
16:53<andythenorth>it has one dep
16:53<Hirundo>andythenorth: that'd require starting my VM, which means ... work :-(
16:53<andythenorth>other than the usual nml stuff
16:53<Hirundo>which is?
16:53<andythenorth>but if you're busy - don't worry
16:55<andythenorth>easy_install Chameleon
16:55<andythenorth>but don't worry
16:56<@Alberth>good night
16:56<LordAro>night Alberth
16:57-!-Alberth [] has left #openttd []
16:57<andythenorth>Yexo: wrt random_switch, it's my eyes that need upgrading, not the page
16:57<andythenorth>it does explain relative probability and sum
16:57<andythenorth>bye Alberth
16:58<LordAro>too late ;)
17:00<Hirundo>andythenorth: Compilation seems to work, i won't test but it produces a .grf
17:01<andythenorth>easy_install lives up to its name today :)
17:01<andythenorth>Hirundo: do you know what python version you have?
17:01<Hirundo>actually I installed via debian first before reading your comment, but that didn't work
17:01<Hirundo>uninstalling and reinstalling via easy_install did
17:02<andythenorth>k thanks a lot
17:05-!-frosch123 [] has quit [Remote host closed the connection]
17:07*andythenorth too
17:07-!-andythenorth [] has left #openttd []
17:08-!-nat_as [] has quit [Quit: ajax IRC Client]
17:09-!-tokai [] has joined #openttd
17:09-!-mode/#openttd [+v tokai] by ChanServ
17:10<LordAro>tellytubby byebye..
17:10<LordAro>(actually, just don't ask)
17:10<LordAro>night all
17:10<LordAro>or those left anyway
17:12-!-LordAro [] has quit [Quit: "Time is an illusion. Lunchtime doubly so."]
17:16-!-Biolunar [] has quit [Quit: All your IRC are belong to us]
17:25-!-theholyduck [] has quit [Read error: Connection reset by peer]
17:25-!-theholyduck [] has joined #openttd
17:33-!-Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
17:40-!-Chris_Booth [] has joined #openttd
17:41-!-MJP [] has quit [Ping timeout: 480 seconds]
17:44-!-TGYoshi [~TGYoshi@] has quit [Quit: Popidopidopido]
17:47-!-mkv` [] has quit [Ping timeout: 480 seconds]
17:52-!-cmircea [~cmircea@] has quit [Read error: Connection reset by peer]
17:55-!-FLHerne [] has left #openttd []
17:57-!-DabuYu [DabuYu@] has joined #openttd
18:00-!-JVassie [~James@] has quit [Ping timeout: 480 seconds]
18:03<welshdragon>it's so hard to kill established companies in OpenTTD
18:04-!-Phoenix_the_II [] has quit [Read error: Connection reset by peer]
18:04<@Rubidium>resetcompany <id>
18:09-!-peteris [~peteris@] has quit [Quit: Ex-Chat]
18:16-!-sla_ro|vista [slaco@] has quit [Quit:]
18:18-!-Chris_Booth [] has quit [Quit: ChatZilla 0.9.88 [Firefox 11.0/20120201153158]]
18:22-!-guru3_ [] has quit [Ping timeout: 480 seconds]
18:31<welshdragon>no no
18:31<welshdragon>i want to merge companies
18:35<zombi>how do you deliver wood from a sawmill to houses?
18:35<@planetmaker>you don't
18:35<zombi>the supply chain thing says you do
18:35<@planetmaker>you deliver goods from saw mill to houses
18:35-!-guru3 [] has joined #openttd
18:36<zombi>ok then goods..
18:36<zombi>but how do i link up the sawmill to deliver the goods?
18:37<@planetmaker>some houses accept goods
18:38<@planetmaker>check the station whether it accepts goods
18:38<@planetmaker>small villages might not have sufficient houses for that
18:38<zombi>if i use the question mark thing on the houses...
18:39<zombi>it says 3/8 goods
18:39<@planetmaker>yes. And a station needs a total of >= 8/8 over all houses in its influence area
18:39<@planetmaker>thus 3 of those houses or so
18:39<@planetmaker>with less acceptance, it doesn't accept goods
18:42<zombi>so what building do you need to put down to deliver the goods to the homes?
18:51<Rhamphoryncus>Oh. Nice. Openttd blew up because I used a long hg branch name.
18:51<@planetmaker>the versio nstring is limited to... 18(?) characters
18:52<@planetmaker>anyway, good night
18:53<Rhamphoryncus>But is that something important, like part of the network protocol?
18:58<Rhamphoryncus>It's 15 characters, including a \0. The first 10 are taken up by the hg revision number, then I had a dash, then I get 3 more
19:02<Rhamphoryncus>Anybody have a solution to that? It's rather problematic to me
19:09<+glx>Rhamphoryncus: 15 chars + hXXXXXXXX
19:09<Rhamphoryncus>no, it blew up at me. It's just 15 chars
19:09-!-DOUK [] has quit [Ping timeout: 480 seconds]
19:09<Rhamphoryncus>I'm gonna hack the makefile to use RHA as the branch name for all my stuff
19:09<Rhamphoryncus>anyway, afk
19:10<+glx>utf8 chars ?
19:10<Rhamphoryncus>make test is what failed btw. hg repository
19:20-!-Brianetta [] has quit [Quit: Tschüß]
19:23-!-valhallasw [~valhallas@] has quit [Ping timeout: 480 seconds]
19:28<@Terkhen>good night
19:31-!-zombi [] has quit [Quit: Leaving]
19:35-!-Progman [] has quit [Remote host closed the connection]
19:48-!-Elukka [] has quit []
19:51-!-supermop [] has joined #openttd
19:52<supermop>what's with all of the hoops to jump through?
20:03<+michi_cc>Spam attack earlier today, maybe we can try without R again.
20:03-!-mode/#openttd [+o michi_cc] by DorpsGek
20:04<supermop>what is the monorail acceleration model?
20:04<@michi_cc>@mode -R
20:04-!-mode/#openttd [-R] by DorpsGek
20:05<supermop>is it meant to mimic rubber tires on concrete or something?
20:06<@michi_cc>OpenTTD has no monorail acceleration model.
20:06-!-mode/#openttd [-o michi_cc] by DorpsGek
20:06<supermop>can one specify one?
20:07<supermop>or do monorails behave the same as regular trains?
20:07<+michi_cc>You can't.
20:11<supermop>so realistic acceleration will not affect a monorail
20:15<+glx>michi_cc: no need to op yourself if you use the bot to change the mode
20:15<+michi_cc>Precaution. Who knows what's going to happen :)
20:17-!-pugi [] has quit [Ping timeout: 480 seconds]
20:27-!-KouDy [~KouDy@] has joined #openttd
20:28<supermop>is the full zoom twice as big, or 4 times as big, as the old full zoom?
20:43<supermop>is planet maker here?
20:43<supermop>oops, planetmaker sorry
20:50<__ln__>afaik planetmaker belongs to the minority that sleeps at night
20:53<supermop>i see
21:27-!-pjpe [] has joined #openttd
21:32-!-KritiK [] has quit [Quit: Leaving]
22:24-!-glx [glx@2a01:e35:2f59:c7c0:f11d:24d1:b2a5:c342] has quit [Quit: bye]
22:48-!-Rhamphoryncus [] has quit [Remote host closed the connection]
22:49-!-Rhamphoryncus [] has joined #openttd
22:59-!-Rhamphoryncus [] has quit [Quit: Rhamphoryncus]
23:28-!-perk11 [~perk11@] has joined #openttd
23:41-!-supermop [] has left #openttd []
23:59-!-Eddi|zuHause2 [] has joined #openttd
---Logclosed Mon Feb 06 00:00:23 2012