OpenTTD. Been playing off and on since 2004 and still improving! It's a fantastic playground to try coding a bot, drawing graphics, scenario design, or just building the transport network of your dreams (or nightmares). OpenRCT2 is a close second.
I have enjoyed Simutrans, where passengers have desired destinations and use your service if you can take them there. They can change between different transports too. This often creates choke points. For me, that makes the game interesting.