How do I make MSTS perform better? I think I’ve lost count of how many times that’s been asked in the various forums over the years. It has to be one of the all-time number one questions. And it’s not really surprising. MSTS doesn’t precisely behave the way computer users, novice or expert, might expect.
First, a few things MSTS doesn’t do:
- MSTS doesn’t use a large amount of memory, relative to modern PC standards, not even with the MSTS-BIN patch.
- MSTS doesn’t use the GPU on video cards to process its graphic content.
- MSTS isn’t multiprocessor-aware and doesn’t optimize use of multiple processor cores.
And, what MSTS does do:
- MSTS performs all of its operations, including graphics, on the PC’s CPU.
- MSTS relies on DirectX 8 sound and video processing to present sound and video information.
- MSTS uses and sorts through an often-huge library of graphic, sound, and text-based definition and configuration files while it runs.
We’ll get into what all this means as we go along. First off, though, it’s important to understand the era in which MSTS was created. PC’s with the capabilities we’re accustomed to now were unheard of. 512 MB of RAM was found in a high-end system. One gigabyte of RAM (if a machine could handle it) was often more expensive than the PC itself. As a result, MSTS isn’t particularly good at utilizing memory in large quantities. It was originally designed to deal with small amounts of memory and rely on reading/swapping to and from the hard drive. On top of that, MSTS was designed to run on Windows 95 as the basic operating system. Windows 95′ s memory management is rudimentary by today’s standards, so MSTS must rely at least partially on its own memory management and swap scheme. That makes the operating system’s memory management somewhat irrelevant. Likewise, MSTS was written in an era when advanced graphics cards were still in their infancy. In order to run on the widest range of hardware without needing multiple special driver interface configurations, MSTS simply relies on doing all of its graphic work on the CPU and lets DirectX handle screen display. This doesn’t take advantage of any special capabilities of graphics processors, but it does ensure MSTS will operate on virtually any Windows PC. (If MSTS had been picky about graphics cards, would it ever have been as widely successful? Interesting to think about!)
So, given these limitations that are steeped in the PC technology of an earlier generation, we have some challenges to set up an efficient environment for MSTS to run in. What then can we do? Here are ten quick tips to maximize MSTS performance:
- First, lower your expectations. There is nothing you can throw at MSTS that will dramatically improve it. MSTS will run in its simplistic way, and everything we do to improve its environment will bring incremental, not wholesale gains.
- Install the MSTS-BIN patch. This is the “unofficial” upgrade to the Train.exe core executable, and it’s essential for high-detail train object models and routes. BIN allows MSTS to take advantage of more memory and integrates it better with advanced versions of Windows — like XP, Vista and Windows 7. BIN also eliminates or minimizes some known bugs in the original software. With BIN, MSTS can utilize approximately 1.5GB of RAM, but it seems that’s the absolute upper limit.
- Upgrade DirectX. If you aren’t a PC-gamer, your computer may not have DirectX installed at all until you install MSTS. At that point, you’ll have DirectX 8 put on by the MSTS installer. Windows XP and modern hardware really should use DirectX 9; this will clear up some occasional odd behavior just because DirectX 9 is intended for modern systems. If you run Vista or Windows 7, you will need DirectX 10 or 11, which are designed for those systems. There have been some backward-compatibility issues in DirectX 10 and 11 code, but it’s best resolved by keeping up-to-date with Windows updates to address them. Trying to run outdated DirectX versions on Windows Vista or 7, particularly on 64-bit systems, may introduce more issues rather than solve anything.
- Launch MSTS with a modified shortcut. Once BIN is installed, get rid of your old shortcuts which point to “Launcher.exe” in the MSTS folder. Instead, launch MSTS directly as “Train.exe” and add the memory management switch. For instance: < “C:Program FilesMicrosoft GamesTrain Simulatortrain.exe” -mem:1536 > will launch MSTS using its upper limit of slightly more than 1.5GB of memory on a 4GB PC, with plenty of RAM left for Windows to use on its own. This command line is typed or pasted into the shortcut’s “Target” line you can se when you right-click the shortcut and select “Properties.” For more information on how to do this, read the tutorial at steam4me.com here.
- Run MSTS all by itself. Windows is a multitasking operating system, but MSTS wants to do its own thing. Other processes accessing system resources, memory, the hard drive, and the CPU all get in the way. Close your Web browser — browsers are notorious memory hogs, especially if you have pages loaded with Flash content and Java applets. Close other applications, too. If you antivirus software has a “gaming” mode, make sure it’s turned on and/or knows to turn itself on for MSTS. If possible, use an antivirus program that has a lighter impact on your PC’s performance. Symantec/Notrton products, and McAfee are among the worst for eating up memory and CPU resources. Consider a lighter-weight antivirus program. Surprisingly, Microsoft’s own “Security Essentials” antivirus/antispyware program is one of the best in this respect. And it’s FREE! Alternatively, just turn off your antivirus program temporarily and disconnect your PC from the Internet and your local network, if you have one. Also, turn off utilities and applications that auto-start themselves when you start Windows.
- Run a fast, dual-core CPU. MSTS might not scream with newfound performance, but it won’t hurt, either. Remember, the CPU does all the “heavy lifting” for MSTS. Good speed and plenty of on-CPU cache, plus a fast memory architecture are all good things to make the modern routes and graphic objects run well in MSTS. Really, any good dual-core processor will do, and any CPU with a good reputation in gaming won’t hurt one bit.
- Run a mid- to high- performance graphics card, but don’t break the bank here unless you’re also running other software that can utilize an advanced GPU. With MSTS, the object is to get the best DirectX performance. If you are moving on to Open Rails, the GPU performance matters, though, so do yourself a favor and future-proof your PC setup with a decent graphics chipset even if it isn’t a huge boost to MSTS.
- Use Train Store or mini-routes. Train Store moves all unused rolling stock, locomotives, route and scenery files out of MSTS’ sight so that when you launch an MSTS activity, all MSTS is presented with is exactly what’s needed for that route and activity. Not only does this reduce load times, it prevents MSTS from having to keep track of as many files while it operates. Mini-routes do a similar thing by creating an abbreviated install of just one route and everything needed for it. Both techniques have a bit of a learning curve to master them, but the results are well worth it.
- “Gaming enhancers” or “memory/cache enhancers” are small programs that attempt to configure your Windows Registry settings to balance memory and caching behavior with a bias toward gaming performance. Generally speaking, Windows really does do a respectable job of handling memory and disk caching, especially if you’ve already followed the suggestion above of turning off everything but MSTS. Enhancers like “GameBooster” or the freeware AnaogX “CacheBooster” and “MaxMem” give you some room to tweak Windows memory and caching behavior a little more. You can gain a slight edge in performance, but these are probably last on the list. They let you make the most of what you have, and might give some marginal improvement in MSTS. They’re best for tweaking out some of the dreaded MSTS “stutter” in routes with dense scenery.
- Keep your PC in good working order. Defragment occasionally. Installing MSTS routes and stock often involves unzipping archives, then moving archives off to backup storage, and all along the way you’ll be writing and deleting gigabytes of temporary files. Defragmenting cleans up the inevitable mess of file fragments left behind in its wake. Temp files accumulate and aren’t always cleared by Windows as often as they should; ATF-Cleaner is a useful tool to clean them out. It normally is hosted at atribune.org, but currently the download link isn’t going anywhere. You may be able to get it at majorgeeks.com here, but watch out for ads.
That’s it! You can build up a good MSTS setup without breaking the bank or delving too deeply into computer geekery. Just remember that MSTS isn’t going to respond with sudden, lightning-fast improvements. Still, you can make solid, steady gains as well as build up a system which will also run Open Rails or other modern rail simulators quite well. Some of these topics probably merit closer examination, so look for more updates to come.