SimCity 2000 (sc2kfix)
SimCity 2000
Sobre el proyecto
SimCity 2000, abreviado SC2K es un videojuego de simulación basado en la creación de ciudades. Fue la secuela del SimCity original, y el segundo de la serie SimCity. Maxis lo publicó en el año 1993 para ordenadores Apple Macintosh y MS-DOS. Posteriormente, lse publicó también para Amiga (1994), Microsoft Windows (1995), SNES (1995), Sega Saturn (1995), PlayStation (1996), Nintendo 64 (1998), Pocket PC (1999) y Game Boy Advance (2003).
2 versiones de SimCity 2000
Estás viendo: SimCity 2000 (sc2kfix)
Información oficial del proyecto
sc2kfix

What does this do?
sc2kfix is a plugin that patches the Special Edition release of SimCity 2000 for Windows 95 to work properly on modern Windows systems (Windows 7-11 and Wine/Proton) as well as fixing several original game bugs, adding quality of life features, restoring missing game content, and optionally enabling new gameplay features. It also serves as a reverse engineering and reimplementation project for the SimCity 2000 engine, with significant progress having been made on both fronts.
While the game itself was always capable of running at high resolutions, oversights in the game's programming and techniques designed for use with 256-colour SVGA cards common in the mid 1990s cause problems with animations on truecolour displays. There are also a number of other bugs in the game ranging from minor rendering issues to major gameplay-damaging bugs that sc2kfix fixes.
For the most up-to-date information on how to install and configure sc2kfix, as well as a full list of features, check out the plugin user guide on the sc2kfix website: https://sc2kfix.net
sc2kfix is an entirely human-created and human-driven project. No generative AI has been used in the development process. Any AI-generated or AI-assisted pull requests will be rejected. Maxis didn't need a neural network trained on billions of lines of scraped code, and neither do we.
The sc2kfix project is part of the OpenCity Foundation.
Bugs fixed
The following game bugs are patched by this DLL:
- The old, non-functional installer is no longer needed as sc2kfix will prompt for a default mayor and company name on first launch, as well as associate .sc2 and .scn files with SimCity 2000.
- Multiple crash and corruption bugs related to the load and save dialogs have been fixed.
- Palette cycling based animations have been fixed to work on truecolour displays and are no longer frozen.
- The WillTV and intro cutscenes have been restored along with the Maxis Presents intro slide.
- SimCity 2000 now properly launches when started from Steam or other game launchers.
- Music that was included in the game but was never added to the random playlist has been restored.
- SCURK now works properly on Windows 11 24H2 and newer, as well as no longer having issues with tile alignment, palette conversion, and transparency, among myriad other optimizations being implemented.
- Military bases now grow properly instead of staying as empty, unusable military zones, the intended growth of army and naval bases has been restored, and the military will make multiple attempts at finding a location for a base instead of permanently giving up after the first try.
- Rail and highway neighbor connections now work after a saved city is loaded.
- Sign rendering has been fixed to use the originally intended font.
- City and mayor names are now properly preserved when saving and loading cities.
- The "Add All Inventions" option in the game's hidden debug menu has been fixed.
- City infrastructure valuation and city center calculations have been fixed.
- The bond system has been fixed to properly calculate city credit ratings in conjunction with the above valuation fixes.
- Many miscellaneous display bugs have been fixed.
New features
sc2kfix adds the following quality of life and optional gameplay features to SimCity 2000 Special Edition:
- Many parts of the game's engine have been reverse engineered and reimplemented for improved performance, debugging, and extensibility (see the "Additional enhancements" section).
- A detailed settings dialog for configuring sc2kfix's features has been added to the main menu and the in-game Options menu, and the game's native settings are no longer stored in the registry but rather in a portable JSON-based settings file.
- City growth is now displayed in real-time instead of in batches, giving you near-instant feedback on the development of your city.
- Environmental effects based on simulation conditions such as seasons and extreme weather have been implemented when real-time city rendering is enabled. This has a bit of a performance cost at African Swallow game speed on extremely large cities and can be turned off separately in the settings.
- A setting has been added to enable "dark mode" for the underground view to save your retinas.
- The New City dialog has been reworked to allow you to specify a different mayor name when starting a city, as well as with detailed tooltips for the other game settings and the ability to "peek" at the map before starting. The New City screen will also generate more varied terrain, and a button has been added to randomly re-generate the map as many times as desired.
- Terrain colour variations inspired by SimCity 3000 have been added and can be selected on the New City screen.
- Higher quality copies of the transit, pipe, and power construction sounds, as well as the Reticulating Splines soundbite and bulldozer sound have been ported from other versions of SimCity 2000.
- The full in-game date is now shown in the title bar when real-time city rendering is enabled.
- The floating status widget from the Macintosh and DOS versions of the game has been reimplemented and can be enabled in the settings dialog.
- The game's sound engine has been reimplemented with multithreading and SDL3, allowing support for music and sound volume settings, high-quality MIDI playback via FluidSynth, MP3 playback, music playback in the background, better support for Linux, and near-instant music load times on Windows 10 and 11.
- Save files now keep track of loaded tilesets in their originally loaded order, and sc2kfix automatically will restore them when loading saves.
- Backup copies of saves are automatically created when overwriting a previous saved game.
- An advanced query dialog that shows game state information for tiles has been implemented and can be used by holding the Alt key when querying a tile.
- The Lua programming language has been integrated into the sc2kfix plugin to allow for Lua scripts to be written that can interact with the SimCity 2000 game engine.
- The middle mouse button now acts as a shortcut for the centering tool by default, similar to how the right mouse button works in the DOS version of the game.
- Hotkeys can be mapped to perform different actions.
- A number of message box strings have had grammatical fixes and/or better wording added to them.
- An update checker has been added to gently inform the player on the game's main menu if a new version of sc2kfix has been released.
- A developer console has been added for experiments and advanced troubleshooting, as well as an
sc2kfix.logfile for informational and error logging. The console can also be used as a Lua REPL. - A crash handler has been implemented to enhance the sc2kfix team's ability to hunt down potential game or plugin bugs.
- Multiple cheat codes from other ports of the game have been restored.
Additional enhancements
sc2kfix implements multiple hooks and a work-in-progress framework for detouring and injecting new code into the game. These are documented in the hooks/hooks.md file. These are currently being used to assist in reverse engineering various components of the game's code, but attaching them to eg. a scripting language of some sorts in the future is planned. A framework to enable loading gameplay mods written in C/C++ (or any language that can produce Win32 DLLs, though currently only C/C++ are officially supported) has been implemented, with intent to expand the number of places in the simulation engine that hooks can be inserted over time.
There is also a developer console that can be enabled by passing "-console" to SimCity 2000 or by enabling the console manually in the in-game "sc2kfix Settings" dialog. While the console generally tries to stop you from doing anything too dangerous, it will happily let you probe any valid memory in the game's address space, which could have adverse effect on any loaded cities. Please be careful when writing to arbitrary memory addresses.
Several parts of the SimCity 2000 game engine have been reimplemented in sc2kfix for better performance and the ability to more easily fix bugs and hook into and enhance the original game's code. Functionality has been replicated through months of reverse engineering efforts, and these reimplementations of the game's internal functions provide a higher quality experience that is still accurate to the original game. All non-vanilla components are capable of being individually disabled in the sc2kfix settings dialog.
Third-party components
sc2kfix includes API bindings for the FluidSynth real-time software synthesizer library (https://www.fluidsynth.org) and distributes it in binary form as DLLs in official releases. FluidSynth is made available under the terms of version 2.1 of the GNU Lesser General Public License (LGPL 2.1); a copy of this license has been included in the sc2kfix project as thirdparty/fluidsynth/LICENSE. You can download the FluidSynth library in both source and binary release forms from GitHub at https://github.com/FluidSynth/fluidsynth.
sc2kfix includes API bindings for the Simple DirectMedia Layer (SDL3) and libsndfile libraries and distributes them in binary form as DLLs in original releases. SDL3 is made available under the terms of the zlib license; you can download the library in source form at https://github.com/libsdl-org/SDL. libsndfile is made available under the terms of version 2.1 of the GNU Lesser General Public License (LGPL 2.1); you can download the library in source form at https://github.com/libsndfile/libsndfile.
sc2kfix includes the Lua embeddable programming language (https://www.lua.org). Lua is made available under the terms of the MIT license; a copy of this license has been included in the sc2kfix project as thirdparty/lua/LICENSE. Lua is copyright (c) 1994-2025 Lua.org, PUC-Rio.
sc2kfix includes the miniz single-file zlib-compatible DEFLATE/ZIP library (https://github.com/richgel999/miniz). miniz is made available under the terms of the MIT license; a copy of this license has been included in the sc2kfix project as thirdparty/miniz/LICENSE.
sc2kfix includes the libfmt text formatting library (https://github.com/fmtlib/fmt). libfmt is made available under the terms of the MIT license; a copy of this license has been included in the sc2kfix project as thirdparty/fmt/LICENSE.
How do I use it?
- If you are installing the game from scratch, copy the SC2K folder from your CD (under the WIN95 folder in the Special Edition CD) to your hard drive.
- Make sure to copy the SC2K folder somewhere writable, as the game stores its saves in a subfolder of that directory.
- Download the latest release or build it from source. The whole plugin is a single file called
winmm.dll.- If you want to test bleeding-edge improvements and are logged into GitHub, each commit to the repository results in an automatic build of the plugin that can be downloaded.
- Copy the
winmm.dllfile and all the additional DLL files alongside it to your SC2K folder. They should end up in the same folder as yoursimcity.exeexecutable.- If you're running the game on Wine/Proton, you'll need to set a DLL override for
simcity.exeto use "native, then builtin" load order for thewinmmlibrary, otherwise Wine/Proton will not load the localwinmm.dll. - If you have any mods to install, place them in a subdirectory named
modsin the same folder assimcity.exe.
- If you're running the game on Wine/Proton, you'll need to set a DLL override for
- Play the game! On the first run of a new install, the game will prompt you for a default mayor name, as well as default mod settings. This simulates the original SimCity 2000 installer and sets up the sc2kfix experience.
You can configure different aspects of sc2kfix by clicking on the "sc2kfix Settings" button on the game's main menu, or while you're in a gameplay session by selecting the same option from the Options menu. Settings marked with an asterisk require restarting the game for them to take effect. sc2kfix defaults to providing a "vanilla plus" gameplay experience with bug fixes and minor quality of life improvements; gameplay-modifying features are opt-in through the settings dialog, and quality of life features can be opted out of the same way.
Known issues
- WARNING: MIDI playback support on Wine/Proton is unpredictable. Native Linux installations of FluidSynth or TiMIDity++ may result in playback errors, and using Windows builds of FluidSynth in Wine/Proton can occasionally cause freezes on older distros. We recommend ensuring your distro and Wine/Proton are up to date if you experience crashes with MIDI playback via FluidSynth, or using MP3 playback instead.
- NOTICE: The 1995 CD Collection version of the game is now deprecated. Please use the 1996 Special Edition version of the game going forward to receive the latest updates.
- DEBUG: Experimental support for the 1995 Interactive Demo of the game has been added. This is not intended to support the full feature set of sc2kfix, and is only meant to help with ascertaining differences between the demo and release versions of the game.
