Welcome to the TechSpot OpenBoards. Please read the FAQ if you have any questions. Login to participate.

Go Back   TechSpot OpenBoards > OS & Software > Gaming and Consoles

Crysis Win2K Fix

Reply
Bookmark / Share this page
Thread Tools
  #1  
Old 11-01-2007, 03:24 PM
Per Hansson's Avatar
Per Hansson Per Hansson is offline
TS Special Forces
 
Location: Sweden
Member since: Feb 2002, 1,114 posts
System specs
Crysis Win2K Fix

EDIT; The problem I had with getting the fix working on the retail version has been fixed, it was just me being asleep and forgetting to pad GetRawInputData with zeroes, new fix for retail version linked below...

To play the Crysis Demo or Retail on Windows 2000 you need three files, powrprof.dll, dbghelp.dll and xinput1_3.dll

You can get powrprof.dll from a Windows XP or 2003 install, the version I used which worked was 6.0.3790.3959 from a 2003 SP2 server install.
dbghelp.dll is used by many games, the version I took was from my Steam directory, version 6.7.5.0

You can find the xinput1_3.dll in the latest DirectX monthly redist (or the Bioshock DVD if you followed that guide too )
In the extracted archive open the file APR2007_xinput_x86.cab and extract the xinput1_3.dll file

Now you need to open xinput1_3.dll in a HEX Editor, I use Hex Workshop.
Search for the textstring: "TraceMessage" and replace that with "GetUserNameA"

Next we will need to modify two of the games own dll files, because it checks if we are running WinXP!
Open CryInput.dll and search for GetRawInputData, replace with; MessageBoxA
Pad the text "Data" with zeroes
Next open up CrySystem.dll, at Offset 0x598E3 change "77" to "EB" (replaces "w" with a dot to jump this check...)
If you are modifying the Retail version the Offset is; 0x598A3 instead
v1.1 is at 0x59E23
v1.2.1 is at 0x59733

