Steam with WineX 3.3.2

Update 8/11/04

Since Cedega 4.0.1 was released this fix is no longer needed. Simply download and install the latest Cedega bits and off you go.

Update 07/19/04

This "hack" is no longer necessary with Cedega 4.0. Transgaming has provided a fixed libmshtml.so. See this post on transgaming.org for details on the fix.

This doesn't fix the mouse/shooting problem in Cedega, just the connection issue.

It doesn't appear to fix WineX 3.3.2 since that version doesn't ship with libmshtml.so. I didn't actually try it myself.

For now I'm sticking with my workaround.

07/14/04

Fire up steam with WineX 3.3.2, pick your game (DoD or CS) and ensure that you can get all the way to the splash screen (it will quit).

Now quit steam and kill wine/wineserver off (perhaps even using % killall wine wineserver)

Fetch shdocvw.zip from http://www.5starsupport.com/info/dll.htm and unzip it.

Put SHDOCVW.DLL into your Steam c_drive/windows/system32/ (location depends on how you are using WineX, either with the command-line or thru P2P). Examples include: ~/.transgaming/c_drive/windows/system32 or ~/.point2play/Steam/c_drive/windows/system32

Edit your Transgaming config file and add this line to the [DllOverrides]  section:

"shdocvw" = "native, builtin"

Fire up steam again, pick your game and away you go, it should work. When you join a game you'll get a dialog box that says that the the MOTD can't be found along with a really ugly path. Click Ok and this goes away and you will join the server.

That should do it.

If you put the native shdocw.dll in place before your client is updated enough to play a game then steam will hang. You have to use the builtin one to update the client to the latest version and the native one to play.

This is reported to work with cedega too but since it has the nasty sticky mouse button problem I prefer 3.3.2 for now.

I played both CS and DoD.

You may also need to install msvcr70.dll. Apparently part of Steam, CSERHelper.dll, depends on it. You can get this from the site above, I got it from my BF 1942 installation.  Put it into c_drive/windows/system32.

IMPORTANT: When TransGaming releases the next version of Cedega you are going to want to reverse this, it will likely break Steam in the future.

Also, if Steam releases an update while you have this hack in place you will probably have to comment out the "shdocvw" entry in the config file in order to receive it, or set it to "builtin" during the update and switch back to "native" to play.