The original CD-ROM release of the base game spanned across 4 discs.
What does not
Game does not launch after the splash screen (D3DERR_INVALIDCALL)
What was not tested
The gameplay itself (under vanilla wine), as the game couldn't run.
To swap discs during installation, run `wine eject` from the terminal. For me, I also needed to open the disc with the file manager first so it is properly mounted. Ejecting from the physical eject button will end up stuck asking for the next disc.
Under vanilla Wine, the game does not run, but it works excellently after installing DXVK. wine-staging may yield better results. These results represent the original 2004 four CD release without any patches
|Operating system||Test date||Wine version||Installs?||Runs?||Used|
|Current||Arch Linux x86_64||Nov 18 2022||7.20||Yes||No||No||Garbage||Luke Horwell|
|Show||Manjaro Linux 18.0.0||Jul 14 2019||4.11-staging||Yes||Yes||No||Bronze||Luke Horwell|
|Show||Ubuntu 18.04 "Bionic" amd64 (+variants like Kubuntu)||Sep 01 2018||3.15||Yes||No||No||Garbage||Korbinian|
|Show||Ubuntu 12.04 "Precise" i386 (+ variants like Kubuntu)||Nov 17 2012||1.5.17||Yes||No||Garbage||an anonymous user|
|Show||Arch Linux x86_64||Jun 26 2012||1.5.7||Yes||No||Garbage||Emily Marriott|
This game does not run under regular Wine. The game crashes with D3DERR_INVALIDCALL because The Sims 2 requests 1024 vertex shader constants, but Wine has a hardcoded limit of 256. Direct3D 9 normally supports up to 8192, using hardware shaders first (where available), followed by software emulation. Software emulation is not currently supported in Wine.
Wine Staging helps improve the situation, but may result in an unstable gameplay as reflected in test reports.
Below documents some third party solutions, which cannot be submitted as test reports here.
If you have a Vulkan-enabled graphic card, install dxvk through Winetricks and enjoy a fully playable experience without much (if any) glitches specific to Wine. DXVK is a Direct3D to Vulkan translation layer.
Note that Steam's Proton includes DXVK, which may work too.
Lutris is a platform for installing games in a unified interface on Linux, an installer is available for this game.
3. Manually patching Wine
There is an old repository that documents patches and glitches for an older (now unsupported) version of Wine:
While still far from perfect and prone to unexpected crashes (dependent on hardware), it is possible to run The Sims 2 under Wine.
The infamous D3DERR_INVALIDCALL error is due to the fact Wine is hardcoded to supply 256 vertex shaders instead of 1024 that The Sims 2 demands. By patching this constraint, as well as providing "dummy" code for unimplemented shader interfaces, enables the game to play to surprising results.
A thank you goes to swswine for initially discovering the game's major unimplemented undocumented shader interface and for writing the patch to demonstrate this in bug report 8051. Further contributors include Robert Walker, Alexandr Oleynikov and Paul Gofman.
Graphical Glitches Inevitable!
While the patch enables the game to play fairly well (dependant on hardware), there may be issues including:
Do not submit test reports for patched versions!
Please do not submit test results here as this is a hack to get the game running. Continue to submit tests for vanilla Wine or wine-staging (as long as this is explicitly stated), but it seems unlikely we'll see improvements from "Garbage" for regular Wine until the missing undocumented shader interfaces are implemented.