Ubuntu Forums ubuntu.com - launchpad.net - ubuntu help  

Go Back   Ubuntu Forums > The Ubuntu Forum Community > Other Community Discussions > Wine
Register Reset Password Forum Help Forum Council Search Today's Posts Mark Forums Read

Wine
This is the place for questions about using Windows programs under Linux using Wine, including productivity software, games, and anything else.

 
Thread Tools Display Modes
Old January 30th, 2007   #1
Mongoose
Gee! These Aren't Roasted!
 
Mongoose's Avatar
 
Join Date: Apr 2006
Location: USA
Beans: 205
Ubuntu 6.10 Edgy
Oblivion under Ubuntu with Wine

The new Offical home of this HOWTO:
http://www.uesp.net/wiki/Oblivion:Linux
The most up-to-date version will be there. If you have a problem check the wiki before posting an issue in the fourms here.

Oblivion under Ubuntu with Wine.

Here's my first HOWTO on the Ubuntu Forums. If I cock something up post a fix or comment, since I'm mostly going by memory here. I saw some requests for this, and I thought this would be a great way to support Ubuntu. =)

As of this writing WINE 0.9.29 provides the best play experience. The GIT and 0.9.30 release now have improved D3D caps support, however this causes rendering errors for skinned meshes. Mostly in the form of bad shadow maps and improper skinning. This isn't a guide about developing wined3d, so let's get the last working version.

1. Where do you get Wine?
Normally you could use the winehq.org site's guide to setup for Ubuntu, however 0.9.29 is now in the archives at wine.budgetdedicated.com.


2. Pick the package for the version of Ubuntu
You just need to download and install the package you need based on your distro, which will be either Edgy or Dapper. If you're on x86_64 you can just use the same i386 package by using the --force-architecture flag. You'll need to install lib32 support of course if you're on x86_64, and don't forget asound32 for your ALSA sound!

Code:
	# x86_64 users should install the needed ia32-libs and force
	apt-get install -u ia32-libs lib32asound2 lib32z1 lib32stdc++6 linux32 
	dpkg -iE --force-architecture wine_0.9.29~winehq0~ubuntu~6.10-1_i386.deb

	# i386 users just install as normal
	dpkg -iE wine_0.9.29~winehq0~ubuntu~6.10-1_i386.deb

3. Wine setup is critical to getting this off the ground. First make sure your .wine is 'modern and complete'. This won't hose your old settings, but it will fix problems if you have setup from an older version of wine.

Code:
	wineprefixcreate

4. Setup Wine for running Oblivion.
You may also need to copy d3dx9_27.dll to your ~/.wine/c_drive/Windows/System32 if needed. This dll is mainly for some symbol resolution issues. You can copy it from a Windows install or use cabextract and get it from the Oblivion DVD's DirectX.

Code:
	# This could be /media/cdrom or whatever your DVD mount point is called.
	apt-get install cabextract
	cabextract /media/cdrom/DXREDIST/Aug2005_d3dx9_27_x86.cab
Now on to the main event WINE configuration.

Code:
		winecfg
Once you load up winecfg you can do most of your tweaking in this nice GUI.

Graphics tab.

Code:
	[x] Emulate a virtual desktop 
	Desktop size: [1024]  x  [768]

	Vertex Shader Support [Hardware]
	[x] Allow Pixel Shader
You can disable the virtual desktop, however if you have a misbehaving game it'll screw up your display resolution just like in Windows when it falls back. How's that for compatibility? =)


Audio tab.

Code:
[x] ALSA Driver

	Hardware Acceleration [Emulation]
	Default Sample Rate [44100]       Default Bits Per Sample [16]
	[x] Driver Emulation
Desktop Integration tab.

Here you should make a folder as your 'Windows folder base' and populate it. I use ~/Documents/Windows/. After you make these folders match them up in this interface, since Oblivion follows the logo requirements and uses a 'My Games' folder.

Code:
mkdir -p ~/Documents/Windows/{Desktop,Documents,Pictures,Music,Video}
Your ini and saved games will be under:

Code:
~/Documents/Windows/Documents/My Games/Oblivion/
I copied my old save games and such to the 'Saves' folder under Oblivion, and they all worked fine.


Drives tab.

Add a new drive for example 'D:' and click Show Advanced to set it as a CDROM drive. Browse to the mount point for your Oblivion DVD or loopback image. In my example it's '/opt/games/Windows/CDROM/'.


If you have the space I'd suggest copying your Oblivion DVD to a disk image, so you can keep it in your Collector's box. You all bought the Collector's Edition didn't you? Well you should it has some cool stuff. Here's a handy, dandy bash script to mount your Oblivion.iso.

Code:
#!/bin/sh
ISO=/opt/iso/Oblivion.iso
sudo mount -o loop -t iso9660 $ISO /opt/games/Windows/CDROM/

5. Registry editing in Wine. Run the command below and it'll pop-up a Wine version of regedit.

Code:
wine regedit.exe
Now browse HKEY_CURRENT_USER / Software / Wine / Direct3D. Right click in the pane to make New > String Value for each of the following key pairs:

