The first time I played OpenTTD, I was disappointed. The game it is based on, Transport Tycoon is one of the very best game I have ever played and it was only the shareware version (limited to trains). Back then I was already obsessed with the idea of serving a town well and watching it grow.
The graphics were fantastic, the music was wonderful. There is always something moving on the screen, and trees grow, age and eventually die. The 2D isometric view with slopes, and buildings that adjust to it, so much detail. And later on, I learned that Chris Sawyer basically made this game all alone and most of it in assembler... How can someone be so good at programming ? I couldn't understand until I forced myself to learn assembly those past years. It's doable, (if you know what you are doing lol).
Anyway, enough praise for the original game. Back when I decided to give OpenTTD a shot, the game was like many open source projects of the early 2000s. Unpolished, most graphic reworks were done after. Cryptic, just to use some AIs you had to go through a download server and pick one. Many were buggy, and I had no patience to go through all the options to find something I would enjoy playing.
Because that's the main issue. As a sandbox game, you define you own rules and you basically create your own fun. And oh boy, did things change in those couple years. I played the game for like 15 hours, without eating 3 days in a row. It's not addiction, I am just compelled to improve and perfect the things I do. Also my last job experience was in logistics. I see the game very differently today than I would ever have without this experience.
I start the game on a 256x256 map with the following mods:
I didn't know I needed the Av8 mod for planes, but it wasn't a problem. Like in my younger days the goal was to choose a town and focus on getting it to grow as much as possible. It's similar to Simcity in a way. City Control prevents the town from going berserk. By default, you only need to serve up to 5 stations in the same town for it to grow indefinitely. City Control makes it such that you must provide an increasing amount of passengers, mail, goods and building materials.
The ECS mod (Extended Cargo System), redefine the industries relationships. Other alternatives like FIRS and YETI exist. Actually, I spent the first two days on FIRS until I was convinced to try something else. Most people play FIRS with Simple City Builder, but even though the goal is the same, the gameplay is just worse. FIRS allows you to supercharge industries to ridiculous levels, and that removes the sense of accomplishment you get when you optimize your network and everything is consumed as soon as produced.
Also the game script Simpleton City Builder often ask for resources such as Coal, or worse Alcohol, to grow a hamlet of less than 300 people. It's very easy to get an unplayable map with those settings. One time I was asked to provide fruits at 2500 population and there were basically no farms producing fruits on the maps since I had to use the fruits previously for alcohol production. Solving the logistics puzzle just was not fun with those mods.
Speaking of which, in retrospect, I can see how someone can enjoy a career in logistics. The domain can be extremely fun, provided you are given interesting problems to solve. Unfortunately I wasn't given the chance to use my abilities 100% on that last job, such a shame. But I digress.
Here are the screenshots of the final result. The town has two rings of trains. Road vehicles (buses and trucks) are not used, because while cheap, they are don't scale like trains. Also it can be a bit annoying to manage 50 of them. The inner ring has 4 stations and 4 trains (obviously you start with only one). One must be careful at that stage, a very small town can not grow by itself with the inner ring alone. You may need to pickup passengers and mails from another town for the bootstrap.
Past that stage, the town goes overdrive up to 2500-5000 population. I let it overflow past the inner ring, and try to build the second ring. In this case, I used two tracks with trains going in opposite directions. Also I setup some tunnels when I was rich, so that there is more terrain for the town itself (rails do take a lot of space). I was constantly planning and adjusting on the fly. Destroying houses is super expensive, you really want to setup stations and rails before the town expands beyond the outer ring.
When I put down the first airport I thought I could use planes to cargo building materials, but alas, it wasn't possible. The set that allows vehicles to be refitted for the new cargo introduced by ECS had nothing for planes. So I had to improvise a railroad. Turns out, I did a good job of it. Population spiked to 10k with goods, and later 12.5k with building materials. After some optimizations, and correcting mistakes (automatically happens when you manage a fleet of 20+ vehicles), I finally reached 15k population. I don't think the town can grow much more from there, it is already absorbing his neighbours.
I play chess a lot, but I can't keep such an intense level of concentration. We're speaking about more than 10 hours of puzzle solving, finding paths, adjusting ratios, checking for errors. It's almost the same skillset I use for programming, and I can easily program for more than 10 hours (when I am in the flow, and I can fly from one objective to the next, without interruption).
Even more suprising is the fact that you have to solve programming problems during the game. For example, I deadlocked the inner ring once I added the fourth train. There are four stations, so it eventually came to a point where every train was waiting for the other to leave the station. Fortunately I knew what to do (check the links at the end of the page). It's really not surprising that we use "semaphores" in programming given their real life signicance.
But there is more, OpenTTD has a special signal allowing trains to reserve a path through a junction and that improves the flow. After seeing those videos, I remembered the things we were doing on that job, but it was never so visual. Programming is in the mind, communicating ideas is difficult without images, but video games allow you to experiment and learn those concepts much easier and faster. I begin to see logistics and optimized paths everywhere now... It was really a lot of fun improving their emulator, and automating unwritten algorithms.
Overall, I am extremely surprised that I was open-minded enough to give the game another chance (given the amount of stuff I study in parallel). I give it an A+. Could have been a S if the default settings provided a satisfying experience. Without mods, if you have played any Tycoon game before, you are bound to find the base game very unchallenging. But it might still be okay for a novice.
Also, the game never crashed. Some mods have errors because they have not been updated and lose compatibility with more recent mods, but the quality is high (much better than Simcity, you know, the one that was online only in 2013). The stuff I use has not been updated in 5 years and still works perfectly. Programming language is C++ for the core, and Squirrel for the scripts.
P.S. : I had an easier time learning how to play correctly by absorbing tutorials like those: