Можно и такой алгоритм:
Я останавливаюсь у платформы - начинается посадка-высадка. Пусть "ручки бьют по рукам", управление блокируется, бог с ним. Главное - когда посадка\высадка закончится, чтобы она не могла начаться снова, пока я не покину платформу всем составом. То есть, я могу тронуться и тут же остановиться - ничего не должно произойти, никакого стоп-крана и блокирования управления. А вот, когда поезд полностью уедет с платформы, тогда платформа будет готова к новой посадке\высадке.
Хорошо бы, конечно, чтобы можно было сразу все платформы таким или каким либо иным образом "улучшить". Работа платформ задается библиотекой GenericPassengerStation.gsl в папке libraries. Я просто убираю её из этой папки - и все платформы выключаются. Люди на них стоят, но в поезд не садятся. Я написал об этом
тут. Так можно делать только в 2009 (ну и в 2010, наверное тоже), 2004-2008 от этого перестают грузиться.