Code:
OffscreenRenderingMode	fbo
	UseGLSL					enabled
	VideoMemorySize		256
Make sure you have 256MB of video memory and GLSL support before enabling. Set whatever is needed for your card, but note w/o GLSL Oblivion won't run. I use a Nvidia 6800 GS with 256MB of RAM, and it gets it done.


6. Installing in Wine. There is nothing to this one, you just click and go. The only thing that might bite you is if you see the error 'out of disk space', and you know you have enough space. If you see this you might want to map another drive in Wine to the partition you're installing on. For example I use G: for my /opt partition. After this Wine will see the correct disk space for /opt on the G: drive.


Code:
	# Use /media/cdrom or whatever your mount point is here.
	cd /media/cdrom
	wine setup.exe

7. Install the patch. Go grab the 1.1.5xx patch for Oblivion, and install it under Wine. If you installed Oblivion under Wine then this is just watching the bar scroll to complete.


Code:
	# Check for your version's latest patch.  I use 'English'.
	http://www.elderscrolls.com/
	wine Oblivion_v1.1FinalEnglish.exe

8. First run. I suggest copying the Oblivion icon on your desktop to your Windows/Desktop. Go ahead and run the icon or OblivionLaucher.exe directly once. Set the general options you want, and exit. You'll want to reduce your game resolution and lower defaults as needed. In general I find the types of shaders are the real slow down more than the draw distance, etc. Turn off HDR/Bloom or you won't see anything. =)


9. Tweaking Oblivion.ini. There are a lot of sites that do an entire article on just this, however I'd suggest at least these two changes:


Code:
	bForce1XShaders=0
	bSaveOnInteriorExteriorSwitch=0
	SIntroSequence=
	bUseWaterShader=0

The 1X shaders cause crashes for menus and outdoors, so you don't want them. The other option avoids saving everytime you open a door, and that means less file I/O. Hell, you shouldn't be using these in Windows either. If you don't care about looks so much you can enable gobal light model, which is much faster and looks much worst as well. Clearing out the intro sequence resolves a crash for some. Disabling the water shader means no pretty water, but it can be worth up to 50fps or more. If you get 2fps anywhere in the game try disabling this shader, and you'll likely get a huge speed boost. You can remove the purple color from the water by replacing its DDS texture. I'd suggest editing the texture below to be a highly transparent light grey, or whatever you perfer.

If you get 'purple water' once you turn off the water shader you can fix that by using Excors' replacement DDS texture:
Code:
# Just extract the contents ( 'Data\Textures\water\water00.dds' ) into your Oblivion/Data directory.
http://games.build-a.com/oblivion/watertexture.zip
10. Playing! Now you can finally play the game. I suggest disabling all the debug spew to get more performance. Also here is the shell script I use.


Code:
	#!/bin/sh
	# This script disables all the text output for Wine
	# debugging for improved performace.
	export WINEDEBUG=fixme-all,err-all,warn-all,trace-all
	OBLIVION_DIR=/opt/games/Windows/Oblivion
	cd ${OBLIVION_DIR}
	wine OblivionLauncher.exe
The new Offical home of this HOWTO:
http://www.uesp.net/wiki/Oblivion:Linux

You should also visit the Wine AppDB page:
http://appdb.winehq.org/appview.php?iVersionId=5777

Here's a screenshot of Oblivion in Wine at my blog for the old version of this HOWTO:
http://mongooseichiban.blogspot.com/...nder-wine.html

Here's a screenshot of Oblivion in Wine for the current version of this HOWTO:
http://www.flickr.com/photos/terryhendrix/377865984/

Last edited by Mongoose; February 12th, 2007 at 02:10 AM.. Reason: Update, readibility
Mongoose is offline   Reply With Quote
Old January 30th, 2007   #2
glabouni
Gee! These Aren't Roasted!
 
Join Date: Jan 2007
Beans: 196
Re: Oblivion under Ubuntu with Wine

wine has now been upgraded to wine-0.9.30

anyways thanks for this howto, I'm gonna try it when I feel like finishing my oblivion game.
glabouni is offline   Reply With Quote
Old January 30th, 2007   #3
Mongoose
Gee! These Aren't Roasted!
 
Mongoose's Avatar
 
Join Date: Apr 2006
Location: USA
Beans: 205
Ubuntu 6.10 Edgy
Re: Oblivion under Ubuntu with Wine

Don't use 0.9.30 -- I just said it won't work very well. Please read more carefully. =)
Mongoose is offline   Reply With Quote
Old January 30th, 2007   #4
hikaricore
RIP ~ Fluffy ~ 2006-2008
 
hikaricore's Avatar
 
Join Date: Aug 2006
Location: lewis center, ohio
Beans: 5,734
Kubuntu Development Release
Send a message via ICQ to hikaricore Send a message via AIM to hikaricore Send a message via MSN to hikaricore Send a message via Yahoo to hikaricore
Re: Oblivion under Ubuntu with Wine