Place all dll files in the games install dir under \Bin32
(Don't overwrite the files in your winnt/system32 dir!)

Please post any problems or issues in this thread, my Win2K install is not very "clean" so more fixes might be needed... Oh, make sure to install the latest nVidia beta display driver for Crysis too, as of this writing 169.09 (same applies to ATI/AMD of course)

And for our readers who don't have a fetish for HEX Editors here is a winrar archive with the already modified dll files
Choose the appropriate version depending on if you are running the Demo or Retail version! (And what patch if any you have installed if Retail)
Crysis_Demo_Win2K_Fix.rar
Crysis_Retail_Win2K_Fix.rar (ingame build number; 1.1.1.5767)
Crysis_v1.1_Retail_Win2K_Fix.rar (ingame build number; 1.1.1.5879)
Crysis_v1.2.1_Retail_Win2K_Fix.rar (ingame build number; 1.1.1.6156)


What the XInput fix does is replace the call TraceMessage with something we will have access to, the side effect to this fix is that it should not be possible to use an X-Box Controller for the game (well I suppose there never was since xinput does not get installed at all for Win2K anyway so...)

And now some keywords for the google bot

The procedure entry point ReadProcessorPwrScheme could not be located in the dynamic link library POWRPROF.dll

The procedure entry point SymFromAddr could not be located in the dynamic link library dbghelp.dll

The instruction at "0x36503a01" referenced memory at "0x00000000". The memory could not be "read".

ERROR: CryInput.dll could not be loaded!
---------------------------
CryInput.dll could not be loaded. This is likely due to not having XInput support installed.
Please install the most recent version of the DirectX runtime.

Last edited by Per Hansson; 03-23-2008 at 11:18 AM.
Reply With Quote
  #2  
Old 11-01-2007, 03:50 PM
bushwhacker's Avatar
bushwhacker bushwhacker is offline
TechSpot Booster
 
Location: Northern Ontario, Canada
Member since: Jan 2004, 946 posts
System specs
Yes! I Love You Man!
Reply With Quote
You can remove this banner by registering, join the TS Community for free.
  #3  
Old 11-01-2007, 03:51 PM
SNGX1275's Avatar
SNGX1275 SNGX1275 is offline
TS Special Forces
 
Location: Rolla, Missouri, USA
Member since: Feb 2002, 8,019 posts
System specs
Cool. What about the performance vs XP?
Reply With Quote
  #4  
Old 11-01-2007, 04:55 PM
Per Hansson's Avatar
Per Hansson Per Hansson is offline
TS Special Forces
 
Location: Sweden
Member since: Feb 2002, 1,114 posts
System specs
I posted some results in this thread.

With the same settings on both tries I get: 25.75fps in Vista and 34.94fps in Windows 2000

I will under the weekend test performance in Windows XP 32 and 64 bit plus Vista 32 and 64 bit
My hunch is that Windows XP 32 bit will be tied vs 2000 but that XP X64 will win big time!

Last edited by Per Hansson; 11-01-2007 at 05:14 PM.
Reply With Quote
  #5  
Old 11-01-2007, 06:36 PM
bushwhacker's Avatar
bushwhacker bushwhacker is offline
TechSpot Booster
 
Location: Northern Ontario, Canada
Member since: Jan 2004, 946 posts
System specs
Quote:
Originally Posted by Per Hansson
I posted some results in this thread.

With the same settings on both tries I get: 25.75fps in Vista and 34.94fps in Windows 2000

I will under the weekend test performance in Windows XP 32 and 64 bit plus Vista 32 and 64 bit
My hunch is that Windows XP 32 bit will be tied vs 2000 but that XP X64 will win big time!
If that happens, I will upgrade to xp x64.
Reply With Quote
  #6  
Old 11-04-2007, 03:48 PM
Per Hansson's Avatar
Per Hansson Per Hansson is offline
TS Special Forces
 
Location: Sweden
Member since: Feb 2002, 1,114 posts
System specs
Quote:
Originally Posted by Per Hansson
I posted some results in this thread.

With the same settings on both tries I get: 25.75fps in Vista and 34.94fps in Windows 2000

I will under the weekend test performance in Windows XP 32 and 64 bit plus Vista 32 and 64 bit
My hunch is that Windows XP 32 bit will be tied vs 2000 but that XP X64 will win big time!
Well, so much for hunches, reply posted here;
http://www.techspot.com/vb/showpost....2&postcount=18
Reply With Quote
  #7  
Old 11-17-2007, 09:09 PM
jeremymtc jeremymtc is offline
Newcomer, in training
 
Member since: Nov 2007, 4 posts
System specs
Thanks for your efforts, Per. I very much appreciate your work in getting the Demo and game running in 2k. I'm hoping for an eventual resolution, but for now, I'm playing with the retail maps in the Demo engine . It's not perfect, but it's tiding me over.
Reply With Quote
  #8  
Old 11-19-2007, 01:41 PM
groundloss groundloss is offline
Newcomer, in training
 
Member since: Nov 2007, 1 posts
Hi, I downloaded your winrar archive and unpacked all the files into Bin32.
Unfortunatly all i get is "Crysis.exe caused an error, please restart ..." different from your error message.

Running Win2k SP4 (german language set).

Last edited by groundloss; 11-19-2007 at 01:44 PM.
Reply With Quote
  #9  
Old 11-19-2007, 02:07 PM
Per Hansson's Avatar
Per Hansson Per Hansson is offline
TS Special Forces
 
Location: Sweden
Member since: Feb 2002, 1,114 posts
System specs
groundloss; those files are only for the demo, the full version has very different files... I have not uploaded those yet, as they still do not help you run the game...

But I've also ran into another problem or two, first is that this game indeed does climb up to a virtual address space usage of more then 2GB. This of course causes the game to crash on all 32bit operating systems (Win2K, WinXP, Vista 32bit)

So to be able to play this game you will either need a 64bit OS, WinXP x64 is what I would recommend, or to change the kernel/application virtual address space allocation from 2gb/kernel 2gb/user space to 1gb/kernel 3gb/user space, that should help but might cause other problems of it's own...

http://msdn2.microsoft.com/EN-US/library/ms791558.aspx

I've also managed to kill my 7900GT, so right now I have a 2MB Matrox Mystique
Will get new components from Elfa in a day or two so I can attempt to repair it...

Last edited by Per Hansson; 11-19-2007 at 02:10 PM.
Reply With Quote
You can remove this banner by registering, join the TS Community for free.
  #10  
Old 11-20-2007, 05:58 PM
jeremymtc jeremymtc is offline
Newcomer, in training
 
Member since: Nov 2007, 4 posts
System specs
Edit - This workaround is now obsolete, much thanks to Mr. Hansson


Groundloss,

If you would like to play through the game using Win2K, there is a workaround to do this. It's ugly, but it works:

1) DL & Install the Crysis SP Demo, and patch as per Per's instructions in the first post. Make a backup copy of your patched Demo directory just in case.

