Back to Home / #openttd / 2007 / 07 / Prev Day | Next Day
#openttd IRC Logs for 2007-07-14

---Logopened Sat Jul 14 00:00:13 2007
00:30|-|Netsplit <-> quits: SpComb, eekee, TheMask96, @peter1138, Born_Acorn, caladan, Strid, ln-, egladil, neli, (+35 more, use /NETSPLIT to show all of them)
00:31|-|Netsplit over, joins: raaq, Biff, +michi_cc
00:32|-|Netsplit over, joins: alex__, Tino|Home, Digitalfox_Notebook, Eddi|zuHause2, NW|Aerandir, @DorpsGek, Caemyr, @orudge, Strid, colle
00:32|-|mode/#openttd [+v DorpsGek] by ChanServ
00:32|-|Netsplit over, joins: egladil, mikk36, Rubidium, flex_, eekee, @TrueBrain, _Mist_, caladan, SpComb
00:32|-|mode/#openttd [+v orudge] by ChanServ
00:32|-|Netsplit over, joins: XeryusTC, Born_Acorn, neli, TinoDidriksen, Noldo, nfc, waxman_, KUDr, ln-, Sionide (+4 more)
00:32|-|Netsplit over, joins: dfox, tokai|ni, guru3, SpBot, welterde, DJ_Mirage, blathijs, @peter1138, valhallasw`dour
00:33|-|egladil [] has quit [Ping timeout: 480 seconds]
00:35|-|egladil [] has joined #openttd
00:52<Smoovious>orudge... ping!
00:57|-|Maarten [] has quit [Ping timeout: 480 seconds]
00:57|-|Maarten [] has joined #openttd
01:05|-|Frostregen [] has joined #openttd
01:10|-|Frostregen__ [] has quit [Ping timeout: 480 seconds]
01:17|-|DaleStan_ [] has joined #openttd
01:22|-|DaleStan [] has quit [Ping timeout: 480 seconds]
01:22|-|Red [] has quit [Read error: Connection reset by peer]
01:55|-|Gekko [] has quit [Remote host closed the connection]
01:56|-|Gekko [] has joined #openttd
01:58|-|Tino|Home changed nick to TinoM
02:06|-|Gekko [] has quit [Remote host closed the connection]
02:11|-|Peakki [] has joined #openttd
02:12|-|Gekko [] has joined #openttd
02:13|-|Gekko [] has quit [Remote host closed the connection]
02:15|-|HMage [] has quit [Read error: Connection reset by peer]
02:17|-|Gekko [] has joined #openttd
02:18|-|Gekko [] has quit [Remote host closed the connection]
02:18|-|HMage [] has joined #openttd
02:19|-|HaloMaster [] has joined #openttd
02:21<HaloMaster>any one here use XFire?
02:24|-|lolman [] has quit [Read error: Operation timed out]
02:32|-|HMage [] has quit [Read error: Connection reset by peer]
02:32<Smoovious>is it OTTD-related?
02:34|-|HMage [] has joined #openttd
02:35<Noldo>it seems to be some kind of launch MP games and IM application
02:36|-|TinoM| [] has joined #openttd
02:38<Smoovious>so... that'd be a 'no'?
02:40<Noldo>depends on where you draw the line about being related
02:41<Smoovious>I draw it at having anything t o do with, or any interaction with, OTTD
02:42|-|elmex [] has joined #openttd
02:42|-|TinoM [] has quit [Ping timeout: 480 seconds]
02:43<HaloMaster>well, there a whole lotta people trying to get XFire to support OTTD
02:44<Noldo>aha, so it is currently not related but people are hoping that would change
02:44<Smoovious>do those people have anything to do with OTTD?
02:47<HaloMaster>most of them play it (not the XFire devs)
02:48|-|Gekko [] has joined #openttd
02:48<Smoovious>so they don't then
02:48|-|HaloMaster [] has quit [Quit: ChatZilla [Firefox]]
02:56|-|Gekko [] has quit [Quit: KVIrc 3.2.6 Anomalies]
02:58|-|Tlustoch [] has joined #openttd
02:59|-|iPandaMojo [] has joined #openttd
03:01|-|Gekko [] has joined #openttd
03:14|-|Progman [] has joined #openttd
03:19|-|ThePizzaKing [~jeff@] has quit [Quit: ThePizzaKing]
03:23|-|iPandaMojo [] has quit [Quit: iPandaMojo]
03:32|-|tokai|ni [] has quit [Ping timeout: 480 seconds]
03:34|-|tokai|ni [] has joined #openttd
03:37|-|Purno [] has joined #openttd
03:38|-|Chris82 [] has joined #openttd
03:38<Chris82>good morning :)
03:39<Chris82>what's the size in bytes of an uint16 ?
03:39<Chris82>thx :)
03:39<@TrueBrain>in general :p
03:40<Smoovious>in general?
03:40<Rubidium>well, a struct with one uint16 might be 4 or 8 bytes large
03:40<Smoovious>a uint16 is a 16-bit v alue... which is 2 bytes...
03:40<@TrueBrain>Smoovious: in general, but not by definition :)(
03:41<Smoovious>that's just silly
03:41<Chris82>SLE_CONDVAR(Economy, max_loan_unround_fract, SLE_UINT16, IN_CHRISIN_SINCE(74), SL_MAX_VERSION), < I was asking because of this line
03:41<Chris82>I need to add a CONDNULL for 70 to 73 to make trunk load with ChrisIN
03:41<@TrueBrain>2 bytes yes
03:42<Rubidium>Chris82: you don't need CONDNULL
03:43<Rubidium>SLE_CONDVAR(....., 70, LAST_OF_TRUNK), SLE_CONDVAR(......, IN_CI(74), SL_MAX_VERSION),
03:43<Chris82>ah ok :)
03:43<Chris82>let me try that, the CONDNULL "hack" didn't work anyway
03:43<Rubidium>and at some point in time LAST_OF_TRUNK + 1 == IN_CI(74) and then you can remove the ChrisIN saveload code
03:44<Rubidium>(and replace LAST_OF_TRUNK with SL_MAX_VERSION)
03:45|-||Jeroen| [] has joined #openttd
03:45<Smoovious>btw, Chris82... I made an attempt to make a patch to save passwords, but the load/save routine were just a mess to follow... maybe you'd have better luck since yer dealing with that more?
03:45<Smoovious>with th e daylength patch set high, it is a pretty big need
03:46<Chris82>btw the bug with the daypatch mentioned in the thread is not really a daypatch bug
03:47<Smoovious>not strictly no... but I can understand what he's getting at
03:47<Chris82>I reverted two files from ChrisIN to add peters autosignals and forgot to re-add the daypatch to the train file
03:47<Rubidium>Smoovious: where did you want to save the passwords?
03:47<Rubidium>in the savegame?
03:47<Chris82>ships, trucks and planes work fine, I only forgot the train code
03:47<Smoovious>Rubidium... yes
03:47<Rubidium>then you better remove the passwords all together
03:47|-|Deathmaker [] has joined #openttd
03:47<Smoovious>save the g ame... upgrade... reload t he game
03:47<Chris82>isn't it more save to store them locally in a file?
03:48<Smoovious>why remove thhem? being passwordless is thhe problem to begin with
03:48<Rubidium>Smoovious: save the game, send it to the client, load the game
03:48<Chris82>I mean what if I send someone my savegames, are those passwords encrypted?
03:48<Smoovious>why send to the client?
03:48<Rubidium>Smoovious: well, that happens in network play
03:49<Smoovious>so don't send them
03:49<Rubidium>then you must not save them in the savegame
03:49<Smoovious>no reason why passwords should be sent to someone else
03:49<Smoovious>you sign into a game, queried for the password, reply, server decides it is correct, and continues
03:49<Smoovious>but you should s ave them in t he savegame
03:50<Rubidium>Smoovious: saving something in a savegame means it is going to be sent over the network to all clients that are connecting
03:50<Smoovious>why can't you make a distinction if t hhe savegame i s being created for network play, or during a manual/autosave? makes no sense
03:50<Chris82>Rubidium: Is there something wrong with this? (LATEST_TRUNK = 70)
03:50<Smoovious>you don 't have to
03:52<Chris82>Smoovious: I think the problem is, when storing a password only per person the savegame will be broken for anybody else
03:52<Smoovious>frankly... t he c urrent practice of l osing everyones passwords when you need t o reload a saved game is i ntolerable
03:52<Smoovious>I'm thinking server-side
03:52<Smoovious>the clients of course, s hould only g et thhe passwords known to them saved
03:52<Smoovious>but the server needs to s ave all of them
03:52<Chris82>Maybe you can make some kind of back end to store savegames encrypted in an extra file
03:53<Smoovious>I really don't see what ythe i ssue i s supposed to b e
03:53<Chris82>so you don't have to deal with savegame issues
03:53<Rubidium>Chris82: it looks ok to me
03:53<Chris82>hmmm I get a chunk size error on loading trunk tho
03:53<Chris82>I'll see what happens when I make LATEST_TRUNK 71
03:54<Chris82>maybe 70 to 70 causes problems
03:54<CIA-1>OpenTTD: truelight * r10557 /branches/noai/ (18 files in 3 dirs): [NoAI] -Add: added for all lists 2 valuators: DistanceManhattanToTile and DistanceSquareToTile, to get the distance from object to some tile you specify
03:55<Rubidium>Smoovious: and what when the savegames that the server made are shown on a website (like Brianetta's servers do)?
03:56<Smoovious>what about it?
03:56<Smoovious>passwords shhouldn't be viewable to begin with
03:57<Rubidium>when you *save* them in the savegame they are "viewable" for everyone
03:57<Smoovious>these arguments just don't justify going passwordless
03:57<Rubidium>no, but they do not justify saving them in the savegame for a single moment
03:57<Smoovious>they're part of t he g ame...
03:58<Smoovious>encrypt them based on a key file the s erver has in his intall d irectory or s omething if you want t o
03:58<Rubidium>Smoovious: storing them in the savegame is like not having passwords at all
03:58<Chris82>well that's why I suggested storing them in a server side file
03:58<Chris82>the clients don't need that info stored
03:59<Smoovious>no, it isn't like it... we don't have passwords already... storing them would be preferable
03:59<@peter1138>what's so hard about storing the password hash?
03:59<Chris82>I think what he is saying is, that storing an unencrypted password in the savegame is like having no password
03:59<@peter1138>obviously you don't store the password itself...
03:59<Smoovious>I'm not talking about having it unencrypted
04:00<Chris82>I think it shouldn't be too difficult to crypt it somehow
04:00<Chris82>yeah :)
04:00<Smoovious>I'm t alkling about saving i t in the savegame... avoidi multiple files whenever possible
04:00<Rubidium>if only you had a proper cryptohash
04:00[~]Smoovious rolls his eyes.
04:00<Smoovious>this isn't a pentagon computer...
04:01<Smoovious>it i s a game... if people are being s tupid with their password choices that i s on them
04:01<Rubidium>no, but something that you break in like 2 minutes isn't good either
04:01<Smoovious>so d on't rot13 em
04:02<Chris82>is it really that difficult to store a password let's say MD5 encrypted?
04:02<Chris82>when I look at PHP code doing such things it doesn't look like too many lines
04:02<Smoovious>but the current practice of reloading a saved game, and s igning into everyone's companies, resetting t heir passwords, and emailing them back out to everyone, is unacceptable
04:02<Smoovious>Chris82... no, it isn't that difficult
04:03<Chris82>well then I wouldn't see a problem with storing it in the savegame
04:03<Smoovious>if someone else loads the game on a differentn install than it was created on, t hen ignore t he paswords ...
04:03<Chris82>I mean MD5 is pretty secure isn't it?
04:03<@peter1138>we've already got md5...
04:03<Rubidium>md5 isn't difficult, but you break that pretty quickly
04:03<Chris82>and making **** in the game rather than blank passwords would be preferable too maybe
04:03<Smoovious>what would be the point t ho
04:03<Chris82>errr not blank you know what I mean :p
04:04<Smoovious>I just wanna prevent people from signing into companies thhat aren't theirs, and screwing i t up...
04:05<Chris82>I like that idea :)
04:05<Smoovious>sometimes, ya need to reload a s avegame
04:05<Chris82>I often reload multiplayer games
04:05<Smoovious>same here
04:05<Smoovious>especially long-play ones
04:05|-|ThePizzaKing [] has joined #openttd
04:05<|Jeroen|>bring me some pizza
04:05<Chris82>well so reserving x bytes for md5 encrypted passwords in the savegame shouldn't be that big of an issue and when loading that game locally those x bytes are simply flushed or whatever
04:06<Rubidium>setting a "random" password when somebody begins a company isn't good; when that person disconnects he cannot rejoin his company because he "forgot" to set the password to something he knew
04:06|-|Ailure [Gamefreak@] has quit [Ping timeout: 480 seconds]
04:06<Smoovious>you could have t hte password entry window open upon starting a new company tho
04:06<Smoovious>won't stop s omeone from cancelling it, but i t'll remind people to set one
04:07<Rubidium>oh, and it seems one can "crack" a MD5ed password in under 3 minutes with a lookup table
04:07<Chris82>by default the password field should just be blank of course
04:07<Smoovious>of course
04:07<Chris82>are you serious =O
04:07<Chris82>why are all forums using MySQL using MD5 then?
04:07<Rubidium>and don't start with "then we add a seed" because that needs to be stored in the savegame too
04:08<Smoovious>Rubidium... but again... we're not talking any sensitive d ata here... the vast majority of people wouldn't be b othered to hack t he sav file t o locate t he paswords and do all that
04:08<Rubidium>Chris82: because there you do not know both the seed and the md5 of the password (except the people who have actual access to the DB)
04:08<Rubidium>Smoovious: the people who want to do damage do
04:08<Smoovious>any reason why t he seed can't b e t he r andomizer seed?
04:08<Chris82>but when someone would get access to the MySQL database he could hack all passwords?
04:08<Smoovious>Rubidium.,. b ut they're g onna d o damage anyways... and t hat'll o nly work, if they have a c opy of the host's sav file
04:09<Chris82>the problem is not that hacking the savegame is easy
04:09<Smoovious>for t he players, have t hhem blank, except perhaps, for their o wn c ompany's
04:09<Chris82>I think the problem is that some people might use passwords they use elsewhere too with OpenTTD
04:10<Rubidium>that too
04:10<Chris82>no need to tell me that this is stupid but I am sure some people do it
04:10<Smoovious>that brings me back to people having bad password practices tho... and that being their o wn lookout
04:10<Smoovious>it i s not enough justification to do away with the passwords
04:10<Chris82>I agree with that
04:10<Chris82>but still when finding a solution you need to consider that issue
04:11<Smoovious>onlly so much
04:11<Smoovious>perhaps we should just use a military-grade encryption then?
04:11<Rubidium>Smoovious: I agree with that, but any solution that makes the password easily retrievable in really short time (under a day) is not good
04:11<Chris82>I mean I know company bosses who use their initials and birthday for corporate e-mail addresses :D
04:11<Chris82>so don't think people would choose their OpenTTD passes wisely ;)
04:12<Smoovious>it is b etter t hhan no paswords, which don't need any effort at all wh atsoever
04:12<Smoovious>and a gain... t he server, which h as all of t hhem, would be t he o nly one saving all of t hem... the clients wouldn't need t o have them
04:12<Chris82>is there something more improved than MD5 maybe that can't be hacked so easily?
04:13<Rubidium>Smoovious: it's like leaving the engine running and the door open at the parking lot (what it is now) with closing the door of the car, but not locking it, and leaving the engine running
04:13<Rubidium>sha1 for example
04:13<Chris82>btw... where are the passwords stored now?
04:13<Chris82>I mean I can join a server give my company a password close the game come back and the pass is still there
04:13<Smoovious>Rubidium... exactly... and a practice I want t o stop
04:14<Smoovious>Chris82... now they're in memory... but they are in the player.password (don't know exact name)
04:14<SpComb>what we need is... DRM for openttd savegames!
04:14<Chris82>lol yeah right :p
04:14[~]Smoovious bitchslaps SpBot
04:14<Chris82>good for any non Windows user :D
04:14<Smoovious>er, SpComb
04:14<Chris82>or can *nix handle DRM protected files?
04:15<SpComb>embed a piece of copyrighted something in the samegave, and then slap anyone who decodes the savegame with the DMCA
04:15<Smoovious>40-bit rc4 maybe?
04:16<Chris82>so let me suggest something entirely different
04:16<Chris82>why not offer a number field from which people can choose a 6 numbered pass
04:16<Smoovious>orbital launchers for moving cargo?
04:16<Chris82>and these are stored sha1, md5 or whatever encrypted then
04:16<Chris82>this way we should force most people not to use their common passes
04:16<Smoovious>Chris82... no, don't like that... not so easy remembered
04:17<Smoovious>nothing wrong with common passes...
04:17<Rubidium>Smoovious: yeah, lets use RC4...
04:17<Smoovious>I usually re-use 3 d ifferent passwords, just for non-critical stuff... like OTTD
04:17<Rubidium>do you have *any* knowledge of encryption?
04:17<Chris82>never heard of rc4, where is it used commonly?
04:17<Smoovious>Rubidium... some... hey... I'm just t hrowing o ut i deas... it i s what the µT client uses
04:17<Rubidium>Chris82: it's like AES or DES but then weaker
04:18<Chris82>ah ok I know that from WLAN
04:18<SpComb>no, what we need is triple RC-4
04:18<Chris82>1024-bit NSA keys *jk*
04:19<Smoovious>just don't need to g o o verboard on th e encryption... don't wanna be like using a bank vault to secure m y gameboy
04:19|-|lolman [] has joined #openttd
04:19<Rubidium>*any* cipher is useless in this case
04:20<Smoovious>well, no passwords is even m ore useless...
04:20<Chris82>RC4 is reversable?
04:20<@peter1138>md5sum is adequate
04:20<Chris82>shouldn't MD5 be a lot more secure then
04:20<Rubidium>so: no RC4, no RSA, no AES, no DES, no 3DES, no bluefish
04:20[~]Smoovious nods agreement with peter1138
04:20<Rubidium>Chris82: yes, RC4 is reversable
04:20<Chris82>am I correct that MD5 isn't ?
04:20<SpComb>Chris82: MD5 and RC4 are two differnet things
04:21<Rubidium>peter1138: but... with md5 you've got the password in 3 minutes
04:21<Chris82>I see, I thought both are encryption algs
04:21<SpComb>one is a hash, the other is a cipher
04:21<Smoovious>Chris82... they're for different uses
04:22<Chris82>would it require more than just a savegame to md5 encrypt passwords like vBulletin or other common forums do it?
04:22<Smoovious>RC4 really isn't appropriate, but I just t hrew it out anyways
04:22<Chris82>i.e. two files to seperate hash and seed
04:22<@peter1138>3 minutes?
04:22<Smoovious>two files i s what I'd prefer t o avoid
04:22<Rubidium>Chris82: the point in forums is that you DO NOT have the seed *and* the md5 of the data (except the site's administrator)
04:23<Chris82>yeah but I thought even hacking the MySQL database would just give you useless crap and not passwords that can be recognized
04:23<SpComb>peter1138: the link I gave above should find most common md5 hashes in seconds
04:23<Smoovious>could keep a key file in ottd's home d irectory, that it refers to for encrypting passwords...
04:24<Smoovious>unique to each host, so a d ifferent host c an't view the passwords
04:24<SpComb>although, it seems to be broken
04:24<Chris82>like the files created when using SSH ?
04:24<SpComb>it was working a while ago when I last played with it
04:26<Chris82> < so what they say here is basically wrong? (first 2 posts)
04:27<Chris82>it's a one-way encryption (like md5).
04:27<Chris82>I always thought there is no way you can get md5 back no matter what info you've got
04:27<Chris82>you can read such stuff in many many places
04:27<Rubidium>Chris82: you can't (always) recover the original
04:28<Rubidium>*but* you can make a $something that yields the exact same return value of md5
04:28<@peter1138>you just need a big enough database :p
04:28<Rubidium>well, you rather do not know whether it is the original (it might be)
04:28<SpComb>Chris82: if two people hash 'foobar', they can compare their hashes and determine that both hashed something that hashes to the same thing that 'foobar' does
04:29<Chris82>I see, well that drastically lowers my security point of view on md5
04:29<SpComb>it's called the time/memory tradeoff, compile a gigantic list of plaintexts and their md5 hashes, and then start comparing them
04:29<SpComb>well, that's how hashes work
04:29<Rubidium>basically a hash can be simplified to "input value modulo (number of possibly return values)"
04:29<@peter1138>those databases only have 1-8 letter passwords, of course
04:30<SpComb>iirc there are also vulnerabilities in the md5 algorithm that lets you generate collisions and whatnot
04:30<Chris82>well but I am sure that maybe 2% of internet users use so called NSA save passwords
04:30<SpComb>so if you have some plaintext, you can craft a different plaintext that hashes to the same value
04:30<Chris82>i.e. multiple words, special characters, 20+ characters etc.
04:30<@peter1138>echo -n "this probably isn't in there" | md5sum
04:30<@peter1138>9340d0823923e03d30a6c68d030740ad -
04:30<@peter1138>"9340d0823923e03d30a6c68d030740ad - Not Found in Database."
04:30<SpComb>peter1138: it returns NFID for everything I tried, including 'foo' and 'foobar' and 'asdf'
04:31<SpComb>so I think it's broken at the moment
04:31<@peter1138>echo -n "hmm" | md5sum
04:31<@peter1138>a5175faf6dc24adc7eda4f9cfc721b47 -
04:31<@peter1138>"a5175faf6dc24adc7eda4f9cfc721b47 - hmm"
04:31|-|skidd13 [] has joined #openttd
04:32<Chris82>well but for hacking a password like hmm you don't need md5 "cracking" abilities :D
04:32<Chris82>that can be done with bruteforce in no time as well
04:32<SpComb>it helps
04:32<SpComb>depending on what you want to bruteforce, attacking the md5 hash can be a lot faster
04:32<@peter1138>i was showing that it does work
04:32<SpComb>esp. with TMTO
04:32<@peter1138>so i dunno what spcomb was doing :p
04:32|-|HMage [] has quit [Read error: Connection reset by peer]
04:32<Chris82>it definitely avoids blocking due to too many password retries :)
04:33<SpComb>hmm, it's not even responding now
04:33<Chris82>they blocked you :p
04:33<SpComb>a DNS error, no less
04:34<Chris82>well anyway I don't think that OpenTTD passes need online banking security standards
04:34<SpComb> it'S more likely that it crashed and burned
04:34<Smoovious>me neither
04:34<Chris82>so I wouldn't require more than not hackable within 1 day for such a patch
04:35<Chris82>I mean, you can even hack pentagon computers, so pretending such a patch would make the passes inside the savegame totally secure is pretty unrealistic anyway
04:35|-|thgergo [] has joined #openttd
04:35|-|HMage [] has joined #openttd
04:35[~]Smoovious nods.
04:36<Smoovious>there's a point where you're just going o verboard i n relation to what is being protected by it
04:36<Smoovious>I mean, hell... my money card i s protected o nly by a 4-digit number
04:36<Chris82>maybe you could do some welcome message for a server that says warning your password is stored in the savegame
04:36<Chris82>use something you don't use elsewhere blah blah
04:37<Chris82>I mean even the rcon passes are stored readable in the .cfg file so that should be enough for company passes
04:37<Smoovious>maybe remote fingerprint or retinal scanner support?
04:38<Chris82>eyescan at least
04:38<Smoovious>sorry, but the whole convo seemed to get out o f hand to me... to the point o f s illiness
04:39|-||Jeroen| [] has quit [Quit: oO]
04:39<Chris82>yeah just find the right mix between comfort and security and if it's not good the first time you can always improve stuff
04:40|-|SmatZ [] has joined #openttd
04:41<Chris82> SLE_CONDVAR(Economy, max_loan_unround_fract, SLE_UINT16, 70, LATEST_TRUNK),
04:41<Chris82>is this definitely 2 bytes?
04:43<Chris82>well I don't see why CONDNULL(2, 70, 73) when I am at 74 shouldn't work then
04:43<Chris82>SLE_CONDVAR(Economy, max_loan_unround_fract, SLE_UINT16, 70, LATEST_TRUNK),
04:43<Chris82> SLE_CONDVAR(Economy, max_loan_unround_fract, SLE_UINT16, IN_CHRISIN_SINCE(74), SL_MAX_VERSION),
04:43<Chris82>this doesn't work :(
04:44<Chris82>it loads all ChrisINs and trunk until 10540 but not the newer ones
04:44<Chris82>hmmm maybe I switch the order
04:44<Smoovious>well... I gotta crash...
04:44<Chris82>that shouldn't make a difference but who knows :D
04:44<Smoovious>good luckk. Chris82
04:50<skidd13>phpbb3 comes along nicely.
04:50|-|Ammller [] has joined #openttd
04:51<Chris82>is it better than vBulletin?
04:53<Chris82>at least it looks pretty nice :)
04:54<skidd13>I never used vBulletin for real. So I don't know.
04:54|-|Ammler [] has quit [Ping timeout: 480 seconds]
04:54<skidd13>I miss the icq, jabber, etc icons below the posts, but thats all.
04:54<Chris82>well the problems I had with phpBB 2.x was that it worked badly with 100+ MB downloads
04:55<Chris82>while vBulletin really plays nicely with such large attachments
04:55<skidd13>And I noticed another thing I cant watch diff's anymore with my browser :(
04:56<Chris82>for me they always opened as download
04:57<Chris82>only patch files were shown in the browser
04:57<Chris82>which is weird though because I specified text/plain as MIME Type for diff on my server
04:57<skidd13>no, all text files seem to be downloads now :(
04:58<skidd13>Or is there an option in FF to enable it again?
04:58<Chris82>I think you can open it with the default app in FF, but that wouldn't be the browser I guess
05:00<Eddi|zuHause2>somehow i find the idea of storing passwords in the savegame silly...
05:00<skidd13>What are these bots and crawlers for (pink users)? An why are they shown for noram users?
05:01<skidd13>noram -> normal
05:01<Eddi|zuHause2>save them in $(pwd)/.passwords or something...
05:01|-|lolman [] has quit [Remote host closed the connection]
05:01<Eddi|zuHause2>they have nothing to do in the savegame
05:04|-|lolman [] has joined #openttd
05:05<Chris82>were there any saveload changes recently except r10541 ?
05:06<Eddi|zuHause2>svn log <file that contain saveload code>
05:07|-|Belugas [] has joined #openttd
05:07|-|mode/#openttd [+o Belugas] by ChanServ
05:12|-|Osai^zZz [] has joined #openttd
05:18|-|Thomas[NL] [] has joined #openttd
05:26|-|Vikthor [] has joined #openttd
05:31|-|Osai^zZz [] has left #openttd []
05:46<Chris82>yay! once again all savegame issues solved with the IN :D
05:47<Chris82>time for new patches :D
05:53<Chris82>I think I'll make an additional tab in the patch settings where all ChrisIN patch options will be placed
05:53<Chris82>that should make it a lot easier to take a .cfg file from a trunk game and then only set the additional ChrisIN options
06:00|-|Ailure [Gamefreak@] has joined #openttd
06:03<Chris82>uhm, I just read this in another thread "No EXE unless you plan on uploading the *full* source. A diff is not sufficient."
06:03<Chris82>so I must upload the full ChrisIN source somewhere?
06:04<Chris82>I mean the source not in the diff is available on already
06:05|-|thgergo [] has quit []
06:07<Gekko>uplaod the sauce!
06:14<@peter1138>sounds like bollocks to me
06:17|-|Tlustoch [] has quit [Quit: Leaving]
06:19<Chris82>well a dev posted that on the forum :)
06:19<skidd13>I'm still fighting with my code (tile and RoadBit pointing to it). Can someone help me plese?
06:23<Vikthor>Chris82: AFAIK according to GPL you must supply the the source upon request, not automatically
06:24<Vikthor>Of course if he asks for it, you have to supply full source not only the diff
06:24<Chris82>oki :) well it was not in my thread
06:24<@peter1138>Chris82: iirc that was dalestan, who is not a(n ottd) dev
06:25<Chris82>I plan to make an SVN Server for the IN anyway
06:25<Chris82>but that won't be earlier than in 2 weeks, because I am too busy with my exams right now
06:27|-|Thomas[NL] [] has quit [Remote host closed the connection]
06:28<Chris82>what is better English? ...Patches that are added... Patches which are added?
06:31|-|lolman [] has quit [Remote host closed the connection]
06:32|-|lolman [] has joined #openttd
06:33|-|Gekko [] has quit [Quit: KVIrc 3.2.6 Anomalies]
06:34|-|ryu [] has joined #openttd
06:35|-|ryu [] has left #openttd []
06:35<Eddi|zuHause2>Chris82: if you intend to support this for a longer time, you might also try to claim a branch (and a nigtly compile time) like RichK did with the MiniIN
06:36<Eddi|zuHause2>also, diff + link to original ottd source would suffice as "full source"
06:37<Eddi|zuHause2>but given the context (tt-forums) you could state that accessing the ottd source is trivial
06:37|-|Thomas[NL] [] has joined #openttd
06:40|-|Wolf01 [] has joined #openttd
06:45|-|skidd13 [] has left #openttd []
06:49<Chris82>Eddi: I intend to support it as long as I am able to solve any savegame or code issues :)
06:52<@TrueBrain>Chris82: let me know if you need any web-related things, like a branch, compile-slots on the compile-farm, a webpage, ...
06:54<Chris82>sure thing :) we can talk about that when I'm done with my exams
06:59|-|Nigel [~nigel@] has joined #openttd
07:00<Chris82>{ WWT_TEXTBTN, RESIZE_NONE, 3, 97, 183, 28, 39, STR_CONFIG_PATCHES_AI, STR_NULL},
07:00<Chris82>can I find a description somewhere what alle these numbers mean?
07:01<Chris82>I think the last two are the upper and lower distance from top of the button
07:01<Eddi|zuHause2>in the header file where the widget type is declared?
07:01<@TrueBrain>looking at other entries mostly gives it away, but: color, left, right, top, bottom, string, hint
07:01<Chris82>ah ok I think I got it :)
07:02|-|Vikthor [] has quit [Quit: Leaving.]
07:02<Eddi|zuHause2>shouldn't colours have an enum?
07:05<Chris82>ok so I've edited static const Widget _patches_selection_widgets[] = {
07:05<@TrueBrain>I need a new TV, my TV doesn't make my XBox 360 games readable :p
07:05<Chris82>and static PatchPage _patches_page[] = {
07:06<Chris82>and made a static const char *_patches_chrisin[] = {
07:06<Chris82>what have I forgotten?
07:06<Chris82>because the button is not clickable
07:09<Chris82>ahh forgot to add a case in a switch in settings_gui
07:12<Chris82>can I add a string instead of a patch option here static const char *_patches_chrisin[] = { "STRING as Title", }
07:13|-|KritiK [] has joined #openttd
07:25|-|raaq [] has quit [Remote host closed the connection]
07:37|-|glx [] has joined #openttd
07:37|-|mode/#openttd [+v glx] by ChanServ
07:40|-|raaq [] has joined #openttd
07:45|-|ThePizzaKing [] has quit [Quit: ThePizzaKing]
07:45|-|KritiK [] has quit [Ping timeout: 480 seconds]
07:51|-|_Mist_ [] has left #openttd []
07:54<Chris82>hmmm what would be the easiest way to make building on a demolished tile the same price as building on a grass tile?
08:02|-|glx [] has quit [Quit: bye]
08:08|-|glx [] has joined #openttd
08:08|-|mode/#openttd [+v glx] by ChanServ
08:09|-|lolman [] has quit [Read error: Connection reset by peer]
08:12|-|lolman [] has joined #openttd
08:13|-|skidd13 [] has joined #openttd
08:14|-|Zr40 [] has joined #openttd
08:17<Eddi|zuHause2>Chris82: the clear cost of a clear tile is 0, so if you use MultiplyCost, that will not change, try an AddCost independent of the original cost
08:17|-|Osai^zZz [] has joined #openttd
08:18<Eddi|zuHause2>but i do not agree with the general idea, because if the tile is cleared it means you already payed the cost to clear before
08:20|-|Osai^zZz [] has left #openttd []
08:20<Chris82>yes but I want to prevent an exploit in the Town Construction Cost patch
08:20<Chris82>when you sell some land in the middle of a city it's sold
08:20<Chris82>buying the land again shouldn't be cheap just because there is still garbage (brown tile) there
08:20<Chris82>you don't own it anymore and have to pay the full price no matter if the tile is grass or cleared land
08:20<@peter1138>isn't that why the original patch did stuff with buy/sell land first?
08:21<Chris82>but the way the original patch handles this doesn't work for all cases
08:21<Chris82>you can still exploit the original patch by building rail on cleared land
08:22<Chris82>what I intended to do is that if the patch is enabled you should get an error message when building on cleared land
08:22<Chris82>the message should say something like "please wait until the garbage on this tile has been cleared"
08:24|-|Eddi|zuHause2 [] has quit [Read error: Connection reset by peer]
08:25|-|lolman [] has quit [Remote host closed the connection]
08:25<SmatZ>Chris82: can you just add a grass before the cost estimation/building, and the remove it?
08:25<Chris82>I've tried that but that's too complicated
08:26<Chris82>I just need to figure out in which function the cost is calculated and then add a condition that you get an error when the patch is enabled
08:27|-|lolman [] has joined #openttd
08:27<SmatZ>so any building on a cleared land - even for a city - will be blocked?
08:28<Chris82>I just figured that's a problem when generating a map
08:29<Chris82>MP_CLEAR is clear grassland right? What's cleared land then? CLEAR_GRASS or something like that?
08:29|-|Eddi|zuHause2 [] has joined #openttd
08:32<Chris82>actually CLEAR_GRASS and MP_CLEAR seems to be the same?!?
08:34<Eddi|zuHause2>buying/selling land might be an option, but then removing everything from the tile should turn it into owned land, not clear land
08:35<Chris82>so you mean if I remove a rail tile it should be owned land instead of clear land?!
08:36<Eddi|zuHause2>yes, just because you remove the rail does not mean you sell the land (realistically)
08:36<Eddi|zuHause2>also, if you use bulldozing tool on a house...
08:37<Eddi|zuHause2>or generally any kind of bulldozing tool
08:39<Chris82>but that would involve huge problems
08:39<Chris82>I mean if I sell a piece of rail close to a city center I get a lot of money already
08:39<Chris82>if the land is owned afterwards I can make even more money
08:40<Eddi|zuHause2>no, make it so removing the rail piece costs the same everywhere
08:40<Chris82>I found the solution I intended :D
08:40<Chris82>I added two lines to CmdLandscapeClear function
08:40<Chris82>if (IsClearGround(tile, CLEAR_GRASS) && GetClearDensity(tile) < 3)
08:40<Chris82> return CMD_ERROR;
08:41<Chris82>instead of CMD_ERROR I actually want a ShowErrorMessage(string... but that doesn't seem to work for CommandCost functions
08:41<Eddi|zuHause2>no, you have to create a new CommandCost with an error message
08:42<Eddi|zuHause2>it will show that error message later in another piece of code automatically
08:42|-|Gekko[PD1] [] has joined #openttd
08:43<Chris82>hmmm I can't demolish water with this line so I gotta add != MP_WATER or something like that
08:43<+glx>return CommandCost("message"); I think
08:43<@peter1138>"message"? :o
08:44<Chris82>I doubt such a return works, CommandCost is supposed to return numeric values as far as I understood it
08:44<Eddi|zuHause2>it must be a STRING_ID or something
08:44<Chris82>that's why it can't return a string
08:44<Eddi|zuHause2>CommandCost is a struct, to separate prices from errors
08:44<Eddi|zuHause2>it contains both
08:45<Gekko[PD1]>19:49:07 up 4 min, 2 users, load average: 0.02, 0.11, 0.06
08:45<Chris82>yeah but CommandCost uses only CMD_ERROR iirc and ShowErrorMessage is only used elsewhere
08:45|-|Gekko[PD1] changed nick to Gekko[PDA]
08:45<Eddi|zuHause2>Gekko[PDA]: beat that: 15:29:32 up 3 days, 10:48, 5 users, load average: 28.20, 24.55, 14.90 :p
08:46<@peter1138>commandcost returns a commandcost value, that's the point of it
08:46<@peter1138>that can be numeric, or an error string
08:46<Gekko[PDA]>it was at 4
08:46<Gekko[PDA]>i rebooted
08:46<Chris82>ic :)
08:46<Eddi|zuHause2>i mean the load ;)
08:47<Chris82>energy waster :p
08:47<Gekko[PDA]>i got my other pc to 400.
08:47<Eddi|zuHause2>no, i forgot to turn on additional swap before making a memory intensive operation :p
08:47<Gekko[PDA]>VM's on 700mhz
08:47<Gekko[PDA]>196mb ram
08:48<Gekko[PDA]>no swap
08:48<Eddi|zuHause2>i have 1GB ram
08:48<+glx>Chris82: CMD_ERROR = CommandCost((StringID)INVALID_STRING_ID)
08:49<@peter1138>due to constructors, you can actually just "return STR_FOO;" iirc
08:50|-|Tobin [] has quit [Quit: Leaving...]
08:51<Eddi|zuHause2>in any way, you will probably have to add the "message" to the language files, and use the StringID of that message
08:54<Chris82>yeah I added a string to the language file already :)
08:55<Chris82>errr why... ..\src\landscape.cpp(413) : error C2065: 'STR_WAIT_UNTIL_CONSTRUCTION' : undeclared identifier
08:55<@peter1138>^^ wtf is wrong with americans?
08:55<Chris82>it's defined in english.txt
08:56<+glx>and lang files had been recompiled?
08:56<@peter1138>landscape.cpp doesn't include table/strings.h in trunk
08:57<Chris82>ahhh :)
08:58|-|Sacro|Laptop [] has joined #openttd
09:01|-|lolman [] has quit [Remote host closed the connection]
09:02<Chris82> hmmmm
09:03<Chris82>what did I do wrong?
09:03|-|lolman [] has joined #openttd
09:06|-|Zr40 [] has quit [Quit: This computer has gone to sleep]
09:07|-|Sacro|Laptop [] has quit [Quit: Leaving]
09:15|-|BobingAbout [~BobingAbo@adsl-212-50-187-248.karoo.KCOM.COM] has joined #openttd
09:16|-|BobingAbout [~BobingAbo@adsl-212-50-187-248.karoo.KCOM.COM] has left #openttd []
09:16<Chris82>return _error_message = STR_WAIT_UNTIL_CONSTRUCTION; < works :D yay!
09:16<Chris82>only problem is that the error message is at the left bottom of the screen lol
09:18<Eddi|zuHause2>why _error_message?
09:19<Chris82>well because CMD_ERROR just returns error foo and no specific message
09:20|-|thgergo [] has joined #openttd
09:20<Chris82>the suggestions from above all didn't work and I also don't see CMD_ERROR used anywhere where a string is returned in source
09:20<Chris82>I just found an annoying thing anyway
09:20<+glx>what happens with return CommandCost(STR_WAIT_UNTIL_CONSTRUCTION); ?
09:21<Chris82>2>..\src\landscape.cpp(413) : error C2440: '<function-style-cast>' : cannot convert from 'StringIdEnum' to 'CommandCost'
09:21<Chris82>2> No constructor could take the source type, or constructor overload resolution was ambiguous
09:21<+glx>or return CommandCost((StringID)STR_WAIT_UNTIL_CONSTRUCTION);
09:21<Chris82>that compiles
09:21|-|Ammller changed nick to Ammler
09:23|-|Sacro|Laptop [] has joined #openttd
09:27|-|NukeBuster [] has joined #openttd
09:28|-|DaleStan_ changed nick to DaleStan
09:28<Chris82>hmmm is it normal that all default error messages are displayed in some corner of the screen instead the middle of the screen?
09:29<Sacro|Laptop>Chris82: yes, and it's a pain in the arse
09:29<Sacro|Laptop>especially when they appear in the bottom right during multiplayer when other people are talking
09:30<Chris82>yup that was what I just thought too
09:30<Chris82>&& type != MP_WATER && type != MP_HOUSE can I combine that somehow? that looks "ugly"
09:33<DaleStan>Not likely. And even if it's possible, you probably shouldn't.
09:35<Chris82>ok :)
09:41<Sacro|Laptop>hmmm, if i wanted to have a station with platform numbers, would i have to add some extra to the memory array?
09:46|-|skidd13 [] has left #openttd []
09:53|-|NukeBuster [] has quit [Ping timeout: 480 seconds]
09:54|-|NukeBuster [] has joined #openttd
09:56<CIA-1>OpenTTD: truelight * r10558 /branches/noai/src/squirrel_helper.hpp: [NoAI] -Fix: don't use free'd memory (tnx glx for tracing!!)
09:57|-|Ailure [Gamefreak@] has quit [Ping timeout: 480 seconds]
09:57|-|KritiK [] has joined #openttd
10:18<NukeBuster>2 trains just crashed.... in a closed signal system...
10:18<+glx>bridge/tunnel and depot?
10:19<NukeBuster>no, station and pre-signals...
10:22|-|Steve14 [] has joined #openttd
10:22<Eddi|zuHause2>autosave, reproduceable?
10:22|-|Sacro|Mobile [] has joined #openttd
10:24|-|Zr40 [] has joined #openttd
10:26<NukeBuster>hmm... i'll look for the autosave...
10:26<NukeBuster>i didn't touch the ignore signal button... i'm 100% certain of that
10:27<NukeBuster>it's reproduceble it happened again..
10:27<NukeBuster>the signal doesn't go red
10:29<NukeBuster>well, i got to eat first... i'll upload a save later.
10:29|-|Sacro|Laptop [] has quit [Ping timeout: 480 seconds]
10:30<Eddi|zuHause2>but it IS a tunnel...
10:31<NukeBuster>but there is a train in the tunnel waiting for the red light... that the other train in the crash
10:31<+glx>still related to tunnel/bridge and signals
10:32|-|Steve14 [] has quit [Remote host closed the connection]
10:33|-|Chicago_R_A [] has joined #openttd
10:33<NukeBuster>ok, didn't get that one...
10:40|-|lolman [] has quit [Read error: Connection reset by peer]
10:49|-|Peakki [] has quit [Remote host closed the connection]
10:50|-|lolman [] has joined #openttd
10:55|-|Markkisen [] has quit [Remote host closed the connection]
11:01|-|MUcht [] has joined #openttd
11:05|-|Mucht_ [] has quit [Ping timeout: 480 seconds]
11:08|-|Sacro|Out [] has joined #openttd
11:15|-|Sacro|Mobile [] has quit [Ping timeout: 480 seconds]
11:16|-|Digitalfox_Desktop [] has joined #openttd
11:22|-|lolman [] has quit [Remote host closed the connection]
11:24|-|lolman [] has joined #openttd
11:26|-|Zr40 [] has quit [Quit: This computer has gone to sleep]
11:26<Frostregen>hm, is it still possible to update an attachment in the forums? Or is the new way delete+add?
11:31<Chris82>hmmm good question actually I just wanted to update some files too
11:31<Chris82>would be too bad when the download stats would be gone then
11:42<Frostregen>yup...and 1 click more
11:42<Frostregen>plus re-adding the description
11:42<Frostregen>and maybe another download-id
11:46<Digitalfox_Desktop>So stations are now limited to 32.000 of cargo?
11:49|-|Ailure [Gamefreak@] has joined #openttd
11:50<Eddi|zuHause2>more like beyond 4k cargo you get less and less additional cargo, so it will take quite long to actually reach 32k
11:53<Chris82> can somebody help me with these errors?
11:55|-|Vikthor [] has joined #openttd
12:01|-|Vikthor [] has left #openttd []
12:02|-|Vikthor [] has joined #openttd
12:04<+glx>disabled_state is a dropdown_d member
12:04<+glx>replace VEH_Train with VEH_TRAIN
12:06<+glx>it's (it's an union)
12:07<+glx>Chris82: very old patch?
12:07<Chris82>ultra ultra old :D yeah
12:08<Chris82>but I could update most code myself except these 5 errors
12:08<Chris82>the VEH_TRAIN and disabled_state is fixed
12:08<+glx>disabled_state is replaced by DisableWindowWidget()
12:08|-|Thomas[NL] [] has quit [Read error: Connection reset by peer]
12:09|-|Thomas[NL] [] has joined #openttd
12:09<+glx>or something like that
12:09<+glx>(depending on context)
12:09<Chris82>yeah I thought so, I was using the DisableWindowWidget for another patch I did
12:10<Chris82>uhh ahh what happened now lol
12:10<Chris82>3>waypoint.obj : error LNK2001: unresolved external symbol "unsigned int __fastcall CalcNewAverage(unsigned int,unsigned int,unsigned short)" (?CalcNewAverage@@YIIIIG@Z)
12:10<Chris82>3>waypoint.obj : error LNK2001: unresolved external symbol "void __fastcall ShowWaypointTrains(int,int)" (?ShowWaypointTrains@@YIXHH@Z)
12:10<Chris82>3>..\objs\Win32\Release\\openttd.exe : fatal error LNK1120: 2 unresolved externals
12:11<+glx>missing file in project
12:11<Chris82>hmmm I just rebuilt the project and I didn't get compiler errors, weird
12:11<Chris82>there should be nothing missing actually
12:13<Chris82>ok these functions seem to be missing for the linker, let me check
12:13<+glx>if the linker doesn't find them then the files containing these functions is not in the project
12:14<Chris82>yeah I just noticed this function is placed in a very unlogic location in the original patch
12:14<Chris82>that's why I overlooked it
12:14<Chris82>this patch is really huge and does a lot more than I just try to do
12:15|-|alex_ [] has joined #openttd
12:16<@peter1138>glx: or they're old functions that no longer exist...
12:16<alex_>is there anyway form the serversdie to findout what passwords someone is using on their company?
12:16<alex_>or how do you force remove company from the server?
12:16<+glx>alex_: they are stored in clear in server memory
12:17<Chris82>rcon pass "reset_company playerid"
12:17<Chris82>to get the id
12:17<Chris82>rcon pass players
12:17<Chris82>peter1138: The functions missing are from the patch, they are just placed in weird locations
12:18<alex_>thanks Chris82
12:21<alex_>anyone keen on testing my new server? - moved my machines to another box need to test cpu%
12:21<Chris82>I guess _player_trains_desc has been replaced by something?
12:21<alex_>alexserver >> massive >> maxloan
12:22<+glx>Chris82: maybe
12:22<+glx>what is it supposed to show?
12:22<Chris82>any ideas? ;)
12:22<Chris82>_player_trains_desc is only used by the patch not defined, it's from r6xxx
12:23<Eddi|zuHause2>Chris82: check out a version from the time of the patch, look in what file it was in, and then look what revisions changed the file
12:23<Chris82>can I download r6xxx from SVN ?
12:24|-|UnderBuilder [~usuario@] has joined #openttd
12:24<Chris82>oh cool :)
12:24<Eddi|zuHause2>svn co -r xxxx
12:24|-|DaleStan [] has quit [Quit: Leaving]
12:24<Chris82>I use TortoiseSVN ;) but thx for telling me the command line way
12:24<@peter1138>player_trains_desc will now be bjarni's combined vehicle windows
12:24<Eddi|zuHause2>well, tortoise can do that, too
12:25<+glx>I'd ask the patch author to update his patch if I was you :)
12:26<UnderBuilder>will be nice a server where players are encouraged to create its own rail network
12:26<Chris82>I think he's dead already ;)
12:26<Chris82>the patch was for r1xxx originally the r6xxx was done by someone else already
12:26<UnderBuilder>in standard servers they use point to point networks
12:26<Chris82>and it's totally buggy in some parts that's why I only wanted to extract one part
12:26<@peter1138>players play however they like
12:27<@peter1138>i always do networks
12:29|-|Zr40 [] has joined #openttd
12:30|-|DaleStan [] has joined #openttd
12:33<CIA-1>OpenTTD: miham * r10559 /trunk/src/lang/ (american.txt catalan.txt estonian.txt slovenian.txt):
12:33<CIA-1>OpenTTD: -Update: WebTranslator2 update to 2007-07-14 19:32:31
12:33<CIA-1>OpenTTD: american - 8 fixed by WhiteRabbit (8)
12:33<CIA-1>OpenTTD: catalan - 15 changed by arnaullv (15)
12:33<CIA-1>OpenTTD: estonian - 6 fixed by kristjans (6)
12:33<CIA-1>OpenTTD: slovenian - 6 fixed by Necrolyte (6)
12:33<Chris82>there's a static const WindowDesc _player_trains_desc = { in r6413 in train_gui.c
12:34<Chris82>so I assume it's static const WindowDesc _train_details_desc
12:34<Chris82>or _train_view_desc
12:34<@peter1138>18:22 <@peter1138> player_trains_desc will now be bjarni's combined vehicle windows
12:34<+glx>Chris82: compare the contents of the array
12:36<Chris82>what are bjarni's compiled vehicle windows?
12:36<@peter1138>combined isn't compiled...
12:36<+glx>"same" code for all vehicles type
12:40|-|Digitalfox_Notebook [] has quit [Quit: ChatZilla [Firefox]]
12:40<+glx>!openttd commit 6562
12:40<_42_>Commit by bjarni :: r6562 /trunk/ (14 files) (2006-09-28 23:05:03 UTC)
12:40<_42_>-Codechange: merged the vehicle list window widget arrays
12:40<_42_> It made no sense to maintain 8 nearly identically arrays when a single one can do the job
12:40<_42_> Also made the two buttons always use half of the bottom width each, even when resizing
12:40<+glx>Chris82: ^^
12:41<+glx>I think you can view the diff using tortoise
12:42|-|alex_ [] has quit [Ping timeout: 480 seconds]
12:42<Chris82>yup I can use Tortoise for that :)
12:46|-|Deathmaker [] has quit [Read error: Connection reset by peer]
12:53<Chris82>lol this patch code doesn't really work
12:53<Chris82>I've got a waypoint stats window there now but it doesn't count anything
12:53<@peter1138>well no, the function that called it doesn't exist any more
12:54|-|MarkSlap [] has joined #openttd
12:54|-|Peakki [] has joined #openttd
12:55<Chris82>the only thing that works is counting how many trains are scheduled for the waypoint :D
12:56<Eddi|zuHause2>iirc there was a function for entry of tile and a function for exit of tile, but one was never used in trunk, so it got removed
12:57<Eddi|zuHause2>but that was exactly the function used in the waypoint stats
12:57<Eddi|zuHause2>move the counting code to the other function
12:58<Chris82>but when it uses a function that's not there anymore why does it compile at all?
12:59<@peter1138>it doesn't
12:59<@peter1138>it adds a function which isn't called
13:01<Chris82>ah forgot to call the WaypointMonthlyLoop(); function
13:01<Chris82>got your point
13:03<Eddi|zuHause2>technically, it should warn you "function xyz() is declared but never used"
13:03<@peter1138>only if it's static
13:04|-|Ammler [] has quit [Remote host closed the connection]
13:04|-|Ammler [] has joined #openttd
13:04<Eddi|zuHause2>yeah, probably it has no way of finding out otherwise...
13:06<Chris82>now I call it but the stats are still now shown
13:06<Chris82>except that two trains are scheduled for the waypoint
13:11|-|sartsj [] has joined #openttd
13:19|-|UnderBuilder [~usuario@] has quit [Quit: using sirc version 2.211+KSIRC/1.3.12]
13:21<Eddi|zuHause2>forgot adding the strings to the window?
13:23|-|Sacro|Out [] has quit [Quit: Leaving]
13:23<Chris82>don't think so
13:23<Chris82>I just remove all the stuff that I don't need
13:23<Chris82>to minimize the places of possible errors
13:25<sartsj>i'm wondering
13:25<sartsj>what happens if a multiheaded train breaks down?
13:25<sartsj>is it possible for just 1 loco to break?
13:25<sartsj>or do they always break down entirely
13:30|-|Purno [] has quit [Quit: Life is a game of pick-up-sticks, played by fucking lunatics.]
13:31<SmatZ>the train breaks down entirely
13:31<SmatZ>as more engines, as more often breakdowns
13:31<SmatZ>i think
13:32<@peter1138>exactly the same behaviour as with just one engine
13:33<Chris82>ok there's something really weird in this code
13:33<Chris82>wp->months_counted = STS_NO_MONTHS_COUNTED; is done when Waypoint stats are initialized
13:33<Chris82>then for the monthly loop I see if (wp->months_counted != STS_NO_MONTHS_COUNTED)
13:34<Chris82>but when I initialize months_counted as STS_foo this if will return false and therefor the loop never runs
13:34<Chris82>or do I get something wrong?
13:34|-|aquila [~aq@] has joined #openttd
13:36<Eddi|zuHause2>what i usually do at this point is inserting printf() at certain points to look what is actually called in what order
13:36|-|Progman [] has quit [Remote host closed the connection]
13:39<Chris82>now the window refreshes and shows the number of months counted
13:39<Chris82>I simply removed the if
13:39<Chris82>I think I compile 6413 with the original patch and see if it actually was ever working ;)
13:41<@peter1138>what you probably want to do is to read the code to find out what it is doing, then rewrite it for current revisions
13:42<Chris82>well I've done that with the daylength patch for example, but this patch is so unlogical in some parts that this is diffciult for me
13:43|-|Wolf01 changed nick to Guest329
13:43|-|Wolf01 [] has joined #openttd
13:47<Chris82>I also don't get why there is a for loop to initialize stats
13:47<Chris82>I mean stats are only initialized once
13:48<sartsj>08:32:28 [@peter1138] exactly the same behaviour as with just one engine
13:49<sartsj>wouldnt it be logical for the train to keep moving, but more slowly if it can still carry the wagons?
13:49|-|Guest329 [] has quit [Ping timeout: 480 seconds]
13:49<+glx>yes but it's not that easy to do
13:49<sartsj>might be a nice feature
13:50<sartsj>i can imagine
13:52|-|Darkebie [] has joined #openttd
13:53|-|alex_ [] has joined #openttd
13:53<alex_>is there anyway server side i can give a company money? :D
13:55|-|Osai^zZz [] has joined #openttd
13:56|-|Rippsy [~Moose@] has joined #openttd
13:59|-|Osai^zZz changed nick to Osai
14:03<Chris82>does anybody know why the upload new version button has been removed from the forums?
14:09<Eddi|zuHause2>you could try talking to orudge
14:12|-|MarkSlap [] has quit [Ping timeout: 480 seconds]
14:17|-|Tlustoch [] has joined #openttd
14:27<Chris82>orudge told me that the button was removed in phpbb3
14:27<Chris82>bugger :(
14:27|-|NukeBuster [] has quit [Ping timeout: 480 seconds]
14:27<Chris82>well I am going to buy me 3 pizzas now :) didn't have any food today yet except some friuts
14:27<@orudge>Chris82: basically, the attachment mod was unofficial in phpBB 2.0
14:28<@orudge>phpBB 3.0's attachments are largely based upon that mod
14:28<@orudge>but for some reason, they removed that button
14:28<@orudge>no idea why, personally
14:28<Chris82>can't imagine why either
14:29<Chris82>I mean that's a pretty big issue when it breaks all links due to changed attachment ids when adding a new version by deleting the old file and re-uploading a new file
14:29<@orudge>Possibly just to simplify it or something
14:29<@orudge>but, hm
14:29<@orudge>a bit annoying
14:29<Chris82>anyway I need food now :D Pizzzzzzzaaaaaaa :D
14:29|-|Chris82 changed nick to Chris|Pizza
14:33<Hendikins>Bah @ pizza. I want kanga bangas :P
14:34[~]Hendikins pads off to idle for another 268 hours
14:35<Eddi|zuHause2>can i reroute the stdout of a running process?
14:39|-|lolman [] has quit [Remote host closed the connection]
14:40|-|alex_ [] has quit [Ping timeout: 480 seconds]
14:43<CIA-1>OpenTTD: richk * r10560 /branches/NewGRF_ports/ (307 files in 24 dirs): [NewGRF_ports] -Sync: with trunk r10027-10559
14:44<Eddi|zuHause2>is that branch used for anything?
14:45<@TrueBrain>no, he just loves syncing
14:47<Eddi|zuHause2>that would be 5€ into the bad jokes box :p
14:48<@TrueBrain>only if you put in 5 euro for stupid questions :)
14:49<Eddi|zuHause2>there are no stupid questions, only stupid answers :p
14:49<Chris|Pizza>indeed lol
14:50<Chris|Pizza>Hendikins: what are kanga bangas?
14:50<Chris|Pizza>are you bamboocha ? lol
14:50<Chris|Pizza>ahh it's perfect that supermarkets are open till 10 now :D I hope they don't undo that for winter
14:51<@TrueBrain>okay, Eddi|zuHause2, so let me rephrase:
14:51<@TrueBrain>Eddi|zuHause2: are you stupid?
14:52<Eddi|zuHause2>probably :p
15:01|-|mikk36 [] has quit [Quit: The pedestrian had no idea which way to run, so I ran over him.]
15:05|-|mikk36 [] has joined #openttd
15:07|-|Peakki [] has quit [Quit: Lähdössä]
15:10|-|Konar6 [] has joined #openttd
15:21<CIA-1>OpenTTD: truelight * r10561 /trunk/src/ (blitter/factory.hpp driver.h): -Fix: don't give 'unused variable' warnings when disabling asserts
15:27|-|Konar6 [] has left #openttd []
15:27|-|Konar6 [] has joined #openttd
15:27|-|Konar6 [] has left #openttd []
15:29|-|aquila [~aq@] has quit [Quit: Leaving]
15:30<CIA-1>OpenTTD: rubidium * r10562 /trunk/src/ (misc/blob.hpp misc/str.hpp misc/strapi.hpp stdafx.h): -Fix: most of the MorphOS issues; MorphOS doesn't know about wchars, so disable all code that has to use wchars for MorphOS.
15:34|-|waxman_ [] has quit [Ping timeout: 480 seconds]
15:36|-|waxman [] has joined #openttd
15:39|-|Kyjo [] has joined #openttd
15:40<CIA-1>OpenTTD: rubidium * r10563 /trunk/ -Fix: gcc 2.95 (which is still needed for MorphOS :() does have trouble with using the protected/private variables of the enclosing class (and super classes of that enclosing class).
15:41<Chris|Pizza>has IsInsideRotatedRectangle just been replaced by something?
15:42<Chris|Pizza>nevermind my mistake
16:03|-|KUDr [] has quit [Ping timeout: 480 seconds]
16:04|-|Sacro [~ben@adsl-87-102-80-216.karoo.KCOM.COM] has joined #openttd
16:06|-|Sacro [~ben@adsl-87-102-80-216.karoo.KCOM.COM] has quit []
16:10|-|lolman [] has joined #openttd
16:11|-|Deathmaker [] has joined #openttd
16:12|-|Chris|Pizza changed nick to Chris82
16:13<Chris82>btw was there a specific reason you upgraded to phpbb3 RC ?
16:16<CIA-1>OpenTTD: truelight * r10564 /branches/noai/ (6 files in 3 dirs): [NoAI] -Add: added a AITileList valuator that checks for a NxM buildable spot with the entry from the AITileList as top-left tile
16:18<Eddi|zuHause2>Chris82: because he already tested previous versions and felt that this one is stable enough
16:22<SmatZ>I am missing other languages than English :(
16:24<@peter1138>what else would you need?
16:24|-|Sacro [~Ben@adsl-87-102-80-216.karoo.KCOM.COM] has joined #openttd
16:26<SmatZ>there is only the British English in the list - often translations are poor and I use English version anyway, but the Czech translation was rally nicely done in the previous version
16:27<SmatZ>*used the
16:27<SmatZ>hmm too many typos :-x I should type anymore today :-x
16:27<SmatZ>*shouldn't oh...
16:28|-|Zr40 [] has quit [Quit: Zr40]
16:29<SmatZ>today <-> anymore
16:29[~]SmatZ remains quiet ... I would type more strange things else :-x
16:31<Eddi|zuHause2>SmatZ: no language has been removed
16:31<Eddi|zuHause2>check if you actually have the .lng files in the lang/ dir
16:32<Smoovious>orudge... ping
16:33<@TrueBrain>I assume he was talking about the forums
16:33<Chris82>good night
16:33<Chris82>I am off to sleep
16:34<@TrueBrain>night Chris82
16:34|-|Chris82 [] has quit []
16:34<SmatZ>Eddi|zuHause2: I am sorry, I said it without any connection probably, I was talking about ... in OTTD I use the 'Original vehicles names' language :) because I do not have Czech fonts installed (there are still problems with non-ACSII characters under Linux :-(
16:35<Rubidium>SmatZ: just use one of the MS fonts
16:38<SmatZ>Rubidium: what are 'MS fonts'? actually, I have never felt this as a big problem ... instead I had a big pain installing unicode support, but maybe I invested too little time into that ... funny enough, even KDE in default configuration shows '?' instead of come unicode characters
16:38<Smoovious>already said i n #tycoon
16:38<SmatZ>in OTTD, I like the original fonts too much :)
16:38<@orudge>I use Tahoma in TTD
16:38<@peter1138>that is why they are default
16:38<Rubidium>SmatZ: MS => Microsoft
16:38<@orudge>always have, since wotshisname made his set
16:39<Rubidium>SmatZ: as static newgrf might work too
16:40[~]SmatZ is googling & clicking links, will reply later, thanks you for some suggestions
16:41|-|Darkebie [] has quit [Quit: VIP Gill ;D]
16:47|-|Deathmaker [] has quit [Read error: Connection reset by peer]
16:50|-|DJ_Mirage [] has quit [Quit:]
16:51|-|Tlustoch [] has quit [Quit: Leaving]
16:52<Sacro>enum TypeDlYesNo
16:52<Sacro> Yes,
16:52<Sacro> Not
16:52<Sacro>}; ><
16:56<SmatZ>Rubidium: nice it works! Thanks :)
16:56<Sacro>return this.stringField.toLowerCase().toUpperCase().compareTo(that.stringField.toLowerCase().toUpperCase());
16:56<SmatZ>that font looks nice
16:56[~]Sacro cries some more
16:56<SmatZ>Sacro: this is from openttd source?
16:57<Sacro>SmatZ: no, but i wonder if i could sneak it in
16:57<@TrueBrain>let me think about it...
16:57<SmatZ>well - there is something I don't understand - why there is used cost.addcost(int) used everywhere instead of operator+ overloading...
16:58<@TrueBrain>is toUpperCase broken or something? :)
16:58<Sacro>TrueBrain: i dunno
16:58<Sacro>the only possible explanatiaon
16:58<Eddi|zuHause2>SmatZ: "AddCost" has other semantics than "+"
16:58<Sacro>is if you have a picture thats red with green dots
16:58<Sacro>you'd make the red, green
16:58<Sacro>and then the whole lot red
16:59<Sacro>and that'd presumably work if it was green with red dots too
16:59<SmatZ>Eddi|zuHause2: that semantics could be done in the operator+ too
16:59<Eddi|zuHause2>because "AddCost" changes "this" instance and then returns it
16:59<blathijs>Eddi|zuHause2: operator overloading could still do that AFAIK
16:59<Eddi|zuHause2>no, "+" intuitively means that the operands are not changed
17:00<Eddi|zuHause2>yes, but it is not obvious to the user
17:00<blathijs>But I don't think operator overloading is really useful except for really simple things
17:00<@TrueBrain>+= ;)
17:00<Sacro>"It appears that O2's text message server – technically known as an SMSC – had managed to get itself into an infinite loop."
17:00<blathijs>addcost is indeed += yes, but method calls are nice and explicit :-)
17:00<@TrueBrain>I agree
17:00<@TrueBrain>operator overloading makes code unclear
17:01<@TrueBrain>overloading in general tends to do that :)
17:01<ln->I have already suggested changing _all_ functions to overloaded operators
17:01<SmatZ>Eddi|zuHause2: I didn't dig into that code, but that seems strange to me... difference is just in the limit that cannot overflow from 1<<63 to -1<<63...
17:02<Eddi|zuHause2>well, operator overloading may make the code clearer if the data type is used in very complex algebraic expressions
17:02<SmatZ>TrueBrain: you could use cost.operator=(cost.operator+(int)) :-)
17:03<Rubidium>SmatZ: only problem is that doing that makes it impossible to check *all* instances that use the functions
17:03<Rubidium>as it just "compiles", but due to the changed semantics of the function other changes are needed in the code itself
17:04|-|Osai changed nick to Osai^zZz
17:06<CIA-1>OpenTTD: truelight * r10565 /branches/noai/ (8 files in 3 dirs): [NoAI] -Add: allow giving width, height and radius to check for cargo acceptance
17:06<SmatZ>Rubidium: yes I trust you you chose the best solution, I just don't see reasons for that ... I am really not into OOP nor C++ programmer
17:07<SmatZ>so I don't see problems you see :)
17:07<SmatZ>so I don't understand your last 2 lines :(
17:08<Rubidium>I'm not a (proper) C++ programmer either
17:10<SmatZ>I was one of the few who programmed in C first at the University :)
17:11<Eddi|zuHause2>SmatZ: i think what he means if you change the semantics of operator+, you cannot find all uses of that operator+ to change the code there
17:11<Eddi|zuHause2>because there are a dozen other operator+ that have nothing to do with this one
17:11<Rubidium>hmm, still trying to find a proper real-life example
17:12<SmatZ>Eddi|zuHause2: maybe ... like cost.addcost(int).addcost(int) may be different than cost += int + int, because int + int may overflow
17:12<SmatZ>and using cost.addcost will force programmers not to sum two integers
17:12<Eddi|zuHause2>+ should be left-associative
17:13<SmatZ>+= has lower priority than + afaik
17:13<@TrueBrain>I sure hope so
17:13<@TrueBrain>else a += b - c would be messy
17:13<Eddi|zuHause2>i'd imagine that "a += b" gets unfold to "a = a + b"
17:14<@TrueBrain>hmm, bad example :p
17:14<Rubidium>Eddi|zuHause2: it doesn't as it's another overloadable operator
17:14<SmatZ>a -= b + c
17:14<@TrueBrain>better example :)
17:15<Eddi|zuHause2>ok, but C(++) sometimes has very strange definitions :p
17:15<Eddi|zuHause2>i would not try to imagine what it does with "a[i++]++"
17:16<SmatZ>google :
17:17<Eddi|zuHause2>it could very easily unfold that one to "a[i++] = a[i++]+1"
17:17<SmatZ>it will do that, won't ?
17:17<Rubidium>Eddi|zuHause2: the person who does that should be shot on-site
17:18<Rubidium>and a third time to be absolutely sure
17:18<@TrueBrain>of course it depends on how good your aim is
17:18<Eddi|zuHause2>and that could be one of "a[i] = a[i]+1; i = i+2;", "a[i] = a[i+1]+1; i = i+2;"
17:18<Sacro>SmatZ: that hurts my head
17:18<Sacro>i think it increments b, adds a...
17:18<@TrueBrain>Eddi|zuHause2: that is absolute bollocks
17:18<Sacro>then increments a
17:18<SmatZ>a[i]++ and ++a[i] are different
17:19<Sacro>SmatZ: yes
17:19<@TrueBrain>SmatZ: I sure hope so :)
17:19<Eddi|zuHause2>TrueBrain: why? it can move the assignment effect of "++" wherever it wants
17:19<@TrueBrain>hmm, in fact..
17:19<@TrueBrain>it isn't different
17:19<SmatZ>Sacro: well, by C standards, there is not defined behavior when more changes are done for one variable
17:19<@TrueBrain>pre-++ has lower precedence
17:20<@TrueBrain>Eddi|zuHause2: a[i++]++ is equal to a[i]++; i++;
17:20<Eddi|zuHause2>i had a friend who tried "y=log(x++)+log(x++)+log(x++)+log(x++)+log(x++)", and it resulted in "y=5*log(x); x+=5"
17:20<SmatZ>TrueBrain: yes I am sorry, it is the same
17:20<@TrueBrain>in theory you can make it i++; a[i]++;
17:20<Eddi|zuHause2>and he was very upset :)
17:21<@TrueBrain>stupid of him
17:21<SmatZ>Eddi|zuHause2: the result is undefined
17:21<Eddi|zuHause2>yes, i know
17:21<SmatZ>yes I know too :)
17:21<@TrueBrain>same as assuming that x = 0; f(x++; x++); is equal to f(0, 1)
17:22<@TrueBrain>(as in fact on all compilers I know it is f(1, 0)
17:22<Eddi|zuHause2>but if the spec says "'a++' is synonym to 'a=a+1'" my expansion above is perfectly valid
17:22<SmatZ>but ... "x++ || x++" will work, shoudn't it?
17:22<@TrueBrain>Eddi|zuHause2: but the specs don't say that :)
17:22<Rubidium>TrueBrain: adding one (specific) letter makes it behave differently ;)
17:22<Eddi|zuHause2>SmatZ: no, the assignment can be moved behind the 2nd evaluation of x
17:23<SmatZ>it will work only if x==-1
17:23<@TrueBrain>Rubidium: ?
17:23<Eddi|zuHause2>because there is no sequence point
17:23<Rubidium>if (x++, x++);
17:23<SmatZ>&& || should hold the order, it is defined
17:24<SmatZ>when something is true, anything after next || is not evaluated
17:24<SmatZ>similiar with &&
17:24<Rubidium>SmatZ: and | ?
17:24<Eddi|zuHause2>SmatZ: order of evaluation != order of assignments
17:24<Rubidium>oh, never mind... didn't think about lazy evaluation
17:24<SmatZ>Rubidium: | is a normal operator :)
17:24<SmatZ>Eddi|zuHause2: I am not sure at all
17:24<Eddi|zuHause2>so if the first x evaluates to 0, it can choose to either evaluate the second x, or do the assignment "++"
17:24<SmatZ>Eddi|zuHause2: lol
17:25<Eddi|zuHause2>depending on the order, the second x evaluates to either 0 or 1
17:26<SmatZ>as our teacher said - "it is undefined, it may evaluate to 123546"
17:26<SmatZ>not just 0 or 1
17:26<Eddi|zuHause2>undefined != random
17:26<Rubidium>"C++ is allowed to evaluate either [post] ++ first"
17:26<SmatZ>Eddi|zuHause2: [00:24:08] <Eddi|zuHause2> SmatZ: order of evaluation != order of assignments ... you are right
17:27<Eddi|zuHause2>in general, you should never have two assignments in the same expression :)
17:28<SmatZ>Eddi|zuHause2: that's for sure, but what about ... one file in ottd .. a second...
17:28<Rubidium> <- nr 4
17:28<Rubidium>"the order in which side effects take place is unspecified"
17:29<SmatZ>once I tried " ? : " operator instead of if / else statement, but it didn't work, strange
17:30<SmatZ>Rubidium: then you made it clear ... side effects = pre/post ++/-- , function calls - and something else?
17:30<Eddi|zuHause2>not all functions have side effects
17:31<Eddi|zuHause2>any assignment is a possible side effect
17:31<Rubidium>SmatZ: overriden operators
17:32<Rubidium>just read the whole piece of text
17:34|-|KUDr_afk [] has joined #openttd
17:34|-|Osai^zZz [] has quit [Quit: Osai^zZz]
17:35<SmatZ>rail_cmd.cpp, static void DrawTrackBits(TileInfo* ti, TrackBits track)
17:35<SmatZ>there is used the ordering aspect of the || operator
17:36<SmatZ>Rubidium: it is a very long text :(
17:36|-|KUDr_afk changed nick to KUDr
17:37<Rubidium>nr 4 isn't that long
17:37<CIA-1>OpenTTD: rubidium * r10566 /trunk/src/string.cpp: -Fix [FS#1025]: a NewGRF could have a information message that is too long for the internal buffers to handle. We should not crash on such a case even though the message is too big for the window anyway.
17:38<Eddi|zuHause2>indeed, that piece of code looks dangerous
17:38<Eddi|zuHause2>but it uses the , operator
17:39<Eddi|zuHause2>the , operator defines sequences
17:40<SmatZ>Eddi|zuHause2: yes
17:41<Eddi|zuHause2>the , operator means "do not move assignments beyond this point"
17:41<Eddi|zuHause2>and each of these assignments is enclosed in ,
17:42|-|Tobin [] has joined #openttd
17:42<SmatZ>Eddi|zuHause2: and when calling functions, f(x++,x++), the , is a different operator... it is not operator there
17:43<Eddi|zuHause2>but f((x++,x++)) is something different :)
17:44<SmatZ>when why is there ; while , could be used instead?
17:44<Eddi|zuHause2>because ; can not be placed inmidst of an expression
17:45<Eddi|zuHause2>, is used to place sequence points in an expression
17:45<SmatZ>so ; is weaker than ,
17:45<SmatZ>anyway - could I write a procedure using , insteaed of ; ?
17:45<Eddi|zuHause2>no, ";" sets a sequence point and ends the expression as well
17:45<SmatZ>except structure and variable definitions etc
17:46<Eddi|zuHause2>"x = a , b" is something different than "x = a ; b"
17:48<SmatZ>Eddi|zuHause2: what's the difference?
17:48<SmatZ>x == a in both cases
17:49|-|KUDr [] has quit [Ping timeout: 480 seconds]
17:49<Eddi|zuHause2>no, in fact, the first one does "a; x=b"
17:50<SmatZ>Eddi|zuHause2: i = 7, i++, i++; // `i' becomes 9
17:50|-|Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
17:50<SmatZ>, has lower priority than =
17:50<Eddi|zuHause2>ermm, yes, wrong example for the right thing ;)
17:51<SmatZ>TrueBrain: those are some AI controlled players?
17:51<@TrueBrain>7 AI controlled players
17:51<@TrueBrain>no management on the lines yet
17:53|-|caladan [] has quit [Ping timeout: 480 seconds]
17:56<SmatZ> ... the behavior changes while run with -O3
17:56<SmatZ>with -O3 , both b++ and c++ is executed
17:56<@TrueBrain>dah, a is not defined with any value
17:57<SmatZ>TrueBrain: it shouldn't change the behavior ... it either IS or IS NOT 0
17:57<@TrueBrain>undefined variables are both :)
17:57|-|KUDr_afk [] has joined #openttd
17:58|-|KUDr_afk changed nick to KUDr
17:58<SmatZ> the results
17:58<Rubidium>SmatZ: ofcourse the behaviour is strange, the side effects are certain after the complete expression (aren't they?)
18:00<SmatZ>Rubidium: as Eddi|zuHause2 stated, ',' is serializing operator - else static void DrawTrackBits(TileInfo* ti, TrackBits track) is rail_cmd.cpp wouldn't work
18:00<Rubidium>SmatZ: that uses ||
18:01<Rubidium>your case doesn't
18:01|-|Eddi|zuHause3 [] has joined #openttd
18:01<Eddi|zuHause3>what does that have to do with each other?
18:01<Rubidium>and as you just said, || doesn't continue evaluating when it's true, so I guess it's easiest to perform the side effects before the jump
18:02<SmatZ>Rubidium: the behavior is the same when using ';' instead of ','
18:03<@TrueBrain>haha, the difference between 'low' town and 'high' town is amazing :)
18:03<Rubidium>file a bugreport
18:04<@TrueBrain>gna :)
18:04<SmatZ>TrueBrain: that's better :)
18:05<@TrueBrain>the first was already really good
18:05<@TrueBrain>knowing there is just 1 airplane serving the station
18:05<SmatZ>this is even better! :)
18:08|-|Eddi|zuHause2 [] has quit [Ping timeout: 480 seconds]
18:09<SmatZ>ok I just found all of this interesting - I hope you did too, and if you didn't I am sorry for bothering you, I do not have anyone alse to talk about it with :(
18:10<@TrueBrain>haha, I am sure we all enjoyed it as much as you did, only most of us won't admit that ;)
18:10<CIA-1>OpenTTD: rubidium * r10567 /trunk/src/ (9 files in 2 dirs): -Add [FS#915]: a "group" with ungrouped vehicles. Patch by Matthias Wolf.
18:11<SmatZ>TrueBrain: thank you :)
18:13|-|Progman [] has joined #openttd
18:15|-|KritiK [] has quit [Quit: Leaving]
18:35<@TrueBrain>now it manages routes :)
18:35|-|Vikthor [] has quit [Quit: Leaving.]
18:35<CIA-1>OpenTTD: glx * r10568 /branches/noai/src/ai/api/ (ai_road.cpp ai_road.hpp ai_road.hpp.sq):
18:35<CIA-1>OpenTTD: [NoAI] -Add: {Build|Remove}RoadFull(). These functions have the same behaviour
18:35<CIA-1>OpenTTD: as {Build|Remove}Road(), except road is built/removed on both halves of ending
18:35<CIA-1>OpenTTD: tiles (ie build a sloped road on sloped tile instead half road with fundations)
18:36<@TrueBrain>I should delay the process a bit more, as now it is very unfair :)
18:36<@TrueBrain>building 24 good stations in 1 year isn't realistic ;)
18:38<SmatZ>TrueBrain: does the AI beat you in the game?
18:38<@TrueBrain>what do you think?
18:38<@TrueBrain>I am pink :p
18:38<@TrueBrain>nah, dunno what would happen if I really tried..
18:38<+glx>but you don't play
18:38<SmatZ>I think you sisn't play :)
18:39<@TrueBrain>exactly, pink clearly is a flat line
18:39<@TrueBrain>but I wonder what would happen if I tried to beat it..
18:39<@TrueBrain>doubt I can make that much money in such a short time
18:39<@TrueBrain>ah, there was a (big) bug in my maintain Route function
18:39<+glx>you should try road and aircraft at the same time
18:40<@TrueBrain>need RoadPF first
18:40<+glx>but your road AI can make towns grow
18:40<@TrueBrain>even worse ;)
18:41<+glx>what happened to the others?
18:41<@TrueBrain>they never really took off
18:41<@TrueBrain>is because they all walk the same towns in the same order
18:42<@TrueBrain>I need to randomize that..
18:42|-|elmex [] has quit [Remote host closed the connection]
18:43<SmatZ>it would be nice to play with really competitive AI ... I think I read somewhere that AI was added in the TTO in the last moment... so it was never really clever
18:43<@TrueBrain>it still is an amazing job!
18:44<@TrueBrain>that rail road CAN be made, amazing
18:45<+glx>I like how original AI uses bridges :)
18:46<SmatZ>like wooden bridges 30 tiles long in one way, and immediatelly returning in opposite direction?
18:47<@TrueBrain>I like the fact he had to make terraforming for free :p
18:47|-|Thomas[NL] [] has quit [Remote host closed the connection]
18:48<SmatZ>he would bankrupt when trying to build first road over some hill instead...
18:48<@TrueBrain>but I really mean it: the old AI is REALLY impressive, I wish I could do it like that...
18:49<SmatZ>TrueBrain: do you mean TTO or TTD? is AI somehow damaged in OTTD, even with patches turned off?
18:49<CIA-1>OpenTTD: truelight * r10569 /branches/noai/ (13 files in 5 dirs): [NoAI] -Add: added AIListRandomize as Valuator for all lists to attach a random value to all items
18:50<@TrueBrain>I mean original TT, I think TTD
18:51<SmatZ>I hope I find TTO and test it :)
18:51<SmatZ>without FF button it will take ages :(
18:52<SmatZ>TTO was nice ... except some bug, once all vehicles begun entering depots very often - I don't remember the details, but I had to remove all depots all over the map
18:54<@TrueBrain>okay, my AIs now don't follow eachother
18:54<@TrueBrain>but take more random stations
18:54<@TrueBrain>see if that changes the outcome :)
18:54<@TrueBrain>(it sure should)
18:54<@TrueBrain>of course this makes the AIs worse
18:54<@TrueBrain>but... we are not looking for unbeatable AIs :) More fair AIs that are fun to play with :)
18:55<SmatZ>actually, I don't believe AI can be made to beat any average human player
18:55<@TrueBrain>I think I can give you one that you can't beat :)
18:55<@TrueBrain>but that is more because of the speed it will build :)
18:57<SmatZ>maybe ... while playing singleplayer, I press the F1 button everytime I do not not time to flow :)
18:57<Eddi|zuHause3>i spend 98% of my play time in pause :)
18:57<SmatZ>but even without that - if it beats me without pausing, it is a !great! IA
18:57<@TrueBrain>no, just an unfair :)
18:57<SmatZ>Eddi|zuHause3: same me :)
18:58<@TrueBrain>I can make it work on such speed
18:58<@TrueBrain>that it builds 1 route every day
18:58<SmatZ>you can make it unlimited money ^_^
18:59<SmatZ>I would like to have some speed from my computer, not 99,99% spent in AI_RunGameLoop() :-D
19:00<SmatZ>the routefinding is something I wonder how can be done in a reasonable time
19:00<Eddi|zuHause3>someone made a patch to use yapf for route building
19:01<@TrueBrain>PFs don't take that much time
19:01<@TrueBrain>my slow one I made long long ago
19:01<@TrueBrain>needed just 4 gamedays to walk a 1kx1k map
19:01<@TrueBrain>(without hogging the CPU)
19:01<SmatZ>Rubidium said the approach with taking some points between A and B and connecting them to make the routefinding easier is a really bad approach ... I don't think so :) scanning whole 2048 ** 2 map is crazy for a pathfinder
19:02<SmatZ>TrueBrain: is it running in a separate thread?
19:02<@TrueBrain>you clearly don't know how powerful pathfinders are
19:02<@TrueBrain>but you will see
19:02<@TrueBrain>AIs run in their own thread, yes
19:02<@TrueBrain>not parallel though
19:02<SmatZ>Eddi|zuHause3: yes, I tested it, it was nice - but adding terraforming will probably slow it down a lot
19:03<DeGhosty>time to optimise for duel core :D
19:03<Eddi|zuHause3>the tricky part might be to let the YAPF calculation split over several game days, to keep load down
19:03<SmatZ>TrueBrain: you are right, I don't, and I am looking forward to see how it will work :)
19:03<CIA-1>OpenTTD: belugas * r10570 /trunk/src/industry.h:
19:03<CIA-1>OpenTTD: -Codechange: Add enum required for Callback 0x22: CBID_INDUSTRY_AVAILABLE
19:03<CIA-1>OpenTTD: -Documentation: Add documentation for enum IndustryConstructionType, which describes how the industry has been created
19:03<Sacro>zomg? is it done
19:03<Eddi|zuHause3>because in those days, the map can change significantly
19:03<@TrueBrain>SmatZ: like a sharm :)
19:04<SmatZ>TrueBrain: sorry, what is 'sharm' ?
19:04<Ailure>there needs to be a flag in autoreplace
19:04<Ailure>"Replace this engine only when it's old"
19:04<@TrueBrain>it will work flawless and nicely :)
19:04<SmatZ>ahh :) yes
19:04<Eddi|zuHause3>he probably means a "charm" ;)
19:05<@TrueBrain>pff, starting in 1950 with aircrafts is no fun at all
19:05<Eddi|zuHause3>which is some kind of magic spell
19:05<@TrueBrain> <- more fair :)
19:06<SmatZ>TrueBrain: you really like the red player, he wins every game in your graphs :D
19:06<@TrueBrain>pure luck
19:06<@TrueBrain>it now first tries to take towns with pop > 2500, then > 2000, then > 1500, ...
19:06<@TrueBrain>and randomizes between them
19:07<@Belugas>nice AIs, TrueBrain
19:07<@TrueBrain>tnx Belugas :)
19:07<@Belugas>you shold cahnge your nick ;) TrueAI
19:07<@TrueBrain>haha :)
19:07<@TrueBrain>Phuket Air: [INFO] Station 11 has too many cargo, adding a new vehicle for the route.
19:07<@TrueBrain>Phuket Air: [INFO] Station 5 has too many cargo, adding a new vehicle for the route.
19:07<@TrueBrain>Phuket Air #4: [INFO] Sending 1262 to depot as profit is: 8811 / 8185
19:07<@TrueBrain>Phuket Air #4: [INFO] Selling 1178 as it finally is in a depot.
19:07<@TrueBrain>Red has 127 planes :)
19:07<@Belugas>Sacro, no it's not yet done :)
19:08<Eddi|zuHause3>interesting name :p
19:08<Sacro>Belugas: aww :(
19:08<@TrueBrain>performance score: 864 :)
19:08<@TrueBrain>haha, loan...
19:08<@TrueBrain>I need to pay back loans if it is possible
19:08<@TrueBrain>an other 50 points :p
19:08<Smoovious>TrueBrain... are you playing that locally? can we spectate?
19:08<@TrueBrain>locally, yes
19:09<@Belugas>I hope your heart is a good one :) If you're stressing everytime the word industry is in a commit, you would get some high tension :D
19:09<@TrueBrain>I am behind a big NAT, I can't allow incoming connections
19:09<@TrueBrain>but I might be able to connect my client to an external server, if it is running the correct trunk revision
19:09<@TrueBrain>LOL! It bought a helicopter
19:09<+glx>I could host one (not all the time as my PC is shutdown when I sleep)
19:09<Smoovious>that's o, not worth the trouble... just wanted to watch
19:10<Smoovious>what's wrong with it buying a heli...
19:10<Eddi|zuHause3>how do you handle replacing the airport if there are too many vehicles waiting?
19:10<Sacro>TrueBrain: perhaps it wanted to take passengers to a rig
19:10<@TrueBrain>Eddi|zuHause3: not
19:10<@TrueBrain>no, FindBestVehicle returns a helicopter
19:10<@TrueBrain>as the specs are better
19:11<DeGhosty>u shuld use every 100 capcity is a point
19:11<DeGhosty>every 200km/h is apoint
19:11<DeGhosty>highest point aircraft win
19:11<@TrueBrain>it now just takes the highest engine ID :)
19:11<@TrueBrain>also very nice ;)
19:11<@TrueBrain>but the idea is good yes
19:12<DeGhosty>i wanna see ur cool ai
19:12<DeGhosty>when does it come out?
19:12<@TrueBrain>a few years later
19:13<@TrueBrain>let's start in 2000
19:13<DeGhosty>so long?
19:14<@TrueBrain>haha, Small Airport is no longer available
19:14<@TrueBrain>that sucks :p
19:15<CIA-1>OpenTTD: truelight * r10571 /branches/noai/src/ai/api/ (ai_list_valuator.cpp ai_list_valuator.hpp): [NoAI] -Fix r10569: about time I forgot to add some files
19:19<CIA-1>OpenTTD: belugas * r10572 /trunk/src/ (newgrf_industries.cpp newgrf_industries.h): -Codechange: Add function CheckIfCallBackAllowsAvailability for industries
19:24<@TrueBrain>the vehicle picker is fucked up :p
19:24<@TrueBrain>the last EngineID doesn't work for airplanes
19:26<CIA-1>OpenTTD: belugas * r10573 /trunk/src/industry_cmd.cpp: -Codechange: Use function CheckIfCallBackAllowsAvailability for random map generation as well as for ingame random industry creation
19:29<Eddi|zuHause3>"are we there yet?"
19:30<@Belugas>God no, Eddi|zuHause3...
19:30<@Belugas>although i wish it was the case :)
19:31<@TrueBrain>so, there
19:31<CIA-1>OpenTTD: truelight * r10574 /branches/noai/ (bin/ai/regression/regression.txt src/ai/api/ai_vehicle.cpp): [NoAI] -Fix: make a better BestVehicle detection for aircrafts
19:31|-|XeryusTC [] has quit [Quit: Solong, and thanks for all the fish.]
19:31<Eddi|zuHause3>why that large different between first and second company?
19:31<@TrueBrain>the green got lucky
19:34|-|Sacro_ [~Ben@adsl-87-102-80-216.karoo.KCOM.COM] has joined #openttd
19:35<@TrueBrain>hmm, I never finish for NoAI the code that is needed to make an AI join a server
19:35<@TrueBrain>I should do that...
19:35<@TrueBrain>the AIs do have that, code-wise
19:35<@TrueBrain>just it misses code to really do it :p
19:36<+glx>server can host AIs
19:36<@TrueBrain>that is true
19:36<Eddi|zuHause3>you could make the AI join your company
19:36<Eddi|zuHause3>as a helper
19:36<@TrueBrain>Eddi|zuHause3: that part isn't done
19:36<+glx>yeah let the AI manage the lines :)
19:37<@TrueBrain>takes 5 years for my AI to reach performance 900 :p
19:38<@TrueBrain>income stable at 6M
19:38<@TrueBrain>vehicles stable at 82
19:38<Eddi|zuHause3>you could talk to your AI through signs, like "AI: build 8 platform RORO here"
19:38<+glx>to reach 1000 it needs to cheat (builds unused stations)
19:38<@TrueBrain>glx: why?
19:38<@TrueBrain>it has 130 stations
19:39<Eddi|zuHause3>the AI would then check the sign and parse the command
19:39<@TrueBrain>but it only knows how to move 2 types of cargo
19:39<+glx>130 airports?
19:39<@TrueBrain>glx: yes
19:39<@TrueBrain>as I said, it isn't really fair :p
19:39<+glx>how many towns?
19:39<@TrueBrain>oh, incoming is 30M (pounds btw)
19:39<@TrueBrain>where can you see that?
19:39<@TrueBrain>(high at 1kx1k)
19:40<+glx>ok enough for 1 per town
19:40<Eddi|zuHause3>the town list window should mention that number...
19:40<@TrueBrain>it should, yes
19:40<@TrueBrain>what does Income Graph show?
19:40<@TrueBrain>it tells me 8M
19:40<@TrueBrain>but the incomine is 30M
19:41<@TrueBrain>so I am a bit confused what it tells me
19:41<@TrueBrain>operation profit graph also tells me 8M
19:41|-|Sacro [~Ben@adsl-87-102-80-216.karoo.KCOM.COM] has quit [Ping timeout: 480 seconds]
19:41<@TrueBrain>who knows the answer?
19:42<SmatZ>it is per quarter
19:43<@TrueBrain>tnx :)
19:43<@TrueBrain>iek, old dep-system
19:43<@TrueBrain>that host doesn't have makedepend :p
19:44<@TrueBrain>Smoovious: still want to spectate?
19:45<CIA-1>OpenTTD: glx * r10575 /trunk/src/industry_cmd.cpp: -Fix r10573: misplaced )
19:48<@TrueBrain>I wonder if it works on a server...
19:48<@TrueBrain>no fastforward
19:49<@TrueBrain>oh well, time for me to prepare myself to go to bed :)
19:49<SmatZ>I am just compiling the noai brach to see your magic :)
19:50<@TrueBrain>you can also get a clean r10532 and join my server
19:50<@TrueBrain>if the AI ever starts...
19:50<@TrueBrain>(clean = clean trunk)
19:50<+glx>you need his main.nut :)
19:50<@TrueBrain>that if you want to run it locally, yes :p
19:50<@TrueBrain>glx: how about I just add it to SVN? :)
19:50|-|ThePizzaKing [] has joined #openttd
19:50<+glx>could be useful as examples
19:51<SmatZ>TrueBrain: how can I connect to your server?
19:51<@TrueBrain>glx: for that I wrote it ;)
19:51<@TrueBrain>SmatZ: connected to
19:52<@TrueBrain>as SPECTATOR
19:52<@TrueBrain>I have no idea how stable it is
19:52<@TrueBrain>but okay
19:53[~]TrueBrain hits DeGhost
19:53<+glx>I can see the server with noai
19:53<DeGhosty>there is no spectate button
19:53<@TrueBrain>glx: I facked a trunk revision
19:53<@TrueBrain>DeGhosty: there is
19:53<DeGhosty>ok now there is
19:53<@TrueBrain>there always has been
19:53<+glx> is offline
19:53<@TrueBrain>glx: as it should be trunk compatible...
19:54<@TrueBrain>bah, AI didn't load
19:54<+glx>now I see it
19:54<SmatZ>TrueBrain: I just ran the noai branch, and after 12 years, the ai players just borrow/repay money and have 0 income :(
19:54<@TrueBrain>SmatZ: welcome to NoAI
19:54<@TrueBrain>that AI is REALLY REALLY stupid
19:54<DeGhosty>it's broken
19:54<@TrueBrain>was a proof-of-concept
19:54<@TrueBrain>I think I replace it with this one
19:55<SmatZ>ah ... I though I will see something like this ->
19:55<@TrueBrain>SmatZ: no, it is my local AI in development
19:55<SmatZ>aha :)
19:55<DeGhosty>u need a company to spectate
19:55<+glx>no you don't
19:55<DeGhosty>how come my spetate button not working..
19:55<@TrueBrain>SmatZ: create bin/ai/phuketair
19:55<@TrueBrain>download as main.nut in that dir
19:56<DeGhosty>oh nvm
19:56<@TrueBrain>run: ./openttd -a "Phuket Air"
19:56<@TrueBrain>Phuket Air is active on the server...
19:56<DeGhosty>failed loading saved game
19:56<DeGhosty>too many vehicals?
19:56<@TrueBrain>like 0
19:56<@TrueBrain>I think so too yes
19:57<@TrueBrain>but I too get the error now I try to join
19:57<@TrueBrain>nice bug ;)
19:57<SmatZ>squirrels like nuts :)
19:57<@TrueBrain>you got the joke ;)
19:57<DeGhosty>i get an error
19:57<DeGhosty>fix it fix it fix it :)
19:57<@TrueBrain>I have no idea why it does that
19:58<+glx>savegames are compatible theorically
19:58<@TrueBrain>I thought so too
19:58<@TrueBrain>but I guess syncing broke something
19:58<@TrueBrain>hmm.. the AI parts can be a problem
19:58<@TrueBrain>is filled with NULLs
19:59<@TrueBrain>running r10574-noai
20:00<+glx>I can't spectate
20:00<@TrueBrain>just 304 lines :)
20:00<@TrueBrain>glx: why not
20:00<+glx>button is disabled
20:00<@TrueBrain>ah, because there are no companies
20:00<@TrueBrain>was a silly protection :)
20:00<@TrueBrain>that you can't join servers that don't have companies yet
20:00<+glx>that's indeed stupid
20:01<@TrueBrain>join from command line with -n
20:01<@TrueBrain>or try it now :p
20:01<@TrueBrain> isn't on the server-list...
20:01<SmatZ>TrueBrain: does the AI terraform or destroy building to place airports?
20:01<DeGhosty>what version is it?
20:01<@TrueBrain>SmatZ: nope
20:02<@TrueBrain>DeGhosty: NoAI branch
20:02<DeGhosty>i have to compile it?
20:02<+glx>hmm AI does nothing for now
20:03<@TrueBrain>no, it takes a while to start-up
20:03<@TrueBrain>1000 ticks
20:03<SmatZ>TrueBrain: a little problem - when exiting the game, it segafults -> openttd: /mnt/svn/openttd/branches/noai/src/ai/ai_threads.cpp:466: AIThread_MT* AIThread_MT::stCurrentFiber(): Assertion `cur->thr->IsCurrent()' failed.
20:03<@TrueBrain>hmm.. I can't join from the GUI :(
20:03<@TrueBrain>SmatZ: yes, on bankrupt or closing the map
20:03<Eddi|zuHause3>nick colouring is no use if all active nicks get the same colour :(
20:03<SmatZ>ok :)
20:03<+glx>TrueBrain: add manually
20:03<@TrueBrain>glx: but why does it fail...
20:03<+glx>advertise on?
20:04<@TrueBrain>it is on
20:04<+glx>MS bug?
20:05<@TrueBrain>it is in the list
20:05<@TrueBrain>but it is never queries
20:05<@TrueBrain>when I try that manually
20:05<@TrueBrain>even more weird things happen :p
20:05<@TrueBrain>oh well, something to check later :)
20:05<@TrueBrain>@calc 1000 / 74
20:05<@DorpsGek>TrueBrain: 13.5135135135
20:05<@TrueBrain>hmm, should only take 13 days before it starts doing something
20:06<@TrueBrain>but okay, it is doing something :)
20:06<@TrueBrain>amazing, network AI also works :)
20:06<+glx>4 airports 2 planes
20:06<@TrueBrain>so SmatZ, you want to see if you can beat this AI? :p
20:07<SmatZ>I will try, only with airports :)
20:07<+glx>I think it will add a plane soon
20:07|-|Sacro_ [~Ben@adsl-87-102-80-216.karoo.KCOM.COM] has quit [Quit: Leaving]
20:07<@TrueBrain>you know what, I open some company slots, make it airport only
20:07<@TrueBrain>and leave you to it for the night :)
20:07<@TrueBrain>closing server for a moment
20:07|-|thgergo [] has quit []
20:08<SmatZ>TrueBrain: does the AI settings in the Difficulty options have any effect?
20:08<@TrueBrain>SmatZ: difficulty? No; Speed? Yes
20:08<@TrueBrain>difficulty will be given to the script and left to him to do what ever he things is best
20:08<@TrueBrain>SmatZ: but most of the time it will stay ignored
20:08<@TrueBrain>k, server is online
20:09<@TrueBrain>show me what you can do :)
20:09<SmatZ>openttd: /mnt/svn/openttd/branches/noai/src/player.h:109: Player* GetPlayer(PlayerID): Assertion `( (uint)((i) - (PLAYER_FIRST)) < ((uint)((sizeof(_players)/sizeof(_players[0])))) )' failed.
20:09<@TrueBrain>try again?
20:10<SmatZ>how can I connect as a player?
20:10<@TrueBrain>via the GUI
20:11<+glx>hmm Yate Haugan on small airport
20:12<@TrueBrain>btw, the AI is missing a piece of code to see which airport it should build
20:12<@TrueBrain>it now always builds City Airport
20:12<@TrueBrain>(so playing at 1950 will result in... nothing :))
20:12<+glx>City Airport is a small one
20:13<@TrueBrain>it is the old one
20:13<@TrueBrain>the big 6x6
20:13<@TrueBrain>the loader indicator rules :)
20:14<+glx>hehe it added a plane to the line
20:14<@TrueBrain>no, I did :p
20:14<@TrueBrain>light blue is AI
20:14<@TrueBrain>yellow is me
20:14<@TrueBrain>dark blueis SmatZ
20:18<@TrueBrain>hehe, AI couldn't build the aircraft
20:18<@TrueBrain>out of money :p
20:18<@TrueBrain>I think
20:20<@TrueBrain>the speed is pretty fair
20:20<@TrueBrain>I am suprised
20:21<@TrueBrain>but it builds on almost the same rate as we
20:21<@TrueBrain>just he keeps on doing it :p
20:21<@TrueBrain>just think about what the AI can do if it too can terraform :p
20:22<@TrueBrain>my plane crashed :s
20:22<@TrueBrain>:s :s
20:22<@TrueBrain>Disasters are off :(
20:22<@TrueBrain>and all my newsmessages too :p
20:23<+glx>but fast plane on small airport is not a disaster
20:23<@TrueBrain>why are this small airports?
20:23<@TrueBrain>oh, because it tells me :p
20:23<@TrueBrain>oh well
20:24<Eddi|zuHause3>the 6x6 airport is now small?
20:24<+glx>4x5 is small
20:24<@TrueBrain>it takes for ever to clean up a plane...
20:24<@TrueBrain>I NEED MONEY!
20:24<@TrueBrain>bah, the AI is catching up on me :(
20:24<Eddi|zuHause3>which airport is 4x5?
20:25<@TrueBrain>no, the AI does built too fast...
20:25<@TrueBrain>1 year, 10 stations...
20:25<Digitalfox_Desktop>I can do that to ;)
20:26<Digitalfox_Desktop>Activating Pause cheat.. 3..2..1.. Activated
20:26<@TrueBrain>and then without cheats ;)
20:27<Digitalfox_Desktop>TrueBrain: After the new AI is finished will it be available has an option in OTTD or replacing completely the old AI still present today in openttd builds?
20:27<Smoovious>would be nice to have more grades of planes than just large/small... maybe small/medium/large/jumbo
20:28<Smoovious>but that's a whole o ther t opic
20:29<@TrueBrain>Digitalfox_Desktop: the old AI system will be removed completely
20:29<@TrueBrain>mostly because it is broken by design
20:30<Eddi|zuHause3>you could try to port the old AI to the new system :p
20:30<@TrueBrain>feel free :)
20:30<@TrueBrain>the old AI cheats, isn't network compatible, ...
20:30<Eddi|zuHause3>honestly, i never looked at the AI code
20:31<@TrueBrain>I did, one too many times :)
20:31<@TrueBrain>oops, forgot to run the dedicated server in a screen
20:31<@TrueBrain>now I can't close my window :(
20:31<Eddi|zuHause3>i'd like to try a train AI when that is supported...
20:31<@TrueBrain>takes a while :)
20:32<@TrueBrain>hardest of all
20:32<+glx>TrueBrain: save and restart in screen
20:32<Eddi|zuHause3>one that creates a passenger network of local and express lines
20:32<@TrueBrain>glx: an option yes, but AIs aren't saved yet, they start over...
20:32<@TrueBrain>resulting in a total failure of my AI :)
20:32<@TrueBrain>Eddi|zuHause3: start making the plans for it :p
20:34<@TrueBrain>so far it aint bad for a first airport AI :)
20:34<Eddi|zuHause3>i'll have to look into the AI interface documentation and the language at some point
20:34<@TrueBrain>the NoAI API (documentation) is really nice :)
20:36<+glx>ok metropolitan airport is not efficient :)
20:36<@TrueBrain>not at all!
20:36<Eddi|zuHause3>can the AI check loaded NewGRFs and act upon that? (e.g. build newstations)
20:36<@TrueBrain>in the future, sure
20:39<@TrueBrain>SmatZ clearly takes all the corners to put his airports
20:39<@TrueBrain>where the AI takes what ever he can gets his hands on :)
20:39<SmatZ>yes I do
20:42<@TrueBrain>he, what went wrong with the AI
20:42<@TrueBrain>it isn't supposed to go down :p
20:45<SmatZ>AI is really tough
20:46<@TrueBrain>but now you are better then he is
20:46<Eddi|zuHause3>can AI have a map array to store temporary cache data in?
20:47<Eddi|zuHause3>it'd make life much easier...
20:47<@TrueBrain>it would kill most machines
20:47<Eddi|zuHause3>rephrase that: can AI create arrays same size of the map?
20:47<@TrueBrain> <- light blue is AI, dark blue is human
20:47<@TrueBrain>Eddi|zuHause3: no
20:48<Eddi|zuHause3>how does AI store data then?
20:48<SmatZ>maybe AI's plane crashed?
20:48<@TrueBrain>SmatZ: no, not possible on those airports
20:49<@TrueBrain>SmatZ: you guys steal pax from him :) Takes a moment for him to respond on
20:49<@TrueBrain>shows the AI :)
20:49<+glx>I tried to not steal anything
20:49<@TrueBrain>glx: SmatZ did :p
20:50<SmatZ>ah, sorry
20:50<@TrueBrain>but it reacts to that, it just takes a moment
20:50<SmatZ>I didn't know I shouldn't do that
20:50<@TrueBrain>oh, it is no problem
20:50<@TrueBrain>I tried to train my AI well :)
20:50<+glx>anyway AI builds airport in same towns than me so it's fair
20:50<@TrueBrain>lol, you now have more vehicles than the AI :)
20:50<Nigel>hmmm, are there any plans on changing the configure/makefile system?
20:51<@TrueBrain>Nigel: not again I hope
20:51<+glx>Nigel: about which version are you talking?
20:51<+glx>ho you don't like the DEPS ?
20:52<Nigel>nope, I'm an autoconf fan tbh
20:52<+glx>well trunk is not autoconf but it's better
20:52<+glx>at least it uses makedepend if available
20:53<+glx>and Makefile.config is gone
20:53<Nigel>will ./configure accept standard params like --build and --prefix?
20:55<+glx> <-- check yourself ;)
20:56<Eddi|zuHause3>some people complained about some switches being non-standard
20:57<@TrueBrain>btw, SmatZ: you show that it might be better no to big the biggest towns, but those who have the biggest distance :)
20:57<Nigel>glx: that looks like autoconf, or fairly close, good thing too
20:57<SmatZ>TrueBrain: I think so :)
20:57<@TrueBrain>most params are default, like --build, --host, CC, ...
20:57<@TrueBrain>(as in fact I peaked at an autoconf --help :p)
20:57<SmatZ>few passangers, fast plane, small towns, long distance
20:58<@TrueBrain>I will close the server in 1 jan 2003
20:58<@TrueBrain>after a screen
20:58<@TrueBrain>you showed you can beat the AI :p
20:59<@TrueBrain>tnx SmatZ
20:59<@TrueBrain>and night all
20:59<SmatZ>tnx TrueBrain
20:59<SmatZ>nice AI really
20:59<SmatZ>gn all
20:59|-|SmatZ [] has quit [Remote host closed the connection]
20:59<+glx>night TrueBrain
21:01|-|Eddi|zuHause3 changed nick to Eddi|zuHause4
21:02|-|Eddi|zuHause4 changed nick to Eddi|zuHause
21:06|-|Digitalfox_Desktop [] has quit [Quit: Bye]
21:09|-|Digitalfox_Notebook [] has joined #openttd
21:33|-|glx [] has quit [Quit: bye]
21:33<DeGhosty>hey who wrote the thing for town growth?
21:36<Eddi|zuHause>which "thing"? i know at least half a dozen "things" related to town growth
21:43<Phazorx>he probably means growth in terms of picking place for houses removing old/ updating
22:00|-|Tino|Home [] has joined #openttd
22:07|-|Kyjo [] has left #openttd []
22:07|-|TinoM| [] has quit [Ping timeout: 480 seconds]
22:32|-|Ammler [] has quit [Ping timeout: 480 seconds]
22:33|-|Gekko [] has joined #openttd
22:35|-|Gekko [] has quit []
22:37|-|Progman [] has quit [Ping timeout: 480 seconds]
22:38|-|Red [] has joined #openttd
22:45|-|Red [] has quit [Read error: Connection reset by peer]
22:47|-|Red [] has joined #openttd
22:50|-|Progman [] has joined #openttd
22:56|-|Gekko [] has joined #openttd
22:57|-|Rippsy [~Moose@] has quit [Ping timeout: 480 seconds]
23:21|-|ThePizzaKing [] has quit [Ping timeout: 480 seconds]
23:30|-|ThePizzaKing [] has joined #openttd
---Logclosed Sun Jul 15 00:00:01 2007