Making old games in Steam not suck — Part 3: Far Cry

December 27th, 2013 by lister 1 comment »
Still quite pretty almost a decade later.

Still quite pretty almost a decade later.

Far Cry was the graphics benchmark back in the day. With a little bit of tweaking, it can still look amazing for a game that was made in 2004.

Our biggest ace in the hole here is FCAM, or the Far Cry Addon Mod. It updates textures, makes things a bit more stable, and allows you to skip cutscenes.

Download and install to your steam\steamapps\common\farcry\mods folder, creating it if it doesn’t exist.

This is all you’ll need — don’t bother with downloading the 64-bit Far Cry pack, the executable causes stability issues and all the texture/detail bonuses are included in FCAM anyway.

Known FCAM bugs

There are a few bugs I’ve run across through my FCAM plays, I’m unsure if these affected Far Cry as well:

  • The OICW is often invisible the first time you equip it until you fire your first shot.
  • On the Swamp level, Val occasionally can’t find her way to the buggy to drive after you get in. Reloading the game a few times should help.
  • On the Factory level, the forklift can go through the ceiling of the elevator when the elevator goes down. Don’t worry, Val will still be able to retrieve it.
  • Occasionally Val looks like she’s holding an invisible weapon. She’ll still shoot when she needs to.
  • Long distance texture sharpness can’t be adjusted.

And this particular rock texture has some weird, offset overlay effect going on that messes with your eyes:

That's some messed up stuff.

That’s some messed up stuff.

It looks like FCAM is no longer being updated, so we can only hope someone finds solutions to these issues. Or that the Far Cry 2010 mod gets finished by, er, 2020.

Configuring graphics for highest settings

Next we want to tweak the graphics a little beyond the easy settings the configuration tool allows. These settings worked exceptionally well on a GeForce GTX 670 4GB card, although there can be slowdown if too many rockets explode at once in the player’s field of view (only noticed this on one level).

Head to your steam\steamapps\common\farcry folder and run FarCryConfigurator.exe. There’s a good chance Auto Detect will completely mess things up, so let’s fix things.

Game options tab

Set Machine to Very High, check Enable Gore.

Video options tab

Here you’ll want to set Screen Resolution to whatever your monitor can support, Anti-aliasing to high, and make sure Full Screen and Vertical Sync are checked.

Video options (advanced) tab

Click the Very High button, then hit the Customize button. On the Texture Quality tab, ensure r_TexResolution, r_TexSkyResolution and r_TexBumpResolution are set to 0, the highest setting.

Head over to the Anisotropic Filtering Level tab and change the value of r_Texture_Anisotropic_Level to 16.

Click the right arrow button until you reach the Water Quality tab, and set r_Quality_Reflection to 1, so the water reflects everything. There’s obviously a lot of settings here that you may wish to play with; the tool does a decent job of explaining the settings, but if you need more the Far Cry Tweak Guide provides greater information.

Click OK, head to the Sound tab and make sure you’re set up correctly, then click OK again.

More tweaking

Grab this systemcfgoverride.cfg (right click, Save Link As), and put it in your steam\steamapps\common\farcry folder. This will tweak view distances, object pop-up issues, corpse remaining times and a few other options that should be nicely tuned to minimise glitching.

Developer mode

Now we want to tweak the developer mode a little to update some old commands and give you a little more freedom. Rename steam\steamapps\common\farcry\mods\FCAM\devmode.lua to something like steam\steamapps\common\farcry\mods\FCAM\devmode.lua.original, then save this file in its place.