2) Copy the the entire folder titled "Game" from your full retail installation into the Demo installation: Crytek\Crysis\Game >> Crytek\Crysis SP Demo\Game.

3) Copy the full retail executable, "Crysis.exe" from Crytek\Crysis\Bin32\Crysis.exe >> Crytek\Crysis SP Demo\Bin32\Crysis.exe

4) Open Crytek\Crysis SP Demo\Game\Levels. Create a folder inside called "renamed".

5) Inside your new folder "renamed", create the following folders (you'll want to include the numbers 1-11 just like below, so you know which order to load the maps in):

01 Contact
02 Recovery
03 Relic
04 Assault
05 Onslaught
06 Awakening
07 Core
08 Paradise Lost
09 Exodus
10 Ascension
11 Reckoning

6) In the demo installation, which is all that will currently work under Windows 2K, map loading is restricted in the in-game console (but not in the editor). To get around this, we will have to rename each level to "island", the starting level which does load, just like anyone who is loading a custom Sandbox map into the demo engine.

To keep things simple and organized, we're just going to make a duplicate directory of renamed levels inside of the folder "renamed", without disturbing the originals. The level names though, do not always correspond with the actual map names. This is how the levels and maps are reconciled:

01 Contact = "island"
02 Recovery = "village"
03 Relic = "rescue"
04 Assault = "harbor"
05 Onslaught = "tank"
06 Awakening = "mine"
07 Core = "core"
08 Paradise Lost = "ice"
09 Exodus = "sphere"
10 Ascension = "ascension"
11 Reckoning = "fleet"

You will need to place the various maps into the folders as shown above.

7) We're almost there. Each level folder contains 3 files that we will need to rename. As an example, we'll use the folder "village". The files "village.cry", "village.dds", and "village.xml" will each need to renamed to "island.cry", "island.dds", and "island.xml". The folder "village" will also need to be renamed to "island" - this is why it helps to have a separate directory to keep all of your renamed maps in.

You will need to repeat the same process for each of the level folders in your "renamed" directory.

8) You will want to make a backup of the original "island" level inside Crytek\Crysis SP Demo\Game\Levels, so copy/paste it into "Levels" as "island_orig".

You can now run the Crysis demo, with access to each of these maps. When you complete a level, the game will just loop back to the beginning of the level you've just completed. You'll need to quit the game, and copy/paste the next level from your "renamed" folder to the "Levels" folder. Essentially you are just updating "island" to the subsequent level each time you advance. The above method involving duplicates just keeps it more organized, and makes level changes very quick and easy.

You will need to select "new game" each time you manually load a new level. The main drawback here is that you will start each level with only the default weapons loadout for that level. Also, I'd recommend creating and using a separate in-game profile for saves on each level - this way, you won't overwrite any previous saves from earlier levels.

Hope this helps, and please feel free to ask if you need any clarification =)

Last edited by jeremymtc; 11-21-2007 at 06:11 PM.
Reply With Quote
  #11  
Old 11-21-2007, 03:19 PM
Per Hansson's Avatar
Per Hansson Per Hansson is offline
TS Special Forces
 
Location: Sweden
Member since: Feb 2002, 1,114 posts
System specs
There, files uploaded for the retail version now

The fix actually worked, it was just me being out of sleep (and possibly wanting to play Crysis very much ) that made me make a small mistake when modifying the Retail dll files...

I've also fixed up my 7900GT, so now it's time for playing some Crysis under Win2K!
Note; if you played in another OS before the save games and config files will be found under; \My Documents\My Games\Crysis
For the user logged in when playing, for example;
F:\Documents and Settings\Administrator\My Documents\My Games\Crysis
Reply With Quote
  #12  