Beautiful howto, i'll be trying this out later. ^_^
hikaricore is online now   Reply With Quote
Old February 1st, 2007   #5
bastiegast
Way Too Much Ubuntu
 
bastiegast's Avatar
 
Join Date: Feb 2006
Beans: 273
Re: Oblivion under Ubuntu with Wine

Quote:
Originally Posted by hikaricore View Post
Beautiful howto, i'll be trying this out later. ^_^
Sweet! Last Time I checked oblivion was nearly unplayable. Those guys from wine make great progress. Can't wait for 0.9.31
bastiegast is offline   Reply With Quote
Old February 1st, 2007   #6
bastiegast
Way Too Much Ubuntu
 
bastiegast's Avatar
 
Join Date: Feb 2006
Beans: 273
Re: Oblivion under Ubuntu with Wine

Ok tried it myself, but ran into an crash upon launching the game. I googled it up and it seemed I had to remove *.bik from Data/Video then it worked.
bastiegast is offline   Reply With Quote
Old February 1st, 2007   #7
Mongoose
Gee! These Aren't Roasted!
 
Mongoose's Avatar
 
Join Date: Apr 2006
Location: USA
Beans: 205
Ubuntu 6.10 Edgy
Re: Oblivion under Ubuntu with Wine

In Oblivion.ini you can clear out this entry instead of moving files around, which is hacky:

SIntroSequence=

This way you can see the logo and map on the main game menu, and skip the company and production movies which likely cause your crash.
Mongoose is offline   Reply With Quote
Old February 1st, 2007   #8
Xenophoribic
5 Cups of Ubuntu
 
Join Date: Jan 2007
Location: Louisiana
Beans: 33
Ubuntu 7.04 Feisty Fawn
Re: Oblivion under Ubuntu with Wine

Curious what kind of settings you get, how it all looks in general, how the audio is, etc. I've just rebuilt and I'm packing a 7950GT. I want to know that I'll get good performance along with a gratifying visual and audio experience.
Xenophoribic is offline   Reply With Quote
Old February 1st, 2007   #9
Mongoose
Gee! These Aren't Roasted!
 
Mongoose's Avatar
 
Join Date: Apr 2006
Location: USA
Beans: 205
Ubuntu 6.10 Edgy
Re: Oblivion under Ubuntu with Wine

First, a warning about my current config. I have about everything that works in Wine 'maxed out' when I play. I have a large shadowmap memory setting, large textures, and I even enabled more options than the default. I leave shadows and all that jazz enabled as well. I like how the refraction shader looks, so I leave that on as well. That's including turning on all the SM2.0 options including the SM2.0 lighting path. I use a 6800 GS btw, and I turn on a few extra threads for various options since I have an AMD64x2.

I get 30-60fps 'indoors' and anywhere from 2-70fps 'outside' with the same 'maxed out config'. I can run around in caves with a torch throwing fireballs and fighting 2-3 people at once with 30-60fps, and that's typical usage for my gameplay. It's really uneven 'outside' due to the fact that at night you can get 70fps in the same area that gets 2fps in the sunlight. The way to get around this issue and not disable any shaders in the ini is to use 'Oblivion batch files' to toggle them on and off as needed. I can't remember, but I think 0.9.30 doesn't have this huge slowdown problem. Given 0.9.30 breaks mesh skinning you don't want to bother with it, since broken mesh animation/rendering ruins the game more than a slow down you can avoid.

I think the slow down might be caused by only 1 or 2 shaders using a slow code path in Wine. The worst I've seen is where you have an ungodly amount dynamic lights across a rampart, but that's always going to be slow even if you were in Windows. I would try toggling the various shaders on and off to see what works best for your card.

You can also use Ultra Ugly gobal lighting path, which seems to enable a vertex color light model. If you really wanted to max out performance you could find the trouble shaders and rewrite them. I think you can get over 200fps pretty easy then, but why would you want to at that point? =)

I'm revising this HOWTO at my site, and plan to roll the 'fixes' back into this fourm post once I have time to take some screenshots.

http://www.icculus.org/~mongoose/OblivionHOWTO.html

Here's a link to an article on using batch files and console commands:
http://www.tweakguides.com/Oblivion_11.html

Last edited by Mongoose; February 1st, 2007 at 08:47 PM.. Reason: Link to batch guide.
Mongoose is offline   Reply With Quote
Old February 1st, 2007   #10
Xenophoribic
5 Cups of Ubuntu
 
Join Date: Jan 2007
Location: Louisiana
Beans: 33
Ubuntu 7.04 Feisty Fawn
Re: Oblivion under Ubuntu with Wine

Thanks a lot, Mongoose. I was going to install a Windows partition just so I could play Oblivion trouble free, but your guide looks solid, and your explanation on your performance only solidifies my complete abstinence from Windows
Xenophoribic is offline   Reply With Quote

Bookmarks

Tags
oblivion, wine

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 09:47 AM.


vBulletin ©2000 - 2010, Jelsoft Enterprises Ltd. Ubuntu Logo, Ubuntu and Canonical © Canonical Ltd. Tango Icons © Tango Desktop Project. lingonberry