Back to Home / #openttd / 2016 / 03 / Prev Day | Next Day
#openttd IRC Logs for 2016-03-28

---Logopened Mon Mar 28 00:00:01 2016
00:16-!-HerzogDeXtEr1 [] has quit [Read error: Connection reset by peer]
00:38-!-Snail [] has quit [Quit: Snail]
01:04<Eddi|zuHause>i definitely do not get osx :/
01:11-!-Clockworker_ [] has joined #openttd
01:18-!-Clockworker__ [] has quit [Ping timeout: 480 seconds]
02:49-!-andythenorth [] has joined #openttd
02:49-!-frosch123 [] has joined #openttd
02:54-!-Supercheese [] has quit [Quit: Valete omnes]
03:00-!-andythenorth [] has quit [Quit: andythenorth]
03:09-!-juzza1 [] has quit [Ping timeout: 480 seconds]
03:10-!-sla_ro|master [] has joined #openttd
03:16-!-andythenorth [] has joined #openttd
03:18-!-Alberth [~alberth@2001:981:c6c5:1:be5f:f4ff:feac:e11] has joined #openttd
03:18-!-mode/#openttd [+o Alberth] by ChanServ
03:19-!-Pikka [~Octomom@] has joined #openttd
03:20<andythenorth>everyone is here :o
03:20<@Alberth>enjoy the moment? :)
03:20<andythenorth>small things make the life
03:23<peter1138>hmm, breakfast... easter egg or cereal?
03:23<andythenorth>what kind of cereal is it?
03:25<@Alberth>make it brunch, and have both?
03:29<andythenorth>is m1 5-7 free for all cases road needs?
03:29<andythenorth>I think it is, but eh
03:33<@Alberth>looks like it
03:33<@Alberth>trees can have catenary too, nice :)
03:34<andythenorth>didn’t you ask for electric trees a few days ago? o_O
03:34<@Alberth>yep, and you made it possible, such a nice gift :)
03:35<@Alberth>does mean a ground tile with catenary can get a tree
03:35<andythenorth>if I make this patch
03:35<andythenorth>I will include an ‘electric trees’ easter egg :P
03:36<andythenorth>available to build only during April :P
03:36<andythenorth>ho, April 1 approaches, I should make a proper FIRS release soon
03:36<@Alberth>if connected from the powerplant, and build in April... :)
03:46<andythenorth>if I make unwise choices about bit ranges, that can be fixed later, eh? :P
03:47<@Alberth>yep, add functions to get and set the bits from the tiles, then it's just a matter of changing those functions
03:50*andythenorth stops bikeshedding bit ranges :)
04:09<@Alberth>haha "Extreme" as economy name :)
04:10<@Alberth>/me makes it eXXtreem
04:13-!-sim-al2 [] has quit [Ping timeout: 480 seconds]
04:14<@Rubidium>andythenorth: road stops do not have m1 5-6 free
04:14<andythenorth>they inherit from station?
04:15*andythenorth assumes
04:15-!-Defaultti [] has quit [Quit: Quitting.]
04:15-!-Progman [] has joined #openttd
04:15<andythenorth>judging by the current roadtype implementation, the bits used don’t have to be consistent across all the relevant tile types?
04:16<@Rubidium>GetFloodingBehaviour uses GetWaterClass unconditionally, so the water class bits are important for all station objects
04:19<@Alberth>andy, indeed, that's why you have access functions. Same bits is nice for understanding but not a hard requirement
04:21-!-Defaultti [] has joined #openttd
04:25<Pikka>isit roadtypes?
04:25-!-Progman_ [] has joined #openttd
04:25-!-Progman_ [] has quit [Remote host closed the connection]
04:25-!-Progman_ [] has joined #openttd
04:27-!-Progman [] has quit [Ping timeout: 480 seconds]
04:27-!-Progman_ is now known as Progman
04:30<@Alberth>for some value of roadtypes, yes
04:31<andythenorth>Pikka: it is trams with and without catenary
04:31<andythenorth>and doing that _might_ cause other types
04:32<andythenorth>if I can do it
04:44-!-Wolf01 [] has joined #openttd
04:45<andythenorth>lo Wolf01
04:47-!-Hiddenfunstuff [] has joined #openttd
04:59-!-Myhorta [] has joined #openttd
05:07<andythenorth>can the presence of each roadtype be inferred from the road layout bits?
05:07*andythenorth wonders why 2 additional bits are used for road, tram which add no more information than the presence of layout bits
05:08<peter1138>don't do it
05:08<Wolf01> this is easier to understand
05:10<andythenorth>what do I miss? o_O
05:10<Wolf01>4d is easier than roadtypes
05:12<andythenorth>if bits set for road, there’s road
05:12<andythenorth>if bits set for tram, there’s tram
05:12<andythenorth>save 2 other bits
05:12<andythenorth>where’s the loss? o_O
05:13<@Alberth>increased complexity of figuring out what you have?
05:13<Wolf01>you can have road in one direction and tram in another
05:13<Wolf01>it's like you have infinite layers of road
05:13<andythenorth>yeah, there are 2 sets of bits
05:13<andythenorth>so that’s covered
05:14<Wolf01>also, you need to intersect with railtypes
05:14<Wolf01>or disable crossings at all
05:14<andythenorth>I’m not proposing doing it this way, it won’t work if the types are more than ROAD, TRAM
05:15<andythenorth>I’m curious why it wasn’t done this way already
05:15<andythenorth>probably lost in the depths of time eh?
05:15<Wolf01>road with tram with catenary with level crossing on bridgehead
05:16<Wolf01>probably lost in headaches
05:16<andythenorth>nah, you’re right, it’s the bridge case (and probably others), no road layout bits there
05:17<Wolf01>(like I never tried and failed miserably :P)
05:20<andythenorth>what did you attempt? o_O
05:20<Wolf01>the same you ar doing now, but it might be easier now... or more difficult
05:21<andythenorth>how many types did you attempt to add?
05:22<Wolf01>just one more
05:23<Wolf01>freeways (automatically built like one way roads)
05:27-!-Samu [] has joined #openttd
05:34<andythenorth>Wolf01: for a while there was ROADTYPE_HIGHWAY or such lying around the code. Was that you? :)
05:34<andythenorth>painful memories?
05:34<Wolf01>no, I never submitted the patch
05:35*andythenorth is in the over-confident phase of this attempt
05:35<andythenorth>there are only 59 uses of GetRoadTypes, how hard can it be? o_O
05:36<Wolf01>like there are only like 12 uses of day ticks but no daylength patch worked reliably
05:37<andythenorth>that’s only 59 places to check the logic for, understand why it’s done that way, test it, and find the old and new edge cases :P
05:37<andythenorth>one a week, it will be done April 2017
05:38<@Alberth>I doubt all 59 are unique :)
05:38<andythenorth>hopefully not
05:38<Wolf01>ottd needs unit tests, so when you change a core function you can be sure it works the same way at least for the original cases
05:38-!-Quatroking [] has joined #openttd
05:39<Wolf01>trying everything by hand is what stopped me at a certain point
05:39<andythenorth>it does get tedious
05:39<andythenorth>compile, start new game, build stuff
05:40<Wolf01>you might end up with correctly laying roads in strange positions without glitches, but as soon you attempt to run a vehicle over it it doesn't work as expected
05:41<andythenorth>I’m keeping scope too limited for that, I hope :D :o
05:41-!-Ketsuban [~ketsuban@2a02:c7d:a33e:4100:1406:9e14:9705:8aa5] has quit [Quit: Leaving]
05:41<Wolf01>I did that with stations on slopes, but I was blocked because trains ran down the steep edge at the end (if you put a rail there)
05:41-!-Biolunar_ [] has quit [Ping timeout: 480 seconds]
05:42<Wolf01>drive-through road stops worked really well, they only missed the right graphics
05:43<andythenorth>the train bug is the same as building rail stations perpendicular to slope direction
05:43<andythenorth>I’ve seen it, looks very neat
05:43<Samu>I have a request/question ->
05:45<Wolf01>I wanted to add grf flags to let only build stations in plain even on slopes, but somebody raised complaints about "if you remove the grf you'll trigger unwanted behaviours"... you aren't supposed to remove a grf from a running game
05:48<Wolf01> :D
05:52<@Alberth>Samu: it's easier if you just repeat the qeustion
05:52<@Alberth>Also, what makes you think it's safe to change that? Limits usually exist for a good reason, in my experience
05:54<@Alberth>and quite likely, the limit is silently assumed to exist in other places in the code, so you'd need to check every use of company numbers to make sure it's safe
05:55<andythenorth>my current headfuck is disambiguating ‘road’ and ‘road'
05:56<andythenorth>interchangeably it means the grey thing with white tiles that is used by vehicles that have ROADTYPE_ROAD
05:56<andythenorth>and also it means road tiles, and everything to do with road, including trams
05:56<andythenorth>and in other places, trams have specific handling
05:56<peter1138>Wolf01, curved stations!
05:56<peter1138>like i did about 10 years ago ;(
05:56<Wolf01>me too :P
05:56<Samu>okay, my main issue is: I want to start a server that will always run 15 AIs
05:57<Wolf01>but I didn't get them to work, so I started the sloped ones
05:57<Samu>I edited game_start.scr and typed 15 lines with 'StartAI'
05:57<andythenorth>so does DrawTramCatenary become DrawRoadCatenary? Or DrawRoadTramCatenary :P
05:57*andythenorth could roll a dice, then rely on find-replace
05:57<Wolf01>I was pissed off by not being able to put buffers on the last piece of a raised station
05:58<Samu>15 AIs are launched when starting the server, but there is a problem when one of the AIs bankrupts
05:58<Samu>it is never replaced, because of the hard limit being 14´
05:58<Wolf01>andy, it should become "DrawCatenary"
05:58<Samu>what can I do?
05:59<Wolf01>let it generic, it might be used without tram in future
05:59<andythenorth>DrawCatenary is ambigous, especially for bridges/tunnels
05:59<andythenorth>due to rail
05:59<Wolf01>also without road
05:59<andythenorth>I ran into this already with HasCatenary
05:59<@Alberth>what catenary are you drawing?
05:59<andythenorth>tram or road
06:00<Wolf01>so why don't you unify the functions for rail and road? if you pass a roadtile you can skip the diagonal directions
06:00<andythenorth>well that could work
06:01<andythenorth>but I think the unified function is really two functions, hidden by a very large if/else
06:01<Wolf01>also I remember an ambitious project to add diagonal roads
06:04<Wolf01>I agree, but it's weird to check in really different places for code which almost does the same
06:05<andythenorth>so looks like railtype has a DrawCatenary() method
06:06<andythenorth>which lives in elrail.cpp
06:06<andythenorth>that would need moved
06:06<Wolf01>I like a bit of polymorphism, like when you have a DrawShape(Shape s, Point p)
06:06<andythenorth>hmm patch gets big fast eh?
06:07<Wolf01>yes, you need to think lots of things to prepare the terrain before starting the real patch
06:08-!-sla_ro|master [] has quit []
06:09<andythenorth>I would rather unify after testing the gameplay effect tbh
06:09*andythenorth will just name everything RoadTramFoo
06:09<andythenorth>because it’s easy to refactor that
06:14<Samu>can a GameScript (GS's) execute console commands?
06:14<Samu>like those busybees
06:14<Samu>and such
06:15<@Alberth> <-- this is what a GS can do
06:21<Samu>A Company bankrupts, startai
06:21<Samu>now translating this into code lol
06:26-!-Myhorta [] has quit [Ping timeout: 480 seconds]
06:37<Samu>is there a guide for configuring the OpenTDD\scripts files?
06:44<Samu>i had an idea, but i bet this will cause more trouble
06:45<Samu>inside game_start.scr: "startai", "exec game_start.scr"
06:46<Samu>it keeps executing "startai" indefinitely, right?
06:46<Samu>gonna try
06:50<andythenorth>ROADTYPE_ROAD and ROADTYPE_TRAM are also used frequently to access the road bits
06:51<andythenorth>GetRoadBits(tile, ROADTYPE_TRAM)
06:51<andythenorth>simply adding more types to the list will fail hard
06:54-!-Pikka [~Octomom@] has quit [Quit: Leaving]
06:56-!-Arveen [] has joined #openttd
06:58<Samu>openttd crash
06:59<Samu>doesn't work
06:59<andythenorth>conceptually, I either need a new entity, like a road subtpye
07:00<andythenorth>or I need to patch some functions so that, e.g ROADTYPE_TRAM_ELECTRIFIED resolves to ROADTYPE_TRAM, but only exactly when it needs to, and never any other times
07:02-!-smoke_fumus [~smoke_fum@] has joined #openttd
07:04<Samu>should I report this crash?
07:05<@Alberth>don't think so
07:06<Samu>it's quite easy to reproduce
07:06<@Alberth>I have no doubt about that
07:06<Samu>inside game_start.scr, type exec ./scripts/game_start.scr
07:06<Samu>then launch openttd, click new game > crash
07:07<@Alberth>but things can't usefully be protected against infinite recursion
07:07<@Alberth>it falls in the category "don't do that"
07:07<Samu>:) ok
07:19<Samu>can i execute a timed console command somewhere in the script files? Every x seconds > startai
07:20<frosch123>have you ever looked at ai settings?
07:21<frosch123>then try to find a pattern in what is the first setting of every ai
07:27<andythenorth>are tram and road different roadtypes or different routetypes?
07:32<Samu>AdmiralAI = start_date=1 - is this what you're refering to?
07:36*andythenorth proposes RoadSubtype and TramSubtype
07:36<andythenorth>subtypes make me itch, due to cargos :P
07:38<andythenorth>what is RoadTypes (L36 in road_type.h) trying to provide?
07:38<andythenorth>ROADTYPES_ROAD is 1 shifted by 0?
07:43<@Alberth>mapping from integer numbers to bit pattern
07:44<@Alberth>0 -> b0 1 -> b1 and so on
07:45<@Alberth>otherwise you'd get 0x0, 0x1, 0x2, 0x4, 0x8, 0x10, ...
07:45<@Alberth>euhm no 0x0, of course
07:52<andythenorth>ok, so if I added ROADTYPE_FOO here as bit 2
07:53<andythenorth>hmm, no I thought I understood but I don’t :D
07:53<andythenorth>oh dear
07:54<peter1138>i've got a patch for roadtypes somewhere
07:55<Eddi|zuHause>so... OSX networking... i got MOST of it right, but i can't seem to work out the DNS settings
07:55<andythenorth>probably your HD died? o_O
07:57<Eddi|zuHause>all the webpages about OSX and DNS say to edit the networking settings for specific interfaces in the GUI, but the problem i have is that none of the adapters there are actually connected. only the virtualbox network, which doesn't show up in that list
07:58<Eddi|zuHause>i tried making a /etc/resolv.conf, but that apparently only affected the nslookup program, and none of the other programs (like ping, firefox, ...)
08:01-!-drac_boy [] has joined #openttd
08:01<andythenorth>Eddi|zuHause: does the modem have an interface defined?
08:02<drac_boy>you two still working on this? :)
08:03<Eddi|zuHause>andythenorth: the modem is on a virtual machine, the virtual machine has a network interface that i can ping
08:04<Eddi|zuHause>the virtual machine has NAT and everything working
08:04<Eddi|zuHause>i can ping the DNS server from the host
08:04<Eddi|zuHause>and i can "nslookup <name> <dns server>" manually
08:05<Eddi|zuHause>just i can't get OSX to use that dns server globally
08:07<andythenorth>I only use the GUI
08:07<Eddi|zuHause>the thing is, the virtualbox network doesn't show up in the GUI, only in ifconfig
08:07<andythenorth>and if you can’t add an interface there, bound to the VM, I have no ideas :(
08:08<drac_boy>btw not to interrupt anyone here but what do you think of calling this thing "wearing a hat"? thats what I think when I look at it so..
08:08<Eddi|zuHause>i have not understood the process of adding interfaces in the GUI
08:08<drac_boy>(I'm sure that its real purpose was to shield the final exhaust system from the frequent snow tho)
08:08<andythenorth>you only get interfaces that are registered somehow
08:08<andythenorth>not sure where yet
08:09<drac_boy>(and for anyone asking, its basically a Gm 3/3 as in being grouped under diesel tractor with three axles total and all being driven)
08:09<andythenorth>Eddi|zuHause ?
08:14<Eddi|zuHause>that seems way too complicated for a task so trivial :/
08:15<andythenorth>might be
08:15<andythenorth>but you need to persuade the GUI that there is an interface
08:15<andythenorth>or you need to persuade BSD
08:17<Eddi|zuHause>well, that has to wait...
08:19-!-Snail [] has joined #openttd
08:25-!-HerzogDeXtEr [] has joined #openttd
08:31*andythenorth reaches the ‘rage quit’ phase of this roads patch
08:33<andythenorth>roadtypes are impossible, I’m going back to patching catenary
08:35<Samu>what is the command line to join a server as a spectator? I tried but it says server full. "C:\Program Files\OpenTTD\openttd.exe" -n :3979
08:35<Samu>all company slots are used, but spectator slots are free
08:35<drac_boy>andy, I always thought one road and 2-3 rails was enough? :P heh
08:36<Samu>nevermind, i think i know how
08:36<Samu>which company # is spectator?
08:39<andythenorth>what solution is there when same constant is used for two different purposes?
08:40<andythenorth>and extending the possible range of constants for one purpose breaks the other?
08:40<Samu>"C:\Program Files\OpenTTD\openttd.exe" -n :3979#255
08:40<@Alberth>and you want it split? introduce a 2nd constant
08:40<Samu>it worked!
08:42<@Alberth>not sure how you jump from one constant to a range though
08:43<andythenorth>by extending the enum where the constants are defined
08:44<andythenorth>the enum maps the constant to bit positions
08:44<andythenorth>constants *
08:44<andythenorth>I have no idea tbh :)
08:44*drac_boy somewhat wants to quote "english please doc!" from an old sci-fi movie
08:44<@Alberth>sounds like typical openttd style :)
08:45<drac_boy>but thats ok tho, I'm not joining this subject :)
08:45<andythenorth>it looks like I’m supposed to use a bitmask somehow
08:45<Flygon>Are we discussig how stupid I am again? :3
08:45<drac_boy>umm flygon, hi? :)
08:45<andythenorth>so that there is someway to pickout ROADTYPE_FOO as mapping to ROADTYPE_TRAM
08:45<andythenorth>but it seems like a headache to me
08:45<drac_boy>hows you flygon, any good weather there?
08:46<Flygon>It's Melbourne
08:46<andythenorth>I am looking at someone else’s design and trying to figure out what they wanted me to do :P
08:46<@Alberth>andythenorth: bitmask sounds like the answer indeed
08:46<drac_boy>flygon well here theres still lot of snow on ground and now its 4C with heavy rain (and the rain is going be all day long too!) ... boring weather uhh
08:46<Flygon>Lemme get a screenshot of the current weather
08:46<@Alberth>andythenorth: it's not designed to be extendible
08:47<andythenorth>it isn’t? I read the comments opposite to that :)
08:47<andythenorth>that might be the problem
08:47<@Alberth>it's designed to be easily readable (hopefully), but that's it
08:47<@Alberth>openttd doesn't code things for the future
08:47<Flygon> It's dreary, it's overcast, and it's desaturated
08:47<andythenorth>I have been staring at this for ~2 hours, thinking “this design isn’t workable"
08:47<Flygon>Ignore the exploding car
08:48-!-tokai [] has joined #openttd
08:48-!-mode/#openttd [+v tokai] by ChanServ
08:48<Flygon>(yes, this is my local area :3)
08:48<drac_boy>flygon heh, taking liberal with a movie photo :)
08:48<Flygon>Taking liberal?
08:48<@Alberth>andythenorth: the problem with future extensions is there are too many, so you can never handle them all, so none of them is handled
08:48-!-Snail [] has quit [Quit: Snail]
08:48<drac_boy>too bad that the Falcon was basically an australia-only car, never got it in north america
08:49<drac_boy>either way I'm guessing its afternoon or evening for you now flygon?
08:49<@Alberth>you might be lucky and it fits easily, but maybe not
08:49<andythenorth>so I’m not throwing away existing work by extending it the way I understand
08:49<drac_boy>oh...guess I was a little off :)
08:49<Flygon>drac_boy: Falcons originated in the USA
08:49<drac_boy>its 8:49 here
08:49<Flygon>They didn't quite become popular there
08:49<Flygon>But took off, here
08:50<Flygon>But, Falcon? That means my car's a descendant xP
08:50<Flygon> LPG running Automatic descendant
08:50<Flygon>Ill suited for the Apocalypse
08:52<drac_boy>also there was that ford (I can't recall the model now) which was one of these many car/pickup hybrid's that were so popular between england and australia but very little to be found in north america :-/
08:52<Flygon>Name escapes me
08:52<drac_boy>at least north america did get the Subaru BRAT ... and a modern version with rather short bed based on the outback legacy chassis
08:52<drac_boy>funny name tho.. brat ... :)
08:53<drac_boy>cute photo for an ad!/img/httpImage/image.jpg_gen/derivatives/article_635/subaru-brat-ad-1.jpg
08:54<Flygon>That's how you get underbody corrosion >_>
08:54*andythenorth had better learn about enums, yet again
08:54-!-tokai|noir [] has quit [Ping timeout: 480 seconds]
08:55<drac_boy>flygon also would you believe that a pickup mini/morris was still useful too as much as it could only seat 2 person and umm well yeah not much cargo weight rating either? ;)
08:55<Flygon>It's 500kg
08:55<drac_boy>as for underbody corrosion heh well there are many factors but yeah a car with no periodical sprays living next to salty ocean could last a short time
08:56<Flygon>Four reasonably fit men can carry it
08:57-!-Quatroking [] has quit [Read error: Connection reset by peer]
08:58<drac_boy>oh geeze the old car reminds me of the photos I've seen of single or friends-coming-together drivers being silly with their Smart's
08:58-!-Quatroking [] has joined #openttd
08:58<drac_boy>two friends together for one spot heh
08:58<drac_boy>or this single deciding he could steal a spot that almost noone else could ever fit into (excluding a motorcycle rider)
08:59<drac_boy>theres a thousand different examples online but these are two just to start with tho :)
09:01-!-LadyHawk [] has quit [Read error: No route to host]
09:05-!-LadyHawk [] has joined #openttd
09:06-!-sim-al2 [] has joined #openttd
09:07<drac_boy>but anyhow all that aside, what're you doing toward midnight now flygon?
09:07-!-tokai [] has quit [Remote host closed the connection]
09:08*drac_boy is looking for some more specific photos to add to this project for now
09:09<drac_boy>otherwise just a bit of irc and mm thats about it (stupid rain...)
09:09<sim-al2>Drac_boy: I assume the extra high stack on that little locomotive is to get the smoke above the passengers
09:09<drac_boy>hi sim-train :)
09:10<sim-al2>Also, that little electric locomotive looks slightly dangerous...
09:10<drac_boy>(sorry about that little name joke heh)
09:10<drac_boy>yeah you're right, I was thinking "the axles look barely an inch apart, yet its more than six feet high??"
09:10<drac_boy>talk about wanting to tip that thing over :)
09:10<drac_boy>its probably only meant to run at 5kph .. some sort of depot/shed "pusher" maybe?
09:11<sim-al2>Conrail built something like that:
09:12<drac_boy>even then I'll rather trust the one in germany a lot more .. it was a very mini pusher but at least it had rather small axles set to a wider footprint than the stand-up cab itself
09:12<drac_boy>can't recall the name of it but hm looking for it now tho
09:12<sim-al2>Yeah, that thing definetly can't run that fast, looks like something that would struggle to push more than a few cars
09:12<supermop>good morning
09:17<supermop>andythenorth: iron crane?
09:17<supermop>sort of thought out a possible scheme
09:17-!-gelignite [] has joined #openttd
09:21<drac_boy>here we go its a Breuer Tractor as it was called ... had 10-80hp (date-depending) engine which apparently was mounted inbetween the chassis rails so its under the cab there
09:21<supermop>kind of inverse to the pony idea
09:21<drac_boy>cab -accessible coupler chain loop too
09:21<supermop>but still limited
09:21<sim-al2>Those wheels are crazy small
09:22<sim-al2>Makes me wonder how good the brakes could be...
09:22<drac_boy>well the wheels are only meant for depot shunting plus it kept the whole thing really stable :)
09:22<andythenorth>when I’m declaring a parameter which is going to be either 0 or 1 (stored in a bit), what type should I use?
09:22<andythenorth>bool or int?
09:22<drac_boy>btw these were usually designed to work turntables/transfers so its likely only moving one unbraked item at a time
09:22<andythenorth>it’s strictly not a true / false flag
09:23<@Alberth>uint8 probably
09:23<supermop>freight and high capacity emus (similar to metro) share the cheap track, high speed low capacity passenger trains use the "SG" track which is expensive and limited to them
09:23<drac_boy>heck I recall one photo of an old Kof being used to move a big modern new C'C' electric locomotive off a turntable (I imagine the Kof's buffers were almost sticking off the end of the turntable..goes to show length restrictions you can find at times)
09:23<@Alberth>bool would be ok too, but it's not a number so you need to convert
09:24<@Alberth> b ? 1 : 0
09:24<andythenorth>that is a pattern I’ve seen elsewhere
09:24<andythenorth>ultimately the values might be 0-3
09:24<andythenorth>but I can only change so much at once, or I get lost :)
09:25<andythenorth>I know how to handle a single bit
09:25<@Alberth>(b0 ? 1 : 0) | (b1 ? 2 : 0)
09:26<@Alberth>pair of bits is better done with uint8
09:26*andythenorth saves that for later :)
09:26<andythenorth>(copy-pasted to my notes)
09:27<@Alberth>with uint8 it's much easier, as it's already a number, no need to convert :)
09:27-!-tokai [] has joined #openttd
09:27-!-mode/#openttd [+v tokai] by ChanServ
09:28<drac_boy>btw about brakes .. these only had manual brakes on themself basically but as they generally only stuck to zipping around yards etc this apparently wasn't a major harm to the design itself
09:29<drac_boy>and yeah many of them had about being able to unload a flatcar or other light cargos on their own :)
09:29<drac_boy>too bad I'm not too interested in modelling netherlands tho
09:32<andythenorth>m6 is not available for road tiles
09:32<V453000>what mayhem are you up to andythenorth ? :D
09:34<andythenorth>where are the available bits defined for tiles?
09:34<V453000>no clue what do you mean
09:35<andythenorth>error: no member named 'm6' in 'Tile'
09:35<andythenorth> SB(_m[t].m6, 6, 1, subtype);
09:35<andythenorth>m6 isn’t present
09:37<@Rubidium>computer maths
09:37<andythenorth>error: no member named 'me' in 'Tile'
09:38<@Rubidium>after all, m6 is the 8th byte...
09:38<andythenorth>ok, that makes sense now
09:39<sim-al2>Those Dutch shunters are rather interesting because some (not sure about that particular one) had controls on the side, made to be used by a crewman standing on the footboards
09:41<drac_boy>yeah the cab was basically "empty" I think
09:41<sim-al2>Actually looks like those did, it's a later version of the NS 200 class:
09:42<sim-al2>Apparently they only have manual brakes. There's not even an air system, so the whistle uses exhaust gases
09:42<drac_boy>then again I recall some of the B units for emd F's basically had basic throttle/brake controls in a door on the side so they could be moved around on their own in the yard without having to fetch a cab unit to MU with them .. the engineer was mostly exposed to whatever was coming down from the sky on that day tho
09:42<sim-al2>Also, the diesel fuel acts as the coolant
09:44<sim-al2>Yeah, the B units have a very minimalistic control stand for that, just a brake valve and 3 or 4 notch controller (I assume limiting power for safetly reasons)
09:45<drac_boy>oh the F7B apparently finally had some basic controls inside the body tho re #24 on here
09:45<drac_boy>and this thing about holster controls reminds me of something related ...
09:46<@Rubidium>aren't those already out of service?
09:46<sim-al2>Which ones Rubidium?
09:47<@Rubidium>both of the antique Dutch trains you showed
09:47<argoneus>how are train friends doing?
09:47<drac_boy> want know why that has a big grille on the cab locomotive itself? thats because theres a small diesel in there both for to limp the thing on and off the ready/shed track with aside to providing some power to start the main turbine engine with
09:47<drac_boy>then again to turn a turbine on just to simply move the locomotive ten feet would had made no sense .. so this was sensible
09:48<@Rubidium>(in a museum doesn't count as "in service")
09:48<sim-al2>I'm pretty sure they are by now, they're pretty old and a bit unsafe
09:49<@Rubidium>but only like 20 years older than crap that is still running "for profit"
09:49<sim-al2>This seems like the designated replacement:
09:50<@Rubidium> <- antique of +- 60 years old
09:50*andythenorth asks stupid question: how to OR the results of two functions which both return bool?
09:51<andythenorth>google does not help with “C++ OR two values” :P
09:51<drac_boy>the crazy thing is I know a magazine I got (no online copy tho) showed one of these 3-units turbine coupled to the one and only one Century 855B that ever existed (yep..kinda funny to think of a 8500hp turbine and 5500hp diesel paired together on a supersized freight train)
09:51<@Rubidium>andythenorth: binary || or logical |
09:51<drac_boy>heres the 855B if you want sim
09:52<sim-al2>Rubidium, at least the crew doesn't have to hang off the side of those during regular operation (also that has air brakes and other fun useful features :p)
09:52<drac_boy>(on that footnote: UP did actually have three of the 855's tho)
09:52<andythenorth>was binary not logical
09:53<@Rubidium>sim-al2: except that... you can easily overlook low signals in that type
09:53<sim-al2>Hmmm, could the turbines and the Alcos actually MU? I think the turbines had a 20 notch MU system, since they were made to run alone or at most in pairs
09:53<drac_boy>rubidium if you want a modern small electric shunter you always could check about this?©%20Stadler%20Rail%20-%205.jpg.spooler.galleryimage.800.jpg/1317041607242/Ee922%20©%20Stadler%20Rail%20-%205.jpg
09:53<drac_boy>huh...sorry weird url
09:54<drac_boy>sim-a12 .. well the up turbines were built with diesel-compatible MU apparently as so many times they were mixed together with anything .. even one GTEL leading five random geeps too
09:56<drac_boy>ah I found one where even a FA-FB set is included too for some reason
09:56<drac_boy>it just shows you what a "just throw anything out of the shed onto the line whatever" mentality UP sometimes seem to have had
09:57<drac_boy>I've even seen (personally, and no I didn't have a camera sorry) a CP train being a SW1200 or alike switcher leading two Dash locomotives on a long train at roughly 30-50kph .. bit weird if you ask me
10:00<sim-al2>Hmm, maybe the weird MU setup was limited to the early Coal Turbine
10:00<peter1138>damn this wind
10:00<drac_boy>the single-unit one pre-8500hp? could be
10:00*drac_boy gives peter1138 a sail? :)
10:00<drac_boy>sorry if that doesn't really help heh
10:00<sim-al2>Hmm, no fuel tender either
10:01<peter1138>not much cop in a head wind :)
10:01<drac_boy>sim-a12 yeah the fuel was a diesel-like tank under chassis .. apparently the dedicated ex-steam tender was to cure the problem of very short range
10:01<drac_boy>peter1138 ah, unless you can zigzag a lot yeah its useless :-s
10:03<drac_boy>(as I recall the sail book said that to go right into a headwind you hold a zigzag course so at least the wind gives you a bit of forward power ... makes for a very slow actual forward speed tho ofc
10:03<sim-al2>Looks like a first gen unit, with no walkways and numbered X52, so only 4500 hp
10:03<drac_boy>yep, engineers didn't like that one a lot... walking right next to the exposed turbine unit inside :-s
10:03<drac_boy>thats why they had the "hollowed out" sides with outter walkways
10:04<andythenorth>peter1138: are you _still_ trying to make breakfast? :o
10:04*drac_boy throws andy a cooked egg :)
10:06<sim-al2>Interesting train this one is hauling:
10:07<andythenorth>pacific fruit express no?
10:07<drac_boy>oh about homemade tractors .. this is one that PRR did themself at least it seem to had been a sensible one but dunno how long it lasted for tho. I suspect that the four tanks are a split of 2 fuel and 2 air or perhaps at least 3 fuel and 1 air
10:07<andythenorth>express reefer train
10:07<sim-al2>Looks like a refrigerated fruit train
10:07*andythenorth tries to write code not in header files
10:07<andythenorth>compiles are much faster :P
10:07<drac_boy>and look at that exposed radiator, the lower pipe seem to be running away to somewhere else
10:12<sim-al2>The exposed radiator seems common on early gasoline engined units
10:17<sim-al2>I can't really think of where that pipe goes, unless there's a water tank (or drain) on the underside
10:20<supermop>horse not on bananas?
10:21<drac_boy>either way I'm going off irc for now so have fun ok sim-a12? (me want go back to more images note-writing here)
10:21<sim-al2>Alright take care
10:21-!-drac_boy [] has left #openttd []
10:25<andythenorth>horse alpha on bananas
10:27-!-Wormnest [] has joined #openttd
10:32<supermop>not getting any non-pony rosters in what i found, when searching with 1.6.0 rc1
10:33<andythenorth>oh horse not hog
10:33<andythenorth>sorry :)
10:33*andythenorth had head in uint8 :P
10:36<Samu>on a dedicated server, how could I tell which is taking more cpu usage between AIs and currently running vehicles deployed in the world?
10:38<supermop>do i have to get antelope from devzone?
10:38<andythenorth>it’s unreleasable, and bananas
10:42<andythenorth>would simply provoke bug reports about broken sprites
10:44<andythenorth>how do I push unit8 values into uint32 function parameter?
10:44<andythenorth>uint* *
10:47<Samu>who's draws sprites for OpenGFX?
10:49<Samu>would someone consider drawing sprites for me? or would it be too much work for implementation?
10:51<V453000>draw your own? :D
10:51<@planetmaker>hm, yes, usually people draw what they take a fancy in themselves...
10:52<@planetmaker>ideally there's one person drawing, another coding and they kinda have the same idea :)
10:52<andythenorth>these days, they’re usually the same person
10:52<andythenorth>I assume there’s a reason why function parameters have to be bitstuffed?
10:52<andythenorth>instead of just passing around values?
10:52<V453000>or you would need to have something insanely good that some random person can't wait for, to the point they want to invest their own free time in making your idea happen
10:52<V453000>which won't happen very likely :P
10:53<andythenorth>I am not a good enough programmer to figure out how to shift a uint8 in and out of a uint32 just to pass 0 or 1 to the next function
10:53<andythenorth>it seems arcane tbh
10:54<Samu>been going through my patches of one year ago. this is a simple patch that allows rivers to be terraformed, however, it is missing many sprites
10:54<@Alberth>SB and GB are your friend :)
10:54<@Alberth>andy: ^
10:54<andythenorth>only if I take (and pass) a course in bit maths
10:54<Samu>who did the water sprites?
10:55<@Alberth>where should the uint8 be inserted?
10:56<andythenorth>into p2 of CmdBuildRoad
10:56<andythenorth>it looks like it should go in to bit 8
10:56<andythenorth>but that depends on the function docs being accurate, so far I’m finding they’re not entirely :)
10:57<andythenorth>the caller is OnPlaceMouseUp()
10:57<andythenorth>in road_gui.cpp
10:57<@Alberth>pos = 8; SB(p2, pos, 8, uint8_value)
10:58<@Alberth>8 constant means "8 bits from the uint8_value"
10:58<@Alberth>with pos == 8, that means bits 8..15
10:58<andythenorth>and then I read same with GB?
10:59<@Alberth>yep, let me check
10:59<@Alberth>uint8_value = GB(p2, pos, 8)
10:59-!-Myhorta [] has joined #openttd
11:00<@Alberth>obviously, you can use "8" directly instead of "pos" :)
11:01<andythenorth>something is working somehow
11:02<andythenorth>even though I didn’t apply your code yet :)
11:02<andythenorth>I think it’s random accident
11:02<@Alberth>a nice one, though :)
11:02<andythenorth>got some conditional drawing code reading the first bit of the uint 8, which happens to be set or not by accident
11:02<andythenorth>biab, sun is out :)
11:03-!-andythenorth [] has quit [Quit: andythenorth]
11:05<Samu>okay forget about the rivers
11:07<Samu>how do i differentiate AI cpu usage to game world run cpu usage?
11:08<Samu>i think it's YAPF usage
11:08<supermop>Samu: do you have some images showing which/what type of sprites you need?
11:09<supermop>idk anything about patching so a quick look doesn't tell me anything about whether it would be easy or hard for me to draw
11:10-!-pugi [] has joined #openttd
11:10<Samu>i'd like to answer, but I'm not sure how to answer in technical terms
11:11<Samu>it's about the slopes
11:11<Samu>it would need rivers to be drawn on every slope type
11:11<supermop>so the angled slopes?
11:12<Samu>yes, that
11:12<supermop>like flowing down the slope, or along them parallel?
11:12<supermop>similar to ocean coast
11:13<supermop>but thats 8 sprites not counting the V shaped slopes if parallel
11:13<supermop>not too bad
11:13<supermop>if you want waterfalls...
11:13<Samu>as it stands now, it can only draw in 5 different angles
11:14<Samu>flat, NW, NE, SE and SW
11:16<Samu>sec, let me find that funny png file
11:21<Samu>it draws for the examples 0, 3, 6, 9 and 12, and all the others are missing
11:34<Samu>oh, about the half land, half river tiles, that's an interesting question, I am not sure what it would need
11:35<Samu>would take some ships running through those tiles to make sure
11:38<Samu>brb, will attempt installing msvc
11:38<Samu>it's been a year
11:49-!-Flygon_ [] has joined #openttd
11:53<supermop>ok i just want to know if the goal is "half rivers" or angled waterfalls
11:57-!-Flygon [] has quit [Ping timeout: 480 seconds]
11:59-!-frosch123 is now known as frosch
12:02-!-andythenorth [] has joined #openttd
12:06-!-glx [] has joined #openttd
12:06-!-mode/#openttd [+v glx] by ChanServ
12:10-!-Ketsuban [~ketsuban@2a02:c7d:a33e:4100:d490:965c:c091:bc36] has joined #openttd
12:14<andythenorth>Alberth: where values are being ORed into a uint32 with shifts, do I just shift the uint8 right by n bits?
12:14<andythenorth>right / left :P
12:15<@Alberth>just use GB/SB
12:15<@Alberth>those are inline functions doing the bit shifting etc
12:15<andythenorth>it’s in a LOC that looks like
12:16<andythenorth>DoCommandP(start_tile, end_tile, _place_road_flag | (_cur_roadtype << 3) | (_one_way_button_clicked << 5) | (_cur_road_subtype << 7), […]
12:16<andythenorth>where p2 is the 3rd parameter
12:17<@Alberth>append "| (uint8_val << 8)"
12:18<@Alberth>at least I hope the uint8 gets expanded to int before the shift
12:20<@Alberth>looks like we already have road types and sub-road types :p
12:20<andythenorth>nah, I added that
12:20<andythenorth>we have roadtypes, but they’re in no way useful for what ~people think roadtypes should be
12:22<@Alberth>alcohol directly from the vineyard, how useful :)
12:23<supermop>like all nice wines?
12:24<Samu>visual studio 2015 express for desktop windows
12:24<Samu>still installing
12:25<supermop>i'm at work anyway so i can sort of draw sprites but not that quickly
12:27-!-HerzogDeXtEr1 [] has joined #openttd
12:30-!-lele87 [~oftc-webi@] has joined #openttd
12:31<lele87>hello. Can anyone help me with a problem of speed of open ttd, pls?
12:31<@Alberth>speed problem in what way?
12:31<supermop>use the asiastar
12:32<lele87>my game is getting slower and slower while playing
12:32<lele87>I've got +900 trains tho
12:33<supermop>cpu core is not fast enough
12:33<lele87>How can I make it faster?
12:33<supermop>fewer trains, smaller map
12:33<lele87>I might need to change pc?
12:33<supermop>turn off pallet animation (i think it is called "full detail")
12:34<lele87>I couldn't find it
12:34<supermop>if you have a faster computer, you could try using that
12:34<lele87>ho can I do that?
12:34-!-HerzogDeXtEr [] has quit [Ping timeout: 480 seconds]
12:35-!-sla_ro|master [] has joined #openttd
12:35<supermop>i can't remember where the setting is
12:35<andythenorth>turn off full “animation”
12:36<andythenorth>on the options menu on main toolbar
12:36<@Alberth> perhaps??
12:36<@Alberth>but yeah, 900+ trains can hit CPU limits
12:37<V453000>3k+ eazy :P
12:37<Samu>Buy a Core i7-6700K :p
12:38*andythenorth learns to hack openttd with printf
12:38<andythenorth>should I be ashamed? :)
12:38<Samu>ah crap, visual studio needs to restart computer
12:38<Samu>RIP servers
12:39<lele87>It's not there. I was looking for that, I can't find it. I'm using the last version of openttd in italian :(
12:41<supermop>lele87: maybe the setting moved, i cannot find it anymore either
12:43<frosch>hold mouse button on the third toolbar button from left (the gear)
12:43<frosch>uncheck fourth item from bottom "full animation"
12:44-!-Samu_ [] has joined #openttd
12:45<lele87>yep, done, thank you
12:45-!-_johannes [] has joined #openttd
12:46<andythenorth>well I now have 3 tram track subtypes buildable :P
12:46<andythenorth>why 3 are needed, eh, who knows
12:46-!-Samu [] has quit [Ping timeout: 480 seconds]
12:47<Wolf01>what have you done?
12:48<supermop>"shiny rail" "less shiny rails" "slightly dull rails"
12:48<andythenorth>but with subtypes, using a bit to store the current subtype might be….foolish
12:48<andythenorth>is there a uint2? :P
12:48<supermop>"sorry this tram can only run on dull rails"
12:51<andythenorth>I think there are enough bits free to provide up to 3 roadtypes and 3 tramtypes
12:51<andythenorth>more if anyone could be bothered to shuffle them around
12:54<@Alberth>2 bit is 4 values, why 3 ?
12:55<andythenorth>very good question
12:55<@Alberth>hmm, the "no road" case?
12:55-!-lele87 [~oftc-webi@] has quit [Quit: Page closed]
12:55<@Alberth>fair enough :)
12:55<andythenorth>*iff* I figure out how to fold that together with the road_subtype, without breaking all the things that look at roadtype
12:56<andythenorth>seems efficient on bits to do it, but looks very hard tbh
12:56<andythenorth>because roadtype is expected to be found by reading just 2 bits in a lot of places, and is not trivially extensible
12:56<andythenorth>currently I am taking the lazy route, and consuming extra bits
12:57<Samu_>microsoft windows sdk
12:58<Samu_>that link is being redirected
12:59<Samu_>redirects from to
13:00<Samu_>i think i downloaded the wrong thing
13:03-!-Flygon__ [] has joined #openttd
13:09-!-Flygon_ [] has quit [Ping timeout: 480 seconds]
13:11<andythenorth>apparently pushing uint8 values up to 3 into 2 bits works :P
13:11-!-Clockworker_ [] has quit [Read error: Connection reset by peer]
13:11*andythenorth might find out about clamping the hard way :)
13:11-!-Clockworker [] has joined #openttd
13:13<supermop>excited for apocryphal diesel trams
13:15<andythenorth>I am not planning newgrf support yet
13:16<V453000>andy doing roadtypes?
13:16<V453000>holy fuck :D
13:16<V453000>I see your child playing openttd research made you desperate :D
13:16<andythenorth>nah, just couldn’t face any more newgrf
13:16<andythenorth>need a break from that
13:16<V453000>well roadtypes iz specs
13:17<andythenorth>nah, not doing roadtypes
13:17<andythenorth>roadtypes is gash
13:18<andythenorth>maybe I am doing RoadVisuals,
13:18<andythenorth>or RoadEyeCandy
13:22<andythenorth>hmm, bit weird
13:22<andythenorth>bits of my patch are working that I haven’t updated yet
13:22*andythenorth probably doesn’t understand tile inheritance
13:23<andythenorth>I have some set / get functions defined on road_map.h
13:23<andythenorth>and bridge tiles are apparently returning correct values from these
13:23<andythenorth>whereas they should be failing
13:32<andythenorth>ha ha
13:33<andythenorth>if a tile has existing tram track, and additional directions are added, the catenary might be removed
13:34<andythenorth>if the last built subtype doesn’t have catenary
13:34<andythenorth>that implies storing the subtype for every direction bit
13:35<V453000>so, ability to build various road graphics ?
13:36<Samu_>Severity Code Description Project File Line Suppression State
13:36<Samu_>oops, it cannot build
13:36<Samu_>visual studio can't build openttd
13:36<Samu_>3>libpng.lib(pngerror.obj) : error LNK2001: unresolved external symbol ___iob_func
13:37<Samu_>meh i forgot how I did it the other time
13:38<andythenorth>V453000: my plan was tram tracks with / without catenary
13:38<V453000>nice enuf
13:39<andythenorth>as a side effect that might cause other types, which I have zero interest in right now :P
13:39<_johannes>I know I've asked several times, but: Is it possible to append a picture in the forums and then show the attachment graphically? (e.g. like with the img-tag)?
13:39<V453000>I think there is the place inline thingy _johannes , but it only works up to 900 px width or something
13:39<andythenorth>_johannes: format it to < 800x600 iirc
13:39<andythenorth>and it will show
13:40<andythenorth>it’s probably in the help sub-forum or whatever :)
13:41<Samu_>who's a compiler expert with visual studio 2015?
13:41<Samu_>need help
13:41<_johannes>andythenorth: thanks, that worked :)
13:42<andythenorth>eh, this patch swings around in the wind
13:42<andythenorth>now a catenary bit looks cleaner again than subtype bits
13:43<andythenorth>what larks :D
13:43*andythenorth wonders
13:43<_johannes>ok, I've made a forum post about YAPF: ... Can someone please explain it?
13:44-!-gelignite [] has quit [Quit:]
13:44<Samu_>HALP ->
13:44<andythenorth>when a tile has existing road or tram, preserve the subtype of that instead of replacing with new subtype?
13:44<andythenorth>this would work fine for trams I think
13:44<andythenorth>it just causes some redundant catenary
13:49-!-Arveen [] has quit [Read error: Connection reset by peer]
13:53*andythenorth wonders what elrail does
13:53<andythenorth>I can’t see it storing railtype per direction bit
13:54<andythenorth>does it check neighbouring tile in each direction?
13:55<@Alberth>one railtype each tile
13:55<@Alberth> peter has a patch for that :)
13:56<andythenorth>behaviour in game suggests that it checks neighbouring tiles, and draws catenary appropriately
13:56<andythenorth>I didn’t read the code yet though :)
14:00*andythenorth isn’t going to even think about compatibility table :P
14:02<andythenorth>cable trams, like san fransisco
14:02<andythenorth>and there’s the 3rd valid type :P
14:11-!-Wormnest_ [] has joined #openttd
14:12<@Alberth>you ever doubted you wouldn't get raodtypes filled??? :D
14:13<Samu_>can i get some help? visual studio can't compile openttd
14:13<andythenorth>I doubted there would be ideas that are valid for gameplay, or at least good eyecandy
14:15<Samu_>where is this SDK?
14:17<Samu_> - this article is a bit outdated, i couldn't follow it completely
14:17<Samu_>where do i download the windows sdk thing?
14:17<@Alberth>_johannes: did you check the estimates too? how do estimates compare against the final result?
14:18<@Alberth>if your estimate over-estimates you run into this trouble
14:18-!-Wormnest [] has quit [Ping timeout: 480 seconds]
14:18<@Alberth>as co,puted solutions are no longer optimal
14:19<_johannes>Alberth: ah, good point, I only printed the *costs*
14:19<@Alberth>also print the sum, to make life easier :)
14:20<_johannes>so for the order of nodes which the algorithm expands, this depends on the estimate and not on the cost? is that true?
14:20<@Alberth>on the lowest sum
14:20<_johannes>which sum exactly do you mean?
14:21<_johannes>with sum you mean the sum in f(x) in*-Algorithmus#Idee_des_Algorithmus ?
14:21<@Alberth>an intermediate point in A* has 2 cost components. first one is real traveled path length, which is exact
14:22<@Alberth>the second one is an estimate from the point to the final destination
14:23<@Alberth>the point with the lowest sum of both components is closest to the optimal path (as far as is known), and thus best to unfold 1 step in every direction
14:23<@Alberth>in theory, any intermediate point with the lowest sum can be used, it doesn't matter
14:24<_johannes>I see...
14:24<@Alberth>in practice, either the algorithm steers here (lowest estimate seems closer to the end, let's take that), or the implementation of eg hashmap makes a decision
14:25<@Alberth>or sorted queue, probably
14:25-!-Clockworker [] has quit [Read error: Connection reset by peer]
14:25-!-Clockworker [] has joined #openttd
14:25<_johannes>so my call to YAPF aborted probably because the order of nodes was probably wrong?
14:26<_johannes>and the order of nodes was wrong because the estimate might have been wrong?
14:26<_johannes>(in that case, the estimate to go from 82 to 81 was too high, so it has been expanded too late?
14:26<@Alberth>the order is probably not wrong.
14:27<@Alberth>you're talking about lowest sum which is extremely difficult to reason about by hand
14:28<_johannes>but you agree that 82->81 would have to be done before 87->81 ?
14:28<_johannes>(which would imply that the order was wrong)
14:28<@Alberth>but likely, the estimate reduces by pretty much the same amount as the real distance increases (easy to achieve in 8 directions), which means the sum stays the same mostly
14:29<@Alberth>my guess is that either that 87 was really lower sum than 81, or equal
14:29<@Alberth>in the latter case, either order is correct
14:31<_johannes>ok, I'll try to print the sum
14:31<@Alberth>can I also suggest enlarging the image before drawing on it? now it's a cloud of read and green colours, no idea what it says
14:32<_johannes>hmm if I zoom in, it gets more pixeled...
14:32<_johannes>maybe I could try it with the zbase-set :)
14:32<@Alberth>who cares?
14:33<@Alberth>you want to point out positions, right?
14:33<@Alberth>just a plain empty grid would work, mostly
14:33<_johannes>well, there's a depot and station, not sure if it matters
14:33<@Alberth>it probably does
14:34<@Alberth>but people answering A* questions do not care about looks :p
14:34<_johannes>anyways, do you know why it jumps from 87 to 81 at once? why doesn't it first go to 85 etc?
14:35<@Alberth>after 87, 81 has a lowest summed value
14:35<@Alberth>it may be the same value even
14:36<_johannes>yes, but it says that 87 is the direct parent of 81
14:36<@Alberth>if you have 4 points with equal lowest sum, any of those points is correct
14:37<@Alberth>not for picking a new point from the open list
14:37<@Alberth>you pick any point with lowest summed value from the open list
14:38<_johannes>yes, I see that, but the parent pointer still says: this is the last node the train visits before this one
14:39<@Alberth>you explore in all directions at the same time
14:39<_johannes>the train can not jump from tile 87 to tile 81 without ever touching tile 85
14:39<@Alberth>parent relation is only used while traveling back
14:40<_johannes>IIRC the parent relation is used to retrieve the shortest path after FindPath has run
14:40<@Alberth>yep, and you're not there yet
14:40<_johannes>ok now it gets complicated
14:40<@Alberth>that happens after you reached the destination
14:41<_johannes>you mean the parent pointer are all completely remapped after reaching the destination?
14:41<@Alberth>then you trace back to the beginning with the parent relation (normally, not entirely sure this is done in YAPF too)
14:42<_johannes>ok let's ask about the example: let's assume my train wants to go 82->81, and finds out that the route 82->85->86->87->81 is ideal...
14:42<_johannes>that would be possible, I guess
14:42<@Alberth>parent says something about "go here for fastest way back", but it's "as far as we know now", iirc
14:43<_johannes>hmm ok
14:43<_johannes>so in my example, how would the caller of FindPath know what tile came before 81?
14:43<_johannes>it's definitely not 87 :P
14:44<_johannes>but the parent pointer seems to say this in 82->85->86->87->81
14:44<@Alberth>currently your call crashes
14:44<@Alberth>which means something is wrong, which means data values can be messed up
14:45<@Alberth>I would start worrying about parents after you got a wrong path back :p
14:46<_johannes>thanks for your advice.... this YAPF problem makes me a bit desparate...
14:47<@Alberth>of course, it may still be caused earlier in that case, but one problem at a time :)
14:48<_johannes>maybe I called YAPF wrong, this might be one result of the whole analysis
14:48-!-Wormnest__ [] has joined #openttd
14:50<andythenorth>ha ha, I’ve borked the bridge sprites
14:50<andythenorth>must be overwriting some bits somewhere
14:50<andythenorth>how to debug _that_ :P
14:52<@Alberth>make a save game with 1 bridge, print data once with the original game code, and once with your patched code ?
14:52*andythenorth thinks it’s L17 here
14:52<+glx>Samu_: recent visual studio includes windows sdk
14:53<andythenorth>_bridge_cur_road_subtype must be over-writing the bridge type bits
14:53<+glx>no need for a manual download
14:53<@Alberth>line 17? doesn't exist
14:54<Samu_>just installed another visual studio
14:55<@Alberth>check that _bridge_cur_road_subtype has an expected value?
14:55<Samu_>doesn't work, it's even worse :(
14:55<@Alberth>what's the type of _bridge_cur_road_subtype ?
14:55-!-Wormnest_ [] has quit [Ping timeout: 480 seconds]
14:55<Samu_>You cannot open this project with your Express edition of Visual Studio for Windows 10. This edition only supports development of Universal Windows Platform apps.
14:55<+glx>you need the desktop version
14:56<@Alberth>so much for universal windows :p
14:56<Samu_>ok, uninstalling it
14:57<Samu_>can u give me the link to the right visual studio to download?
14:57<+glx>but visual studio comunity should work
14:57<Samu_>there's so many versions
14:57<@Alberth>andythenorth: uint32 w = _bridge_cur_road_subtype ; w <<= 17; then use 'w'. It's hacky, but it ensures your bits are preserved (shifting 17 times in a value with width 8 is undefined behavior)
14:58<@Alberth>it may get expanded to an int beforehand, but better safe than sorry
15:01*andythenorth explores
15:04<andythenorth>Alberth: did I understand correctly?
15:04<+glx>Samu_: community 2015 fails indeed
15:04<andythenorth>doesn’t work as expected :)
15:04<andythenorth>I think 17 might be a bad shift
15:04<Samu_>oh :(
15:05-!-Arveen [] has joined #openttd
15:05<+glx>IIRC an updated ottd_useful is required
15:06-!-liq3 [] has quit []
15:06<@Alberth>andythenorth: looks like what I meant
15:09*andythenorth biab :)
15:12-!-OsteHove` [] has joined #openttd
15:13-!-frosch [] has quit [Quit: be yourself, except: if you have the opportunity to be a unicorn, then be a unicorn]
15:16-!-OsteHovel [] has quit [Ping timeout: 480 seconds]
15:28-!-Samu [] has joined #openttd
15:29<@Alberth>you can save such links in your browser :)
15:33-!-Samu_ [] has quit [Ping timeout: 480 seconds]
15:33<Samu>what can I do about unresolved external symbol?
15:33<Samu>blame microsoft?
15:36<Samu>oh ->
15:37<+glx>as I said, you need an updated ottd_useful
15:38<Samu>so, the wiki article is wrong
15:39<+glx>no, it's for VS2012 :)
15:39<Samu> - is this the most up to date version?
15:46<Samu>ok, reinstalling visual studio express 2015 for desktop
15:51<andythenorth>so my shift of 17 is based on the docs here;a=blob;f=src/tunnelbridge_cmd.cpp;h=5f2534b58c3bd45485aa915a7047eb7ef916d3b4;hb=HEAD#l228
15:51<andythenorth>Alberth: ^
15:52<andythenorth>I assumed I could push an 8 bit value into p2, as only 17 bits are used
15:53<@Alberth>that looks ok to me judging from the docs
15:53<andythenorth>the values are as expected when I read them with uint8 cur_road_subtype = GB(p2, 17, 8);
15:54<andythenorth>but I’m over-writing something in bridge type
15:54<andythenorth>BridgeType is bits 0-7
15:58-!-gelignite [] has joined #openttd
15:58<@Alberth>line 330?
15:59<@Alberth>bits look fine to me
15:59<andythenorth>what happens if I try to write a uint8 into 2 bits with SB?
15:59<andythenorth>does it overflow into neighbouring bits?
15:59<@Alberth>doesn't look like it to me
16:00<andythenorth>so what is suspicious about 330? :)
16:01<@Alberth>it checks transport type
16:01<@Alberth>of the start tile
16:01<@Alberth>which you may be hacking
16:02<@Alberth>ie maybe somwehere further a routine returns a wrong result
16:02<andythenorth>deliberately left transport type alone :)
16:02<andythenorth>too much depends on it
16:04<andythenorth>hmm, if I shift 24, the same problem manifests exactly
16:04<andythenorth>so it’s probably not the shift
16:06<@Alberth>it seems unlikely
16:07<@Alberth>you could check the used functions, and see if they depend on something you changed
16:07<andythenorth>bridge_type is reporting same for every type I build, but the sprites are different in some cases
16:08<@Alberth>you could also step through this function, and see how adding your patch changes values or behaviour
16:08<andythenorth>I’m doing that with printfs now
16:08<@Alberth>flags & DC_EXEC <-- that means "really do it"
16:09<@Alberth>everything before is just checking
16:09<@Alberth>so bridgetype value there matter, as they end up in the map data
16:11*andythenorth checks bytes in the map directly
16:11<@Alberth>good idea :)
16:12<@Alberth>good night
16:15<andythenorth>something overflows
16:15<andythenorth>goodnight :)
16:16-!-HerzogDeXtEr1 [] has quit [Read error: Connection reset by peer]
16:16<andythenorth>silly andythenorth
16:18<supermop>rendering lots of trolleys
16:18-!-Alberth [~alberth@2001:981:c6c5:1:be5f:f4ff:feac:e11] has left #openttd []
16:21*andythenorth read the landscape grid too literally
16:21<andythenorth>and assumed SB and GB counted down from highest bit :P
16:21<andythenorth>perils of left-right
16:27<_johannes>is it possible to build a track-cycle without danger of deadlocks?
16:28<_johannes>I just have such a cycle here, and I'm getting traffic jams all the time
16:28-!-Arveen [] has quit [Quit: Nettalk6 -]
16:36<Samu>aha, i did it
16:36<Samu>however, there is an issue with the dpi scaling
16:37<Samu>the testing build isn't dpi aware or something like that, what can i do?
16:47-!-sla_ro|master [] has quit []
16:48-!-pugi [] has quit []
16:48-!-_johannes [] has quit [Quit: leaving]
16:48<peter1138>will apple ever move on to os 11?
16:51<Samu>wow i think i figured it out
16:54<Samu>right click openttd project > properties. Then Configuration Properties > Manifest Tool > Input and Output, then DPI Awareness: Per Monitor High DPI Aware
16:54<Samu>this solved the scaling
16:54<andythenorth>peter1138: unlikely
16:56<andythenorth>hmm, that’s tunnels with catenary done apparently
16:56<andythenorth>and without
16:56<andythenorth>how hard can NotRoadTypes be?
17:03<andythenorth>peter1138: you didn’t finish it before because…? Boring? CBA?
17:18<Wolf01>Rebooting... the virtual machine with XP
17:19*andythenorth must to bed
17:20<Wolf01>meh... the software requires windows 98/2000
17:21-!-Wormnest__ [] has quit [Quit: Leaving]
17:23-!-gelignite [] has quit [Quit:]
17:24-!-andythenorth [] has quit [Quit: andythenorth]
17:25<Wolf01>uhoh... no usb port found, this could be tricky
17:34-!-KouDy [] has quit [Remote host closed the connection]
17:34-!-KouDy [] has joined #openttd
17:37<Samu>download the file rivertiles.scn - it is a scenario with the rivers already placed
17:37<Samu>and they miss the sprites
17:42<Eddi|zuHause>hm... no frosch:
17:47<Samu>about the ships... they are not traversing the half-tile, but I don't see any reason why they shouldn't
17:48<Samu>as long as the half-tile is not declive, they should traverse it the half-flat part of it
17:49<Samu>thats something I could venture myself into
17:49<Samu>make it pathable
17:51<Samu>should mimic the coastal pathing
17:51<Samu>gonna investigate
17:55-!-Hiddenfunstuff [] has quit [Quit: HydraIRC -> <- Go on, try it!]
18:20-!-Progman [] has quit [Remote host closed the connection]
18:25<supermop>half rivers seems like a good start as you'd end up drawing much of the same stuff for sloped waterfalls
18:56-!-Quatroking [] has quit [Quit: Leaving]
19:08<Samu> vs
19:10<Samu>on the first image it shows the missing water sprites on the left, and the missing pathable water track on the right
19:11<Samu>the bare tiles need no tracks, they already behave correctly
19:11<Samu>the flat tile 0 also behaves correctly
19:12<Samu>the others, half-tiles, don't
19:18-!-Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
19:25<Eddi|zuHause>the last time i brought up half-rivers they were shot down because people would then want to build rails on the other half tile
19:30<Samu>those tracks are to visualize where ships can traverse
19:31<Samu>but the tile is fully water
19:31-!-Clockworker_ [] has joined #openttd
19:33-!-drac_boy [] has joined #openttd
19:38-!-Clockworker [] has quit [Ping timeout: 480 seconds]
19:43-!-smoke_fumus [~smoke_fum@] has quit [Quit: KVIrc 4.2.0 Equilibrium]
19:56-!-zeknurn` [] has quit [Read error: Connection reset by peer]
19:57-!-zeknurn [] has joined #openttd
20:01-!-JezK [~jez@2407:7800:400:107f:3db5:daca:8457:e66a] has joined #openttd
20:04<drac_boy>seem a bit strange for a transfer table but what do I know tho
20:06<Eddi|zuHause>are we playing "i don't think i see what you are seeing"?
20:10-!-TrueBrain [] has quit [Read error: Connection reset by peer]
20:10-!-TrueBrain [] has joined #openttd
20:11-!-Myhorta [] has quit [Ping timeout: 480 seconds]
20:31<drac_boy>at least this one isn't as confusing to figure out but heh good thing they added some touches of red paint otherwise that poor plow would easily seeming become lost in the snow its supposed to remove :->
20:36<Eddi|zuHause>i somehow doubt they're getting a lot of snow in that museum
20:50-!-TrueBrain [] has quit [Read error: Connection reset by peer]
20:51-!-TrueBrain [] has joined #openttd
20:52-!-APTX_ [] has quit [Read error: Connection reset by peer]
20:52-!-APTX [] has joined #openttd
20:56-!-Snail [] has joined #openttd
21:28-!-Flygon__ [] has quit [Read error: Connection reset by peer]
21:32-!-Flygon [] has joined #openttd
21:43<sim-al2>I'm not sure I understand why a transfer table for a tram would have only half a roof
21:44-!-tycoondemon2 [] has joined #openttd
21:48<drac_boy>personally I find the whole thing a bit strange to me...I'm used to simple ones that just looks like a flat bridge sitting on the ground and not much else (aside to overhead wire if electric locomotives required)
21:48-!-tycoondemon [] has quit [Ping timeout: 480 seconds]
21:49-!-APTX_ [] has joined #openttd
21:50-!-APTX [] has quit [Read error: Connection reset by peer]
21:54<drac_boy>hm not finding that photo I recall before. but either way germany does have a small number of all-electrified turntables tho. kinda funny to look at that spaghetti-like mess of wires starting from the very center point and shoot in all manners of directions
21:58<drac_boy>well can't find the real one now but heres a similar model version tho
21:58-!-Ketsuban [~ketsuban@2a02:c7d:a33e:4100:d490:965c:c091:bc36] has quit [Quit: Leaving]
21:58<drac_boy>I see a silly bright little diesel locomotive has sneaked in tho :) (and yeah a little military wagon/train too)
22:05<drac_boy>either way going sleep so have fun
22:05-!-drac_boy [] has left #openttd []
22:07<Samu>just managed to make the ships able to traverse those track slopes with this noob-coding patch
22:08<Samu>do you want a savegame?
22:19<Samu>download the savegame file with the name "start these ships.sav" ->!1251&authkey=!APyGXPhplGn9KKM&ithint=file%2csav
22:22<Samu>with the patch, the ships will be able to run in circles. becomes easier to see how the missing sprites should look like
22:22<Samu>now i'm out to sleep, good night all
22:30-!-Samu [] has quit [Ping timeout: 480 seconds]
22:50-!-glx [] has quit [Quit: Bye]
22:50-!-Xal [] has joined #openttd
22:52-!-Supercheese [] has joined #openttd
23:45-!-liq3 [] has joined #openttd
---Logclosed Tue Mar 29 00:00:03 2016