Everything, with some tweaks.
What does not
Controller input, out of the box at least.
What was not tested
The entire game, but it's not exactly a supercomplex mega-engine.
To get the application running, be sure you have dotnet20 and d3dx9 installed. For controller support, you will need to use x360ce: http://code.google.com/p/x360ce/ See the how-to for more details.
|Operating system||Test date||Wine version||Installs?||Runs?||Used|
|Show||Ubuntu 16.10 "Yakkety" i386 (+ variants like Kubuntu)||Jan 04 2017||2.0-rc3||N/A||Yes||Silver||Faissal Bensefia|
|Show||Gentoo Linux x86_64||Oct 30 2016||1.9.22||N/A||Yes||Gold||Artem Vorotnikov|
|Show||openSUSE Tumbleweed (rolling release)||Aug 25 2015||1.7.49||Yes||Yes||Gold||Mint|
|Show||Arch Linux x86_64||May 10 2014||1.7.17||Yes||Yes||Gold||an anonymous user|
|Show||Fedora 20||May 10 2014||1.7.16||Yes||Yes||Gold||Ethan Lee|
Okay, so you've got Sonic Adventure 2 installed on Steam in a clean Wine prefix. But oh no, it doesn't run! What's up with that?
Turns out it's a pretty simple process to get it running. On top of Steam's requirements, you're going to need to install these via winetricks:
winetricks dotnet20 d3dx9 xinput
Sonic Adventure 2's installscript.vdf actually installs DirectX, but let's use d3dx9 for the sake of consistency/completion.
This should allow you to use the Launcher.exe and create a config, then launch the game. Hooray, it works!
... But wait, what about my controller? This game uses XInput, so I can't use my controller! I gotta go fast, and that ain't happenin' on a keyboard.
We're actually going to use the same solution that is needed for Windows users who are using gamepads other than the Xbox 360 controller, but this is needed even if you're using a 360 controller on Wine.
Download x360ce: http://code.google.com/p/x360ce/
Should be the first zip file listed; extract that exe file somewhere convenient (I just put it in steamapps/common/Sonic Adventure 2/x360ce/).
Connect your controller, then open up x360ce. It will probably ask to search the web for configurations, go ahead and let it search. Depending on your controller, it will quickly find a config for you that works out of the box. Check the bindings, then save and quit.
Now, move the generated xinput1_3.dll and x360ce.ini into Sonic Adventure 2's root folder. Those will work with Sonic Adventure 2, but how do we get the game to actually use the controller?
If you saved a config with the Launcher.exe, there should be a file in Config/, named Keyboard.cfg. Open that up and find a line like this one:
Change InputWay's value to 1, then launch the game directly from sonic2app.exe. Using Launcher.exe will overwrite the config, so unfortunately this means we won't be able to launch directly from Steam. However, you should now be able to play Sonic Adventure 2 via Wine with a controller!