This is the first in a series of posts about messing with leaked game source code. This first post will be about Crysis 3. These posts are written “live” and may never be finished.
Information
I dont know the source of this leak but I do have a copy of Crysis 3 source code on Cryengine 3.7 (which may seem strange if you are familiar with cryengine) This code is actually from 2015 which is notably after the release of crysis 3 so how?
Crysis 3 Remastered. This is presumably the initial efforts to port crysis 3 to “next gen” consoles. This ends up causing me some problems.
The Problems
To begin with this version of cryengine requires a bunch of hard to find SDK versions. Wwise 2013 with plugins? yeah good luck.
These problems are easy to solve though as I can just use a “close enough” version and make the code compatible myself. The real issue is the assets. This isnt retail crysis 3 nor is it crysis 3 remastered so what do I do? This code is presumably closer to retail crysis 3 than crysis 3 remastered so lets go backwards.
Porting Crysis 3
The first set of problems
I need to port the game back a few cryengine versions but I dont actually know which version. Going by date wont work Crysis is a tech demo for features that come to engine versions in the future. A version of cryengine from February 2011 wont work.
Lets go newer. Cryengine 3.3.9 from February 2012, presumably this version was developed alongside Crysis 3 so lets try and build with this version. It will be easy right?
The next set of problems
This engine doesnt have the same renderer as the code from my 2015 Crysis 3 or even just Crysis 3 retail so thats a bust too.
Guess we need to go even newer, to “Cryengine 4”. Cryengine 3.6.3 is the newest “Cryengine 4” version I could get my hands on so its time to use that. Techincally Cryengine 3.7 is also “Cryengine 4” but they made some large changes with the release of 3.7. 3.6.3 seems to match the renderer which is a great start. I have decided this engine version is probably close enough.
Cryengine 3.6.3
First I need to compile this engine and get the correct dependency versions