I am not a native speaker.
my English is very weak.
i was browsing the question and i saw the answers and i thought for a while. i analyzed the answers.
this is just what i think: (use as a trick to remember)
(after all there should be a reason why they sometimes use "get on/off" and sometime "get in/out (of)") (think yourself as a passenger)
If the vehicle is large and big you will use "get on/get off". now the confusion is what i mean by large vehicle. well it means a vehicle that contains many passengers and have many seats. (not helpful right?) :P but i have just started it.
If you can walk inside the vehicle (to get to your seat) you will use "get on/get off".
it is simple if you can walk inside the vehicle (to get to your seat) then obviously it is large.
to make more sense if you can walk inside the vehicle (to get to your seat) then there is enough surface inside the vehicle. (it takes steps to get to your seat inside the vehicles and you are walking to your seat actually)
and what do we use for the surface? "on" ( get on the surface)
so plane/train/boat/bus/ are treated like a surface. (because there is enough surface to walk to get to the seats)
if you walk to your seat from the Entrance (the door) of the vehicle then you " get on/off". (it takes time to get to your seat)
while in the case of texi/car the seats are close to the door (so you can get to the seats in just one step and i have never seen anyone walking inside a texi/car to get to the seats) so such small vehicles are just like a tent. so we use " get in/out (of)"
so if you get to the seat without any walking (inside the vehicle) then you just use " get in/out (of)".
horse, motorbike (obviously you can't say "get in the horse" or "get in the bike") so just use "get on/off" for animals motorbikes etc.
This is just my theory :P like i already said there must be a reason.