IRC logs for #openttd on OFTC at 2007-10-07
⏴ go to previous day
00:05:50 *** Greyscale_ has joined #openttd
00:08:52 *** ThePizzaKing has joined #openttd
00:10:11 <TrueBrain> gfldex: btw, the last time I benchmarked Javascript, it was very slow, relative to all other languages
00:10:29 <TrueBrain> and last time I checked, I couldn't find a good embedable library, besides the Mozilla, which needed some lib that took 20 minutes to compile :p
00:11:10 <gfldex> spidermonkey build in less then a minute on my system
00:11:18 <TrueBrain> spidermonkey, that was the name
00:11:32 <TrueBrain> I couldn't get the embed lib to work
00:11:53 <TrueBrain> (and I did a lot of languages :p)
00:12:04 <gfldex> did you follow the examples on developer.mozilla.org?
00:12:12 <TrueBrain> no, it was a few years back now
00:12:36 <gfldex> spidermonkey changed a lot in the last years
00:12:50 <gfldex> and it's going to get even better as closer it gets to javascript 2.0
00:12:52 <TrueBrain> I do remember Python was a bit of a bitch to get to work :) I required that when you called a C function from the script, you could get the function-name
00:12:55 <TrueBrain> but that wasn't that easy ;)
00:12:56 <gfldex> operater overloading \o/
00:13:11 <TrueBrain> that language really went overboard :)
00:13:49 <gfldex> since 1.7 you got setters and getters and that means you can use good abstractions and working signals and slots like qt is doing it
00:14:09 <gfldex> it got a fun little language
00:14:15 <TrueBrain> it was ment as simple (slow) client-side language :p
00:14:25 <gfldex> and very elegant in it's recursive(-ish) structure
00:14:32 <TrueBrain> is it still that slow?
00:14:46 <gfldex> it's not optimized at all
00:15:32 <gfldex> i never read about that but my guess is they are going to do that
00:15:58 <gfldex> if you click anything in mozilla and thunderbird you will trigger some JS code
00:16:13 <gfldex> and at some point they will have to do something about speed
00:16:38 <gfldex> esp. when ppl start to use SVG and there are quite a lot skin writers that want to do that
00:17:48 <gfldex> animations are done in JS
00:18:06 <TrueBrain> loading... loading... loading...
00:18:32 <gfldex> my uplink isnt all that fast :)
00:18:37 <gfldex> and the svg is not compressed
00:18:54 <TrueBrain> so GoogleOS will be a fact
00:19:40 <gfldex> and in firefox-3 you will have blur as a effect and that means really easy drop shadows
00:19:58 <De_Ghost> as long as they don't deliever ads
00:20:11 <gfldex> you can filter them in your http proxy :D
00:20:16 <TrueBrain> De_Ghost: I am saying this for, what, 2 years now? Ever since Google became a hit: there will be a GoogleOS
00:20:20 <TrueBrain> a fully webbased Operating System
00:20:33 <TrueBrain> where your computer only needs to set up some browser in some graphical mode (read: DOS)
00:20:35 <De_Ghost> i don't want a web link
00:20:50 <TrueBrain> and that via a webbrowser you do everything
00:21:02 <TrueBrain> from word-editing, till OpenTTD
00:21:05 <gfldex> in firefox-3 svg got 4x as fast fps then in stable release
00:21:12 <gfldex> so they start to do something with that
00:21:21 <gfldex> finally after ... uhm ... 3 years
00:21:38 <TrueBrain> I made windows via Javascript
00:21:43 <TrueBrain> you could drag them
00:21:50 <gfldex> there are browser games that use svg to display stuff
00:22:17 <TrueBrain> hmm, I no longer have that project active, so it seems
00:23:09 <TrueBrain> too bad, it was so much fun :) Just dead and dead slow
00:23:09 <gfldex> with magnetic borders!
00:23:32 <gfldex> well you have to tune firefox a bit
00:23:45 <gfldex> it got a minimum delay for repainting
00:23:52 <gfldex> you have to lower that a bit
00:24:19 <TrueBrain> gfldex: hehe, mine did more: you could open Notepad, and Calculator (which really worked :p)
00:24:22 <TrueBrain> via AJAX calls to the server and back
00:24:51 <gfldex> with firefox-3 cairo support will enjoy us and that means (at least some day) compositing of the whole browser in opengl :)
00:25:39 <TrueBrain> I like you gfldex :p
00:25:55 <gfldex> i make the future look bright, dont it? :D
00:26:19 <TrueBrain> nah, you remind me of myself :)
00:30:27 <TrueBrain> pff, this will be the 3rd big rewrite of my lovely server :p
00:35:36 *** Greyscale_ has joined #openttd
00:36:12 <TrueBrain> I still dream to make a patch that allows clustering of server, so you can have 1000 players playing one map :)
00:36:22 <TrueBrain> possible: yes; difficult: VERY
00:37:46 <Sacro> Science: Purpose of Appendix Believed Found
00:37:52 <Sacro> Posted by CowboyNeal on Saturday October 06, @11:08AM
00:37:52 <Sacro> from the still-at-the-back-of-the-book dept.
00:38:47 <Belugas> how difficult, TrueBrain? or rather, where is the complexity?
00:39:03 <Sacro> oh Belugas, did you see that picture earlier, it may be a bug
00:39:03 <TrueBrain> Belugas: what I have in mind means creating a map of, say, 102400x12400
00:39:11 <TrueBrain> spawned over multiple servers
00:39:20 <TrueBrain> and clients connect from one server to the other if they cross borders
00:39:36 <TrueBrain> each sector-server keeps track of his piece of land
00:39:42 <TrueBrain> and the client only has a map of, say, 512x512
00:39:51 <TrueBrain> so needless to say, there is the difficulty ;)
00:40:05 <Belugas> ho... yeah :i get the picture :)
00:40:14 <Belugas> but it woul be soooooo coooooolll
00:40:15 <gfldex> you could start with registering players and keep their wallet
00:40:16 <TrueBrain> the client part is relative easy
00:40:26 <gfldex> and increase running costs
00:40:44 <CIA-5> OpenTTD: glx * r11222 /branches/noai/src/autoslope.h: [NoAI] -Fix (r11221): my text editor decided to play with me between compilation and commit
00:40:45 <TrueBrain> the main problem I have: servers would have a 2048x2048 map
00:40:47 <Belugas> simply an optical illusion :)
00:40:49 <gfldex> so you have to start little and make your way up the ladder
00:40:53 <TrueBrain> so create a 10240x10240 map, you need
00:41:02 <TrueBrain> @calc 10240*10240 / (2048*2048)
00:41:22 <Belugas> and tat will break a bit the general maparray...
00:41:28 <TrueBrain> a normal computer can run, like, 4 servers
00:41:34 <TrueBrain> so you need 7 computers :p
00:41:46 <TrueBrain> Belugas: not really a problem, with some clever calculations :)
00:42:17 <gfldex> would you let players be able to have tracks from one server to the other?
00:42:35 <TrueBrain> the easy way is to make special portals
00:42:41 <gfldex> you could implement the connections like tunnels
00:42:41 <TrueBrain> then the implementation becomes very simple
00:42:51 <TrueBrain> so a very high montain on the borders :p
00:42:54 <TrueBrain> but it is even possible to remove that
00:43:02 <TrueBrain> and make the border seemless for the client
00:43:04 <TrueBrain> but... it takes a lot of coding :)
00:43:12 <gfldex> give each train a GUID and keep a distributed mapping of players<->trains
00:43:27 <TrueBrain> gfldex: it can be done much easier
00:43:35 <TrueBrain> just at some tiles, a train is tracked by 2 servers
00:43:45 <TrueBrain> the big plus about OpenTTD is, that the game logic is 'static'
00:43:51 <TrueBrain> the same thing happens over and over and over with the same Random
00:44:02 <TrueBrain> so the main difficulty is to make this Random happen correctly
00:44:08 <TrueBrain> solution is easy: make the Random set per object
00:44:14 <TrueBrain> (so each train has its own seed)
00:44:30 <Belugas> TrueBrain: like someone told me recently "write it down"
00:44:41 <TrueBrain> Belugas: yeah, I did, in the past :)
00:44:45 <gfldex> we use IRC for a reason :)
00:45:08 <TrueBrain> I was wondering why my BNC was lagging
00:45:15 <TrueBrain> but there is a bzip process running on the host
00:45:32 <TrueBrain> anyway, when each object has its own seed (and thatone is used correctly)
00:45:39 <TrueBrain> it doesn't matter who moves it
00:45:40 <TrueBrain> they all move it the same way
00:45:44 <TrueBrain> make the same choices
00:45:53 <TrueBrain> (unsure if YAPF agree with me here, but okay, we take NTP :p)
00:45:55 <gfldex> how do you keep time in sync?
00:46:07 <TrueBrain> that is a bit tricky, you need to assume all servers make the 30 fps
00:46:14 <TrueBrain> else you need to make a general hearthbeat
00:46:16 *** Greyscale_ has joined #openttd
00:46:23 <TrueBrain> telling all servers to do a tick, and check in when they did
00:46:29 <TrueBrain> which means if 1 servers lags, they all lag
00:46:32 <gfldex> you know how CCP keeps their sol server in sync?
00:46:52 <TrueBrain> 1 sector doesn't have direct conect with the other, right?
00:47:08 <TrueBrain> so that is much easier
00:47:22 <TrueBrain> even if 1 server is 10 times as fast, nobody would really notice
00:47:26 <gfldex> when a ship leaves a system it stores its state in the DB and deregisters
00:47:42 <gfldex> then the proxy is connecting to the other sol server and that one loads that stuff from DB
00:47:42 <TrueBrain> a simple server-handoff :)
00:47:46 <TrueBrain> in this case, it is a bit more tricky :)
00:47:55 <gfldex> thats why jumping with 300 ppl is a pain in the popo
00:48:07 <TrueBrain> all MMO of this type have that
00:48:20 <TrueBrain> joining is most of the time very expensive
00:49:35 <gfldex> they want to move from ethernet to infiniband or something in that range
00:49:51 <gfldex> because then can than handle connections to the DB server transparent
00:50:22 <TrueBrain> read about it long ago
00:50:43 <gfldex> you can move one process from one host to another
00:51:12 <gfldex> if you use a clustering fs (or a DB) you have to deregister and reregister all your connections
00:51:24 <gfldex> because TCP is to stupid to handle that transparently
00:51:35 <gfldex> the limitation here is ethernet
00:51:58 <gfldex> with cluster network connections you have another layer of abstraction
00:52:17 <gfldex> and that means you can move a connection from one host to another, without closing the connection
00:52:31 <TrueBrain> yeah, but still the same amount of data needs to be send
00:52:37 <TrueBrain> I mean, you can solve it easier
00:52:51 <gfldex> true but you dont have to talk to the DB anymore
00:52:59 <TrueBrain> instead of doing it via the DB, let the leaving sector server pack the data it is using and send it to the joining server
00:53:03 <gfldex> the two hosts involed can handle that between each other
00:53:05 <TrueBrain> avoids the talk to the DB also ;)
00:53:21 <TrueBrain> but okay, it is basicly the same, what I say and what you say :)
00:53:22 <gfldex> thats what they want to do
00:53:36 <gfldex> IBM is doing that for ages on the mainframe
00:53:38 <TrueBrain> I am suprised they aren't doing that ...
00:54:02 <TrueBrain> the only question is: do they have the player-data in a single struct or is it spread all over the place :p
00:54:06 <gfldex> they use ethernet and windows
00:54:20 <gfldex> under linux you can have loads and loads of IPs
00:54:30 <gfldex> you could make the connection transparent with some arp spoofing
00:54:50 <gfldex> that's not possible with windows
00:54:57 *** Greyscale_ has joined #openttd
00:55:04 <TrueBrain> are they servers running on Windows?!
00:55:20 <gfldex> there was a funny video
00:55:24 <TrueBrain> I expected more of them...
00:55:36 <gfldex> do you know that marketing guy from CCP? magnus something?
00:55:44 <TrueBrain> I know very little about CCP
00:56:02 <gfldex> he was asked (in a vid) if they did well with the choice of MSSQL
00:56:21 <gfldex> and he was sitting in front of that camera for 20 sec thinking what he should say
00:56:37 <TrueBrain> there is no good word
00:56:46 <TrueBrain> I have worked for this company
00:56:52 <TrueBrain> and all their servers were normal user-servers
00:57:10 <TrueBrain> why? Because it had MSSQL running
00:57:12 <TrueBrain> how many users? Just 5
00:57:22 <gfldex> MSSQL is a benchmark DB
00:59:35 <TrueBrain> hmm, I remember reading they used MSSQL several years back
00:59:39 <TrueBrain> then I already laughed my ass off
00:59:44 <TrueBrain> I expected they had moved by now...
01:00:41 <gfldex> the whole point of MSSQL is that you can't move off
01:00:48 *** David_McMahon has joined #openttd
01:00:49 <gfldex> vendor lockin as it's best
01:02:29 <Belugas> Sacro, i keep on looking at that picture :) it's incredibly good looking
01:03:03 <Belugas> it feels strange to see it been used on ottd by a non dev :D
01:03:16 <ln-> wtf, i tried to install FreeBSD on vmware, and after a successful-looking installation it just says "can't load 'kernel'" after reboot.
01:03:37 <ln-> i tried again, same result.
01:05:29 <ln-> "FreeBSD на VmWare плохо работает" says google
01:05:40 <TrueBrain> now that makes sense
01:06:03 <ln-> "FreeBSD na VmWare ploha rabotayet"
01:06:15 <TrueBrain> still not understanding
01:06:42 <gfldex> i'm sure you can figure that one out
01:06:51 <TrueBrain> I can a lot, but I am lazy :p
01:07:10 <mcbane> rabotayet = working or something similar?
01:07:12 <glx> "FreeBSD works in VmWare" or something like that
01:07:54 <glx> oh yes I miss the important bit ;)
01:08:19 <ln-> and neploha would be good
01:08:20 <mcbane> well i know a few croatian =)
01:12:37 <ln-> well, i'll pick another *BSD then.
01:22:32 *** Greyscale_ has joined #openttd
01:28:31 <TrueBrain> oh well, time to get some sleep :)
01:28:34 <TrueBrain> it was nice talking to you gfldex :)
01:30:53 *** Eddi|zuHause3 has joined #openttd
01:32:46 <toresbe> "ya tvoy sluga, ya tvoy robotnik"
01:35:13 <toresbe> Kraftwerk quoted it, I believe.
01:35:44 <toresbe> it is from Karel Capek's play R. U. R.
01:37:23 <CIA-5> OpenTTD: belugas * r11223 /trunk/src/industry_map.h: -Fix[FS#1306]: Rename and refactor adequately a function that actually returns void and set bits (smatz).
01:38:22 <ln-> and funny that слуга is a masculine, but it is.
01:52:31 *** Diabolic-Angel has quit IRC
02:27:18 <ln-> done watching ST: TNG season 2 [x]
02:28:21 <ln-> warning: the last episode of season 2 is the worst of all times.
02:33:51 <ln-> interesting, Dr. Pulaski, the 2nd season doctor has acted in a few episodes TOS, too.
03:04:26 *** Greyscale_ has joined #openttd
04:18:52 *** De_Ghost has joined #openttd
04:59:15 *** Greyscale_ has joined #openttd
05:19:41 *** DaleStan has joined #openttd
06:13:08 *** Greyscale has joined #openttd
06:23:06 *** Greyscale has joined #openttd
07:05:38 *** Deathmaker has joined #openttd
07:09:10 *** gfldex_ has joined #openttd
07:24:28 *** Alberth has joined #openttd
07:34:00 <Alberth> hai all, anybody a clue how to prevent a computer player stealing my airport space when removing it for an upgrade?
07:34:42 <mcbane> buy the area you wanna build on later.
07:37:08 <Alberth> i did, a nice 7x7 space. then I put a 6x6 city airport on it (which was overcrowded quite quickly). When the bigger airport became available I wanted to replace my city airport, so I removed it to select and place the bigger one. However in less than a second, a computer player dumped its own city airport exactly where my old airport was.
07:37:22 <Alberth> or can i buy tiles under an airport?
07:40:29 <Wolf01> use the cheat menu and blow up the ai airport
07:41:35 <Alberth> Often, this cannot happen. There are at most 2 airports in a city, and usually there is another airport besides mine. Since my airport name (and probably also the underlying data structures) linger around long enough for me to put the upgrade in place.
07:42:32 <Alberth> in the mean time a third C player cannot create a 3rd airport
07:43:42 <Alberth> cheating would be an option (in this case), but shouldn't there be a way to handle this gracefully?
07:43:43 <Wolf01> try connecting the airport to some adjacent bus stations, so you can keep the name and the ai shouldn't put there his own.. at least if he doesn't know that pressing ctrl allow to place a station adjacent to an opponent one eheh
07:44:53 <Alberth> should do some reading up on cheats...
07:45:20 <Wolf01> is not a cheat, is a feature
07:45:50 <Alberth> your idea of adding another station should work. Will keep it in mind for the next time
07:46:11 <Alberth> cheats, feature, it's all a matter of definition...
07:51:02 <Alberth> I've been thinking about having the ability to do some form of planning ever since playing Sim City, and this is another case. Wouldn't it be great if you could sketch a new layout of tracks/airports ( :) ) on the tiles, kind of making a plan? I have a vision of blue lines lying on top of the real world. Then, once you are happy with it, you can do the actual construction.
07:51:34 <Alberth> (although I do like the challenge of upgrading a rail plan without disrupting traffic)
07:59:52 *** Greyscale has joined #openttd
08:22:53 *** |Bastiaan| has joined #openttd
08:22:54 <mcbane> beluga:s paperw.grf is disabled (description is papermill and paperworks for normal climates)
08:23:42 <mcbane> *paper on temperate climeate
08:26:02 <Rubidium> where would somebody be able to download that newgrf?
08:27:47 <Rubidium> what don't you understand of that sentence?
08:29:25 <mcbane> well somone who wants paper paperworks and printig works.
08:32:36 <Rubidium> yes, and I wanted to look why it doesn't work, so I needed to know the place where to find it as it isn't on grfcrawler nor does google give any clue where to actually find it either
08:44:41 *** Greyscale has joined #openttd
08:48:54 <CIA-5> OpenTTD: rubidium * r11224 /trunk/src/newgrf.cpp: -Fix: GRM for cargos has registration entries for both cargo IDs and cargo bitmasks, not only cargo IDs.
08:49:55 <Rubidium> that should've fixed the newgrf being disabled
08:55:17 *** Vikthor has joined #openttd
09:02:26 *** gynterk has joined #openttd
09:03:28 *** dihedral has joined #openttd
09:11:05 *** Progman has joined #openttd
09:58:22 *** KUDr_afk has joined #openttd
09:59:20 *** plaes_ is now known as plaes
10:01:53 *** Brianetta has joined #openttd
10:07:30 *** Ammller has joined #openttd
10:10:18 *** Wolf01 is now known as Wolf01|AWAY
11:01:14 *** ChanServ sets mode: +o Bjarni
11:06:44 <Phazorx> does it make anysense - i'm getting r11216 from 11218 sources
11:07:21 <Vikthor> Phazorx: The last two commits could be in another branch?
11:07:58 <Phazorx> well not really in this case
11:10:17 <TrueBrain> will tell you which revision was the latest change in that branch
11:10:27 <Phazorx> Last Changed Rev: 11218
11:10:34 <Phazorx> Last Changed Date: 2007-10-06 09:20:27 -0400 (Sat, 06 Oct 2007)
11:10:43 <TrueBrain> the Last Changed Rev is used
11:12:08 <Phazorx> i'm looking at "file version" in exe info - Development r11216
11:12:23 <Phazorx> and if i start it it says 216 as well
11:12:42 <Phazorx> it was 218 yesterday from same source
11:13:06 <Phazorx> gcc.exe (GCC) 3.4.2 (mingw-special)
11:13:44 <TrueBrain> 11217 and 11218 are configure changes, not related to the source
11:14:02 <Phazorx> which means i need to force revision?
11:14:22 <TrueBrain> nobody can have a 11218 version
11:14:26 <Phazorx> cuz i cant connect to server that runs 218
11:14:55 <TrueBrain> lol, bug in nightly system
11:15:15 * TrueBrain puts it on his today list
11:15:28 <TrueBrain> Phazorx: so yeah, you need to force it :p
11:15:34 <hylje> TrueBrain: that somewhat nasty bug has been around for a while
11:15:45 <TrueBrain> hylje: it happens rarely
11:15:45 <hylje> TrueBrain: happens with anything that doesn't touch trunk
11:15:53 <TrueBrain> hylje: that aint true
11:16:04 <hylje> when the nightly revision is a change on trunk
11:16:34 <hylje> but when it isn't, a configure on trunk produces the last revision that touched trunk
11:16:56 <TrueBrain> hylje: so, it only happens when something touches trunk, but not trunk/src
11:17:04 <TrueBrain> if it hits anything else, it works as intended
11:17:43 <TrueBrain> and this happens rarely, as most commits are in src/
11:18:07 <hylje> well i'm not sure whether just that bug had been fixed in the past, but thought i'd let you know
11:18:38 <TrueBrain> the only bug here is that when a commit changes trunk/, but not trunk/src, and the nightly kicks in
11:18:41 <TrueBrain> revisions are wrong
11:19:19 <hylje> rev x changed non-trunk, rev x became nightly, configure autodetects rev y on trunk
11:19:37 <TrueBrain> that doesn't happen
11:19:43 <TrueBrain> when a commit is done to any of the branches
11:19:47 <TrueBrain> the nightly doesn't get that revision
11:20:02 <TrueBrain> and that is for as long as the new nightly system is there.. which is almost a year
11:20:19 <TrueBrain> it was never broken
11:20:32 <TrueBrain> "svn info $svn_dir | grep "Last Changed Rev" | cut -c 19-" <- this is used to get the revision
11:21:51 <TrueBrain> Phazorx: I hope to have a fix in place that should prevent this from ahppening again
11:21:57 <TrueBrain> of course that is hard to notice, as it happens rarely :)
11:22:15 <Phazorx> i was thinking i am going nuts after second recompile
11:22:24 <TrueBrain> hehe, I can understand that :)
11:22:51 <TrueBrain> the nightly system still bypasses the revision-check of the configure, which was needed long long ago
11:22:59 <TrueBrain> I wonder if I can remove it now... :p
11:23:17 <TrueBrain> (in the old days, we needed to run some custom patches on the Makefiles in order to make the compile-farm to work correctly for some targets)
11:23:32 <TrueBrain> (Makefile change == M after revision, not ideal ;))
11:33:14 <SmatZ> wouldn't it be nice to have "dedicated" server more dedicated? maybe even with a ./configure option?
11:33:34 <SmatZ> when dedicated server has its viewport on some wrong place, like in my savegame,
11:33:55 <SmatZ> ViewportSortParentSprites eats 65% of time...
11:35:50 *** gfldex_ is now known as gfldex
11:37:31 <TrueBrain> SmatZ: newsflash, configure has a dedicated option
11:37:58 <TrueBrain> and use -vnull (or -D) and a res of 1,1
11:38:02 <TrueBrain> and you will be fine :)
11:38:11 *** skidd13 has joined #openttd
11:39:07 <Phazorx> what does power level output from power station do noe
11:39:14 <Phazorx> any affect on nearby towns?
11:39:44 *** Wolf01|AWAY is now known as Wolf01
11:40:02 <Phazorx> also how can it be - transports 199% of something...
11:42:20 <SmatZ> TrueBrain: I use -v null, -D ... not changed the resolution
11:42:28 <SmatZ> I didn't find the dedicated option
11:42:50 <SmatZ> I am like blind, thanks :)
11:45:40 <Phazorx> power plant question anyone?
11:57:23 <Wolf01> i'm doing it by hand, for all tiles :D
11:57:39 <valhallasw> why isnt lego an open dir ;)
11:57:49 <Amix> what sort of program do you use for drawing ?
12:07:06 <Alberth> any particular reason why "MoveGoodsToStation()" declaration is in economy.h rather than station.h?
12:07:36 <Rubidium> cause it has more to do with economoy than with stations
12:07:55 <Alberth> am refactoring the complex if at lines 2620-2625
12:09:36 <Alberth> ah. wouldn't it be better to move its definition to economy as well?
12:11:12 <Alberth> or is there a semantics for the *_cmd files as well?
12:12:00 <Alberth> FYI: Moving the declaration compiles fine
12:16:04 *** Wezz6400 has joined #openttd
12:16:23 *** Darkebie has joined #openttd
12:22:39 *** Frostregen_ has joined #openttd
12:28:49 *** Frostregen_ is now known as Frostregen
12:30:53 <Belugas> mcbane, thank george on my behalf (and say hello)
12:32:26 *** Diabolic-Angel has joined #openttd
12:33:04 <Phazorx> Belugas: can you tell me if powerplant output has any affect on anything?
12:34:19 <mcbane> did you see the pic i linked here?
12:43:18 *** Deathmaker has joined #openttd
12:48:11 <Amix> Wolf01: i need to know coding, how to set it to a .grf right?
12:50:29 <Amix> then set the pieces tougether somehow, right?
12:52:20 <Wolf01> i put them in a folder and use the 32bpp to load them
12:52:40 <glx> what do you want to do Amix?
12:53:12 <Phazorx> glx: can you tell me if powerplant output has any affect on anything?
12:53:41 <Sacro> hmmm, using GPU RAM as swap
12:53:43 <glx> escept it gives you money for coal
12:54:38 <Phazorx> and is there some kind of curve assosiated to estimated total production of raw industry?
12:54:57 <Phazorx> cuz i seen it going to 200%
12:54:58 <Amix> glx: i would like to make a roadset for openttd
12:56:15 <Amix> i have TvPaint for morphos. very good for pixeldrawing.
12:56:35 <glx> 32bpp -> tar (openttd 32bpp specific)
12:56:52 *** ChanServ sets mode: +v tokai
12:57:30 <Phazorx> openttd: /home/ottdcoop/svn-devserver/src/network/core/packet.cpp:136: void Packet::Send_string(const char*): Assertion `this->size < sizeof(this->buffer) - strlen(data) - 1' failed.
12:57:48 <TrueBrain> Phazorx: I believe that is a first someone managed to get that :)
12:57:48 <Eddi|zuHause3> the advantage of 32bpp is that you can draw a big or vector picture, scale it down with antialiasing, and then use that
12:57:51 <glx> Phazorx: Ammller has this problem too
12:58:01 <TrueBrain> doh, clearly I was wrong :p
12:58:12 <Phazorx> glx: it's coop's dev box
12:58:24 <TrueBrain> someone is exceeding the max packet-size :)
12:58:24 <Phazorx> most liekly Ammller's issue is same one
12:58:55 <TrueBrain> the packet-buffer can't store the string it wants to send :)
12:59:09 <Phazorx> and it wasnt the case when a player has recently joined
12:59:12 <Amix> glx: i have a bitmap drawing program
12:59:22 <Ammller> Phazorx: do you have a idea how to reproduce it?
12:59:29 <Phazorx> 20 minute after last player
12:59:33 <glx> but I have a patch to show what it wants to send
12:59:34 <Amix> glx: both deluxe paint for amigaos and tvpaint are pure bitmap drawing programs, like Paint is
12:59:41 <Phazorx> Ammller: they say it's client sending soemtihng oversized
13:00:04 <TrueBrain> glx: it wants to send more than SEND_MTU bytes... which is 1400... I wonder what it is it tries to send :)
13:00:08 <Phazorx> Ammller: glx/TrueBrain
13:00:19 <Amix> glx: what is the spesifications for each roadclip?
13:00:32 <Phazorx> TrueBrain: could it be C/P ?
13:00:39 <TrueBrain> Ammller: possible, yes
13:00:57 <Rubidium> glx: that diff is utterly useless
13:01:12 <TrueBrain> Rubidium: it is a nice first-indicator
13:01:25 <Rubidium> TrueBrain: yeah... we now it is the grf info packet
13:01:43 <TrueBrain> Rubidium: if you are 100% sure about that, then it is useless, yes
13:02:16 <Rubidium> but they fail to think it is important to run the server in GDB for a while, so it can crash in there so we can actually gather some information to check why it is actually caused, because they think that autopilot is more important that fixing this bug.
13:02:58 <Ammller> I just said, autopilot is needed
13:03:31 <Phazorx> can we script gdb and run it from within AP ?
13:03:44 <Ammller> we could run a server, but I guess, it won't happen, if nobody tries to connect...
13:03:56 <Rubidium> it's not somebody trying to connect
13:03:59 <Phazorx> Ammller: it isnt passworded
13:04:05 <TrueBrain> Rubidium: but if this really is grf info packet, it should happen every time someone queries it
13:04:06 *** dihedral is now known as dihedral|away
13:04:08 <Rubidium> it's somebody trying to get information of the newgrfs
13:04:39 <Rubidium> TrueBrain: it is due to a specific order of different newgrfs that are requested
13:04:43 <Ammller> TrueBrain: its not reproduceable
13:04:57 <Rubidium> Ammller: it is, *if* you know which NewGRFs are actually queried
13:05:07 <TrueBrain> isn't that order always the same?
13:05:15 <Ammller> hmm., it was one of the last
13:05:36 <glx> Ammller: do you have a server started somewhere?
13:05:45 <Rubidium> TrueBrain: if the server has GRF X, Y and Z and I've got only Y, I'm going to request X and Z, not X, Y and Z
13:06:05 <TrueBrain> how do you mean: request?
13:06:17 <Rubidium> request the name of the newgrf
13:06:22 <Ammller> glx: mozart.ammler.ch:3981
13:06:34 <TrueBrain> Rubidium: so still: one client should crash it over and over
13:07:15 <Phazorx> should crash it every time then?
13:07:17 <Rubidium> Phazorx: not necessarily
13:07:30 <Rubidium> as I said it is a SPECIFIC set of newgrfs
13:07:42 <Phazorx> Rubidium: we actualy have very few options since it is coop server
13:07:47 <Rubidium> and specific does not mean ALL newgrfs
13:07:48 <Phazorx> so either you have put pack or yuou dont
13:07:58 <Ammller> and dbg is loaded too
13:08:11 <Ammller> I could give you ssh access
13:08:12 <Rubidium> Phazorx: you can have a few NewGRFs of the pack, which causes OTTD to request other NewGRF names
13:08:31 <Ammller> just need your public key
13:08:34 <Phazorx> shall we tcpdump it or soemthing ?
13:09:19 <Rubidium> GDB is *soo* much easier
13:09:33 <Phazorx> Ammller: is running it apparentyl
13:09:56 <glx> now the goal is to "kill" it ;)
13:11:09 <Ammller> I am currently connected
13:11:56 <Rubidium> now you should hope that your server replies before the OTTD coop server
13:12:08 <Rubidium> though the might crash at the same time
13:12:17 <Rubidium> it is registered to the masterserver, isn't it?
13:13:16 <Rubidium> if it isn't, the OTTD coop server will crash and Ammller's one won't (ever) crash
13:13:59 <glx> I miss some grfs but probably the wrong ones ;)
13:14:00 <Phazorx> Rubidium: if that's the case it is gonna be harder
13:14:12 <Phazorx> since running gdb on brianettas box is demanding
13:14:13 <Rubidium> Ammller: same newgrfs as the OTTD coop server?
13:14:48 <Ammller> the pack and the update pack maybe
13:14:54 <Rubidium> Phazorx: gdb shouldn't take much more CPU than without gdb
13:16:29 <Phazorx> Ammller: shall i bring back the dev box then?
13:17:16 <Ammller> hmm, yes, but also load the patch from glx
13:17:25 <Ammller> maybe its an other output on the coop
13:18:41 <Phazorx> Ammller: how do we run it then?
13:19:17 <Ammller> I runned it as usual with AP
13:19:32 <Ammller> and then "catched" the process with gdb
13:19:50 <Ammller> as you see in my paste
13:21:01 <Phazorx> do i need debug symbols compiled in?
13:21:56 <Phazorx> do i just stay in the shell or some extra commands are needed?
13:24:49 <dihedral|away> was that a tcp packet or a udp packet?
13:25:32 <Phazorx> dihedral|away: wasnt your lib :)
13:25:37 <dihedral|away> so when you query a grf
13:25:51 <dihedral|away> and it cannot resolv the id + md5sum to a name
13:25:58 <dihedral|away> it will try to send the actual file name
13:26:12 <Ammller> but it will certainly happen on your server soon or later too
13:26:14 <dihedral|away> with every subdir that it reverts to in /data
13:26:44 <dihedral|away> i was more thinking in the direction of the file name being too long
13:27:16 <Ammller> hmm, possible, they are longer since Version 6
13:27:19 <dihedral|away> so - trunkating the 'filename' it wans to send to the part behind the last / should do the trick no?
13:27:31 *** Progman has joined #openttd
13:28:09 <dihedral|away> start the server, with the same grf's, take openttdlib and query it empty the cache too
13:28:38 <dihedral|away> and then see if it happens when you query the game
13:29:34 <Ammller> hmm, its the same, when you start a client and query the server, isn't?
13:30:18 <dihedral|away> because iirc the client will onlly query the grfs if they are unknown to the client
13:30:51 <dihedral|away> but seeing that you have the grfpack in your data directory they are known to the client
13:30:53 <Ammller> with a empty datadir of course
13:31:01 <dihedral|away> that would do the same
13:31:10 * Phazorx thinks of scripting autoconnect with copiying grfs one by one
13:31:16 <Ammller> I tried that yesterday
13:31:38 <Ammller> first time, if you query there will be some unknown GRFs
13:31:39 <dihedral|away> make sure your data directorieS are cleared
13:31:49 <Phazorx> glx: how does client forces "newgrf data request from"
13:31:53 <Ammller> then you need to reload the server and all GRFs are known then
13:32:05 <Phazorx> cuz i used blank client with no grfs and it only does regular query
13:33:15 <Ammller> you don't ask me, but I would say, if the client doesn't know, he asks
13:33:40 <Ammller> and because there is a limit, he has to ask twice
13:33:56 <Phazorx> Ammller: i didnt get that
13:35:45 <dihedral|away> Ammller: i have diabled the cache on that url, so feel free to use it for testing
13:37:13 <Ammller> hmm, all GRFs loaded on first klick
13:37:24 <Ammller> do you internal load it twice, dihedral|away?
13:37:46 <dihedral|away> i query a bunch, then take what i get back
13:37:53 <dihedral|away> and query whats left over
13:38:16 <dihedral|away> i only get between 2 and 6 grf data back
13:38:27 <dihedral|away> data of 2 to 6 grf's ;-)
13:38:47 <dihedral|away> and i ask for a max of 5 i think
13:39:58 <dihedral|away> what happens if one queries a server for one and the same grf, but has that grf listed in the packet more than once?
13:41:29 <Ammller> how to reproduce that?
13:41:44 <dihedral|away> with openttdlib?
13:42:02 <dihedral|away> could make you an endless loop
13:42:33 <dihedral|away> simply by telling openttdlib to request the same grf 5 times in each packet over and over again
13:44:23 <dihedral|away> is Rubidium around?
13:45:53 <dihedral|away> what does the server do if you query it for a grf that is not loaded, but present on the filesystem?
13:46:07 <dihedral|away> will it be unable to find the grf's name and sent the filename instead?
13:46:36 *** Wolf01|AWAY has joined #openttd
13:47:02 <dihedral|away> anyway - i am going out to enjoy the sunny day for a bit
13:47:03 <Ammller> hmm, I really need to go, as you should dihedral|away :)
13:47:07 *** DaleStan_ has joined #openttd
13:47:44 <dihedral|away> i shall be back in a bit
13:48:32 *** DaleStan_ is now known as DaleStan
13:48:52 *** mikegrb has joined #openttd
13:53:05 *** De_Ghost has joined #openttd
14:05:08 <TrueBrain> what are you trying to do?
14:06:11 <TC`> make some bot give me a listof command oslt :|
14:07:58 <Eddi|zuHause3> who reads topics? :p
14:08:14 <TrueBrain> a person who wants to know things
14:08:20 *** De_Ghost has joined #openttd
14:08:29 <TC`> am, for OpenTTD 0.5.3 a need an original part of the game?
14:08:40 <TrueBrain> as for all versions
14:09:05 <Eddi|zuHause3> who reads readmes? :p
14:09:33 <Ammller> TC`: do you like to buy it from me?
14:09:54 <Phazorx> glx/TrueBrain: how/when does client forces "newgrf data request from"
14:10:12 <TC`> just* ; where i can get TTD datafiles ?
14:10:59 <TC`> why i have to buy it when ot's open :|
14:11:23 <Eddi|zuHause3> the code is open, the original graphics are not
14:11:25 <TrueBrain> the game itself is Open Source, the datafiles are not
14:11:42 <TrueBrain> if you don't like it, paint us some graphics
14:12:07 <TC`> i don't get it? free-game-downloads.mosw.com/abandonware/pc/strategy_games/games_t/transport_tycoon_deluxe.html
14:12:24 <TrueBrain> @kick TC` Sorry, but we don't link here to illegal software
14:12:24 *** TC` was kicked by DorpsGek (Sorry, but we don't link here to illegal software)
14:12:46 <Eddi|zuHause3> there is no such thing as abandonware...
14:13:13 <glx> Phazorx: when you click refresh and you have "unknown" grfs
14:13:13 <TC`> no realy i don't get it. The game is quite old.
14:13:27 <Eddi|zuHause3> copyright is very clear...
14:13:28 <Sacro> TrueBrain: actually, with them you have to pay $4.95 for their "service"
14:13:37 <Sacro> i saw it in a shop in town for that much
14:13:40 <Eddi|zuHause3> it holds the lifetime of the author, plus 70 years
14:13:48 <Eddi|zuHause3> if the game is older than that...
14:13:52 <Phazorx> glx: i tried conenctign with blank client (no grfs aside of mandatory ones) and it didnt do that
14:14:07 <TC`> You are all from USA talking right now, right?
14:14:20 <Eddi|zuHause3> no, almost nobody here is from USA
14:14:37 <Eddi|zuHause3> that's the EU law
14:15:07 <Ammller> cu, need to go to a "Schützenfest"
14:15:18 <Eddi|zuHause3> shoot something for me ;)
14:15:52 <Eddi|zuHause3> or alternatively, bang the "Schützenkönigin" :p
14:17:39 <TC`> ok tell to LTU guys that they should care about rights..
14:19:38 <Phazorx> you are from /lt, you should tell them
14:20:09 <TC`> at schools we use 98win :|
14:20:25 <TC`> my sugestion would be to use linux
14:20:38 <Phazorx> quite a change from win98
14:20:50 <Phazorx> anyway - you can get ttd files if you want
14:21:01 <Phazorx> but it is your choice to respect the author who made the game
14:21:35 <TC`> You see, i would respect any author
14:21:44 <TC`> if our goverment would respect us
14:21:48 *** Tefad_ is now known as Tefad
14:22:03 <TC`> our IT educational program is way behind..
14:22:13 <TrueBrain> and what has your gouverment to do with the author of software not living in your coutnry?
14:22:25 <TrueBrain> it is like: it is okay to kill me neighbour, as my gouverment doesn't respect me
14:23:18 <Sacro> hmmm, killing neighbours eh
14:23:42 <TC`> the point is that goverment steals from us, so we can't live without stealing and making a living from it.
14:24:20 <TrueBrain> even better: I am allowed to heist a bank, as the gouverment steals from me!
14:25:20 <Phazorx> goverment always steals from you
14:25:26 <TrueBrain> by definition, yes :)
14:25:31 <Tefad> do we still not know who has rights to ott property?
14:25:34 <Phazorx> they even legalized it and called it "taxes"
14:25:49 <TC`> no realy. have you heard that some lt biat*h put lithuanian goverment to strasburs court for not letting her to change her sex.. anyway she won and now OUR goverment has to PAY for her surgery to change sex.. like 20'000 Lt (7000euro) isntead of investing that money into our children PROPER EDUCATION!
14:25:51 <Tefad> most governments give back to citizens though
14:26:24 <Tefad> my government is bent on meddling in things they really shouldn't
14:26:30 <TrueBrain> how many people are in that country? What? 5? So you each have to pay 1200 euro for that person
14:26:56 <Rubidium> TC`: it's not better than in virtually any other country
14:27:06 <TrueBrain> TC`: be glad you live in freedom
14:27:09 <TrueBrain> that you can say such things
14:27:19 <TrueBrain> last week several Monks are killed because they tried to say things like this
14:27:25 <TC`> wikipedia.org/lithuania all answears about my country
14:27:28 <TrueBrain> as long as that is happening, you have absolutely no right of speaking
14:28:29 *** Greyscale has joined #openttd
14:28:41 *** Wezz6400 has joined #openttd
14:28:44 <TC`> TrueBrain my country people fighted for the freedom of speanking from russia
14:28:49 *** Eddi|zuHause has joined #openttd
14:29:19 <TC`> 1991 russia accepted our independency
14:30:05 <Phazorx> that was soviet union rather than russia
14:30:10 <TC`> just then, but our documents where made in 1989 (constitution) and iceland was the first who acepted our independency
14:30:17 <Phazorx> and does it really matter which goverment steals from you?
14:30:43 <TC`> did you know that they started again "the cold war'
14:31:03 <Phazorx> well very inetresting
14:31:09 <TC`> they made a vacum bomb which is few times powerfull then a atomic bomb
14:31:16 <Phazorx> i alwys thought these who invade
14:31:25 <Phazorx> like iraq or afganistan
14:31:28 <Phazorx> are ones starting the war
14:31:45 <Phazorx> rather than tghese who emphisize on protecting their borders
14:32:10 <Phazorx> TC`: i mean general concept of starting thwe war is not in building defence forces but in aactualy attacing someone
14:32:29 <TC`> if you want to understand what's happening in real, first you have to know historical facts
14:32:52 <Phazorx> so if you build a fence - that is defence,and if you higher a mercenary to take out neighbours dog that is attack
14:33:57 <TC`> Phazorx you're to much naive
14:34:34 <TC`> it's like for counter-atacking
14:35:06 <Eddi|zuHause> technically, a threat of counter-attacking is defense...
14:35:14 <TC`> rather than making bombs they could spend more money to space program
14:35:25 <Eddi|zuHause> which is why the cold war was cold, not hot
14:35:26 <Phazorx> having a gun is not an attack, as well as telling everyone you have a gun
14:35:46 <Eddi|zuHause> each side was afraid that the other side could launch a counter attack
14:36:07 <TC`> well that is quite stupid, Eddi|zuHause
14:36:26 <Eddi|zuHause> who said that politicians would be intelligent? :p
14:36:55 <TC`> Eddi|zuHause that is the point :)
14:37:28 <Eddi|zuHause> Phazorx: try to go into a bank, and tell you have a gun :p
14:37:53 <Phazorx> Eddi|zuHause: i can call the bank i say that
14:38:03 <Phazorx> or i cann pass it via a friend of mine
14:38:08 <TC`> Eddi|zuHause, buh here if you are a local person they won't believe (;
14:38:14 <Phazorx> bringing the gun and stating that would be a form of attack
14:38:26 <Phazorx> rather than information that i have means to defend myself :)
14:38:57 <Eddi|zuHause> i don't think the fact of you having a gun or not is really unimportant :p
14:39:20 <Phazorx> i think war warm or cold is based more on desire to attack rather than having means for it
14:39:25 <TC`> seriously i think you can bring a gun in the bank. But till you won't stick it out, nobody woun't blame oslt (;
14:39:47 <Eddi|zuHause> there's one too many negations in my sentence
14:40:10 *** |Bastiaan| has joined #openttd
14:41:43 <Phazorx> TC`: which basicaly means that the action is what actualy means sometihng
14:42:03 <Phazorx> rather than information
14:47:42 <TC`> how much does it cost? ttd ?
14:47:55 <Phazorx> it is kidna hard to find
15:03:38 <glx> "SUITABLE FOR PLAY ON WINDOWS XP" <-- that makes me wonder if they are selling ttdp
15:07:17 <SmatZ> the comment under TTO - "Europe, toy land, South America, desert", and under TTD - "were not present in the original Transport Tycoon ... monorails" ...
15:13:46 <Eddi|zuHause> that sentence does not parse...
15:17:40 <TrueBrain> it comes via Google Ads :)
15:18:11 <Sacro> would it be nice to use the loading indicator to show speeD?
15:18:19 <glx> google doesn't car if it gets money ;)
15:19:32 <SmatZ> looks like they are selling DOSBox, and showing games you can play with it... without actually mentioning what they do
15:21:11 <Rubidium> Sacro: if you want to reduce the speed OTTD runs...
15:21:13 *** dihedral|away is now known as dihedral
15:24:54 <Sacro> i have an oil refinary in the middle of the map :s
15:26:43 <CIA-3> OpenTTD: rubidium * r11225 /trunk/src/ (newgrf_house.cpp newgrf_industrytiles.cpp): -Fix: if a sprite shares the bounding box of another sprite, the offset is unsigned instead of signed.
15:31:50 *** redmonkey has joined #openttd
15:39:04 <SmatZ> it can be done, but - when something moves "fast", it is absolutally unreadable
15:39:15 <SmatZ> by fast I mean ~ 100kph
15:40:52 <SmatZ> it is readable under ~400kph
15:40:57 <SmatZ> but when the speed changes
15:42:54 <Eddi|zuHause> "blob.hpp:376: warning: assuming signed overflow does not occur when assuming that (X - c) >= X is always true" <- i thought that was fixed?
15:43:06 <SmatZ> Eddi|zuHause: fixed in trunk, not in 0.5 branch
15:43:23 <Eddi|zuHause> yes. i thougt that was fixed...
15:43:59 <Eddi|zuHause> URL: svn://svn.openttd.org/trunk
15:45:45 <Sacro> can we have coloured loading indicators over industries
15:46:00 <Sacro> so i can see instantly how much coal/iron ore my steel mill has
15:46:52 <Eddi|zuHause> Sacro: same as you can recolour other strings
15:47:09 <Sacro> Eddi|zuHause: yes, i just wondered if a dev would write the patch
15:47:15 <Sacro> or whether if i wrote it, it'd get used
15:47:53 <dihedral> which file defines who gets the engine_preview ?
15:48:30 <Eddi|zuHause> dihedral: grep your way through the code, like everyone else does
15:48:50 <dihedral> just thought someone might know out of the top of their head
15:50:04 <Sacro> hmm, 626T of coal waiting to be processed
15:50:14 <Sacro> i think i may be overloading this coal power plant
16:06:13 <Bjarni> dihedral: it's engine.cpp (I think)
16:06:46 <Bjarni> I forgot which function though, but once you found it, you are sure that it's there
16:11:45 *** Wezz6400 has joined #openttd
16:15:58 <dihedral> i am just trying to find a way to stop the game offering me ships when max_ships is at 0
16:18:53 *** Progman has joined #openttd
16:19:22 <SmatZ> dihedral: void EnginesDailyLoop()
16:23:02 *** nairan is now known as mcbane
16:37:37 <Bjarni> dihedral: you should make it more general so it checks if the vehicle type can be build and not only check if it is ships
16:37:46 <Bjarni> imagine somebody disabling aircraft ;)
16:38:01 <dihedral> Bjarni: that's what i am wanting to do
16:38:11 <dihedral> i dont do dirty fixes
16:38:21 <dihedral> i prefer clean coding
16:38:33 <dihedral> no reason to be proud of what one has coded otherwise
16:38:40 <Bjarni> well, it's not everybody who works like us :)
16:38:47 <dihedral> one should be able to tell by my last patch :-)
16:39:14 <Vikthor> dihedral: Do you plan to allow for different vehicles for different players?
16:39:39 <Vikthor> like palyer #1 can build only aircrafts and #2 only ships?
16:40:07 <Bjarni> I don't think that is an issue as you can't disallow a vehicle type for one player only
16:40:32 <dihedral> i plan to not display a new engine preview if none of those engines can be built due to max_ships, etc
16:41:34 <Vikthor> aha, I have probably misunderstood what you are trying to achieve.
16:42:01 <dihedral> i just dont understand why i should get a preview offer for ships, if max_ships is = 0
16:45:51 <Betalord> when you get a lot of money, like 100 million dollars, there should be some way to spend it, like invest it in something, perhaps in stocks or some new expansive projects
16:46:15 <Betalord> because currently you can't even spend all the money you are making, there is just nothing to do with your money
16:46:37 <Betalord> once you reach 100 mio or so, there is nothing more to do ... only to make more money, which you can't spend anyway
16:46:48 <Betalord> so, come up with something to spend money ;)
16:47:05 <mcbane> spend money on industry funding =)
16:47:06 <dihedral> Betalort: start playing bigger maps and harder settings
16:47:23 <dihedral> add a freight weight multiplayer
16:47:23 <Betalord> founding new industries is cheap once you reach 100 mio, so that doesn't count
16:47:28 <dihedral> then your running cost goes up
16:47:49 <dihedral> on hard settings 100 mio aint that much
16:47:49 <Eddi|zuHause> dihedral: don't just suppress the preview, suppress the availability in any case
16:48:12 <Betalord> ah, I guess I don't play on hard settings ...
16:48:19 <dihedral> because the patch setting can max_ships etc can be changed in game
16:48:27 <Betalord> but anyway, wouldn't be nice to be able to spend your money somehow?
16:48:47 <Eddi|zuHause> dihedral: that can be followed by "reset_engines"
16:49:06 <Bjarni> Eddi|zuHause: it doesn't really matter
16:49:16 <dihedral> so i should take all disabled engines out of _engines[] ?
16:49:23 <Bjarni> what matters is that you will get a popup about an engine you can't build anyway
16:49:48 <Eddi|zuHause> yes, and if you disable the popup, you still get the newspaper a year later
16:50:04 <Bjarni> well, just disable the news and popup about engine types you can't build
16:51:13 <dihedral> Eddi|zuHause: are you sure
16:51:19 <dihedral> i never get the newspapers
16:51:27 <Betalord> what about funding a new city perhaps, for some crazy amount of money? like 50 mio, or even more
16:51:42 <Eddi|zuHause> you can only disable the newspaper for all vehicles...
16:51:43 <dihedral> Betalord: 100 mio aint anything
16:52:02 <dihedral> Eddi|zuHause: have you seen newspapers for disabled engines?
16:52:19 <dihedral> i.e. max_ships = 0 and you got the newspaper ?
16:52:32 <Eddi|zuHause> i don't think i ever set that...
16:54:15 <Betalord> ok, 100 mio dollars to fund a new city, and you becoming a mayor (meaning you control the local authorities, meaning you never get problems with it)? What do you think?
16:54:39 <Bjarni> look at last line of NewVehicleAvailable() (engine.cpp:344 in my source)
16:54:42 <dihedral> Betalord: may i invite you to play on ne of my games?
16:55:05 <Bjarni> disable the popup here if the max is 0 and the player will not get the newspaper for this type
16:56:12 <Bjarni> basically add (if (e->type.max == 0) return;)
16:56:17 <Bjarni> you know how to write that ;)
16:56:29 <Bjarni> write that idea just before the news line
16:56:45 <dihedral> and before the preview window
16:56:52 <dihedral> i.e. at the beginning of the function?
16:57:08 <Bjarni> that's not what I meant
16:57:23 <dihedral> in if (e->flags & ENGINE_EXCLUSIVE_PREVIEW) {
16:57:47 <Bjarni> you need to do two things. One is to prevent the exclusive rights window and the other one is to prevent the newspaper telling about the engine
16:57:57 <Bjarni> I'm talking about dealing with the latter issue
16:58:19 <dihedral> but can i not use the same call for the first thing too?
16:59:11 <Bjarni> the if(something) would contain the same in the "something"
16:59:27 <Bjarni> a check to see if the type is buildable
16:59:48 <Bjarni> well, it would be if(!something)
17:01:51 <dihedral> so (e->flags & ENGINE_EXCLUSIVE_PREVIEW && e->type.max )
17:02:06 <dihedral> and anything > 0 would be true
17:02:38 <dihedral> that would be for line 299
17:02:41 <Bjarni> wouldn't it be enough to just add:
17:02:55 <Bjarni> if (e->type.max == 0) return;
17:03:06 <Bjarni> on the line just before AddNewsItem()
17:03:27 <dihedral> no because i would still get the preview offer, no?
17:03:29 <Bjarni> then the game will internally treat the new engine like now (which works) and then just skip the news display
17:03:54 <Bjarni> you should also do this for the preview window, so you should make this check in two places
17:04:03 <Bjarni> I'm not talking about replacing what you already did
17:04:08 <Bjarni> I'm talking about an addition to it
17:04:14 <dihedral> what should line 321 do?
17:05:12 <Bjarni> don't care about it. It will make the engine available, but since max is 0, the game already have a big don't care for this flag
17:05:26 <Bjarni> so just make the game set this flag
17:05:32 <Betalord> Bjarni, do you read PM?
17:06:02 <Bjarni> too busy to reply to a "hi" :P
17:06:07 <dihedral> and do i not have to add a check to EnginesDailyLoop
17:07:19 <Betalord> heh, sure. Did you consider that "autoreplace only old vehicles" idea I wrote about yesterday?
17:07:42 <Bjarni> but I didn't really do anything about it
17:09:57 <Bjarni> dihedral: looks like you should do something similar to prevent the game from reaching line 258 "ShowEnginePreviewWindow(i)"
17:11:00 <dihedral> line 237 = if (e->flags & ENGINE_EXCLUSIVE_PREVIEW && e->type.max) {
17:11:56 <Bjarni> that should do it (I guess)
17:12:14 <Bjarni> ensure that e->type.max actually works... you should likely write it in a different way
17:12:28 <Bjarni> I recall e->type to be a byte
17:13:23 <Bjarni> so you should likely make a function for this check
17:13:47 <Bjarni> verifying that it's a valid engine type with an assert and all that
17:14:20 <Bjarni> no, that shouldn't be needed
17:14:38 <Bjarni> the engine array should only contain player buildable vehicle types
17:15:06 <dihedral> Bjarni: again, i can change the patch max_ships in the game...
17:15:21 <dihedral> so then _engines would have to be rebuilt
17:15:24 <Bjarni> so you should make a function to find the right max [type] setting based on e->type and return that value
17:15:53 <Bjarni> that would be the logical place
17:16:04 <Bjarni> as it's only used in this file
17:16:10 <dihedral> i have no idea, man - i aint a c/c++ guy :-P
17:16:28 <glx> didn't check but it's a guess
17:17:13 <Bjarni> but it's possible that it's in some other file
17:17:32 <dihedral> well - then i can grep fro e->type
17:17:49 <Bjarni> you should grep for max_ships
17:17:53 <Bjarni> or something like that
17:18:18 <dihedral> the function would have to be similar to GetFreeUnitNumber (vehicle.cpp:2430)
17:18:20 <Bjarni> checking if it is in a function that returns the max based on an input of a vehicle type
17:18:25 <glx> CanBuildVehicleInfrastructure() uses something like that
17:18:47 <dihedral> glx: which file:line ?
17:19:34 <Bjarni> case VEH_TRAIN: max = _patches.max_trains; break;
17:19:34 <Bjarni> case VEH_ROAD: max = _patches.max_roadveh; break;
17:19:34 <Bjarni> case VEH_SHIP: max = _patches.max_ships; break;
17:19:34 <Bjarni> case VEH_AIRCRAFT: max = _patches.max_aircraft; break;
17:19:36 <Bjarni> default: NOT_REACHED();
17:19:41 <Bjarni> change this info a function
17:19:57 <Bjarni> vehicle type as input and returns the max for this type
17:20:14 <Bjarni> that's basically what you need and we can avoid double code
17:20:15 <glx> yeah this code is already duplicated ;)
17:21:34 <Bjarni> dihedral: are you following what we are saying?
17:21:49 <dihedral> i saw the switch case
17:21:52 <dihedral> yes that makes sense
17:22:17 <dihedral> and that switch occures a few times in that file
17:22:33 <Bjarni> hmm, that function contains duplicated code
17:22:46 <Rubidium> yup, Bjarni it's all your fault ;)
17:22:49 <Bjarni> the first line is an assert based on type
17:22:59 <dihedral> so if i make another function with that switch, that returns the max value i can replace the switch with calling the function
17:23:23 <Bjarni> next time type is used is the switch and then default asserts with a NOT_REACHED()
17:23:44 <Bjarni> <Rubidium> yup, Bjarni it's all your fault ;) <-- why?
17:24:30 <dihedral> of what type is the max value
17:24:35 <dihedral> i mean - what am i returning?
17:24:56 <Bjarni> isn't it odd of use UnitID?
17:25:39 <Bjarni> well, it ensures that it will always use something that can contain the max number of vehicles
17:25:44 <Rubidium> Bjarni: good question ;)
17:26:14 <Rubidium> I'd make that function return a uint
17:27:00 <Bjarni> it's not like size matters in the return value
17:27:22 <Rubidium> not at this point, but it is bound to change sometime
17:27:23 <Bjarni> 16 or 32 bit... just make sure that it's big enough to avoid overflow and uint will do that
17:28:02 <dihedral> what does NOT_REACHED() do?
17:28:12 <Rubidium> crash the application really hard
17:28:14 <Bjarni> it's like an assert() that always fails
17:29:03 <Bjarni> ensuring that a bug will be detected right away instead of corrupting the data and causing odd behaviour later, which makes it harder to backtrack the issue
17:29:34 <dihedral> so i should keep that in there
17:30:10 <Bjarni> then the game will die if you call the function with a VEH_SPECIAL or something
17:33:46 * Bjarni wonders why mcbane didn't look at the user list
17:36:23 *** Brianetta has joined #openttd
17:36:36 <mcbane> i did but not close enouth it seems.
17:36:56 * Sacro is enjoying newindustries
17:37:00 <Sacro> though i get confused :(
17:38:24 <Betalord> how can I change my player name in-game?
17:38:36 <Eddi|zuHause> hm... 1TB HDD for half price... that sounds funny ;)
17:39:11 <dihedral> Betalord: wiki.openttd.org
17:41:27 <glx> open console, type "name newname"
17:43:33 <dihedral> Bjarni: can you point me to a windows c compiler?
17:57:16 <huma> Bjarni: how's your catcam? :)
18:00:13 <CIA-3> OpenTTD: miham * r11226 /trunk/src/lang/ (16 files in 2 dirs): (log message trimmed)
18:00:13 <CIA-3> OpenTTD: -Update: WebTranslator2 update to 2007-10-07 19:56:41
18:00:13 <CIA-3> OpenTTD: afrikaans - 48 fixed, 160 changed by TrueTenacity (208)
18:00:13 <CIA-3> OpenTTD: american - 5 fixed by WhiteRabbit (5)
18:00:13 <CIA-3> OpenTTD: brazilian_portuguese - 5 fixed by tucalipe (5)
18:00:14 <CIA-3> OpenTTD: bulgarian - 1 fixed by thetitan (1)
18:00:16 <CIA-3> OpenTTD: catalan - 5 fixed by arnaullv (5)
18:02:23 <dihedral> how do i ./configure in windows?
18:11:39 <SmatZ> eg. is it worth porting patches from trunk to 0.5 branch?
18:20:47 *** Greyscale has joined #openttd
18:22:58 <dihedral> well - sh is complaining about my homepath...
18:23:07 <dihedral> and does not want to do anything
18:26:55 <huma> dihedral: yet you're using it :)
18:27:02 *** Vikthor has joined #openttd
18:27:18 <huma> then the hate rate isn't high enough, i think :)
18:27:30 <dihedral> no - the hate rate is high enough
18:27:43 <dihedral> but the love rate of css and hl2 is forcing me
18:28:10 <huma> css? what it has to do with windows?
18:30:30 <dihedral> i cannot play counter strike source on any other os?
18:30:57 <dihedral> otherwise i am happy with my power book :-)
18:31:33 *** Frostregen has joined #openttd
18:57:38 *** Wolf01|AWAY is now known as Wolf01
18:59:45 <mcbane> just noticed that the DB set v0.82 (XL) has not all refit options (like in brik industries + pikka (both needed together) missing gravel and clay for transport wagons)
19:02:55 <mcbane> the db set also works with esc but there are also not all cargos to refit as option
19:03:23 <glx> I never said it didn't work
19:03:43 <glx> I just said it's not designed for all newcargos
19:18:14 *** Osai^2 is now known as Osai
19:46:29 *** Greyscale has joined #openttd
19:51:15 <Bjarni> <huma> Bjarni: how's your catcam? :) <-- ohh, I moved way past that point
19:59:14 *** RamboRonny has joined #openttd
20:06:05 *** Hendikins is now known as Hendikins|Work
20:08:14 <Bjarni> by doing something else
20:08:50 <Bjarni> like searching for easy to get cameras to use instead
20:16:10 <Rubidium> SmatZ: that is not yet known
20:58:56 *** SteamWilly has joined #openttd
21:19:02 *** Diabolic-Angel has quit IRC
21:33:33 *** Diabolic-Angel has joined #openttd
21:37:36 *** Diabolic-Angel has quit IRC
21:45:52 *** skidd13 has joined #openttd
21:54:17 *** David_McMahon has joined #openttd
21:57:24 *** Diabolic-Angel has joined #openttd
22:00:48 *** Dephenom has joined #openttd
22:12:39 <Betalord> in which year do you get intercontinental airports? :)
22:32:01 *** De_Ghost has joined #openttd
22:45:56 *** Progman has joined #openttd
22:48:18 <Markkisen> Someone said to me that I could reset the map when I play, how do I do that?
22:49:41 <Eddi|zuHause> what do you mean reset? you can start a new game if you exit to the title screen
22:50:06 <Markkisen> But someone here in this channel said something about "resetmap"
22:50:59 <SmatZ> I don't know about any function
22:51:16 <Eddi|zuHause> i don't use the console that often...
22:52:09 <SmatZ> I don't know how that function would work... reset all companies? make all towns smaller? or destroy towns and build new? reset industry production?
22:52:40 <Eddi|zuHause> SmatZ: you can start a new game with the same random seed
22:54:16 *** Markkisen is now known as MarkSlap
22:54:17 <SmatZ> is the random seed stored somewhere?
22:54:31 <Eddi|zuHause> yeah, i think so
22:55:26 <glx> there's a console command to get it
22:55:28 *** Greyscale has joined #openttd
22:56:10 <MarkSlap> I think i'd played too much OTTD now, everywhere I turn I think on a better solutionof the road or the railway
22:56:40 <MarkSlap> And I even dream about OpenTTD and how I build the most efficent and everything .D
22:56:59 <glx> it is "restart" to restart the game using the same seed
23:16:30 <Eddi|zuHause> that the graphics pack?
23:16:49 <Eddi|zuHause> could use a more descriptive filename :p
23:17:05 <Brianetta> It'll be a link on the web page if this works
23:28:13 <SteamWilly> hi. i installed ECS Agricultural vector and have some graphical problems .. the new industries are mostly colored pink
23:28:27 <SteamWilly> could anyone give me a hint?
23:28:49 <glx> how are named your TTD grfs?
23:29:53 <Eddi|zuHause> mixup between dos and windows grfs probably
23:30:01 <glx> <SteamWilly> mom <-- how to recognize a german ;)
23:30:29 <glx> well I asked for TTD ones ;)
23:31:03 <glx> but I guess you have windows one, as you are using dos version of ECSAgri
23:31:43 <Eddi|zuHause> trg?r means windows TTD
23:31:55 <Eddi|zuHause> then you have to get the grfs in the windows versions
23:34:13 <SteamWilly> i know the priciple behind it - but i accidently downloaded the wrong versions .. ;)
23:37:23 <SteamWilly> seems to work now :)
23:37:27 <Eddi|zuHause> if it's so common that grfs have a dos and a windows version, why is there no flag that can warn you if you mix them up?
23:37:50 <Eddi|zuHause> that's clearly a flaw in the newgrf spec
23:38:24 <Eddi|zuHause> then why is this not implemented?
23:39:59 <DaleStan> No one uses it, yes. For one check that 99% percent of people get right in the first place, it's way too much hassle to maintain two separate NFO files.
23:40:42 <glx> couldn't grfcodec manage this "flag"?
23:40:51 <Eddi|zuHause> this needn't even be in the nfo, the compiler could handle it
23:41:15 <Eddi|zuHause> (like a preprocessor)
23:42:04 <DaleStan> GRFCodec isn't a compiler, and it's not a "flag": It's at least three lines of NFO.
23:43:03 <DaleStan> Actually, no, that's just for the Patch version check. The palette check would still need two, though.
23:46:33 <DaleStan> For DOS files, it's < -1*6 07 8D 01 \7= 00 01 \n -1*8 0B 03 7F 01 "DOS" 00 >. For Windows, < -1*6 07 8D 01 \7= 01 01 \n -1*12 0B 03 7F 01 "Windows" 00 >.
23:47:27 <Eddi|zuHause> then i go back to my first point, it's a flaw in the specs
23:47:43 <DaleStan> And, of course, if "DOS" or "Windows" needs to be translated, then you have multiple copies of the second sprite.
23:49:09 <Eddi|zuHause> it should not be that complicated... there should be a line that says "replace this with the compiler option" [whether you want to call it a compiler or not...]
23:50:09 <Eddi|zuHause> then you just give grfcodec a flag if it compiles for dos or windows platform
23:50:21 <Eddi|zuHause> and it automatically replaces that line
23:50:37 <DaleStan> How do you determine what the decompilation should generate, then?
23:51:24 <Eddi|zuHause> does decompilation have to be exact?
23:51:45 <Eddi|zuHause> you can add a second flag that says that the flag has been set automatically
23:51:51 <DaleStan> It has to generate something that will encode to a functionally equivalent GRF.
23:52:31 <Eddi|zuHause> yes, you can decompile the line to the actual line that then says "DOS" or "Windows"
23:52:51 <Eddi|zuHause> or you can decompile it to the line that says "set this flag here"
23:53:27 <Eddi|zuHause> i don't see a problem there...
23:53:28 <DaleStan> So, now you're breaking the most common way of converting between DOS and Windows: Decode the one, and encode the other with the appropriate -m setting.
23:54:10 <Belugas> [08:35] <Phazorx> Belugas: can you tell me if powerplant output has any affect on anything? <-- none that i know of
23:54:13 <Eddi|zuHause> if you go with the second way, that should still work
23:55:10 <Eddi|zuHause> if the grf says "this is windows version", then remove that line, and give the line "replace with flag automatically"
23:55:38 <Eddi|zuHause> (could also be command line option to keep exact line)
23:56:42 <DaleStan> And how do you prevent breakage if the action B is misspelled, present multiple times, and/or not in Latin-1?
23:56:58 <DaleStan> (most likely: "Dos" vs "DOS".)
23:57:24 <Eddi|zuHause> i'm not sure why that even needs a textual representation
23:57:46 <Eddi|zuHause> just a bit that is 0 for dos and 1 for windows [or reverse]
23:57:56 <glx> Eddi|zuHause: because the grf checks the host palette and disable itself
23:57:59 <Eddi|zuHause> there are not exactly any other options out there?
23:58:34 <huma> why can't i build a helidepot?
23:58:46 <DaleStan> Because that's the way action B works: "This file is designed for the \80 version of TTD. \00"
23:58:58 <huma> but heloport is available
23:59:40 <Eddi|zuHause> DaleStan: fine, you use the text for the message box, but you don't need it for a machine check
continue to next day ⏵