Passengers have a SPECIFIC DESTINATION in mind when they board a train...
Now, any ideas how on earth that could possibly be done?!
I have an idea how to implement this: Instead of having one cargoType "passengers", that is produced in all towns and accepted in all towns, lets dynamically generate N "passengersTo" cargoTypes for each destination in the game.
Example: There are two towns on the map: Bigville and Smallville. Bigville produces "PassengersToSmallville" and accepts "PassengersToBigville". Smallville produces "PassengersToBigville" and accepts "PassengersToSmallville". PassengersToBigville and PassengersToSmallville are 2 different cargos, like coal and oil (of course, there is only one passenger car for both passenger-cargos
If there is a third town, Middleville, there would be one more cargoType: PassengersToMiddleville. In that case, Bigville would produce both PassengersToSmallville and PassengersToMiddleville. Much the same way like farm in OTTD produces both livestock and grain. You may transport both or only one cargo (or none
). The farm produces both whether you transport or not and the production is stated in its window. Much the same way, a town produces several passenger-cargos whether you transport them or not. If you only want to transport livestock in OTTD, grain wont flow into your station - and analogically if you only want to transport one passenger-cargo, others wont visit your station - but they are still produced and you may start transporting them whenever you want.
The amount of specific passenger-cargo production would be destination-town-size dependant. Bigville will produce more PassengersToMiddleville than PassengersToSmallville because Middleville is a bigger town.
City transport: Every city will also produce its own passenger-cargo for city transporg: Bigville will produce PassengersToBigville and so... These passengers will be dumb as usual - they wont matter in which part of town you load/unload them.