Back to Home / #openttd / 2017 / 10 / Prev Day | Next Day
#openttd IRC Logs for 2017-10-25

---Logopened Wed Oct 25 00:00:54 2017
00:53-!-supermop_ [] has quit [Ping timeout: 480 seconds]
01:00-!-Cubey [] has quit [Ping timeout: 480 seconds]
01:14-!-supermop [] has joined #openttd
01:14-!-supermop is "A CIRC user" on #openttd #tycoon
01:47-!-andythenorth [] has joined #openttd
01:47-!-andythenorth is "andythenorth" on #openttd
01:59-!-Arveen2 [] has joined #openttd
01:59-!-Arveen2 is "realname" on #openttdcoop #openttd
02:03-!-sim-al2 [] has quit [Ping timeout: 480 seconds]
02:04-!-Arveen [] has quit [Ping timeout: 480 seconds]
02:15-!-Progman [] has joined #openttd
02:15-!-Progman is "Peter Henschel" on #openttdcoop #openttd
02:25-!-Supercheese [] has joined #openttd
02:25-!-Supercheese is "Supercheese" on #openttd #openttdcoop.devzone
03:22-!-Supercheese [] has quit [Read error: Connection reset by peer]
03:23-!-Supercheese [] has joined #openttd
03:23-!-Supercheese is "Supercheese" on #openttd #openttdcoop.devzone
03:45-!-orudge` [] has quit [Ping timeout: 480 seconds]
03:46-!-orudge` [] has joined #openttd
03:46-!-orudge` is "orudge" on #thesinner #openttdcoop.devzone #bukkit #jontylog #tycoonexiles #z.aud #locomotion #transportempire #openttdcoop #openttd #tycoon
03:46-!-mode/#openttd [+o orudge`] by ChanServ
04:00-!-Gja [] has joined #openttd
04:00-!-Gja is "Martin" on #bcache #openttd
04:36-!-andythenorth [] has quit [Quit: andythenorth]
04:42-!-Biolunar [] has joined #openttd
04:42-!-Biolunar is "Biolunar" on #openttd #suckless
05:00-!-Wolf01 [] has joined #openttd
05:00-!-Wolf01 is "Wolf01" on #openttd
05:14-!-Supercheese [] has quit [Quit: Valete omnes]
05:43<SpComb>walk into the past... dug these up for historical curiosity :)
05:45-!-andythenorth [~andytheno@] has joined #openttd
05:45-!-andythenorth is "andythenorth" on #openttd
05:46-!-andythenorth [~andytheno@] has left #openttd []
06:31-!-Gja [] has quit [Quit: Going offline, see ya! (]
06:50-!-none [] has joined #openttd
06:50-!-none is "realname" on #debian-hurd #debian-offtopic #apparmor #tor #tor-project #tor-onions #tor-offtopic #i2p #https-everywhere #privacybadger #openttd #privacytech #oftc
06:53-!-ToffeeYogurtPots [] has quit [Remote host closed the connection]
06:53-!-Mahjong1 is now known as Mahjong
06:54-!-Gja [] has joined #openttd
06:54-!-Gja is "Martin" on #bcache #openttd
06:55-!-debdog [~debdog@2a02:8070:4182:a200:7a24:afff:fe8a:d04d] has quit [Quit: No Ping reply in 180 seconds.]
07:00-!-debdog [~debdog@2a02:8070:4182:a200:7a24:afff:fe8a:d04d] has joined #openttd
07:00-!-debdog is "Wowbagger" on #openttd
07:31-!-Samu [] has joined #openttd
07:31-!-Samu is "OFTC WebIRC Client" on #openttd
07:36-!-Biolunar [] has quit [Ping timeout: 480 seconds]
07:48-!-FLHerne [] has joined #openttd
07:48-!-FLHerne is "Francis Herne" on #openttd
07:54-!-Compu [] has quit [Quit:]
07:59-!-Compu [] has joined #openttd
07:59-!-Compu is "Compu" on #help #openttd #openttdcoop.stable #openttdcoop #/r/openttd
08:12-!-sim-al2 [] has joined #openttd
08:12-!-sim-al2 is "sim-al2" on #openttd @#/r/openttd
08:31-!-JacobD88 [] has joined #openttd
08:31-!-JacobD88 is "JacobD88" on #openttd.notice #openttd
08:33-!-JacobD88 [] has quit []
08:36<Samu>how can I code this more efficiently?
08:36<Samu>can you notice the repetition
08:38-!-debdog [~debdog@2a02:8070:4182:a200:7a24:afff:fe8a:d04d] has quit [Quit: No Ping reply in 180 seconds.]
08:44-!-debdog [~debdog@2a02:8070:4182:a200:7a24:afff:fe8a:d04d] has joined #openttd
08:44-!-debdog is "Wowbagger" on #openttd
08:47<dihedral>Samu: methods?
08:50-!-Gja [] has quit [Quit: Going offline, see ya! (]
08:56-!-Gja [] has joined #openttd
08:56-!-Gja is "Martin" on #bcache #openttd
09:06-!-Flygon [] has quit [Read error: Connection reset by peer]
09:24-!-Borg [] has joined #openttd
09:24-!-Borg is "Unknown" on #openttd
09:24<Borg>on wiki, ctrl+click on goto station means full load.. but it sets full load any.. instead
09:24<Borg>im running 1.6.1
09:24<Borg>is there a way to make full load default?
09:31<Samu>hold shift
09:32<Samu>or is it control?
09:32<Samu>ctrl-left click
09:33<Samu>ah, the "full load" all cargo?
09:33<Samu>dihedral: what methods?
09:34-!-goodger [~goodger@] has quit [Remote host closed the connection]
09:35-!-goodger [~goodger@] has joined #openttd
09:35-!-goodger is "GOODGER" on #openttd
09:36<Borg>yeah, full load all cargo..
09:38<Wolf01>It only works like that, make a patch with a settings to swap the behaviour
09:38<dihedral>Samu: write a method to get rid of your repetition
09:48-!-sim-al2 [] has quit [Ping timeout: 480 seconds]
09:51<Borg>Wolf01: yeah, would be nice to have extra options in seting to set default behavior of buttons in orders..
09:58<supermop>hmm mother in law has sent me picture of ton of obi and kimono asking if i would like them
09:58<supermop>could make the obi into Ties but seems like a shame to cut them up
09:59-!-sla_ro|master [] has joined #openttd
09:59-!-sla_ro|master is "slamaster" on @#sla #openttd #love
09:59<supermop>don't know anyone whole would wear formal kimono and need an obi otherwise
10:03<Samu>tried googling methods, i'm not sure what I need
10:03<Wolf01>Samu, functions
10:03<Wolf01>Usually a "method" is a function which doesn't return a value
10:04<Wolf01>You should google programming school first
10:14-!-andythenorth [~andytheno@] has joined #openttd
10:14-!-andythenorth is "andythenorth" on #openttd
10:15<supermop>left thumb drive at home, no newgrf work today
10:19<supermop>the triumph of laziness in industrial design
10:19<supermop>aka Ives approach
10:20<supermop>i quite like the electric fedex trucks that we've had in the city for a few years
10:22<supermop>coke wore it better:
10:23<supermop>apparently tesco have a few as well
10:31<Samu>for all stations that can be used from the list of all_stations, create another list of stations, then sort them by rating
10:34<Samu>i need a way to get the number of stations I'm working with
10:34<Samu>instead of st1, st2, st3 etc..., i get that number
10:36<Samu>so if it finds 10 stations or 15 stations, I wanna distribute cargo to 10 or 15
10:36<Samu>see what i mean?
10:42-!-Gustavo6046 [] has joined #openttd
10:42-!-Gustavo6046 is "I open with sandwich!" on #openttd #ohnx @#gusbot #doom64ex
10:52<supermop>i guess i could play a game for purposes other than checking sprite alignment
10:55<V453000>no, there is no return
10:55<Samu>im a terrible programmer, bla bla
10:59-!-Gja [] has quit [Quit: Going offline, see ya! (]
11:08<Wolf01>Samu: try with stations_list.size()
11:10-!-Gja [] has joined #openttd
11:10-!-Gja is "Martin" on #bcache #openttd
11:14-!-andythenorth [~andytheno@] has left #openttd []
11:19<supermop>wife's company offers 'ozone scented notebooks' as swag
11:19<supermop>raises the question: who the hell enjoys the way ozone smells?
11:20<Wolf01>I do
11:20<supermop>people with fetish for electric arcing?
11:20<supermop>i always feel like im about to die when i smell it
11:20<supermop>like im about to get electrocuted or be in a fire
11:20<Wolf01>I always smell my electric zapper when I charge it
11:21<Gustavo6046>Larger grids should be broken into areas, where each has equal properties in all of the tiles pertaining to the area. Each area generates quickly a list of tiles that connects to any other area, if any, This is an alternate way of viewing a large graph; natural graphs, like slopes with integer heights and large 50m increments, are favored, due to the amount of repeating tiles.
11:22<supermop>my dad had old G or O scale model train from the 50s, that was set up in basement of my grandparents house
11:22<supermop>motors in the train put out ton of ozone
11:22<Gustavo6046>supermop, is that why you play OpenTTD?
11:23<supermop>no risk of getting electrocuted
11:23<Gustavo6046>I only play because it's a fun, and also a very flexible game. I'm looking for a fun game that's easy to mod for YEARS.
11:24<Gustavo6046>People should do motors whose byproduct is ozone, not CO₂. That would help!
11:25<supermop>Gustavo6046: not if you are standing near the exhaust
11:25<supermop>also it takes more energy to make ozone than you'd get out
11:26-!-frosch123 [] has joined #openttd
11:26-!-frosch123 is "frosch" on #openttdcoop.devzone #openttd
11:26<supermop>" Exposure of 0.1 to 1 μmol/mol produces headaches, burning eyes and irritation to the respiratory passages.[17] Even low concentrations of ozone in air are very destructive to organic materials such as latex, plastics and animal lung tissue."
11:27<supermop>CO2 sounds nicer to breath than O3 in that case
11:27-!-Maraxus [] has joined #openttd
11:27-!-Maraxus is "Maraxus" on #openttd #factoriocoop @#openttdcoop.stable @#openttdcoop
11:27<Wolf01>Just like McDonalds
11:31-!-Cubey [] has joined #openttd
11:31-!-Cubey is "Jaybar" on #openttd
11:33-!-oskari89 [] has joined #openttd
11:33-!-oskari89 is "Oskari Kvist" on #openttd
11:37-!-Maraxus [] has quit [Quit: ChatZilla 0.9.93 [Firefox 56.0.1/20171002220106]]
11:38<@DorpsGek>Commit by frosch :: r27928 /trunk/src (12 files) (2017-10-25 17:38:14 +0200 )
11:38<@DorpsGek>-Fix: [NewGRF] While executing random triggers, var 5F should include the new triggers.
11:38<@DorpsGek>-Fix: [NewGRF] Reset used random triggers only after all A123 chains have been resolved, so that all RA2 in all chains can test the shard triggers. This also includes multiple RA2 in the same A123 chain.
11:38<@DorpsGek>-Fix: [NewGRF] Industry random triggers are stored per tile, even when randomising the shared random bits of the parent industry.
11:38<@DorpsGek>Commit by frosch :: r27929 /trunk/src (3 files in 2 dirs) (2017-10-25 17:38:19 +0200 )
11:38<@DorpsGek>-Cleanup: Remove unused Industry::random_triggers
11:40<frosch123>LordAro: look, commits noone understands :)
11:41-!-Cubey [] has quit [Ping timeout: 480 seconds]
11:44<LordAro>frosch123: something mildly icky about all those waiting_trigger -> sprite resolve -> used_triggers blocks being duplicated like that, but...
11:45-!-Cubey [] has joined #openttd
11:45-!-Cubey is "Jaybar" on #openttd
11:47<frosch123>they are all slightly different, since they are stored in structs or in the map array
11:51-!-TheMask96 [] has quit [Ping timeout: 480 seconds]
11:52-!-HerzogDeXtEr [] has joined #openttd
11:52-!-HerzogDeXtEr is "purple" on #openttd
11:53-!-Arveen2 [] has quit [Remote host closed the connection]
11:55-!-TheMask96 [] has joined #openttd
11:55-!-TheMask96 is "Martijn Zweistra" on @#altcontrol #openttd #openttd.notice
11:58-!-Alberth [] has joined #openttd
11:58-!-mode/#openttd [+o Alberth] by ChanServ
11:58-!-Alberth is "purple" on @#openttd
12:03-!-Arveen2 [] has joined #openttd
12:03-!-Arveen2 is "realname" on #openttdcoop #openttd
12:04<Samu>Wolf01: i was able to create a list! i can also retrieve the number of items in the list
12:05<Samu>to add a station I do: used_stations.Include(st);
12:05<Samu>to get the number of stations it added, I do: uint no_stations = used_stations.Length();
12:05<Samu>now, how do I sort it by rating?
12:06<Samu>highest rating first
12:06<Samu>lowest rating, last
12:08-!-glx [] has joined #openttd
12:08-!-mode/#openttd [+v glx] by ChanServ
12:08-!-glx is "Loïc GUILLOUX" on +#openttd
12:09<Samu>frosh, are u fixing bugs?
12:10<Samu>is this considered a bug?
12:12<Samu>aircraft goes from 2000 km/h to 321 km/h in 1 tick
12:12<Samu>bug or intended?
12:13<ST2>frontal wind
12:14<supermop>Samu: any behavior that was in TTO or TTD cannot really be called a bug, even if undesirable
12:15<supermop>frosch123: no newgrf work today so haven't fixed long names yet, but other than that i think the grf is pretty functional
12:16<supermop>just need to add a check to switch the door open side when drive side is set to left
12:16-!-crem1 [~crem@2a02:168:520c:0:201:c0ff:fe08:8328] has joined #openttd
12:16-!-crem1 is "crem" on #openttd
12:17-!-Wormnest [] has joined #openttd
12:17-!-Wormnest is "Wormnest" on #openttd
12:18-!-crem [] has quit [Ping timeout: 480 seconds]
12:18<frosch123>door sides on local trains are interesting
12:19<frosch123>trams mostly have doors only on one side
12:19<frosch123>subways can have them on both
12:20<frosch123>once i was in a subway which opened doors on both sides in one station, and you could switch to different trains on either side
12:20<Cubey>What city?
12:20<frosch123>i never figured out whether people also passed through the train to get from the left to the right neighbout or vice versa
12:20<frosch123>Cubey: i think that was singapore
12:20<Cubey>Wow that sounds bizarre
12:22<supermop>frosch123: a few termini here have that, some other stations used to have it
12:22<supermop>there is also the 'spanish solution'
12:22<supermop>where one side is for embarkation and the other of disembarkation
12:23<Cubey>Like a roller coaster!
12:23<frosch123>i did not see that, the doors were always first-out-second-in
12:23<supermop>trams in australia, and LRV here in the US have cabs at both ends, so they can reverse without a loop.
12:24<supermop>so they also have doors on both sides
12:24<supermop>and where there are real platforms, sometimes it is an island, sometimes on the sides
12:27-!-Biolunar [] has joined #openttd
12:27-!-Biolunar is "Biolunar" on #openttd #suckless
12:42<frosch123>Cubey: <- it is this one
12:43<frosch123>three tracks, the middle one is a terminus line, the outside ones are opposing directions of another line
12:43<frosch123>so you can enter/leave the middle line to either direction of the outside line
12:43<frosch123>while hte middle line only has one direction due to being teminus
12:44<supermop>one track terminus seems odd
12:45<frosch123>well, maybe terminus is the wrong name
12:45<frosch123>but it's the airport-connector which ends at that station
12:45<supermop>no, it is a terminus, just an odd choice from operational standpoint
12:45<frosch123>and you can switch to the other line, which has two regular directions
12:45-!-Biolunar [] has quit [Quit: leaving]
12:46<supermop>as you loose some flexibility in lay-up of trains
12:46<supermop>any train at the terminus absolutely must depart before the next one arrives
12:46<supermop>so if it is late to leave, it will block the following train,
12:47<frosch123>well, they all come and go from/to the same direction
12:47<supermop>and if it needs to go out of service for some reason, it cannot easily do so there
12:49<supermop>operations and movements at termini is maybe the thing about trains i am most interested in
12:50<supermop>don't usually care that much about the trains themselves
12:58<Wolf01><frosch123> once i was in a subway which opened doors on both sides in one station, and you could switch to different trains on either side <- happened to me on one of the terminals in Tokio
12:59<Wolf01>I don't remember the exact line, and mine was the last run :P
13:05<Samu>qsort.cpp is a microsoft file, the game uses microsoft code to sort arrays?
13:05<Samu>what am i supposed to do
13:07<Samu>i was following the sort code, and i ended up in qsort.cpp
13:08<@Alberth>qsort(): POSIX.1-2001, POSIX.1-2008, C89, C99, SVr4, 4.3BSD. <-- my man-page it existed in the C language in 1989 already
13:08<Samu> // // qsort.cpp // // Copyright (c) Microsoft Corporation. All rights reserved. // // Defines qsort(), a routine for sorting arrays.
13:09<@Alberth>ie, it's a standard library function afaik
13:10<Samu> /* $Id: sort_func.hpp 24900 2013-01-08 22:46:42Z planetmaker $ */
13:10-!-Stimrol [] has joined #openttd
13:10-!-Stimrol is "Stimrol" on #openttd
13:11<Wolf01>Samu, what's the problem? If it's there just use it
13:11<Samu>im trying to sort a list, i just don't know how
13:12<@Alberth>Samu: I only see a call to qsort, no #include of "qsort.cpp" or so
13:12<Wolf01>Look at other usages of "sort"
13:12<Samu>i list the stations in a StationList
13:12<@Alberth>bye W
13:12<Samu>they're not sorted
13:12<Samu>how do i sort them by a criteria, highest ranking first
13:14<@Alberth> ?
13:14<@Alberth>first hit of "qsort example"
13:15-!-Gja [] has quit [Quit: Going offline, see ya! (]
13:16<Samu>I got Station. it's a struct?
13:16<@Alberth>quite likely
13:16<@Alberth>but you can find that if you want
13:17<@Alberth>but qsort works in the same way no matter what type of data you have
13:35-!-synchris [~synchris@] has joined #openttd
13:35-!-synchris is "Synesios Christou" on #openttd
13:37-!-Gja [] has joined #openttd
13:37-!-Gja is "Martin" on #ceph #bcache #openttd
13:54-!-andythenorth [] has joined #openttd
13:54-!-andythenorth is "andythenorth" on #openttd
14:04-!-Samu [] has quit [Remote host closed the connection]
14:10-!-mindlesstux [~mindlesst@2001:19f0:5:238:5400:ff:fe30:7f01] has quit [Quit: ZNC -]
14:11-!-mindlesstux [~mindlesst@2001:19f0:5:238:5400:ff:fe30:7f01] has joined #openttd
14:11-!-mindlesstux is "ZNC -" on #virtualization #virt @#tuz-oftc @#tuz #qemu #osm #openttd #openconnect #observium #linode #ipv6 #OpenRailwayMap
14:13<V453000>Eddi|zuHause: how exactly did that CETS thing work? The many rotations ... each vehicle has to be articulated into 3 parts and the middle part is looking at the relation of the other vehicles?
14:15-!-Samu [] has joined #openttd
14:15-!-Samu is "OFTC WebIRC Client" on #openttd
14:18<V453000>ah he first part is assigned the actual vehicle graphics, and the curvature between the first/second and second/third part is queried to show intermediate sprites when going around a curve
14:18<V453000>is it a problem to have it on the middle part?
14:19<V453000>that makes most sense, no?
14:21<andythenorth>is all bonkers
14:21-!-synchris_ [~synchris@] has joined #openttd
14:21-!-synchris_ is "Synesios Christou" on #openttd
14:22<andythenorth>V453000: are you asking for yourself, or for a friend? o_O
14:22<V453000>for myself
14:22<V453000>I'm seriously considering to use it
14:23-!-synchris [~synchris@] has quit [Ping timeout: 480 seconds]
14:23<V453000>I'm saving many sprites on the layering so I can afford to use something like that
14:24<V453000>and I'm curious to try something new
14:28<andythenorth>I tried the 10/8 thing in Horse 1 for similar reason
14:28<andythenorth>but no regrets about deleting it
14:28<V453000>you tried that 24 rotation thing?
14:29<andythenorth>just 10/8 length using 3 part vehicles
14:29<andythenorth>and also articulated 10/8 3-part vehicles
14:29<V453000>that's fine I will be using just 8/8 parts anyway
14:29*andythenorth learnt some stuff
14:29<andythenorth>was useful
14:29<V453000>just wondering if I have to use 3-articulated vehicles for this hack
14:31<andythenorth>you can do most of turning sprites without 3-part
14:32<andythenorth>front and rear vehicles might have issues
14:37<V453000>can I influence tilt flag by some callback?
14:37<V453000>like if vehicles XYZ in consist, then use tilt?
14:39<andythenorth>tilt is flag only afaik
14:39<andythenorth>added it to Horse 2 this morning
14:39<andythenorth>yeah no cb36 for it
14:45<V453000>need to make some vehicles have tilt and some not then
14:45<V453000>so if you get a combination, you get the bonus
14:46<andythenorth>so you have to combine only tilt vehicles?
14:46<andythenorth>India landscape:
14:46<andythenorth>seems fair
14:47<V453000>0/10 not gray
14:47<V453000>idk, thing is that if I use 3-unit articulation for 8/8, it means I will do 2/8 + 3/8 + 2/8
14:47<V453000>which are super short units, meaning they will have high speed in curves already
14:48<V453000>and if I have multiple compatible track types, I can make some vehicles belong to a fast track type with moar speed allowance
14:48<V453000>so tilt on drugs
14:48<V453000>260kmh on shortest curves is kind of retard mode though
14:48<V453000>will test
14:53<V453000>I was considering making 16/8 wagons
14:53<V453000>but I also want 24/8 engines
14:53<V453000>which doesn't do full tiles
14:54<V453000>8/8 will have to be fine
14:55<andythenorth>I got about 260kmh, but not on shortest curves
14:55<V453000> is giant shit with short wagons
14:55<V453000>lawyered, I used a real photo for excuses
14:56<andythenorth>game over
14:56<andythenorth>you can never go back now
14:56<andythenorth>4/8 wagons are boss
14:56<andythenorth>so are 6/8
14:57<andythenorth>you could just drop the integer tiles obsession
14:57<andythenorth>like, who cares?
14:57<V453000>not convinced :)
14:58<andythenorth>you should see my savegame :P
14:59<Borg>fuuu :D I didnt played OpenTTD from years..
14:59<V453000>not sure if I should
14:59<Borg>PBS is awesome
14:59<Borg>actualy, with PBS.. u actually barely need anything other, right?
15:00<andythenorth>total integer madness
15:00<V453000>I'm firmly convinced that visually all the 4/8 and 6/8 looks absolutely amazing and not using it is a lack of variety in the set
15:01<V453000>but I'm still going to be a little piece of shit and use 8/8
15:02<V453000>24/8 might fit a big boy 4-8-8-4
15:02<V453000>from seeing screenshots
15:02<V453000>I mean photos
15:02<V453000>oh yean not with tender
15:03<V453000>that would be like 32/8
15:03<V453000>24/8 for slightly chibi version
15:03<andythenorth>just go 48/8
15:03<andythenorth>problem solved
15:04<andythenorth>super awesome
15:04<V453000>yeah 3 tiles
15:06-!-mindlesstux [~mindlesst@2001:19f0:5:238:5400:ff:fe30:7f01] has quit [Quit: ZNC -]
15:06-!-mindlesstux [~mindlesst@2001:19f0:5:238:5400:ff:fe30:7f01] has joined #openttd
15:06-!-mindlesstux is "ZNC -" on #virtualization #virt @#tuz-oftc @#tuz #qemu #osm #openttd #openconnect #observium #linode #ipv6 #OpenRailwayMap
15:10<frosch123>V453000: eddi draws the sprite with the first or last sprite depending on vehicle orientation
15:10<frosch123>that is to minimise clipping with foundations, tunnels, bridges, ...
15:10<V453000>ahhh that explains why the template looks like it does
15:11<V453000>that's pretty smart
15:11<V453000>I guess in terms of the turning logic it doesn't really matter which I choose to do
15:11<frosch123>if you put the sprties on the middle part, it will clip with foundations on southern tile
15:11<V453000>but isn't the middle best because it reacts most properly to curves (is center) ?
15:11<V453000>even if it's 8/8?
15:12<V453000>I guess it would eh if the articulated part is 2/8 or 3/8
15:12<V453000>well ok I can try putting them on the ends, sounds like a good idea
15:12<frosch123>possibly eddi does not just check the curvature, but also the positional differences
15:13<frosch123>and then adjusts the sprite alignment so that it looks like the sprite is in the middle of the middle part
15:13<V453000>I found this in the logs
15:13<frosch123>while actually drawn by the southern part
15:14<V453000>well ok
15:14<V453000>I will attempt to get a template to work
15:14<V453000>since all vehicles will be the same lengths and same articulated units, I guess it's "just" doing it once
15:21<andythenorth>so In A Hot Country is currently best FIRS Economy
15:21<andythenorth>in case anyone was wondering
15:21<andythenorth>public service
15:25<frosch123>V453000: actually, could you write a testgrf that does only draw the graphics with the middle part?
15:26<V453000>I will definitely be making a barebones prototype as the first thing now
15:26<frosch123>i wonder whether the clipping and alignment with the other parts couldn't just be done inside ottd
15:26<V453000>collecting info for now, starting soon
15:27<Eddi|zuHause> <V453000> is it a problem to have it on the middle part? <-- IIRC i have the sprite on the middle part on the map, and the first part in the depot (there was a thing about dragging that required this, may be fixed now)
15:28<Eddi|zuHause>MB did some experiments with reducing clipping for the DBSet
15:28<Eddi|zuHause>but i don't really remember the outcome
15:28<Eddi|zuHause>and of course he didn't share his code with me :p
15:30<V453000>well I will do experiments
15:30<V453000>is why I don't really want to super copy your code because I want to come to the conclusion and understand wtf
15:32<Eddi|zuHause>the code is actually not complicated
15:32<Eddi|zuHause>the offsets for the template are a giant pile of WTF, though
15:33<V453000>that's pretty much what I thought
15:35<Eddi|zuHause>also, i think the template could use slightly better angles, to make it look less jumpy in curves
15:36<V453000>I think with antialiased 3D renders it will look a bit smoother
15:36<V453000>also is it possible to do 5 articulated parts and 4 extra intermediate rotations?
15:36<V453000>I'm probably not going to do that, just wondering
15:37<frosch123>we can likely do 64 rotations
15:37<frosch123>the orientation is essentially the positional difference between first and last part
15:38<frosch123>the longer the distance, the more orientations,
15:38<V453000>I think 32 is the reasonable maximum
15:38<frosch123>though turns > 90° make it complicated
15:38<V453000>but that's just from pure guessing
15:38<V453000>oh yeah I wanted to test with 90deg turns on :D
15:38<frosch123>i would think you need more orientations the longer the vehicel gets
15:39<V453000>pretty much
15:39<V453000>I will certainly only have 8/8
15:39<frosch123>you only want the vehicle ends to jump that many pixels
15:39<Eddi|zuHause>my code basically ignores 90° turns
15:40<V453000>is reasonable
15:40-!-Borg [] has quit [Quit: leaving]
15:40<Eddi|zuHause>if it's not one of the 4 cases i test, it falls back to the default orientation
15:41<Eddi|zuHause>you'd get too many edge cases to consider
15:46<andythenorth>90' turns are mandatory
15:48<Wolf01>Pffft, just revert to 8 rotations if 90° turns are enabled, just to teach a lesson to the ones which want to keep that nasty thing on
15:48<andythenorth>I played wrong for like 8 years, with 90' turned off
15:48<andythenorth>next I should turn breakdowns back on
15:48<V453000>not a bad idea Wolf01
15:49<andythenorth>I only turned breakdowns off even because RVs can't find depots
15:49<Wolf01>You don't build enough depots
15:49<Wolf01>I always played with breakdowns (reduced)
15:49<Eddi|zuHause>Wolf01: but that just results in a huge set of people never even knowing there are more angles
15:50<frosch123>V453000: <- that's what i could offer
15:50<Wolf01>Good, and when they figure out from screens from me, V or mop that there are more angles, then they'll file bug reports which andy will close
15:50<andythenorth>frosch123: more slugs...
15:50<andythenorth>bendy slugs
15:51<frosch123>andythenorth: how do you/other usually use vehicle ids in articulated vehicles?
15:51<andythenorth>others, no idea
15:51<frosch123>do some/multiple parts use the same id?
15:51<andythenorth>I have base IDs going up in 10s
15:51<V453000>basically what I did with DOOM, right?
15:51<V453000>I had 1/8 or 2/8 parts
15:51<andythenorth>then articulated parts are base+1, base+2 etc
15:51<V453000>and sliced sprites to fit them
15:51<V453000>but you would add bending
15:51<andythenorth>I use lots of IDs
15:52<frosch123>ok, so each articulated part has their own id
15:52<andythenorth>I'd have to check my code
15:52<andythenorth>ok, 100% identical units reuse the ID
15:52<frosch123>V453000: the sprites would be positioned so that they look like the original sprite
15:53<andythenorth>anything else, new ID
15:53<frosch123>there is no shfiting between the slices
15:53<frosch123>andythenorth: what is a 100% identical unit?
15:54<frosch123>do you build short wagons in chunks like old nuts?
15:54<V453000>right, well shifting between normal non-bending units is easy
15:54<supermop>sounds like a philosophical question
15:54<Eddi|zuHause>iirc, in CETS i have the articulated parts as base, base+0x2000 and base+0x4000
15:54<V453000>just +4 -2 etc
15:54<andythenorth>frosch123: better way to explain it
15:54<andythenorth>every vehicle gets a unique ID
15:54<LordAro>frosch123: so pango. which minimum version are you thinking of targetting?
15:55<andythenorth>but some vehicles appear more than once in an articulated conisst
15:55<andythenorth>consist *
15:55<Eddi|zuHause>you can also put all articulated parts as one ID, and calculate position in chain mod 3
15:56<Eddi|zuHause>but in this case, most of the properties must be dynamic
15:56<frosch123>LordAro: are there differences? <- we mostly need that, and then tie it to our custom renderer
15:57<Eddi|zuHause>whereas with three distinct IDs you can have one part have the capacity, and the other parts 0, etc.
15:57<frosch123>not sure whether to do the ellipsis stuff with pango or inside ottd
15:58<LordAro>frosch123: ok, well oldoldstable has 1.30, and there have been no changes to pango_layout_* since then, so it's probably good
16:01<frosch123>LordAro: <- i started by splitting the current layouter into multiple files (wip, does not compile)
16:02<frosch123>but the #ifdef object inheritance does not make it easy
16:03<LordAro>ah, cool
16:03<LordAro>i'll have a look
16:03-!-sla_ro|master [] has quit []
16:04<V453000>so would the latter thing you wrote frosch support the bending?
16:05<frosch123>it's about drawing a single big sprite
16:05<frosch123>it does not define how the sprite is choosen
16:06<frosch123>so, would bendnig mean that you provide multiple bended sprites and can somehow decide how to concatenate them?
16:07<frosch123>like ottd says, here are three parts _/¯ and the grf selects a single ∫ sprite?
16:08<V453000>imagine I provide, say, 24 rotations
16:08<V453000>would it cut the sprite and do the bending?
16:08<frosch123>hmm, i guess i don't understand what you mean with "bending"
16:08<V453000>the thing CETS Does
16:09<frosch123>yes, that's what my paste is about
16:09<V453000>that would be very interesting
16:10<V453000>would it work in combination with the layering?
16:10<frosch123>draw a single vehicle sprite with N rotations instead of separate sprites for M arituclated parts
16:10<frosch123>V453000: all layers would have to use the same rotations
16:10<frosch123>which probably makes sense :p
16:11<V453000>yes :)
16:11<frosch123>visual effects may be an open issue
16:11<frosch123>where to spawn them
16:11<V453000>:D oh
16:14-!-Alberth [] has left #openttd []
16:19-!-tokai [] has quit [Quit: c('~' )o]
16:19<andythenorth>is bed?
16:22<V453000>well if you slice the sprite
16:22<V453000>then when it's bending you wouldn't see the walls between "parts"
16:22<V453000>so you would see holes in the train
16:22<V453000>defining sprites for every articulated part individually would still be better
16:23<V453000>honestly the graphical slicing is the least issue
16:23<V453000>figuring out the shifts and stuff as Eddi said is going to be insane
16:23<V453000>so if it just does that drawing logic by itself, it's golden
16:23<frosch123>the thing i posted is for wagons, not for slugs
16:23<V453000>what's the difference between wagons and slugs? :D
16:24<frosch123>wagons do not bend within
16:24<frosch123>a wagon is straight from start of wagon to end of wagon
16:24<frosch123>a slug bends in every place
16:25<V453000>I see
16:25<V453000>so you give 8/8 sprite
16:25<V453000>and it slices it, but it always draws it as the full 8/8 sprite
16:25<V453000>with less glitching because it knows the positions more precisely
16:26<andythenorth>is bed :)
16:26-!-andythenorth [] has quit [Quit: andythenorth]
16:30<frosch123>upper picture is the current default: ottd draws three sprited (red) for three articulated part
16:31<frosch123>bottom picture would be the new thing: ottd tells endpoints of wagon, and grf provides single sprite (red) mathcing the distance
16:32<frosch123>thought argueable the blue points may need some adjusting
16:32<V453000>so it would look totally off the tracks sometimes? :D
16:33<frosch123>well, grf defines where front and back axes are
16:33<frosch123>they stay on track, middle part is inbetween
16:34<frosch123>but this is no slug 1/8 behaviour
16:34-!-Gja [] has quit [Quit: Going offline, see ya! (]
16:34<frosch123>unless you make the red sprite look bendy in itself somehow
16:34<frosch123>but that would also only follow some approximation of the track
16:36<V453000>sounds very interesting
16:41<Wolf01>Yep, so you really need to define the real boogies positions
16:42<Wolf01>It would be cool to see how it looks a DDA40x
16:43-!-sim-al2 [] has joined #openttd
16:43-!-sim-al2 is "sim-al2" on #openttd @#/r/openttd
16:44<frosch123>is that one particulary long?
16:45<Wolf01>30m rigid body
16:46-!-tokai [] has joined #openttd
16:46-!-tokai is "Christian Rosentreter" on #openttd
16:46-!-mode/#openttd [+v tokai] by ChanServ
16:52-!-synchris_ [~synchris@] has quit [Remote host closed the connection]
16:52<supermop>'2nd most powerful locomotive ever' seems like it can't be true
16:53<supermop>maybe 2nd most powerful single unit diesel, but it seems like it would be trivially easy for an AC locomotive to be more powerfull
16:54<Wolf01>The most powerful one seem a multiple unit gas turbine
16:55<Wolf01>"The DDA40X is the most powerful single-unit diesel-electric locomotive ever built"
17:01<supermop>that i believe but the page called it '2nd most powerful locomotive' presumably of any type
17:01<supermop>the gas turbine was 8500 hp,
17:02<supermop>i find it hard to believe there is no electric more powerful than that
17:02<frosch123>tgv as emu has more than 16k hp :p
17:03<frosch123>does that count?
17:04<frosch123>wiki lists a shinkansen with about 25k hp
17:06-!-Progman [] has quit [Remote host closed the connection]
17:07<Eddi|zuHause>it'll be hard to find a (decently sized) electric engine with less than 8k hp
17:08<Eddi|zuHause>where "decent size" is 4 axles, 84t
17:09<frosch123>i think you are 30% off
17:09<supermop>this thing is over 12k
17:09<frosch123>regular single-unit engines are listed at about 4MW, which is about 6k hp
17:10<Eddi|zuHause>well, maybe... it's been like 3 years since i looked at engine stats :p
17:10<supermop>frosch123: i believe that most electrics are weaker than the DDA40X or the GTEL turbines, but find it absurd to state that all electrics are weaker
17:10<LordAro>frosch123: of course, my icu is too new to even compile the split layouters :)
17:11<frosch123>LordAro: what distro do you use? i was surprised that even debian unstable has an old enough icu
17:12<LordAro>arch :)
17:12<frosch123>LordAro: also, it does not compile in general :p
17:12<supermop> - this thing is 7200hp for a single unit, so even if there was nothing else, that makes the dda40x 3rd most powerful at best
17:13<LordAro>frosch123: yeah, but not because of missing includes :p
17:13<LordAro>i have 59.1
17:13<frosch123>i just commited a whatever state to make room for the randombits thingie
17:13*LordAro amends buildsystem
17:38<Samu>I can't use QSortT or GSortT, i fail.. there's always something missing, grrr
18:01-!-Biolunar [] has joined #openttd
18:01-!-Biolunar is "Biolunar" on #openttd #suckless
18:07<LordAro>frosch123: i pushed a couple of things
18:07<LordAro>...and now it's getting built
18:10<Samu>i don't know how to sort :(
18:10<LordAro>Samu: what is missing?
18:11<LordAro>(for OTTD, you should nearly always use QSortT, although the invokations are identical regardless)
18:12<Samu>StationList used_stations;
18:12<Samu>so i got this list of stations
18:12<Samu>it got let's say, 6 items
18:12<Samu>now i wanna sort these 6 items by rating
18:13<Samu>but there's also CargoID messing things up
18:13-!-orudge` [] has quit [Ping timeout: 480 seconds]
18:13<LordAro>messing things up how?
18:13<Samu>trying QsortT
18:13-!-orudge` [] has joined #openttd
18:13-!-orudge` is "orudge" on #thesinner #openttdcoop.devzone #bukkit #jontylog #tycoonexiles #z.aud #locomotion #transportempire #openttdcoop #openttd #tycoon
18:13-!-mode/#openttd [+o orudge`] by ChanServ
18:13<LordAro>specifics, please
18:14<Samu>GSortT(used_stations.Begin(), used_stations.Length(), &StationRatingSorter);
18:14<Samu>this doesn't work
18:15<Samu>StationRatingSorter needs to know the cargo id, and i dunno how to pass that
18:15<LordAro>the error messages, please
18:16<LordAro>what is StationRatingSorter ?
18:16<LordAro>its signature, at least
18:17<Samu>no idea
18:17<Samu>i tried static int CDECL StationRatingSorter(const Station * const *a, const Station * const *b)
18:17<Samu>but CargoID isn't there :(
18:18<LordAro>well that seems reasonable
18:18<LordAro>where are you getting CargoID from?
18:19<Samu>from here: uint MoveGoodsToStation(CargoID type, uint amount, SourceType source_type, SourceID source_id, const StationList *all_stations)
18:19<Samu>CargoID type
18:19<LordAro>ok, why do you need CargoID to sort a list of functions?
18:20<Samu>st1->goods[type].rating - st2->goods[type].rating
18:20<Samu>that type is the CargoID
18:21<ST2>damn, that moment a line of code highlights my nickname <3
18:21-!-oskari89 [] has quit []
18:21<LordAro>ST2: o/
18:22<Samu>i dunno why i'm sorting, i really don't know what i need to do, i thought I had to sort the list by rating
18:22<LordAro>working out what you want to be doing is probably a good start
18:22<LordAro>flailing madly never works out too well
18:23<LordAro>but i'm still not seeing your issue
18:23<Samu>well, i got a list of stations
18:23<LordAro>which function call requires a CargoID, that doesn't already have it?
18:23<Samu>i think i better copy paste my code?
18:25<Samu>i was like... why use st1, etc... st6, why not make the code find out how many stations are there
18:25<LordAro>arrays do seem like the better choice here
18:26<LordAro>i'm not seeing any QSortT in that
18:26<Samu>it's not there
18:26<LordAro>did you not want it?
18:28<Samu>there, doesn't even compile
18:29<LordAro>what is the error message?
18:29<Samu>i tried return stb->goods[0].rating - sta->goods[0].rating;
18:29<Samu>0 instead of type, just trying to see if i could get it to compile, it doesn't
18:30<LordAro>ERROR MESSAGE.
18:30<Samu>Severity Code Description Project File Line Suppression State Error (active) no instance of function template "GSortT" matches the argument list openttd d:\OpenTTD\trunk\src\station_cmd.cpp 3914
18:30<Samu>line 3914 is GSortT(used_stations.Begin(), used_stations.Length(), &StationRatingSorter);
18:31<LordAro>oh, right
18:31<LordAro>G/QSortT is a templated function
18:31<LordAro>you have to specify the type the sort function is operating on
18:32<Samu>uh, what?
18:33<LordAro>look at some existing examples of G/QSortT usage
18:42<Samu>i don't know what to do
18:42<Gustavo6046>I have an area A pertaining to a grid G, and I need to predict a shape in order to break this area into convex parts. How do I do this? And how will I make these convex afterwards? It's necessary for an efficient pathfinder, you see.
18:48<Samu>Severity Code Description Project File Line Suppression State Error C2672 'QSortT': no matching overloaded function found openttd D:\OpenTTD\trunk\src\station_cmd.cpp 3914
18:49<Samu>Severity Code Description Project File Line Suppression State Error C2782 'void QSortT(T *,uint,int (__cdecl *)(const T *,const T *),bool)': template parameter 'T' is ambiguous openttd D:\OpenTTD\trunk\src\station_cmd.cpp 3914
18:49<LordAro>Samu: you need to provide the template parameter
18:49<Samu>what is that ?
18:50<LordAro>look at other usages
18:50-!-Stimrol [] has quit [Quit: ZNC -]
18:50<LordAro>or for a more generic answer, google what template parameters are
18:55-!-Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
18:56-!-frosch123 [] has quit [Quit: be yourself, except: if you have the opportunity to be a unicorn, then be a unicorn]
19:00-!-Biolunar [] has quit [Ping timeout: 480 seconds]
19:06-!-Wormnest [] has quit [Quit: Leaving]
19:10-!-HerzogDeXtEr [] has quit [Read error: Connection reset by peer]
19:11<Samu>Severity Code Description Project File Line Suppression State Error C2664 'void QSortT<Station>(T *,uint,int (__cdecl *)(const T *,const T *),bool)': cannot convert argument 1 from 'Station **' to 'Station *' openttd D:\OpenTTD\trunk\src\station_cmd.cpp 3914
19:11<Samu>QSortT<Station>(used_stations.Begin(), no_stations, &StationRatingSorter);
19:11<Samu>it still doesn't like it
19:14<Samu>ah, got something, but still...
19:17<Samu>holy crap it compiled... wtf
19:26<Samu>LordAro: what now
19:27<Samu>how do I pass the CargoID?
19:27<Samu>if (no_stations > 1) GSortT<Station>(*used_stations.Begin(), no_stations, StationRatingSorter);
19:30<LordAro>i'm not actually sure you can, in the current format
19:31<LordAro>regardless, maybe try the existing StationRatingMax/MinSorter in station_gui.cpp
19:32<Samu>i looked at that one, it's not the same rating
19:32<Samu>it's another kind of sorting
19:33<LordAro>well maybe, but it might help give you some more ideas
19:33<Samu>that one picks all CargoIDs
19:34<Samu>doesn't need to be specified any CargoID, I actually have to specify the CargoID
19:34<Samu>example, Coal
19:35<Samu>a coal mine produces cargo and wants to put it in the near stations
19:35<Samu>it needs to look at each station and look at the rating for the Coal cargo only
19:36<Samu>not all types of cargo
19:46<Samu>i give up, it's not working
19:46<Samu>crashes on Swap
19:50-!-Flygon [] has joined #openttd
19:50-!-Flygon is "Flygon" on #openttd
19:56-!-Samu [] has quit [Quit: Page closed]
20:18-!-Mazur [] has quit [Ping timeout: 480 seconds]
20:27-!-Mazur [] has joined #openttd
20:27-!-Mazur is "Stefan Linnemann" on #oolite #openttd #openttdcoop.stable #openttdcoop
20:47-!-Gustavo6046 [] has quit [Quit: yay]
21:00-!-orudge` [] has quit [Ping timeout: 480 seconds]
21:00-!-orudge` [] has joined #openttd
21:00-!-orudge` is "orudge" on #thesinner #openttdcoop.devzone #bukkit #jontylog #tycoonexiles #z.aud #locomotion #transportempire #openttdcoop #openttd #tycoon
21:00-!-mode/#openttd [+o orudge`] by ChanServ
21:34-!-glx [] has quit [Quit: Bye]
21:40-!-FLHerne [] has quit [Read error: Connection reset by peer]
21:40-!-orudge` [] has quit [Ping timeout: 480 seconds]
21:40-!-orudge` [] has joined #openttd
21:40-!-orudge` is "orudge" on #thesinner #openttdcoop.devzone #bukkit #jontylog #tycoonexiles #z.aud #locomotion #transportempire #openttdcoop #openttd #tycoon
21:41-!-mode/#openttd [+o orudge`] by ChanServ
21:42-!-FLHerne [] has joined #openttd
21:42-!-FLHerne is "Francis Herne" on #openttd
21:48-!-FLHerne [] has quit [Quit: There's a real world out here!]
21:50-!-FLHerne [] has joined #openttd
21:50-!-FLHerne is "Francis Herne" on #openttd
23:43-!-sla_ro|master [] has joined #openttd
23:43-!-sla_ro|master is "slamaster" on @#sla #openttd #love
---Logclosed Thu Oct 26 00:00:55 2017