About This File
All credits go to: lk19
This is a mirror from the author's GitHub page (https://github.com/lukek19/CPAGameFixes), for easier reachability. This widescreen fix contains many improvements to both the original and improved Pentium 3 versions of the game, some of which are listed below:
- Ability to set any resolution in the fix's .ini file, so the game is no longer locked at only 640x480, 800x600 or 1024x768.
- Fixes the field of view, so the view is correct at any resolution without cropping (HOR+).
- Ability to center the HUD and menu backgrounds or leave them stretched.
- Ability to run the game in a portable way, so it can read settings from ubi.ini in the local game folder, rather than from C:\Windows\UbiSoft\.
- Ability to set custom memory allocation limits to the game and levels (can help if the game crashes at higher resolutions during map transitions or if using texture patches potentially).
- Ability to skip the check for an Intel CPU, so the game can now natively run on non-Intel processors without requiring workarounds, like DxWnd's one.
- Fixes some resolution width related bugs in the original game (the "green bar" and the load bar would be offset when using a width different from 640, even though the original game already allowed setting it to 800 or 1024).
Instructions (taken from GitHub):
- Create a new directory for the game (e.g. C:\Games\Alex). In the following this will be referred to as <GameDir>.
- Copy the folders "DLL" and "GameData" and from the CD to <GameDir>.
- Copy LangData\XXX\World (XXX is the desired language) from the CD to <GameDir>\GameData (there should already be a folder "World", just integrate the new one into it).
- Only Non-Pentium III Edition: Copy (or move) the folder <GameDir>\gamedata\world\soundMemory\XXX (XXX is the desired language) to <GameDir>\gamedata\world\Sound (again, there should already be a folder XXX, just integrate it).
- From the fix, copy Alex.asi and Alex.ini to <GameDir>.
- Depending on whether you have the original version or the Pentium III version of the game, copy Alex_D3D.exe/Alex.exe and ubi.ini from the corresponding subfolder to <GameDir>. Note: Some international releases of the game do not have SafeDisc encrypted EXEs. In this case, you may also use your original EXE from the exe\d3d folder on your CD. The EXE is not encrypted if there is no ICD file in the folder and the size of the EXE is ~2MB/2.5MB.
- Download Ultimate ASI Loader (Win32 version of dinput.dll), and extract it to <GameDir>.
-
Open <GameDir>\ubi.ini and change the line
Language=English
toLanguage=XXX
(where XXX the same as in step 3). - Set up a Direct3D wrapper. Instructions for either dgVoodoo or DDrawCompat can be found below.
- To change resolution and for advanced options, edit <GameDir>\Alex.ini with a text editor.
Setup of Direct3D Wrapper
dgVoodoo 2
- Download the latest stable version of dgVoodoo from here: https://github.com/dege-diosg/dgVoodoo2/releases
- Copy dgVoodooCpl.exe & dgVoodoo.conf from the main directory as well as D3DImm.dll & DDraw.dll from the \MS\x86\ subdirectory to <GameDir>.
- Open the configurator dgVoodooCpl.exe. In the "DirectX" tab under "Videocard", select "ATI Radeon 8500" from the dropdown menu. Click "Apply" to save the changes. This may fix some graphical glitches.
- Still in the "DirectX" tab, under "Miscellaneous", uncheck "dgVoodoo Watermark" to remove the watermark.
DDrawCompat
- Download the latest release of DDrawCompat.
- Copy ddraw.dll to <GameDir>.
-
(Optional) To be able to Alt+Tab out of the game, do the following:
3.1. Download DDrawCompat.ini and copy it to <GameDir>.
3.2. Open DDrawCompat.ini with a text editor, uncomment (remove the #) the line starting with "AltTabFix" and change it to AltTabFix = noactivateapp(1).
FAQ / Troubleshooting
The game crashes at startup
The most common reasons for this are:
- You are not using a DirectX wrapper (see above for instructions). When the game detects too much video memory, this causes an integer overflow resulting in an infinite loop at startup (the load bar hangs at around 50%). This also happens, if a very large amount of VRAM is selected in the dgVoodoo 2 configurator.
- TMPFixMemory was set too low. Try a larger value in Alex.ini.
-
The resolution set in Alex.ini is not natively supported by your system. When the game detects a non-native resolution, it automatically reverts back to 640x480. Since the fix still manipulates the game to run at a higher resolution, this causes some memory corruption and ultimately crashes the game. If you really want to play the game at a non-native resolution, here are instructions for either dgVoodoo or DDrawCompat to "fake" support for other resolutions:
- dgVoodoo: In the dgVoodoo configurator, activate advanced options (right-click -> Show all sections...). In the tab "DirectXExt", under "Enumerated resolution" after "Extras", enter the custom resolution (e.g. "640x360").
-
DDrawCompat: Open DDrawCompat.ini. Uncomment the line starting with "SupportedResolutions" and add the custom resolution (e.g.
SupportedResolutions = native, 640x480, 800x600, 1024x768, 640x360
).
- You are using the Pentium III EXE with the original version or vice versa. Please choose the right EXE for your version.
The game crashes when starting a new game / loading a game / loading a new area
Here are some possible causes:
- TMPLevelMemory was set too low. Try a larger value in Alex.ini.
Recommended Comments
There are no comments to display.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.