vil's SimCity 3000 page

When I don't feel like working on any of my other projects, I work on this. My eternal quest is to get SimCity 3000 running well in a VM. Here, I store all of the knowledge I have collected along the way.

Updates and Patches

Building Architect Tool and v1.1

The original release of SimCity 3000 was version 1.0. It was later patched to version 1.1 along with the release of the Building Architect Tool. I've mirrored the patch here, because the EA FTP server it lived on has long since vanished. Special thanks to EA Europe for keeping their old stuff around longer.

The old BAT FAQ page mentions the existence of a combined patch that works on all releases of the game, but I have been unable to track it down. If you have it, I would very much appreciate a copy!

Select your release of SC3K to download: English (US) | English (UK) | English (Spain) | English (Australia) | Spanish | Swedish | Russian | Portugese | Italian | German | Dutch | French

Note that you do not need this patch if you have SimCity 3000 Unlimited.

Common v1.1 install errors (straight from the llama's mouth)

Additional resolutions patch

Download

This patch (from here) adds your current display resolution to the list of available resolutions in SC3K's options. It may or may not be a good idea. The source thread lists several caveats:

Virtualizing SimCity 3000

SC3K is native to the Windows 98 era, and I've always wanted to get it running on 98 in a VM. This has proven trickier than one might expect. I'll start with an overview of the pieces, and then explain how to put them all together.

The hypervisor

My virtualization solution of choice is VMware Fusion 7. The information here is likely to work in any VMware product. The future of Fusion as a product is a bit uncertain at the moment, so I may be exploring other solutions at some point.

The operating system

I have installed SC3K on Windows 98 Second Edition. In the past I've been able to get it running on Windows 7, but it had audio problems, and the intro video never played correctly. Additionally, it just seemed wrong. A copy of 98SE can be found for about $20 if you don't already have it lying around. (Also, you didn't hear it here, but I've found that it's not very picky about the use of OEM product keys.) You might also give 95 a shot, but it is less well supported in VMware products in general.

For the purposes of this page, I'm going to assume that you can get it installed yourself. If not, there are other sites that do a much better job of explaining that process than I would.

Required Software

There are a few things you'll need to install during this process. I've mirrored them all here, because they're becoming increasingly difficult to find.

Doing the thing

  1. Install Windows 98 in a new VM. DO NOT install the VMware tools until you read step 2.
  2. Do a custom install of the VMware Tools.
    • Install everything except the SVGA driver. It is incompatible with SC3K. (It causes the dreaded ??? Unknown Exception.)
    • These are technically optional, but the drag and drop functionality is very handy for getting drivers and patches into the VM.
  3. Install and configure the VBE9x Universal video driver from above.
    1. Drag the driver folder to somewhere on the VM, or get it there by less magic means.
    2. Open Display Properties > Settings > Advanced… > Adapter.
    3. Click Change…, and choose to display a list of drivers when asked.
    4. Click Have Disk…, and browse to the driver folder that you just copied. Click OK.
    5. It should determine that the VBE Miniport - Standard PCI Graphics Adapter (VGA) is compatible and display it. If not, choose to show all hardware and find it yourself. It appears under Anapa Corp.
    6. Go through the rest of the driver setup and reboot when asked. Once it comes back up, you should be able to choose 32-bit color and much larger resolutions. Choose whatever you want, but we need at least 256 colors. Chances are the resolution will revert to 640x480 no matter what you choose; we'll get to that in a bit.
  4. Insert the SimCity 3000 CD, but don't install the game yet.
  5. Open the SC3K disk in Windows Explorer, and run Directx/Directx/dxsetup.exe. This will install DirectX 7.0a. It will probably make you reboot.
  6. Go to the Run dialog and start dxdiag. Under Display, ensure that DirectDraw Acceleration is enabled. Run the tests, and if everything is going well, it should draw some boxes and report a pass.
  7. Install the SoundBlaster 16 PCI driver from above.
    1. Drag it into the VM and run it. It'll make you reboot. If it goes well, that's it.
    2. Don't forget to connect the virtual soundcard from the toolbar or VM settings. If you don't, the driver will happily act like it's working but not produce any sound.
  8. Install SC3K.
  9. Install the BAT and v1.1 patch from the top of this page, if you wish.
    • The tool first installs the patch, then launches the BAT installer.
    • I've noticed that the patch installer will occasionally drop the screen to text mode while it runs. Just be patient and it should return to the desktop after a bit.
    • There are a couple of common patch installer errors that are covered elsewhere on this page. If the patch fails, the BAT installer will still run.
  10. Fix the cursor.
    • For whatever reason (as you have probably noticed by now), the cursor is a bit glitchy with this video driver. This gets exponentially worse inside the game, with the cursor becoming invisible the vast majority of the time. Luckily, the game has a hidden option to draw its own cursors, which work fine.
    1. Navigate to your SC3K shortcut in the Start Menu, right click it, and select Properties.
    2. Append -cursor:bmp to the end of the Target field, with a space between it and the existing quoted path.
  11. Prevent the resolution from resetting.
    • This step is optional, and may not be desirable depending on how many other virtual machines you have.
    • VMware products have the ability to automatically resize the guest OS's screen to fit the window. This is normally great, but since we're using a non-VMware video adapter, it just causes the resolution to constantly reset to 640x480. This feature can unfortunately only be disabled globally, not per-VM. If you want to do it, here's how for Fusion. Other products have an equivalent preferences file.
    1. Quit Fusion if it's running.
    2. Edit ~/Library/Preferences/VMware Fusion/preferences.
    3. Add the following lines to the file:
      • pref.autoFitGuestToWindow = "FALSE"
      • pref.autoFitFullScreen = "stretchGuestToHost"

Other Knowledge

The manual

A good place to start.

Gameplay

Video

Keyboard Shortcuts

Preserved from here

General

F1Save As
F2Save
F3Load
F4Prefs
F5New City
F6Starter Town
F7Real Terrain
F9Export city thumbnail (1.1) # -- vil (http://www.sc3000.com/underground/showarticle.cfm?id=0304)
F10Exit

Zoning

QResidential (Low Density)
WResidential (Medium Density)
EResidential (High Density)
ACommercial (Low Density)
SCommercial (Medium Density)
DCommercial (High Density)
ZIndustrial (Low Density)
XIndustrial (Medium Density)
CIndustrial (High Density)

Infrastructure

RRoad
TRailroad
YLandfill
UTrees
IWater Pipes
LPower Lines

Services

PPolice
FFire Dept.
HHospital
JSmall Park
KSchool

Tools

GGrid On/Off
CtrlQuery
AltBulldoze
BBulldoze

Movement

ArrowsNavigate
1 - 5Zoom Keys
Page UpZoom In
Page DownZoom Out

Speed

<Slower Time Speed
>Faster Time Speed
?Pause/Unpause