4GB Fallout New Vegas by MonochromeWench
New Vegas » Utilities
Added: 25/10/2010 - 05:58AM
Updated: 22/11/2012 - 12:58PM

12,613 Endorsements

1.6 Latest version

282,386 Unique D/Ls

467,776 Total D/Ls

1,861,801 Total Views

Uploaded by MonochromeWench


Last updated at 12:58, 22 Nov 2012 Uploaded at 5:58, 25 Oct 2010

This mod contains an executable which is designed to make changes to other programs. That's exactly what it is supposed to do, make changes in "FalloutNV.exe". But it may well get flagged by your anti-virus program as potentially dangerous. While it will be a false positive, If you are not comfortable using such a mod, please don't.

Fallout New Vegas 4GB
by MonochromeWench (the.wench@wenchy.net)

FNV4GB is a tool to load Fallout New Vegas with the Large Address Aware executable flag set so the entire 4GB Virtual Memory Address Space can be used by the game. This is useful when using lots of mods.

This is a back port of Skyrim4GB that was originally based on older versions of FNV4GB. This version of FNV4GB has the same functionality as previously released Skyrim4GB. There are difference between this version of FNV4GB compared to older released versions of FNV4GB. Note the new command line reference below. This version of FNV4GB will, by default, write its modified executable to \exes\FalloutNV.exe which is different to the older behavior of \FalloutNV.4gb

FNV4GB is licensed under the terms of the GNU Lesser General Public License version 2.1. Read the included lgpl-2.1.txt for the terms. Source code is included with the package. Original binaries compiled using Microsoft Visual Studio 2010.

Update History

Back ported Skyrim4GB to work with Fallout New Vegas. There are few difference between 1.6 and Skyrim4GB 1.5 other than code changes needed for Fallout New Vegas such executable name changes, registry path changes and other similar changes.

FNV4GB will write out a log file to ~\Documents\My Games\FalloutNV\FNV4GB.log

Skyrim4GB 1.5

Fixed at least one case that was causing people to get Access Denied error messages.

Changed the default laaexe to be '.\exes\TESV.exe' instead of 'TESV.exe.4gb'. This is so people don't have issues with other programs detecting when Skyrim runs.

Updated the code so it wont fail if the original exe already had the LAA flag set as will apparently happen in the next Skyrim patch. If the LAA flag is already set, the loader will NOT create a modified executable. It will directly run the original exe without modifications while still injecting skse and extra dlls specified with -extradll.

Added -nolaa command line options. If the original exe didn't have the LAA flag the loader will directly load the original exe without modifications while still injecting other dlls. If the original exe had the LAA flag set, then a modified exe will be generated with the LAA flag unset and that will then be run by the loader.

Skyrim4GB 1.4

Generally cleaned up the code.

Rewrote how the helper dll is injected into the child process. Moved helper dll code out of DLLMain into its own function that gets called after the DLL has finished being loaded. I want to avoid the possibility of issues with the Windows DLL Loader Lock.

Skyrim4GB now accepts a variety of command line parameters to control what it does. See the Command Line Reference below for details.

Skyrim4GB 1.3

The loader now prints out details of what it is doing.

It also now attempts to check if TESV.exe has been modified. If the exe is detected as modified it will tell you, instructing you to get Steam to validate the cache.

The loader will no longer wait for TESV.exe.4gb to exit before it exits itself.

The helper dll will now attempt to hook GetModuleFileNameA, if possible, to disguise what exe is actually loaded. If that hook fails it will fallback to the older CreateFileA hook.

Skyrim4GB 1.2

Skyrim4GB will attempt to load the SKSE loader (skse_steam_loader.dll).

Skyrim4GB no longer hooks GetTickCount().

Skyrim4GB 1.1

Made some code changes that 'may' improve things for some people. Now checks the Bethesda Softworks\Skyrim and Valve\Steam paths for the installation directory.

Also will now write out a log file to ~\Documents\My Games\Skyrim\Skyrim4GB.log that outputs some debugging information that may help track down why it doesn't work for some people.

If you are getting Steam Application load error 3:0000065432 messages then please post the log contents to the discussion thread so I can see whats going on.

Also compiled the new version with Visual Studio 2010. This may or may not make any difference.

First, make sure Steam is running. Then run FNV4GB.exe to launch the game! You don't even need it in the games directory, just make sure FNV4gb.exe and fnv4gb_helper.dll are together.

If your version of Fallout New Vegas is not the standard version with the SteamAppID of 22380 you need to run fnv4gb.exe and specify the actual SteamAppID on the command line. Example: fnv4gb.exe -SteamAppID 22380

Command Line Reference

FNV4GB.exe [-exe string] [-laaexe string] [-SteamAppID number] [-nolaa] [-nonvse] [-extradll string [-extradll string [...]]] [-- game parameters]


-exe The games original executable. If not an absolute path FNV4GB will look for the executable in the Fallout New Vegas directory using paths that should be in the registry. Default is FalloutNV.exe.

-laaexe The executable created by the loader that has the LAA flag set. This must not be the same file as the original executable.
* If this is an absolute path the file will be created using that exact path.
* If the path starts with .\ the exe will be created relative to the directory containg FNV4GB.
* Otherwise it will be created relative to the original executable.
Default is use the original's name and create it in a directory called 'exes' in the directory containing FNV4GB.exe.

-SteamAppID The SteamAppID id to use. Default is 22380 for Fallout New Vegas and 72850 for Skyrim.

-nolaa Don't set the LAA flag or unset it if it was already set in the original executable.

-nonvse Disable attempting to load NVSE (New Vegas Script Extender) when playing Fallout New Vegas

-noskse Disable attempting to load SKSE (Skyrim Script Extender) when playing Skyrim

-extradll An extra dll to load into the laaexe process after its been created. This can be specified multiple times to load more than one dll.

-- Anything after this will be passed as is to the game when the loader creates the process.

Example of advanced usage

FNV4GB.exe -exe "C:\Steam\steamapps\common\fallout 3\Fallout3.exe" -SteamAppID 22370 -nonvse -extradll fose_1_7.dll
This command would run the Steam version of Fallout 3 with LAA (assuming steam is installed at C:\Steam) and load the fose dll