Old 11-21-2007, 06:09 PM
jeremymtc jeremymtc is offline
Newcomer, in training
 
Member since: Nov 2007, 4 posts
System specs
Per, you are DA MAN! Thanks so much for all the help, it really is appreciated. My workaround is now obsolete! Hoooray!
Reply With Quote
  #13  
Old 11-22-2007, 08:04 PM
OldBoy2k OldBoy2k is offline
Newcomer, in training
 
Member since: Nov 2007, 16 posts
System specs
Hi all,

first i would like to thankyou Per Hannson soooooooooo much for his work on BioShock and Crysis Windows2k fixes.All your work and spend time is so much valued and welcome.Thank you very very much!

second: greets to all techspot members!So nice to be here!

greets to sweden
Mad
Reply With Quote
  #14  
Old 12-25-2007, 01:11 PM
Bigchris Bigchris is offline
Newcomer, in training
 
Member since: Dec 2007, 4 posts
Please pardon my confusion...

I read that Crysis can be made to work successfully on a 32 bit Win2k system and then in a later post that there are memory size problems that cause a system crash and a 64 bit system is needed. I'd like to run Crysis on a P4 system under Win2k. Is that doable and if so, will 2Gb ram be enough?
Thanks!
Reply With Quote
  #15  
Old 12-25-2007, 05:40 PM
Per Hansson's Avatar
Per Hansson Per Hansson is offline
TS Special Forces
 
Location: Sweden
Member since: Feb 2002, 1,114 posts
System specs
Erm, yea, if you cared to read the first post everything is explained there so?
Reply With Quote
  #16  
Old 12-25-2007, 07:40 PM
Bigchris Bigchris is offline
Newcomer, in training
 
Member since: Dec 2007, 4 posts
Per, I've got my fingers crossed that the EDIT at the beginning of the first post refers to (and corrects) the memory overflow problem, but since it doesn't say so specifically, I'd only be guessing. If you can confirm that you'd make my day. Everything else is perfectly clear.
Thanks!
Reply With Quote
  #17  
Old 12-26-2007, 06:57 AM
Per Hansson's Avatar
Per Hansson Per Hansson is offline
TS Special Forces
 
Location: Sweden
Member since: Feb 2002, 1,114 posts
System specs
Umm, no, the game will crash on any 32bit OS as soon at it tries to allocate more than 2GB of virtual memory (this has nothing to do with how much physical RAM is in the machine)

This is simply how all applications will behave when they try to allocate more than 2GB of virtual address space on a 32bit OS, Windows or Linux

The application could be made to warn you when it does this (or right before it) but most don't and thus simply crash to the desktop... Sometimes with some obscure error message
Reply With Quote
  #18  
Old 12-26-2007, 09:01 AM
Bigchris Bigchris is offline
Newcomer, in training
 
Member since: Dec 2007, 4 posts
It would seem then that this is a bug in the program that must someday be patched because Crysis is supposed to run on 32bit XP. No?
Reply With Quote
  #19  
Old 12-27-2007, 01:43 AM
jeremymtc jeremymtc is offline
Newcomer, in training
 
Member since: Nov 2007, 4 posts
System specs
Chris,

Crysis works fine in Win2K on a P4 system, patched as per Per's procedure (see my specs above). Per is surely correct about the memory utilization, technically speaking, but in a physical sense I have had zero problems running the game on my 2k system - no errors or CTDs.

Go for it bud (and thank Per while you're at it)!

Report here if you encounter any problems.
Reply With Quote
  #20  
Old 12-27-2007, 04:19 AM
Per Hansson's Avatar
Per Hansson Per Hansson is offline
TS Special Forces
 
Location: Sweden
Member since: Feb 2002, 1,114 posts
System specs
The bug I'm taking about is the same with any 32bit app

Crank up the res and settings to max, have a GFX card with allot of memory so it uses even more virtual memory.
After a while of playing the virtual memory usage will creep above 2gb and the game crashes...
It's just normal behaviour, I've seen it 2 times in Windows XP...

But generally you will stay below the 2GB barrier... So then it's not a problem, just something to keep in mind if the game crashes after a few hours of playing straight...
Reply With Quote
Reply

Thread Tools

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

Similar Threads
Thread Thread Starter