Now when you run FCAM (steam\steamapps\common\farcry\mods\FCAM\FCAM.EXE, make sure you use Launch FCAM FarCry – Devmode to get access to all the extra options.

These in-game keys are mapped to the following:
.: Enable high detail polys at larger view distances (will have to be done with every level load)
F1: Switch between first and third person view.
F2: Skip to the next checkpoint.
F3: Toggle developer fly mode.
F4: Toggle developer fly mode no clipping.
F5: Quick Save.
F6: Quick Load (should work anywhere in the game, even during the intros).
F8: Toggle debug mode.
F9: Save position.
F10: Warp to saved position.
F11: Toggle AI info.
u: Give all weapons.
i: Give binoculars, flashlight and heat-vision goggles.
o: Give all ammo.
p: Give all grenades.
End: Rambo mode (Set health and armor to full, give all weapons, ammo, grenades and equipment).
Insert: Stealth mode (Enemies can’t see or hear you).
Backspace: God mode (Health will go down, but be restored when you “die”).
Home: Screenshot mode (HUD disappears).

The increase speed cheat in previous devmode.lua files doesn’t work with the Steam version of Far Cry.

Stop desktop apps appearing on the Windows 8 Start screen

March 6th, 2013 by lister No comments »
Windows 8 Start screen

Ah, cripsy clean with Metro apps only.

UPDATE: So this isn’t perfect; it turns out the Start screen also references %appdata%\Microsoft\Windows\Start Menu, and if you prevent links being written to both folders, then this prevents typing the program name at the Start screen from working as expected. Looks like I’ll have to keep digging to discover how Windows determines pinned and non-pinned states. In the mean time, I thoroughly recommend updating to Windows 8.1 which fixes this problem for you.

Please note this tutorial assumes UAC is on.

As you install desktop apps, Windows 8’s Start screen quickly begins littering itself to the point of being unmanageable. What if you wanted to just have modern apps on the Start screen, and keep desktop apps entirely separate?

Well it’s certainly possible. While paid-for application StartIsBack seems to have the feature built in, there appears to be no free tweak available. AutoPinController, while successfully stopping pinning, also prevents Metro apps from being added to the Start screen.

Let’s see if we can reverse engineer this.

Before you begin, you may wish to reset your Start screen, effectively unpinning everything so you don’t have to manually clean up all the tiles.

Next we’ll want to prevent these tiles being created in the first place. Desktop app tiles are all pulled from %programdata%\microsoft\windows\start menu, so we want to block writes to this folder and its subfolders.

While this can be done through the GUI (right click folder > Properties > Security tab > Edit button > Select Administrators, turn off Full Control, Modify and Write), it can frankly be a pain to figure out inheritance among other things. So let’s do this the assured way, from the Command Prompt.

Run an elevated Command Prompt (hit the Windows key, type cmd, right click the Command Prompt tile that appears and choose Run as Administrator), then use this code:

cacls "%programdata%\microsoft\windows\Start Menu" /e /t /p Administrators:r
takeown /f "%programdata%\microsoft\windows\start menu" /r /d y

The first line prevents anyone in the Administrators group from adding/modifying files or folders. Because this can occasionally futz with permissions, the second line then reclaims ownership of the folder on behalf of the current user.

Alternatively, if you’d prefer something a little more automated, you can download this batch file, complete with auto-elevation code.

3ware 9650, Windows 8 and sleep/hibernate problems

March 6th, 2013 by lister 1 comment »
Windows 8 shut down

3ware’s drivers aren’t Windows 8 ready.

Recently I had the opportunity to move my 9650SE into an HTPC, where Windows 8 is quite useful.

Sadly 3ware’s drivers aren’t quite ready yet. While storage is accessible and 3dm2 has finally been updated to get past the HTTPS problem, there are hibernate/sleep issues where the system errors out and shuts itself off instead.

Affected drivers include all available on LSI’s site up to beta, and the Microsoft supplied driver.

I filed a bug report with LSI, and this is what I got back:

Thank You for contacting LSI Support.

I apologize for the inconvenience. LSI Devs are already working on new drivers. I have no ETA, to when the new drivers will be available.

Please, don’t hesitate to contact us for further assistance.

I think we can assume this means it will be some time.

Making old games in Steam not suck — Part 2: Chrome & Chrome Specforce

May 21st, 2012 by lister No comments »
Chrome needs a little massaging to get into a workable condition

Chrome needs a little massaging to get into a workable condition

Man, this is a hard one. Techland’s Chrome and its sequel weren’t particularly popular. It really did establish some trends that the likes of Crysis picked up later, like dense jungles and implants that modified your combat ability. There’s even vehicles in there!

There is a widescreen mod for the first game should you choose to download it, with a fancy configuration tool. It does however change the UI quite a bit, dumps in some new loading screens, grafts bits of SpecForce over the top and seemingly isn’t totally 16:9 compatible. If you want just a straight Chrome experience that gives a higher resolution, fixed fonts and higher res versions of the UI, I’ve created an installer with a custom configuration tool below (maps courtesy of the widescreen mod above):

Chrome HD Fix

I’ve played all the way through at 1920×1080, and there shouldn’t be issues at other resolutions, but let me know if you come across anything that looks out of sorts. Here’s the update for Specforce:

Chrome Specforce HD Fix

Note that you can’t undo these installs; you’ll need to verify the integrity of the game cache from within Steam if you wish to revert the changes.


The games don’t support AA by default, so you’ll have to set up an override in your graphics card control panel. For Chrome, make sure to apply the overrides to chromesingle.exe and chromenet.exe — if you set them to chrome.exe, things won’t work and there’s a chance things will get confused with Google’s browser if you have it installed. Chrome Specforce is a lot easier: apply your overrides to SpecForce.exe.

Getting the 3ware 9650SE working in Ubuntu 10.04 64-bit

May 21st, 2010 by Daedalus 14 comments »
Lucid Lynx

Ubuntu 10.04 might bring a new look, but it breaks a few things too.

UPDATE 16/09/2010 | Despite 3ware updating its software to 10.2, the name resolution bug still exists. Webmin’s update to 1.520 fixes the Samba issue though. You’ll either need a clean install, or to follow these comments for the workaround.

In the last week I’ve updated Ubuntu from 9.10 to 10.04, and found a few rude shocks along the way.

Samba, for one, is now treated entirely differently, and this of course breaks a number of things including Webmin. Apparently this will be addressed in the next release of Webmin, whenever that is. In the meantime, a distro upgrade from 9.10 to 10.04 will likely bork your Samba like it did mine, requiring a clean install to get things working again.

Another thing also broken in 10.04 is a library that affects name resolution, which plays havoc with 3DM2’s email notification feature, crashing 3DM2 in the process. There’s a simple workaround for this: use your mail server’s IP instead of its name. Not optimal, but it will work until the Ubuntu devs catch up and stop palming the problem off to other devs.

New 3DM2 + CLI 10.1

One thing I did notice during the reinstall was that a new version of 3ware’s 3DM2 + CLI package was out, 10.1. Of course 3ware has never explicitly claimed Ubuntu support, so moving off the trusted 9.5.3 was a bit of a concern. I did it anyway, it worked fine (name resolution bug aside) and here’s how you can too.

The installation package has now moved to 100% text, away from the previous Installshield efforts. It’s fairly trivial to set up too. Not Windows trivial, but then, nothing ever is on Linux.

First, uninstall any previous version of 3DM2 — how you do this will depend on the distribution you’ve used. If you’ve used a .deb file, you should find it in Synaptic Package Manager, but if you’ve used the old Installshield package, you’ll need to open up a terminal and issue the following commands:

cd /opt/AMCC/_uninst
sudo ./uninstaller.bin

And follow the prompts. This assumes you installed to the default path of /opt/AMCC, if you’ve installed elsewhere, you’ll need to find uninstaller.bin yourself. Next, you’ll want to download the 3DM2 & CLI Linux 10.1 code set from 3ware.

Open a terminal and navigate to the directory that is in.


unzip -d 3dm2
cd 3dm2
chmod +x
sudo  ./ --install

Then follow the prompts. If you’re still having grief, our old friend has made some .deb files for us.

After a successful install, simply open a browser, point it at and log in with the default password 3ware. Just remember to use your mail server’s IP instead of its host name.

Ubisoft's new DRM doesn't quite work

January 31st, 2010 by Daedalus No comments »

Assassin's Creed II

Ubisoft's Assassin's Creed II may have the new DRM scheme by the time it's released on PC.

UPDATE | Good lord. They really have been as stupid as to boot you from the game if your internet connection drops. Short of the usual blog fury and forum explosions, I’m not sure how to treat this. Boycotting is not the answer — the game studios just see that sales are down on PC, assume piracy has won, and it gives them more excuses to slowly strangle the life out of the platform by focusing on console.

Last week, Ubisoft revealed its new DRM scheme, effectively doing away with CD checks by moving the tech online.

Ubisoft hasn’t had the best run with DRM, although fortunately this seems to be a small step in the right direction.

All you need is an account, and to associate your game with that account. The technology then authenticates whenever you run the game, and syncs your save games online so you can transfer between machines, or install the game later and still have access.

In short, Ubisoft is doing its best to mimic Steam. It will be fascinating to see if Ubisoft eventually takes it one step further, cutting out the middle man and selling titles direct.

As usual, there are a few troubling things about the whole idea:

  1. Double dipping DRM. This is speculative, but I’d hazard a guess Ubisoft titles sold through Steam and other digital distribution platforms will likely still require an login, forcing a pointless double-dip DRM process akin to the GFWL games on Steam, or the GTA IV Securom/GFWL/Rockstar Social Club fiasco.
  2. Destroying the game experience. A “permanent online connection is required”, and if that is lost then “the game will pause while it tries to reconnect. If the Internet Connection is unable to resume you can continue the game from where you left off or from the last saved game.”  Interruption of the game and destroying the suspension of disbelief is unacceptable, especially if this event occurs at no fault of the player. At the most, the game should only check when it is first launched. If you’re going to make background checks, they need to be in the background. If a check fails, wait until the game process is terminated before enforcing a policy.
  3. Mobile users are cut out. Pity the laptop gamer. If you don’t have WWAN or reception drops, too bad. Unlike Steam, there’s no way to set an “offline” mode.
  4. We’re asked to trust the untrustworthy. If the service somehow disappears from existence, then Ubisoft “will create a patch for the game so that the core game play will not be affected.” Which is all very nice, but Ubisoft hasn’t exactly established itself as a shining knight of consumer favour. Its version of  Beyond Good and Evil on Steam and GoodOldGames requires a lot of system tweaking to even get working properly on modern systems, despite selling for US$9.99. Prince of Persia Sands of Time, Two Thrones and Warrior Within require you to turn off fog in order to be able to see anything, otherwise it just turns the screen white. These titles are also selling for US$9.99 on Steam. All should be considered broken goods, and a portent for how Ubisoft treats its old code with new customers.
  5. Growing pains. It took Steam years to become the reliable service it is today. I suspect we’ll see a few reports of Ubisoft’s servers being unable to cope with the load in the early days of the scheme’s release.

All this is summed up with the remarkably sheltered comment of Brett Wilkinson, Ubisoft’s Director of Customer Support, who states: “We think most people are going to be fine with it. Most people are always connected to an Internet connection”.

Who are these “people”? Brett, you might want to take a look at the most recent internet penetration stats (at the time of writing, 25.6% world wide), or at the very least adjust your sentence. Perhaps a more accurate statement would be: “The bulk of our sales come from densely populated cities with always-on internet connections, and as a business, we follow where the dollar goes”.

At least it’d be honest.

Getting the 3ware 9650SE working in Ubuntu 9.10 64-bit

December 13th, 2009 by Daedalus 6 comments »

While the Linux kernel has included 3ware drivers that have worked perfectly for a long time, to manage your array you need access to applications.

Firmware aside, 3ware splits its application into two parts — its command line tool tw_cli and its web management tool 3dm2. While tw_cli is perfectly fine for managing the array directly, you’ll need 3dm2 to setup mail notifications and scheduled maintenance.

3ware's 3dm2 is where all your card management should be done.

3ware's 3dm2 is where most of your card management will be done, as the CLI is sadly limited.

Until version 9.5.3 was released at the end of November, 3ware’s tools simply didn’t install in Ubuntu 64-bit thanks to a broken installer. To get things working, you needed a third party release.

3ware’s install is simply weird; rather than simply provide a .deb file, once you’ve extracted the .tar.gz “Linux” bundle you’re presented with a .bin file. After making it executable, and running it:

chmod +x setupLinux_x64.bin
sudo ./setupLinux_x64.bin

A Java runtime environment extracts, and, shock — a graphical version of Installshield loads. Who said it was just for Windows?

Installshield on Linux... who'd have thought?

Installshield on Linux... who'd have thought?

After going through the process and a restart, the webserver was running on with the default password 3ware and everything was as easy as pie. Complemented with GapcMon, apcupsd, Webmin, Samba, Proftpd and Gadmin-proftpd, I’m now ready to start filling up my file server.

Sometimes giving in is easier

December 13th, 2009 by Daedalus 1 comment »

OpenSolaris’ ZFS implementation recently picked up one of the tastiest things it possibly could: block level dedupe.

Except I no longer care.

Too impatient to wait for the RMA on the dead Asus P5Q-E (of which the replacement is now a spare swap-in board), thanks to an incredibly generous friend I picked up a Gigabyte GA-EP45-Extreme… which OpenSolaris b127 hated, and refused to boot with. After a few days of hair pulling and switching off almost everything I could in the BIOS to try and rectify the issue, I finally admitted OpenSolaris was not to be.

The Gigabyte GA-EP45 Extreme, great board, hated by OpenSolaris

The Gigabyte GA-EP45 Extreme, great board, hated by OpenSolaris

Not willing to risk Nexenta, I dropped to FreeBSD 8, the last bastion of ZFS hope (no folks, FUSE does not count).

FreeBSD worked wonderfully from a compatibility front, but I soon discovered that when it came to virtualisation, it had the same options as a prisoner faced with the Spanish inquisition: basically none. There is, ironically, a version of Sun’s VirtualBox floating around, but it’s a hack job that hates 64-bit, and like most things FreeBSD if you’re not running from the command line you’re asking for pain.

And so, hoping that one day Larry Ellison would open up ZFS licensing a little more so the GPL crowd would stop whining and just integrate it already, I sighed, flicked the 3ware 9650SE into hardware RAID 6 and reached for the Ubuntu 9.10 64-bit disc.

It worked.

Post mortem: List of controller cards that will work with OpenSolaris

While I note with grim satisfaction that Areca has still failed to produce a Solaris driver for it’s ARC-1300ix series, here’s a list of PCI-Express cards known to work with OpenSolaris without requiring any RAID 0/JBOD workarounds, and being able to control at least eight drives.

  1. LSI SAS3081E-R
  2. Intel SASUC8I flashed with the SAS8031E-R’s IT (initiator target) firmware
  3. 3ware 9650SE series

Tiny, yes? The last, which I ended up with due to non-availability of the first two in Australia, is significantly more expensive as it has hardware RAID capability as well.

Post mortem: Final system

Rack: HP 10622
OS: Ubuntu 9.10
PSU: Corsair TX-850
CPU: Intel Q9550
Memory: 8GB Corsair Dominator PC-2 8500
Motherboard: Gigabyte GA-EP45 Extreme
GPU: Geforce 7600GS silent (to be swapped out with a PCI card when a second 3ware controller card is bought)
Controller card: 3ware 9650SE-8LPML
Network card: HP NC364T
Case: Chenbro RM41416B
UPS: APC Smart-UPS 750
Switch: Netgear GS724T
System drives: Samsung HD501LJ SATA
Array drives (RAID 6 w/XFS): WD RE3 1TB x3, Samsung HD103UJ 1TB x2, Seagate 7200.11 x2, Seagate 7200.12

The only problem left is the Seagate 7200.12, which seems to keep dropping from the array. I’ll have to see if a firmware update to the 3ware card fixes it, otherwise I may need to swap in a new drive (Update: turns out the ridiculously expensive Mini-SAS to SATA cables I bought were dodgy. Upon replacing, I’ve had no dropouts).

Curse of the server

September 29th, 2009 by Daedalus 3 comments »
Gasp! Intrigue! Another fucking motherboard!

Gasp! Intrigue! Another fucking motherboard!

I suppose at this point I really shouldn’t be surprised. The number of things that have gone wrong to date rival most government run projects.

Not covering old ground:

  1. The Areca ARC-1300ix 16 was returned on the basis of no Solaris driver and it being a glorified port multiplier. I waited for about a month for the Adaptec 31605 on back order. After showing no signs of turning up any time soon, I cancelled the order and decided to pony up for the highly featured and crazily expensive 3ware 9650SE-8LPML instead.  The day after, I find out Digicor has started distributing the SAS3081E-R again, a significantly cheaper option. Take in mind either choice locks me into a motherboard with at least three PCI-E x4 slots (due to needing 16 channels, and to equip the Intel quad gigabit Ethernet card).
  2. The moment the 3ware arrives, I plug it in, and lo and behold, the machine no longer posts. Having seen a similar behaviour on the previous server (would or would not boot based on random hardware plugged in and how many times half the male population has scratched its crotch in the last hour while the wind is blowing west), I proceeded to disconnect everything until only RAM, CPU and GPU remained — and it still didn’t boot. Being that the only remaining part from the old server was the 850W CoolerMaster PSU, I ordered a Corsair TX-850 at AU$240 to remove all doubt, plugged it in AND;

    Corsair TX-850

    The Corsair TX-850, a PSU with a beefy 12V rail and five year warranty - AU$240.

  3. Discovered that the Asus P5Q-E motherboard, which replaced the exploded MSI was the dead part, despite no sparking, despite working a week ago, despite nothing being physically wrong with the board — it just stopped posting,  meaning I’ve once again spent more cash than I have to.

    The excellent Asus P5Q-E. Alas, it was not to be.

    The excellent Asus P5Q-E. Alas, it was not to be.

Well, fuck. That’s two motherboards gone in one build, which is making me wonder if the case is shorting something somehow. At this point I’ve had the chassis for over ten months, with no working system. It’s enough to make you want to buy a prebuilt NAS.

Meanwhile the brand new Netgear GS724T, APC SmartUPS 750 and HP 22RU rack just sit there, waiting for some action…

The mighty 3ware 9650SE-8LPML.

The mighty 3ware 9650SE-8LPML, coming to a server near you - AU$915.

Netgear GS724T

Netgear GS724T - picked up for AU$280.

APC SmartUPS 750

APC SmartUPS 750 - AU$231 on eBay.

HP 10622 rack - the one I bought on eBay for AU$180 likely has a bit more wear and tear than this image.

HP 10622 rack - the one I bought on eBay for AU$180 likely has a bit more wear and tear than the one in this image.

Areca are liars: The ARC-1300ix 16 does not support Solaris

August 3rd, 2009 by Daedalus 15 comments »
Oh damn... why did no one tell me?

Oh damn... why did no one tell me?

Well, that about settles it. This file server is cursed.

After replacing the CPU and motherboard, I booted up my once again completed fileserver to find out, unlike as advertised, the ARC-1300ix 16 does not support Solaris in any fashion. At all.

Areca has altered the product page too, conveniently after I purchased, to read “Solaris 10/11 (will be available with 6Gb/s Host Adapter)”.

Excuse me? It will be out when something is available that doesn’t even come on motherboards yet, let alone standalone adapters? Not to mention the drivers might possibly not support the card I bought which explicitly claimed support?


The manual, of course, still claims Solaris support — both the one that came with the card, and online in the form of revision 1.1 (2009/5/8, hosted here in case Areca takes it down). Incidentally, it only offers RHEL for Linux support, and this comes as a floppy image!

For anyone that’s curious, it uses a Marvell 88se6440 plugged into an LSI SASX28. The latter is a port multiplier, supported by Solaris. The former is the controller, supports four drives and is most definitely not supported. Effectively, Areca is jamming in four drives per 3Gb/s channel, squeezed over a PCI-E 4x connection. I am more than slightly vexed.

I have filed a complaint through Areca’s web support form, but given that it didn’t even confirm that anything had been sent, I don’t hold out any hope for a response. If there isn’t one coming quickly, I’ll be requesting a refund from the distributor. My only concern is that there is now really no option but to pony up for the Adaptec 31605, since I no longer have the luxury of four PCI-E x16 slots to play with.

Areca has responded, and in a timely manner. Q3 huh? Soooo maybe October, factoring in delays. That’s a long time to wait to set up a file server. Have some nice people on the Sun side helping, but I believe it may still be dwelling in refund territory.


Dear Sir,

in our plan, we will release the driver for solaris as soon as the 6G SAS HBA available, the planned schedule is the end of Q3. the driver can be used for 6G and 3G SAS HBA both.  sorry for the inconvenience.

Best Regards,

[Removed for privacy]

Areca Technology Tech-support Division
Tel : [Removed for privacy]
Fax : 886-2-87975970



Mirror Ftp :