bus scheduling

OpenTTD is a fully open-sourced reimplementation of TTD, written in C++, boasting improved gameplay and many new features.

Moderator: OpenTTD Developers

Post Reply
jgf
Engineer
Engineer
Posts: 93
Joined: 02 Mar 2006 01:40
Location: Columbus, OH

bus scheduling

Post by jgf »

It has always been annoying (and not realistic) that several buses on the same route will, due to breakdowns, trips to the depot, blocked by trains, etc., end up running nose to tail in a caravan; so the first vehicle gets the passengers, the next gets little to nothing. Would it be possible to code a distance between buses on the same route, based on length of route, to prevent this. (Our local bus system does this; if a bus gets slowed on its route dispatch will tell the next bus on that route to sit at its stop for a few minutes before continuing.)
Taschi
Route Supervisor
Route Supervisor
Posts: 425
Joined: 11 Oct 2014 22:58

Re: bus scheduling

Post by Taschi »

jgf wrote: 30 Apr 2021 17:35 It has always been annoying (and not realistic) that several buses on the same route will, due to breakdowns, trips to the depot, blocked by trains, etc., end up running nose to tail in a caravan; so the first vehicle gets the passengers, the next gets little to nothing. Would it be possible to code a distance between buses on the same route, based on length of route, to prevent this. (Our local bus system does this; if a bus gets slowed on its route dispatch will tell the next bus on that route to sit at its stop for a few minutes before continuing.)
That would, indeed, be possible - in fact, it is a feature in the JGR patch pack.
jgf
Engineer
Engineer
Posts: 93
Joined: 02 Mar 2006 01:40
Location: Columbus, OH

Re: bus scheduling

Post by jgf »

Thanks, I will look for that. How compatible is it?
Arnoud
Engineer
Engineer
Posts: 78
Joined: 29 Sep 2008 05:02
Location: Amsterdam

Re: bus scheduling

Post by Arnoud »

It is allso possible to do this in openttd vanilla, though a lot trickier and requiring more monitoring:

Buy a bus, then add all stops on the route to its orders list (just the 1st and last stop is not enough!).

Then in the depot click on clone vehicle and while you click on your 1st bus hold down the Ctrl button.

Repeat this process to get the number of busses you want on this route, allways clone the 1st bus, dont make a 'clone of a clone'.

then release the first bus from the depot (you can release the other busses at a similar interval behind it), on its first run there wont be any passengers, so you wait untill it has completed this and is heading for your 1st stop again, then click on orders and in that screen click the timetable button and then the autofill button.

Your first bus will then start to automatically fill the timetable on its 2nd run.
Now in vanilla openttd you will want to edit the timetable and make the busses wait slightly longer at certain stops to account for delays.

In JGRpatch this is not needed, you can simply click on automate and the game will auto separate the busses with shared orders/timetable.
Because JGRpatch really makes this a lot easier I would recommend using JGRpatch.

Generally speaking it is possible to load savegames from vanilla into JGRpatch, but not the other way around.

JGRpatch comes with a windows installer, so basically its just as easy to install as vanilla.
Coder for the 2cc trams (passenger) and the 2cc cargo trams
User avatar
siu238X
Transport Coordinator
Transport Coordinator
Posts: 333
Joined: 13 Sep 2004 18:54
Location: Hong Kong, China

Re: bus scheduling

Post by siu238X »

Sometimes it's not totally necessary to space according to autofill.

I have a set of rules which is usually futureproof for at least a few (in-game) years.
  • Always build a depot next to your intended termini and include them in your schedule.
  • Related to above, use drive-through stops unless you have absolutely no choice.
  • Speed assumption: Every 40 kph / 25 mph = 1 tile per in-game day. Round-up. Example: The first kind of bus is 56 kph / 35 mph. Round it up to 60 which means we schedule it to move 1.5 tile for every in-game day. For comparison, consider the fastest in-game train, Asiastar, as going 6.5 or 7 tiles every day.
  • Count tiles (and in-game days) for every leg between two stops. Round up if the next stop is supposed to be major, round down otherwise.
  • For buses, every stop should take about 2 days, but make it 3 for departures from termini, and 5 for old-style dead-end stop. For passenger trains, make stops lasting at least 5 days (at busy stations I often need to do 8 or even 10).
  • Adjust the timetable so that the total time is a good composite number (e.g. 30, 40, 60, etc.). I recommend to adjust only 1 or 2 days for every leg or stop, and let the number aggregate to the optimal.
  • Divide the total time with the number of vehicles you intend to use. Release vehicles in that interval and it's done!
Image
Image
Taschi
Route Supervisor
Route Supervisor
Posts: 425
Joined: 11 Oct 2014 22:58

Re: bus scheduling

Post by Taschi »

siu238X wrote: 13 May 2021 06:09 Sometimes it's not totally necessary to space according to autofill.
TBH the only case in which I use timetables at all is when I have a high number of road vehicles in one town and want to avoid the dreaded bus snake.

In towns that have like three or four buses, I really don't care if they clump up and to be honest, I never got the impression that it matters all that much in terms of gameplay, especially considering that those buses are likely on fairly short routes so there aren't any huge gaps without service anyway.

And for trains, they have *some* spacing between them anyway thanks to block lengths.
Eddi
Tycoon
Tycoon
Posts: 8257
Joined: 17 Jan 2007 00:14

Re: bus scheduling

Post by Eddi »

i used timetables for trains once. i had two maglev lines merging, and wanted to avoid them running on a red signal at the merge, as starting up took so long and would delay the next train, which again had to stop and start up again, etc. (i've heard this being called "evil mode"). so timetabling that they interleave properly vastly increased throughput of the merge.

however, that was very complicated to set up correctly
Post Reply

Return to “General OpenTTD”

Who is online

Users browsing this forum: No registered users and 19 guests