Back to Home / #openttd / 2013 / 02 / Prev Day | Next Day
#openttd IRC Logs for 2013-02-03

---Logopened Sun Feb 03 00:00:33 2013
00:07-!-St3f [] has joined #openttd
00:11<Flygon>xQR: Agreed
00:46<Flygon>MU trains that can split at certain stations?
00:46<Flygon>eg. have a mainline, then split it into two lines?
00:56-!-Eddi|zuHause [] has quit []
00:58-!-Eddi|zuHause [] has joined #openttd
01:00<Supercheese>Flygon: There's a Patch for Thatâ„¢
01:04-!-roboboy [] has joined #openttd
01:07<Flygon>There is?
01:07<Flygon>Mind = Blown
01:13<Supercheese>Lemme see if I can dig up the link
01:16<Flygon>Scuse the delays
01:16<Flygon>Been busy
01:17<Flygon>Supercheese: Issue is... that doesn't entirely work when you consider E/DMU trains that require two seperate routes
01:17<Supercheese>I'd wager it doesn't work in a few other cases too
01:18<Supercheese>Still, there is a patch/grf for most things, however hacky :P
01:19<Flygon>Everything except multiple things in one tile at once :P
01:19<Flygon>I will become a millionaire, dangit
01:19<Flygon>And I will pay peeps for features @_@
01:20<Supercheese>Spoilers: that still might not work :P
01:21<Flygon>Two million
01:22<Supercheese>You'd be better off making an entirely new game with that kind of money
01:25<Flygon>I'll fund OpenTTD2+ :P
01:26<Supercheese>I'd take your money :P
01:27<Supercheese>So anyway, making an Eyecandy Aircraft grf
01:27<Supercheese>gonna take a while, I'm working on too many things at once @_@
01:28-!-ComLock [] has joined #openttd
01:29<Supercheese>I've been inspired by this site:
01:29<Supercheese>soo many early aircraft
01:30<Supercheese>They even have stereoscopic pictures of airships in 1904!
01:31<Supercheese>3D is old
01:32<Flygon> Supercheese: 3D's happened since before 1900
01:33<Flygon>It's so trivial to do
01:33<Supercheese>2 cameras
01:33<Flygon>There's stereograms from like
01:33<Supercheese>Spaced eye's width apart, bob's yer uncle 3D pictures
01:38-!-Pikka [] has quit [Quit: Yaaic - Yet another Android IRC client -]
01:44-!-HerzogDeXtEr [] has quit [Read error: Connection reset by peer]
02:46-!-St3f [] has quit [Ping timeout: 480 seconds]
02:54-!-roboboy [] has quit [Ping timeout: 480 seconds]
03:07-!-St3f [] has joined #openttd
03:31-!-valhallasw [] has joined #openttd
03:43<@Terkhen>good morning
03:57-!-Pensacola [] has joined #openttd
04:00-!-pugi [] has joined #openttd
04:02<@peter1138>3D happened when we got 2 eyes
04:03<@peter1138>poor leela
04:05-!-andythenorth [] has joined #openttd
04:06<andythenorth>I really hate the micro-management in tetris
04:08<andythenorth>it's really limiting that there are different shapes too
04:08<andythenorth>it would flow much more smoothly if there was just one shape
04:08<andythenorth>maybe a single row of blocks, full width
04:12<andythenorth>the advantage of my idea is that it would be a much more modern play style
04:12<andythenorth>currently I can only play 1 tetris game at once, or maybe 2 sometimes
04:13<andythenorth>but with this patch, I could play literally tens
04:13<Flygon>andy, can't tell if serious
04:13<Rubidium>oh darn it...
04:14<Rubidium>... the undo knob comment in the 2.0 thread also needed a "play for me" knob
04:14<andythenorth>Rubidium: 'win game' button
04:14<Rubidium>totally forgot that important feature
04:15<andythenorth>"Win game" produced this lovely image
04:15<andythenorth>every business meeting I go to is *just* like that
04:16<Rubidium>yay computer that is connected to only thin air
04:17-!-St3f [] has quit [Ping timeout: 480 seconds]
04:17-!-Alberth [] has joined #openttd
04:17-!-mode/#openttd [+o Alberth] by ChanServ
04:18<@Alberth>good mornink
04:21<@peter1138>Rubidium, like a laptop?
04:23<Rubidium>I don't know any laptop for which you need such an external keyboard, and I doubt there's any tablet that has a connection slot for it
04:26-!-tokai|mdlx [] has joined #openttd
04:27-!-DDR [] has quit [Quit: DDR is not Dance Dance Revolution.]
04:29-!-tokai|noir [] has quit [Ping timeout: 480 seconds]
04:29-!-M1zera [] has joined #openttd
04:30<@peter1138>need, no, can, yes :p
04:35*andythenorth just solved signals in tunnels, bridges etc
04:35<andythenorth>it's obvious in retrospect
04:35<@Terkhen>just terraform instead of building tunnels or bridges? :P
04:36<@Alberth>don't use signals at all :)
04:37<andythenorth>remove them
04:37<andythenorth>1 line per train, like ttd
04:38<@Alberth>more trains at a line for more exciting sessions
04:39*andythenorth is cleaning out a sink waste pipe
04:39<andythenorth>truly disgusting here
04:39<andythenorth>what is this stuff?
04:40<@Alberth>and you're chatting at same time? I hope you covered your keyboard with some plastic beforehand :p
04:41<andythenorth>is the best word for it
04:41<@peter1138>hmm, text + opengl
04:42<@peter1138>is always a pain
04:46<@Alberth>not text + graphics in general?
04:47<@Alberth>it always seems to involve messing with text sizes that you cannot nicely express in the graphics
04:55<@peter1138>maybe i'll just save images with the text i need :p
04:56<@peter1138>(that would be a lot of images for all values from 0.0000 to 10.0000)
04:56<@peter1138>freetype-gl looked promising but bloated :S
05:03<@DorpsGek>Commit by rubidium :: r24961 trunk/src/station_cmd.cpp (2013-02-03 10:03:38 UTC)
05:03<@DorpsGek>-Fix [FS#5362] (r23564): making occupied platforms larger would make train reserve onto the newly unreserved bit and cause crashes. Now if a platform is enlarged and there is a reservation, reserve the whole platform
05:06<@DorpsGek>Commit by rubidium :: r24962 trunk/src/economy.cpp (2013-02-03 10:06:34 UTC)
05:06<@DorpsGek>-Fix [FS#5438]: Reserve all capacity while unloading to avoid 'stealing' cargo, i.e. loading cargo onto a second vehicle when the first can't be fully filled yet (fonsinchen)
05:07-!-St3f [] has joined #openttd
05:09<@peter1138>ah, the station platform fix is basically what i thought about doing
05:09<@peter1138>but i was too lazy actually do it
05:09<@peter1138>mainly cos i forgot about TileArea
05:10<Rubidium>so fix the servint issue instead ;)
05:10<@peter1138>i don't like the last change
05:11<Rubidium>is that last one really needed, or does it work without it as well?
05:11<@peter1138>it works fine without but storing the bits in the service interval itself was considered a ttdpatchism
05:12<Rubidium>so what's the other solution? besides stuffing it in a misc flags variable? Adding a new setting for two booleans, which is then just wasting another 6 bits which'll never be used (in contrast to the enlarging of the misc flags bit)
05:15<@peter1138>the only two options are stuffing the bits in the service_interval (which has plenty of spare bits), or enlarging vehicle_flags and using 2 bits there
05:16<@peter1138>storing in the service_interval means it's simpler to clone & backup
05:16<@peter1138>(although backup already copies vehicle_flags so that's not so bad)
05:17-!-ntoskrnl [] has joined #openttd
05:18-!-andythenorth [] has quit [Quit: andythenorth]
05:19-!-St3f [] has quit [Ping timeout: 480 seconds]
05:22<Rubidium>peter1138: service_interval could even be reduced (back) to 16 bits
05:23<Rubidium>and then still have enough bits for the 2 extra "states"
05:23<@peter1138>it seems it was changed to Date mistakenly
05:23<@peter1138>we won't mention who :-)
05:27<Rubidium>one of us ;)
05:37-!-RavingManiac [~RavingMan@] has joined #openttd
05:40-!-oskari89 [] has joined #openttd
05:41-!-fonsinchen [] has joined #openttd
05:55-!-Progman [] has joined #openttd
06:01-!-pauska [eps@] has joined #openttd
06:05<pauska>Is there anyone here who could explain to me what the gray cross is on certain train models in the UKRS2+ set? What does it indicate?
06:06-!-frosch123 [] has joined #openttd
06:06<pauska>Is it just a indication that it's a UKRS2+ add-on, and not from the main UKRS2 set?
06:07-!-fonsinchen_ [] has joined #openttd
06:07-!-fonsinchen [] has quit [Ping timeout: 480 seconds]
06:07-!-St3f [] has joined #openttd
06:10<frosch123>that's what i always thought
06:10<frosch123>i think the av8 addon thingie does the same
06:10<frosch123>same author, so quite likely :p
06:14<@peter1138>it's not a cross
06:14<@peter1138>it's a +
06:14<@peter1138>cos it's an add-on
06:19-!-St3f [] has quit [Ping timeout: 480 seconds]
06:27-!-pjpe [] has joined #openttd
06:32-!-pjpe [] has quit [Quit: ajax IRC Client]
06:33-!-mode/#openttd [+o orudge] by ChanServ
06:37<@peter1138>hmm, been a while since i played with opengl
06:37<@peter1138>seems non-power-of-two textures are supported
06:42-!-tycoondemon [] has quit [Ping timeout: 480 seconds]
06:43-!-pugi [] has quit [Ping timeout: 480 seconds]
06:49<ComLock>How can I get scrollbar pixel width before drawing it
06:52-!-tycoondemon [] has joined #openttd
06:58<ComLock>development question...
06:59<@peter1138>but what are you trying to do?
07:05-!-roboboy [] has joined #openttd
07:07<@Alberth>if you're trying to automagically hide scrollbars when they are not needed, don't or do it for the other 119 windows too
07:07-!-St3f [] has joined #openttd
07:10<@peter1138>oooh, no, bad idea
07:14-!-ComLock [] has quit [Ping timeout: 480 seconds]
07:19-!-St3f [] has quit [Ping timeout: 480 seconds]
07:30-!-Supercheese [~Password4@] has quit [Read error: Connection reset by peer]
07:31-!-Supercheese [~Password4@] has joined #openttd
07:33-!-KritiK [] has joined #openttd
07:35-!-Wolf01 [] has joined #openttd
07:36<__ln__>guten giorno
07:50<@peter1138>Eddi|zuHause, glad you answered that list of assorted suggestions
07:50<@peter1138>Eddi|zuHause, cos i can't read it
07:50<@peter1138>silly font colours
07:51<Rubidium>"I agree with everything that I could read"
07:55<Kjetil>colours on fonts ? Why would one do that ?
07:55-!-Progman [] has quit [Remote host closed the connection]
07:56<frosch123>because they fail to configure their look and feel
07:56<frosch123>and try to format them in a way which makes them feel it is better readable
07:57<frosch123>neglecting that they screw with the setup of others
07:57<@Alberth>well, they are *his* suggestions :p
07:59<@DorpsGek>Commit by rubidium :: r24963 trunk/src/economy.cpp (2013-02-03 12:58:57 UTC)
07:59<@DorpsGek>-Fix [FS#5435]: Do not stop loading if there are reservations left (fonsinchen)
08:03-!-glx [] has joined #openttd
08:04-!-mode/#openttd [+v glx] by ChanServ
08:07-!-St3f [] has joined #openttd
08:17-!-RavingManiac [~RavingMan@] has quit [Read error: Connection reset by peer]
08:26-!-ComLock [] has joined #openttd
08:38-!-Elukka [] has joined #openttd
09:16<@DorpsGek>Commit by rubidium :: r24964 trunk/src/pathfinder/yapf/yapf_ship.cpp (2013-02-03 14:16:45 UTC)
09:16<@DorpsGek>-Fix [FS#5416]: With YAPF the docking behaviour differed per direction; now favour docking in the direction you approached
09:22-!-pugi [] has joined #openttd
09:25-!-St3f [] has quit [Ping timeout: 480 seconds]
09:39-!-valhallasw [] has quit [Ping timeout: 480 seconds]
09:42-!-HerzogDeXtEr [] has joined #openttd
09:43<Eddi|zuHause>peter1138: i tend to mark the sentence i'm reading with the mouse, so weird font colours don't matter much at this point
10:07-!-St3f [] has joined #openttd
10:13-!-valhallasw [] has joined #openttd
10:33-!-Zuu [] has joined #openttd
10:52-!-pugi [] has quit [Read error: Connection reset by peer]
10:54-!-pugi [] has joined #openttd
10:54-!-user54367644 [~user@] has joined #openttd
11:00-!-Progman [] has joined #openttd
11:00-!-St3f [] has quit [Ping timeout: 480 seconds]
11:05-!-user54367644 [~user@] has quit [Quit: user54367644]
11:07-!-St3f [] has joined #openttd
11:13-!-ComLock [] has quit [Ping timeout: 480 seconds]
11:19-!-goodger [] has joined #openttd
11:23-!-roboboy [] has quit [Ping timeout: 480 seconds]
11:28-!-fonsinchen_ [] has quit [Remote host closed the connection]
11:31-!-Superuser [] has joined #openttd
11:36-!-TrueBrain [] has joined #openttd
11:40-!-EyeMWing [] has joined #openttd
11:55-!-andythenorth [] has joined #openttd
12:05-!-M1zera [] has quit [Ping timeout: 480 seconds]
12:15-!-snorre [] has joined #openttd
12:23-!-HerzogDeXtEr [] has quit [Read error: Connection reset by peer]
12:27-!-andythenorth [] has quit [Quit: andythenorth]
12:28-!-Snail [] has joined #openttd
12:31-!-RavingManiac [~RavingMan@] has joined #openttd
12:48-!-Superuser [] has quit [Ping timeout: 480 seconds]
12:52-!-Djohaal [~Djohaal@] has joined #openttd
12:58-!-ccfreak2k [~ccfreak2k@2605:6400:2:fed5:22:0:6979:842d] has quit [Remote host closed the connection]
12:59-!-ccfreak2k [~ccfreak2k@2605:6400:2:fed5:22:0:6979:842d] has joined #openttd
13:00-!-Snail [] has quit [Quit: Snail]
13:01-!-Superuser [] has joined #openttd
13:06-!-St3f [] has quit [Ping timeout: 480 seconds]
13:07-!-fonsinchen [] has joined #openttd
13:10-!-LordAro [] has joined #openttd
13:11-!-RavingManiac [~RavingMan@] has quit [Read error: Connection reset by peer]
13:12<LordAro>heyo all
13:12-!-Djohaal_ [] has joined #openttd
13:13-!-goodger [] has quit [Ping timeout: 480 seconds]
13:20-!-Djohaal [~Djohaal@] has quit [Ping timeout: 480 seconds]
13:21<LordAro>silly internets
13:22<@Alberth>internet is overrated anyway :)
13:23<LordAro>maybe :)
13:25<LordAro>who wants to play the 'fix-Lord-Aro's-stupid-coding-mistakes' game?
13:26<Kjetil>mr. pedantic to the rescue!
13:27<LordAro>any advice will be appreciated, it currently segfaults part-way-through a loop, due to (i suspect) memory read errors
13:27<Kjetil>tried valgrind ?
13:28<LordAro>lots and lots of errors :)
13:28<LordAro>none of them i understand the cause of :)
13:31<Kjetil>the valgrind log doesn't appear to match the current svn version
13:31<Rubidium>line 133 tells all... reading from NULL
13:32<LordAro>Kjetil: it won't be very different, it'll be +/-1 line
13:32<LordAro>Rubidium: line 133 of which file?
13:32<Rubidium>the paste
13:33<Kjetil>bmp.cpp isn't checked in
13:33<LordAro>dang, hang on
13:35<LordAro>ok, look again
13:36-!-tparker [~tparker@2600:3c03::1d:4242] has quit [Quit: brb]
13:45<Kjetil>have you checked if slpfile.header.num_shapes is more than 0 ?
13:45<@DorpsGek>Commit by translators :: r24965 /trunk/src/lang (4 files in 2 dirs) (2013-02-03 18:45:24 UTC)
13:45<@DorpsGek>-Update from WebTranslator v3.0:
13:45<@DorpsGek>catalan - 3 changes by arnau
13:45<@DorpsGek>luxembourgish - 2 changes by Phreeze
13:45<@DorpsGek>serbian - 44 changes by ivan_mile
13:45<@DorpsGek>tamil - 1 changes by aswn
13:47<LordAro>Kjetil: i have not checked, but it certainly shouldn't be (it won't be that way in the binary file)
13:49-!-andythenorth [~Andy@2002:4d66:7022:0:7964:e1d3:e25c:19c7] has joined #openttd
13:51<@Alberth>LordAro: rule 1 of reading data from external sources: check everything, in particular the 'impossible' things
13:51<@Alberth>even if just by assert() so it dies in a debug build
13:52<@peter1138>rule 2: don't assert on user supplied data
13:52<@peter1138>especially over the network
13:55-!-goodger [] has joined #openttd
13:55<@Alberth>but true, using assert that way is only useful for personal projects
13:56<@Alberth>for all other cases, report a nice error
14:01-!-andythenorth [~Andy@2002:4d66:7022:0:7964:e1d3:e25c:19c7] has quit [Remote host closed the connection]
14:01-!-andythenorth [] has joined #openttd
14:07-!-St3f [] has joined #openttd
14:19-!-ntoskrnl [] has quit [Ping timeout: 480 seconds]
14:19-!-tparker [~tparker@2600:3c03::f03c:91ff:feae:42ad] has joined #openttd
14:20-!-St3f [] has quit [Ping timeout: 480 seconds]
14:25*LordAro back
14:26-!-Pensacola [] has quit [Remote host closed the connection]
14:27<LordAro>Alberth: true, but i don't think that's the issue here...
14:30-!-pugi [] has quit [Read error: Connection reset by peer]
14:33-!-pjpe [] has joined #openttd
14:33-!-pjpe [] has quit []
14:35-!-pugi [] has joined #openttd
14:43-!-ComLock [] has joined #openttd
14:43<@peter1138>yeah, freetype & opengl...
14:44<@peter1138>or should i use that hacky ugly vector font...
14:44<Supercheese>write your own font
14:44<@peter1138>i could but...
14:46<@peter1138>hmm, what did i do last time...
14:46<@peter1138>ah, i used ftgl
14:46<@peter1138>well that shold be good enough
14:47-!-Tvel [~Thunderbi@] has joined #openttd
14:49-!-lugo [] has quit [Quit: I'm using a Free IRC Bouncer from BNC4FREE -]
14:54-!-Snail [] has joined #openttd
14:55-!-Tvel [~Thunderbi@] has quit [Remote host closed the connection]
14:55-!-cypher [] has joined #openttd
14:55-!-lugo [] has joined #openttd
14:56<LordAro>"malloc.c:4471: _int_malloc: Assertion `(bck->bk->size & 0x4) == 0' failed." any ideas?
14:57<Kjetil>probably tries to allocate zero bytes of memory
14:57<Kjetil>or something
14:58<frosch123>more likely you freed stuff twice
14:58<Rubidium>of writing beyond a buffer
14:59<LordAro>line = "slpfile.shape[i].row[j].pixel = new byte[slpfile.shape[i].info.width]();"
14:59<LordAro>width == 440 (according to gdb)
14:59<frosch123>malloc of 0 is no issue
14:59<frosch123>it results in NULL
14:59<Kjetil>frosch123: might result in NULL :P
14:59<frosch123>it does
14:59<Kjetil>some guy claimed it didn't on windows
15:00<Eddi|zuHause>i think we had that discussion a dozen times
15:00<frosch123>"If size is 0, then malloc() returns either NULL, or a unique pointer value that can later be successfully passed to free()." <- ok
15:02<@peter1138>ugh, writing code without any static is nasty
15:04<Supercheese>you need some van de Graaf code, eh? ;)
15:04<Rubidium>just pass a "Global *yuck" to all functions ;)
15:04<@peter1138>Rubidium, i might
15:05<@peter1138>i think there's only 1 case where i need the info
15:05-!-George [~George@] has joined #openttd
15:06<@peter1138>incidentally my Paint() is const
15:07-!-St3f [] has joined #openttd
15:11<Snail>hey guys
15:12<Snail>would it be possible to have var61 to work with the callback that assigns the visual effects (steam, diesel, electric sparks) of a vehicle?
15:14<Supercheese>what is var 61?
15:15<George>Is it possible to get start year and inflation from GRF&
15:16<Rubidium>start year is tricky, since it might be later than the current date
15:16<Supercheese>starting_year is available
15:16<frosch123>are you sure?
15:16<frosch123>i doubt that
15:16<Supercheese>" Years before 1920 are clamped to 1920 "
15:16<Snail>perhaps it would desync if we linked it to the info whether the wagon is powered or not (that could create circular references), but how about the mere visual effects?
15:17<frosch123>oh, via action d
15:17<Rubidium>visual effects are created randomly, so if the visual effects differ (i.e. depend on eachother) then different runs could give different results
15:18<@DorpsGek>Commit by rubidium :: r24966 trunk/src/roadveh_cmd.cpp (2013-02-03 20:18:41 UTC)
15:18<@DorpsGek>-Fix [FS#5228]: trams would get stuck on water
15:20-!-St3f [] has quit [Ping timeout: 480 seconds]
15:20<George>frosch123: Where?
15:20<frosch123>the patchvars
15:21<Snail>rubidium: but couldn't I just disable the visual effects (set them to "none") of a wagon depending on the type of another wagon in the train?
15:22<Snail>so far I'm doing this through a userbit, bit it's not very practical... var61 would be better suited for this
15:22<Rubidium>Snail: you could, but the next one doesn't and we have to chase desyncs
15:23<Snail>the next one would keep its effects untouched
15:25<Eddi|zuHause>Rubidium: var61 disabling was never about desyncs, but about "feedback loops"
15:26<Snail>I thought so too, it was about avoiding circular references
15:26<Eddi|zuHause>i.e. "a decides value based on b", "b decides value based on a"... final result depends on order of execution => you get a "stateful" machine
15:27<Snail>yes, this is why I think that visual effects should be enabled in var61. They're just an "output" thing, such as graphics or recoloring... we have the latter two, so why not visual effects as well
15:28<Eddi|zuHause>i can't really judge that
15:29<Eddi|zuHause>is visual effect readable by an 80+ var?
15:35<@peter1138>some things should be zeroed when in a callback, i guess
15:35-!-fonsinchen [] has quit [Read error: Connection reset by peer]
15:35<@peter1138>depending on the cb though
15:37-!-cypher [] has quit [Ping timeout: 480 seconds]
15:37<Snail>what do you mean by zeroed?
15:38-!-roadt_ [~roadt@] has quit [Ping timeout: 480 seconds]
15:39<@peter1138>due to dependencies
15:39<@peter1138>and stuff
15:39<@peter1138>alternatively we stop caching anything and your game grinds to a halt :D
15:40<Snail>well, it depends on how the newGRF is programmed :p
15:41<Snail>it should be up to the programmer to avoid circular references, not up to OTTD to prevent all the cases in which they "might" occur :D
15:41-!-Eddi|zuHause2 [] has joined #openttd
15:42<Rubidium>Eddi|zuHause: and because of that loop, the first loop "a" becomes 1 and the later loops "a" becomes 2. Thus someone joining later has 1 in the first loop which isn't the 2 the others have. Ergo... desync
15:44<Eddi|zuHause2>Rubidium: maybe, but the problem is bigger than that
15:45-!-Eddi|zuHause [] has quit [Ping timeout: 480 seconds]
15:47<frosch123>Snail: cool, so you know the order in which callback 36 resolves 13 different properites?
15:47<frosch123>in all cases, like loading, unloading and rearranging it in depot?
15:48<frosch123>pretty impressive i have to say
15:48<@peter1138>i know i don't
15:48<frosch123>i don't know either :)
15:49<Snail>I don't know that either of course :)
15:49<Snail>but how would this affect my programming?
15:49<frosch123>you have to know that to decide what may depend on what
15:50<frosch123>properties are updated at different times
15:50<frosch123>some at loading, some when entering a different tile with different track type
15:50<Snail>hmm, I see
15:50<Snail>yeah I see your point
15:50<frosch123>you can only make them depend on stuff which is evaluated earlier
15:50<frosch123>in all cases
15:51<Snail>but I wouldn't propose for callback 36 being activated in var61, I'd just propose the visual effects
15:51<@peter1138>that's not how it works
15:51<frosch123>visual effect is just the same as cb 36
15:51<frosch123>it's even listed in cb36
15:53<Snail>property 22?
15:53<Snail>I can also see it in callback 10 though
15:53<frosch123>the cb number makes no difference
15:54<frosch123>just making it callback 123 does not change anything
15:54<frosch123>it's a property which affects how the vehicle behaves over a longer amount of time
15:55<Snail>so I was wondering if we could have cb10 enabled in a var61 chain
15:56<frosch123>just like any cb36
15:56<andythenorth>Snail: what are you trying to do? Needing too much complexity is sometimes a bad sign :)
15:56<Supercheese>crap crap crap, my Iron ore mine here hit quadruple production, I'm never going to be able to move all this ore
15:56<Snail>I'm trying to arrange the power effects when a push-pull compliant train reverses
15:57<andythenorth>it can be a sign of implementing features with marginal value, because you've thought of them ;)
15:57<andythenorth>pikka and I have found this :P
15:57<Snail>say I have a DMU made of engines and trailers, some will have diesel smoke, some won't
15:57<Snail>when it reverses and I swap the graphics to create the push-pull effect, I need to swap the power effects too
15:58<Snail>so far I do it with a userbit, but it only works in a limited number of cases
15:58<frosch123>maybe we should just remove the 'reverse' flag to make newgrf life easier :)
15:58<Snail>I use var61 to check for the graphics and the recoloring, but I can't do it with power effects
15:59<Eddi|zuHause2>maybe we should really implement push-pull in the game, so newgrf can save all this crap
15:59-!-Eddi|zuHause2 is now known as Eddi|zuHause
15:59<andythenorth>maybe we should implement NewGRFEffects
15:59<Supercheese>Multiple smokes per vehicle etc.
15:59<andythenorth>Eddi|zuHause: what, just flip the consist?
16:00<Snail>implementing push-pull takes a large, large amount of code in my set :p
16:00<Eddi|zuHause>andythenorth: "NewGRF effects" doesn't change anything, because they still couldn't evaluate var61 (data of other vehicles in the chain)
16:00<andythenorth>herp, I only code ships this days, I am no longer familiar with vars
16:00*andythenorth spec
16:01<@peter1138>frosch123, they'd go mental
16:01<Eddi|zuHause>andythenorth: yes, options: just reverse the consist (like currently), just drive backwards (push-pull) or move the engine to the other end (with/without flipping) and drive the wagon chain backwards
16:02<andythenorth>isn't there loads of stuff requiring first vehicle to be powered?
16:02<Eddi|zuHause>frosch123: remember when we disabled turning around of engines? :p
16:02<andythenorth>or is that just FUD I've heard?
16:02<Snail>Eddi|zuHause: that'd be my dream :p
16:02<@peter1138>hmm, tooltips
16:02<andythenorth>Snail: is there nothing you can just check on the consist head?
16:02<Eddi|zuHause>andythenorth: no, it's just the first vehicle stores all the cached data (power, max speed, etc.)
16:02<andythenorth>with related
16:03<@peter1138>articulated becomes fun
16:03<@peter1138>var 0x4x become fun too
16:03<Snail>andy: it's not just the consist head
16:03<Snail>say I have a consist made of ETET (engine - trailer - engine - trailer)
16:03<Eddi|zuHause>andythenorth: what's problematic with backwards-driving is that the whole movement process loops through the vehicles, which must reverse the loop direction (or reorder the consist, making things more difficult than they need to)
16:03<Snail>1st and 3rd vehicles have power effects, 2nd and 4th don't
16:03<andythenorth>all this train crap, but still ships with only one hold :)
16:04<andythenorth>all this train crap, but still I have to fake the weight for articulated RVs
16:04<@peter1138>monolithic ships
16:04<frosch123>Eddi|zuHause: yup, all you have to do is go to the movement code, and replace the Front and Next calls with Back and PRev
16:04<@peter1138>articulated rvs still don't have weight?
16:04<frosch123>you do not need to move caches to other vehicles or something silly
16:04<Snail>when it reverses, this should flip, and so I should check each corresponding vehicle with var61 and enable/disable the smoke accordigly
16:05<@peter1138>overly complicated crap
16:05<@peter1138>i'm sure it's lovely but is it really worth it?
16:06<@peter1138>this stuff is checked every tick whenever a vehicle moves
16:06<Snail>I think it would help lots of sets to achieve better results in terms of looks, and functionality too
16:06*andythenorth examines the list of "ideas andythenorth had, but abandoned"
16:06<andythenorth>for reasons of gameplay, or meh
16:06<andythenorth>long list
16:06<Snail>we could allow push-pull trains to leave a dead-end station more quickly, so giving them an advantage
16:07<Pinkbeast>andy: "Go to basement, examine cask of Amontillado"
16:07<@peter1138>but push-pull shouldn't be handled by newgrfs fudging their graphics
16:07<Eddi|zuHause>turn around time! :)
16:07<@peter1138>just a flag
16:07<@peter1138>or i suppose a callback
16:07<Eddi|zuHause>peter1138: i've been saying that for years
16:07<@peter1138>as consists are dynamic
16:07*Pinkbeast would like an autotrain implementation indeed
16:07-!-St3f [] has joined #openttd
16:07<Snail>of course, if OTTD handled push-pull itself I'd remove all of my hackish graphics swapping :p
16:08<Eddi|zuHause>only Snail is insane enough to actually try this :p
16:08<Snail>haha :D
16:08<andythenorth>pikka does it
16:08<@peter1138>pikka did it
16:08<@peter1138>not sure he still does
16:08<Snail>Eddi: the big problem we have now is about vehicle lenghts which can only change in a depot
16:08<@peter1138>just individual vehicles flip
16:09<Eddi|zuHause>andythenorth: but only swapping front and back in special circumstances, not touching anything inbetween
16:09<andythenorth>yeah that
16:09<Pinkbeast>UKRS2 doesn't now eg change the appearance of a mail car on the back of a class 91, but still does something oddball
16:09<andythenorth>not calling .reverse() on the whole consist :P
16:09<@peter1138>Snail, the big problem is you're trying to implement push-pull in the wrong place
16:09<andythenorth>Snail: so now *all* you have to do is patch ottd and have it accepted to trunk :)
16:10<andythenorth>I don't know the emoticon for 'roll eyes' :)
16:10<Snail>peter1138: I know, but I'm not an OTTD developer, and since OTTD doesn't implement it, I think doing it in a newGRF is better than nothing :p
16:10<Snail>andy: yes, well learn C++ first :D
16:10-!-DDR [] has joined #openttd
16:10<Snail>(I mean I'd have to learn C++ first)
16:10<LordAro>gah, my code is still breaking with strange errors... :(
16:10<@peter1138>i had to learn c++ first!
16:11<Snail>I thought ottd was written in C++?
16:11<@peter1138>yes and?
16:11<Snail>so, if I wanted to patch it, I'd need to learn the language first
16:11<@peter1138>so did i
16:11<Eddi|zuHause>i had only very poor C/C++ knowledge when i entered this channel
16:12<DDR>Yes, though depending on how much you already know and how braindead the error is, you might be able to get away with partial knowledge.
16:12<Eddi|zuHause>i still have, but i managed to get some more or less elaborate patches out there ;)
16:12<DDR>c/c++ is worryingly easy to subtly eff up, though. :/
16:12<Eddi|zuHause>that is true, there are some evil newbie pitfalls :p
16:13<Pinkbeast>Well, OTTD's bondage-and-discipline OO style does tend to eliminate much of the potential for comedy there.
16:13<__ln__>Snail: OTTD is written in something that resembles C++.
16:13<+glx>C++-ified C :)
16:14<Supercheese>Heh, autorefit made my engine change paint schemes :D
16:14<@peter1138>__ln__, it's c++, definitely
16:15-!-Superuser [] has quit [Quit: Leaving]
16:15<Eddi|zuHause>Supercheese: it should try to preserve that
16:15<__ln__>peter1138: but constructors are really used for constructing?
16:15<Supercheese>I think in UKRS the front engine can change paint schemes based on what kind of cargoes the train it pulls caries
16:16<Supercheese>so when autorefit changes those cargoes, the engine paint changes
16:16<Eddi|zuHause>Supercheese: how silly
16:16<Eddi|zuHause>Supercheese: blame the author
16:16<Eddi|zuHause>Supercheese: he should prevent the refit by callback, in those cases
16:16<@peter1138>Supercheese, liveries can do that anyway
16:17<@peter1138>Supercheese, although auto-refit between passengers and cargo is less likely
16:17<Pinkbeast>Isn't that mostly pax v. not-pax and there aren't many autorefit cases there?
16:17<Supercheese>Argh, stop beeping
16:17<Pinkbeast>I definitely appreciate the way eg the 2-6-4T looks right based on cargo
16:17<Supercheese>or whatever the special IRC term is for when someone says your name
16:17<andythenorth>autorefit smells of wee
16:17<Supercheese>You've mentioned, andy :)
16:18<andythenorth>it's a nice feature, I requested something like it a few times
16:18<andythenorth>but...newgrf is explodey
16:18<andythenorth>I should rephrase
16:18<andythenorth>newgrf smells of wee
16:18<+glx>Supercheese: the word is highlight
16:18<Supercheese>I have a separate alter-tone for it, and it was going off like mad :P
16:19<Pinkbeast>I blame your IRC client; computers should be seen but not heard. :-/
16:19<Supercheese>I've implemented it on purpose
16:19<Supercheese>It's not often people highlight me 5 times in 60 seconds :P
16:19-!-St3f [] has quit [Ping timeout: 480 seconds]
16:20<__ln__>peter1138: so that proves my point
16:20<@peter1138>__ln__, yes, because it's written in C++ but doesn't necessarily use C++ "features" list std:: ...
16:20<@peter1138>therefore it's not C++?
16:21<@peter1138>never mind inheritance and polymorphism
16:22<Rubidium>so... it's definitely not C and not C++... so what is it?
16:22<@peter1138>besides, we use constructors
16:22<@peter1138>Train *v = new Train();...
16:23<@peter1138>is it not true C++ because set variable members outside of the constructor?
16:23<Pinkbeast>I think the way you're never allowed to just ask what a variable is but have to always go thingy->how_old_are_you() makes it very C++ :-P
16:23<@peter1138>Pinkbeast, that doesn't make any sense
16:24<andythenorth>Supercheese: was it you who mentioned broken steel chain in FIRS Temperate Basic (before 1873)?
16:24<andythenorth>I'm thinking don't use that chain before 1873 in that case :)
16:24<andythenorth>I think special-casing dates is going to be a headache
16:24<andythenorth>I'm not going to bother
16:24<Supercheese>So iron ore and coal are not usable before 1873 in temperate basic?
16:25<Flygon>Supercheese: 5 in 60 is low :P
16:25<Eddi|zuHause>Rubidium: an abomination!!
16:26<Rubidium>even though... OpenTTD wasn't pure C before either
16:26<andythenorth>Supercheese: that's about right yes
16:26<andythenorth>don't play before 1873 if it bothers you?
16:26<Supercheese>Ok :)
16:26<andythenorth>dunno where metal comes from
16:26<Supercheese>Well, or use FIRS full :P
16:26<andythenorth>the iron works is a bad industry
16:26<andythenorth>it makes no sense
16:27<Eddi|zuHause>Rubidium: yes, with manually reimplemented virtual function tables and stuff :p
16:27<andythenorth>I had to push the steel mill intro dates back to give the iron works some purpose
16:27<andythenorth>bad smell
16:27<Eddi|zuHause>anyone remember the WP macro? :p
16:27<Flygon>It makes even less sense if you're shipping to Australia, andythenorth... you ship it to China from Australia as Ore, and it returns as Steel from China. And not very good steel. :P
16:27<Flygon>And away I go, because I'm sleep deprived
16:27<@peter1138>Eddi|zuHause, :-(
16:28<andythenorth>Flygon: that's a port
16:28<Flygon>To a car
16:28<@peter1138>Eddi|zuHause, i'd actually forgotten
16:28<andythenorth>maybe I do that in Tropic :P
16:28<Rubidium>Eddi|zuHause: well os_timer.cpp is definitely not pure C
16:28<Eddi|zuHause>peter1138: and you thought the current gui/widget code was evil :p
16:28<@peter1138>Eddi|zuHause, nope
16:29<@peter1138> byte custom[16];
16:29<@peter1138>yeah boi
16:29<@peter1138>all custom window data
16:29<@peter1138>in 16 bytes
16:29<@peter1138>byte byte_1
16:30<@peter1138>Eddi|zuHause, and VARDEF!
16:30<@peter1138>althoug that was removed more recently
16:37<Kjetil>what is this "byte" ?
16:37<andythenorth>I should just can the iron works in FIRS
16:37<andythenorth>and make it a graphical variation of steel mill
16:37<Kjetil>what's wrong with uint8_t ?
16:42<Snail>ok, another idea now :D
16:42<Snail>so far we have a function that allows us to "OR" through the userbits of a certain vehicle + all the vehicles in the consist after that oe
16:43<Snail>how about a function that only allows us to check a certain vehicle's userbits, without taking those of the following vehicles?
16:43<Supercheese>bwahahaha, this guy accidentally said his hand-held green laser was 50 MW, rather than 50 mW
16:43<Supercheese>that's one heck of a laser
16:44<Eddi|zuHause>Snail: isn't that accessible through some 80+ var?
16:45<Snail>hmm. The way I access it now, "ORs" through all the following vehicles' userbits. What is the var you're referring to?
16:46<Eddi|zuHause>hm, i guess it's not then
16:46<Eddi|zuHause>but should be a one-line patch :)
16:46-!-tokai [] has joined #openttd
16:47-!-mode/#openttd [+v tokai] by ChanServ
16:48<Supercheese>Oh blah, do new wagons still not trigger a news message?
16:48<Eddi|zuHause>Supercheese: nope
16:49<Supercheese>Where is that controlled...
16:49-!-KouDy1 [~KouDy@] has quit [Read error: Connection reset by peer]
16:49<Snail>Eddi: yes... and quite useful. but I wonder if someone could do it
16:50<Supercheese>if (IsWagon(index)) return;
16:50<Supercheese>Why is that so?
16:50<Supercheese>Why not provide news messages for wagons?
16:51-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
16:52<@Alberth>nobody ever programmed it
16:52<Eddi|zuHause>Snail: in src/newgrf_engine.cpp:VehicleGetVariable, add "case 0x4D: return if (u->type == VEH_TRAIN) user_def_data |= Train::From(u)->tcache.user_def_data;" or something like that
16:52-!-St3f [] has joined #openttd
16:52<Eddi|zuHause>err... s/u/v/
16:52<Supercheese>So, hmm, what would be needed, some new strings? Some other code elsewhere?
16:52<@Alberth>and tbh, I don't find wagons that interesting; I usually also ignore the engine announcements
16:53-!-KouDy [~KouDy@] has joined #openttd
16:53<Supercheese>perhaps an option to disable, as well
16:53<Snail>Eddi: I'm afraid I could break something if I put my hands in there... :p
16:54<Eddi|zuHause>Supercheese: just comment out the code that ignores wagons :)
16:55<Supercheese>Eddi|zuHause: Yeah, that will definitely be bug-free... :P
16:55<Eddi|zuHause>Supercheese: it would be a line like "if (power == 0) return;"
16:55<Eddi|zuHause>just remove that :p
16:55<Supercheese>I already found the line
16:56<Supercheese>if (IsWagon(index)) return;
16:56<Eddi|zuHause>i think frosch123 actually coded that once
16:56<Supercheese>I'd like to research more before I just comment it out
16:57<andythenorth>I have mostly done useful chores and played with my kids
16:58<andythenorth>and have not been trolling losers on the internet
16:58<andythenorth>how odd
16:58<andythenorth>trolling losers makes me a loser too I think
16:58<andythenorth>although this whole winner / loser concept might smell bad?
16:58<andythenorth>I wish FIRS translators would hurry up :P
16:59<andythenorth>all this error crap in stdout makes real errors hard to see
17:00-!-MNIM [] has joined #openttd
17:06<Eddi|zuHause>(around 2 years ago)
17:06<Supercheese>Yeah, more places than just in engine.cpp, that makes sense
17:07-!-Alberth [] has left #openttd []
17:08*peter1138 mehs at dependencies
17:10*LordAro wonders if people are fed up with him asking for help with his code...
17:10<LordAro>still can't get the f-ing thing to work
17:10<frosch123>LordAro: learn to use a debugger :)
17:11<LordAro>i am, it's giving me strange malloc errors
17:11<frosch123>you are not supposed to run the program until it crashes
17:11<frosch123>you set breakpoints at functions, and check whether the arguments are valid
17:12<LordAro>again, i have, everything i can think of is fine
17:12<frosch123>when you reach the final point where it is still correct
17:12<frosch123>you continue singlestepping
17:12<frosch123>validating every single variable
17:13<LordAro>as far as i can tell, i have
17:13<LordAro>it's just failing half way through a loop, with the equivalent of: "unsigned char *array = new unsigned char[440];"
17:14<@peter1138>22:11 < frosch123> you are not supposed to run the program until it crashes
17:14<@peter1138>oh shit
17:14<@peter1138>i'm doing it wrong :D
17:18<LordAro>valgrind is giving me loads (actually millions) of errors too, which makes me suspect there's a problem somewhere else in the program
17:19-!-andythenorth [] has left #openttd []
17:26<Eddi|zuHause>"apps using OSX's TextEdit crash on inputting 'File:///'"
17:27-!-Flygon [] has quit [Read error: Connection reset by peer]
17:27-!-Flygon [] has joined #openttd
17:27<Eddi|zuHause>"I attempt to file a crash report: typing the description into the Crash Reporter UI caused Crash Reporter to crash and vanish."
17:27<Eddi|zuHause>lmao :p
17:28<__ln__>now somebody could try if OTTD crashes like that, and if it doesn't, think about measures on how to make it behave more like a native application.
17:30<Eddi|zuHause>__ln__: can't, we lack an OSX maintainer
17:31<Kjetil>Eddi|zuHause: haha
17:34<Eddi|zuHause>"Alitalia-plane crash-lands in Rome. First step? remove the company's logo from it!"
17:35-!-Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
17:36<Snail>that flight was actually sublet to Carpatair, a Rumanian company
17:36<Snail>it only had alitalia's logos
17:36<__ln__>and it wasn't even operated by Alitalia according to some news articles
17:43-!-pugi [] has quit []
17:48-!-HerzogDeXtEr [] has joined #openttd
17:59-!-valhallasw [] has quit [Ping timeout: 480 seconds]
18:00-!-frosch123 [] has quit [Remote host closed the connection]
18:05<@Terkhen>good night
18:08-!-LordAro [] has quit [Ping timeout: 480 seconds]
18:09-!-St3f [] has quit [Ping timeout: 480 seconds]
18:10-!-St3f [] has joined #openttd
18:13-!-LSky` [] has quit []
18:23-!-jasperthecat1 [] has joined #openttd
18:23-!-oskari89 [] has quit []
18:27-!-KouDy [~KouDy@] has quit [Ping timeout: 480 seconds]
18:30-!-Flygon_ [] has joined #openttd
18:31-!-Flygon [] has quit [Read error: Connection reset by peer]
18:33-!-Flygon_ [] has quit [Read error: Connection reset by peer]
18:33-!-Flygon [] has joined #openttd
18:34-!-Progman [] has quit [Remote host closed the connection]
18:36-!-Flygon [] has quit [Read error: Connection reset by peer]
18:38-!-Flygon [] has joined #openttd
18:51-!-St3f [] has quit [Ping timeout: 480 seconds]
18:52-!-St3f [] has joined #openttd
18:55-!-Flygon [] has quit [Read error: Connection reset by peer]
18:55-!-Flygon [] has joined #openttd
18:57-!-Celestar_ [] has joined #openttd
18:59-!-Flygon [] has quit [Read error: Connection reset by peer]
18:59-!-Flygon [] has joined #openttd
19:02<Supercheese>Awesome, just as I was building a line from the stockyard to the nearest town, a subsidy was offered precisely for that :D
19:03-!-Djohaal_ [] has quit [Read error: Connection reset by peer]
19:03-!-Djohaal_ [] has joined #openttd
19:04-!-Celestar [] has quit [Ping timeout: 480 seconds]
19:08-!-Zuu [] has quit [Ping timeout: 480 seconds]
19:09-!-mrdaft_ [~mrdaft@] has joined #openttd
19:14-!-jasperthecat1 [] has quit [Quit: ajax IRC Client]
19:24-!-DabuYu [~jkuckartz@] has joined #openttd
19:26-!-mrdaft_ is now known as mrdaft
19:33-!-St3f [] has quit [Ping timeout: 480 seconds]
19:33-!-St3f [] has joined #openttd
19:42-!-mrdaft [~mrdaft@] has quit [Quit: -]
19:43-!-KritiK [] has quit [Quit: Leaving]
19:47-!-Supercheese [~Password4@] has quit [Remote host closed the connection]
19:51-!-Supercheese [~Password4@] has joined #openttd
19:58<Supercheese>Hmm, OTTD seems to hate the updated version of my grf
20:03-!-Elukka [] has quit []
20:14-!-St3f [] has quit [Ping timeout: 480 seconds]
20:14-!-St3f [] has joined #openttd
20:29-!-Markavian [] has joined #openttd
20:34-!-mkv` [] has quit [Ping timeout: 480 seconds]
20:41-!-roboboy [] has joined #openttd
20:50-!-mrdaft [~mrdaft@] has joined #openttd
20:55-!-St3f [] has quit [Ping timeout: 480 seconds]
20:56-!-St3f [] has joined #openttd
21:03-!-Djohaal_ [] has quit [Read error: Connection reset by peer]
21:23-!-roboboy [] has quit [Ping timeout: 480 seconds]
21:28-!-mrdaft [~mrdaft@] has quit [Quit: -]
21:36-!-St3f [] has quit [Ping timeout: 480 seconds]
21:37-!-tokai|mdlx [] has joined #openttd
21:37-!-St3f [] has joined #openttd
21:41-!-tokai [] has quit [Ping timeout: 480 seconds]
22:07-!-roadt [~roadt@] has joined #openttd
22:12-!-Biolunar__ [] has joined #openttd
22:15-!-Nat_aS [] has joined #openttd
22:18-!-St3f [] has quit [Ping timeout: 480 seconds]
22:19-!-St3f [] has joined #openttd
22:19-!-Biolunar_ [] has quit [Ping timeout: 480 seconds]
22:23-!-Dr_Tan [] has quit [Ping timeout: 480 seconds]
22:59-!-St3f [] has quit [Ping timeout: 480 seconds]
23:00-!-St3f [] has joined #openttd
23:05-!-roboboy [] has joined #openttd
23:05-!-glx [] has quit [Quit: Bye !]
23:20-!-mrdaft [~mrdaft@] has joined #openttd
23:34-!-mrdaft [~mrdaft@] has quit [Quit: -]
23:41-!-St3f [] has quit [Ping timeout: 480 seconds]
23:41-!-St3f [] has joined #openttd
23:43-!-roboboy [] has quit [Ping timeout: 480 seconds]
---Logclosed Mon Feb 04 00:00:33 2013