Here it is, then: the tweak guide that isn’t. I’ve made the mistake of doing ‘proper’ tweak guides before which were old the second I posted them; there was no science behind the numbers, no logic behind the selection. Such things, I’ve decided, are best left to the inimitable Koroush Ghazi over at TweakGuides.com. What I can offer, though, in the spirit of joint venture that so defines these wondrous and demented games, is the story of a screenshot. How pretentious? Very. Now let’s get on with it. (By the way, the totally rubbish ‘read more’ link, which even appears in the full version, is because I’ve broken something and now the site’s being bombed by RPS traffic. I’ll fix it when things have calmed down.) Read more…
Anyone who’s tinkered with one of these Gamebryo-powered RPGs before will recognise the engine almost immediately in Skyrim. Why the Wikipedia entry still claims that the Creation Engine is “entirely new” is beyond me, ’cause it ain’t. There is, however, an entirely new layer of bells and whistles that sits on top (or thereabouts) of the old Oblivion and Fallout 3 tech. Shaders and shadows are the most obvious, and there’s no denying the difference they make. Without mods, Skyrim can look more like a painting – think German Romantics like Johan Christian Dahl, Carl Ferdinand von Kügelgen or Caspar David Friedrich – than a modded Oblivion ever will.
Getting it to that level, though, where your view of the horizon isn’t interrupted by a mid-range splurge of low-LOD buildings and bare terrain, is a very familiar process. So much so, in fact, that the pros and cons are pretty much identical. So too the myth that there’s some universal config file that makes everything gorgeous without cost. The moment you open Notepad++ and make that first change, there’s a dialogue between game and computer that never seems quite the same as anyone else’s. Hence the extraordinary number of unresolved issues left rotting on the games’ message boards.
First, a disclaimer: my Skyrim is busted. It’s how I’m choosing to play at the moment, enduring all the crashes and framerate slumps, and generally looking forward to the point where I’m done with screenshots and can play it again properly. I’m not sure there is such a thing as a stable Skyrim that looks like Skyrim obviously ‘should’, so proceed with caution. Actually, don’t proceed with caution, proceed screaming into the arms of death like Jurgen Prochnow in Das Boot – that way, you won’t be disappointed.
To get this screenshot’s quality, then, we’ll be working with two files in your Documents\MyGames\Skyrim folder: Skyrim.ini and SkyrimPrefs.ini. I haven’t got all day so I’m not going through all the different folder locations for different versions of Windows; you’ll just have to look it up.
uGridsToLoad
Without question, the most important single change you can make is to have Skyrim.ini start like this:
[General]
sLanguage=ENGLISH
uGridsToLoad=11
uExterior Cell Buffer=144
iPreloadSizeLimit=262144000
Ignore the first line about the language. The one you’re after is uGridsToLoad, which Oblivion and Fallout tweakers will instantly recognise as the Big Red Button. The Doomsday Option. The silver bullet that ricochets off the wall and hits you in the nuts. The default value is 5, which is the value at which the game’s been tested and optimised. Wherever you are in the world of Skyrim, you’re inhabiting a ‘cell’. These are arranged in a grid that stretches across the landscape, and each cell has its own actors, scenery and textures. uGridsToLoad determines how many of these cells are loaded around the player at any one time. So, a low value like 5 will only load your immediate vicinity, leaving everything beyond with just crude LOD models and land textures.
My screenshots are being taken at a uGridsToLoad value of 11, which is enough to fill just about every visible cell with all the detail Bethesda’s blessed it with. It means you’re seeing the world of Skyrim as it was designed, not the butchered version that actually runs properly. The wisdom regarding the other values is that ‘uExterior Cell Buffer’ should be calculated like so:
(uGrids + 1)^2 = Exterior cell buffer
“For example, default ugrids is 5… what is (5+1)^2? That’s right, 36… which is the default exterior cell buffer setting. ” – the man they call BoobPhysics101 on NeoGAF.
iPreloadSizeLimit, finally, is another value that scales with uGridsToLoad. The aforementioned Mr Ghazi has the lowdown on it here, and nothing much seems to have changed since Oblivion. It’s worth adding at this point that seems is very much the operative word here, and that we’re all stumbling about in the dark with a lot of this. Bet you’re glad I didn’t do a tweak guide now, huh?
Congratulations. You now have a Skyrim that looks very much like the one in the screenshot and crashes about every fifteen minutes. It might not even load at all. The fact is that anything above the default uGrids value of 5 is a recipe for some kind of disaster. The game could work fine and then suddenly croak in specific locations, or develop a strange hexadecimal pox that sees you dumped increasingly often to the desktop.
A step you can take to mitigate this is to make the game’s executable Large Address Aware. Without going into specifics, if you have a 64bit operating system and 3gb of RAM or over, this will uncap the game to use more than 2gb of it. It made the difference between my modded New Vegas running 100 per cent stable and barely running at all, so it’s not to be scoffed at. It’s a very simple process that I’m told won’t get you in trouble with Steam, and this page tells you how.
Another thing with uGrids – this is getting a bit long, isn’t it – is that your savegame gets ‘bound’ to which value you set. So if you set a value of 7 and save the game, that save won’t work if you set the value back down to 5. There is a way of recovering it, though:
1) Load game with uGridsToLoad at the ‘safe’ setting – the one it was at when you saved.
2) Load the save, which should load correctly.
3) Open the console and type the following:
setini “ugridstoload:general” 5
saveini
refreshini
This has restored the uGridsToLoad setting to its default while your save is already open.
4) Save the game. The save you create now will work at any uGrids setting from the default up.
Grass
If you just do the above, you’ll notice right away that there’s something still missing: the grass, which is still at the default draw distance. It’s easily fixed and relatively easy on hardware compared to all the uGrids stuff. Just switch to the SkyrimPrefs.ini document and find the section that begins [Grass]. Then bump up the value to something heroic like:
fGrassStartFadeDistance=20000.0000
fGrassMaxStartFadeDistance=20000.0000
fGrassMinStartFadeDistance=10000.0000
Miscellaneous
There are few other variables I’ve changed that have quickly become the standard for Skyrim tweaking. They’re all in SkyrimPrefs.ini and I’ve definitely run out of time now, so I’m going to list them all and you can suck ‘em and see.
dTreesReceiveShadows=1
dDrawLandShadows=1
fShadowDistance=50000.0000 (this one actually reduces shadow quality but draws shadows much farther across the terrain)
bDoDepthOfField=0
iRadialBlurLevel=0 (these last two are Imagespace effects that kick in during fatality animations and such, and drag down performance)
Console Commands
It goes without saying that there’s more to these screenshots than just technical mumbo-jumbo. Generally speaking, each one involves finding the right shot despite some of the grotesquely low-res textures the game shipped with. Some were so bad, in fact, that I modded the game to swap certain types of grass for less offensive types found elsewhere. As ever, I’ve retreated to a distance where as many of the textures as possible aren’t being upscaled, but that doesn’t mean the textures themselves aren’t shit. Artistically gorgeous, mind, but complete and utter toilet when it comes to resolution. So that’s another thing. Once I’ve got the shot, I might decide to position a character in it, and that’s a whole other world of disabled AI, freezing the game’s global time modifier and trying to catch an animation at just the right frame. Then I’ll dial up the game’s day/night timescale to ludicrous speed and fish for just the right point when the shadows add volume to the scene, or the light and colour hits the magic hour. What I’m saying is that there is no magic contrast tweak that makes doing this any easier. Nothing is guaranteed.
Conclusion
I hope you have a nice desktop wallpaper because you’re now going to see it a whole lot more. You’ve seen my hardware specs on the FAQ page, and this system is inadequate for stable performance with the settings for these screenshots. Smooth performance I can do, but it only lasts until I get on a horse and ride across too many landscape cells. Mods will be along in time that try and commandeer the game’s streaming system to accommodate crazy detail levels, but the fact is that uGridsToLoad, as well as being the most powerful and transformative tweak you can make, is also the most volatile. Installing the game to SSD and having buckets of RAM will help – they might even be essential – but just as important is the VRAM of your graphics card. Maybe things would work better with a 3gb monster, or maybe the palpitating heart of Gamebryo just can’t take it anyway. You asked how these screenshots were done, and sorry if that’s not the answer you hoped for.