Skip to content

Instantly share code, notes, and snippets.

@SimonMeskens
Last active October 28, 2022 16:20
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save SimonMeskens/24e08739da81763f7d2e to your computer and use it in GitHub Desktop.
Save SimonMeskens/24e08739da81763f7d2e to your computer and use it in GitHub Desktop.
Fallout TTW Recommended Mod List

Install

Follow the performance steps below for a core install. Then follow this guide in order.

Bug Fixes

This is the essential bugfix pack for TTW. One of the things it fixes is faction armor. NV has the concept of faction armor, you wear a certain faction's costume and they don't try to kill you if you have a bad reputation. The problem is, that faction armor resets all your faction stats, so factions that idolize you will no longer recognize you. This makes the cool faction idea nearly useless, except for a few sneaking missions. This fixes that.

https://taleoftwowastelands.com/content/ttw-fixes-222-official-bugfix-pack-ttw

Project Nevada

This is a mod that adds a bunch of new sane options to Fallout. For TTW, I think I halved experience gain, so you don't level out before even reaching the second game. You might want to make it so you gain one perk every level instead of two. This does make the game a lot easier, so you can counter balance that by making it more difficult with other options.

https://taleoftwowastelands.com/content/project-nevada-w-extra-options-ttw-patch

Interface Mods

These mods overhaul the aging UI of New Vegas to something that's both lightweight and better. MCM is optional, but installing it gives more options. JIP CCC is essential for playing with companions. Lets companions do actual useful stuff, like a doctor companion can heal you and a sneaky companion can pick locks for you. These mods are listed in install order.

After all that, install UIO last. It will consolidate all of the above mods to work together.

Gameplay

Here we make the game a bit more visceral. Everything becomes deadly, the gameplay just becomes that much tighter, providing more meaningful decisions.

More Perks

Just fills out the perks you can get, there's a tendency in Fallout games that there's a really cool perk system, but not a lot of choice. Fixes that.

https://taleoftwowastelands.com/content/more-perks-ttw

Difficult Journey

This mod will make it so the transition between wastelands is harder and smoother. The spoilery tag is really spoilery, might want to avoid reading those.

http://taleoftwowastelands.com/content/difficult-journey-more-challenging-start-new-vegas

Handle DLC

This will spread out some of the DLC instead of giving it to you suddenly and gratingly. Goodie packs will be distributed across the wasteland, quests will be delayed. Gun Runner Arsenal weapons will be integrated into the game better. This also makes weapon mods more available.

TODO: fix weapon mods using Mojave Arsenal instead of this mod?

Enchanted Faction Armors

This makes it so faction armors are in line with other armors, stat-wise, before they were worse than plain clothes.

Extenders

I install of these manually, as I want them for all profiles.

NVSE Plugins:

Install the updated sound libraries:

Install and run the 4GB Patcher:

INI Tweaks

Search first to see if each option exists, if not, add it.

Fallout.ini and Fallout_default.ini:

[General]
sIntroMovie = 
bLoadFaceGenHeadEGTFiles = 1
bUseThreadedAI=1 
iNumHWThreads=2
bPreemptivelyUnloadCells=1

[BackgroundLoad]
bSelectivePurgeUnusedOnFastTravel=1

FalloutPrefs.ini:

[Launcher]
bEnableFileSelection = 1

[General]
bLoadFaceGenHeadEGTFiles = 1
bUseThreadedAI=1
iNumHWThreads=2
bPreemptivelyUnloadCells=1

[BackgroundLoad]
bSelectivePurgeUnusedOnFastTravel=1

[Display]
iSize W=1920     <---Choose horizontal
iSize H=1080     <---Choose vertical

Data/NVSE/nvse_config.ini (create if it doesn't exist):

[Memory]
DefaultHeapInitialAllocMB=420
ScrapHeapSizeMB=128

NVSE/plugins/sr_New_Vegas_Stutter_Remover.ini (replace contents with this):

Click to expand
Master = {
	_comment = You can turn on or off each distinct feature from here.
	bManageFPS = 1
	bHookCriticalSections = 1
	bHookLightCriticalSections = 0
	bHookHashtables = 1
	bReplaceHeap = 0
	bReplaceGetTickCount = 1
	bLogToConsole = 0
	bFastExit = 1
	bFlushLog = 1
	iSchedulingResolution = 1
	bReplaceRandom = 1
	bExperimentalStuff = 0
	iMainHookPoint = 1
}
Experimental = {
	_comment =bReduceSleep and iThreadsFixedToCPUs can probably reasonably be used at 1.  > 1 is a bad idea atm.
	_comment =other settings here you're probably better off not touching
	bReduceSleep = 0
	iThreadsFixedToCPUs = 1
	bSuppressRandomSeeding = 0
	bBenchmarkHeap = 0
	bAlternateHeapHooks = 0
	iHeapMainBlockAddress = 0
}
FPS_Management = {
	_comment =Absent a good reason otherwise, bInject_iFPSClamp=1, fMaximumFPS= 30 to 85 (or 0), fMinimumFPS= 10 to 20, iFPS_Report_Period = 2000 to 60000, fExtraSleepPercent = 0.0 to 0.2
	bInject_iFPSClamp = 1
	fMaximumFPS =  0
	fMinimumFPS = 20
	iFPS_Report_Period = 15000
	fExtraSleepPercent =0.05
}
GetTickCount = {
	_comment =This section is disabled by default - see Master/bReplaceGetTickCount
	bForceResolution = 1
	bPreserveDC_Bias = 1
	bPreserveHighFreqComponents = 0
	bForceSync = 0
	iSyncLimitMilliseconds = 50
}
CriticalSections = {
	_comment = CS stuff helps Oblivion, Fallout, and New Vegas significantly
	_comment = much of the benefit comes from the Renderer+0x180 suppression (see overrides below)
	_comment = modes: 1=vanilla, 2=fair, 3=staggering(hybrid of 1 & 2), 5=suppressed
	bUseOverrides = 1
	iDefaultMode = 3
	iDefaultSpin = 1000
	iStaggerLevel = 5
	bEnableMessages = 1
	bEnableProfiling = 0
}
LightCriticalSections = {
	_comment =LCS stuff is like CS stuff, but with a Bethesda implementation.  And inlined sometimes, so difficult for me to work with
	bEnableProfiling = 0
	bEnableMessages = 1
	iDefaultMode = 3
	iDefaultSpin = 1000
	iStaggerLevel = 5
	bFullHooks = 0
	bUseOverrides = 0
}
Heap = {
	_comment =This section is disabled by default - see Master/bReplaceHeap
	_comment =I recommend enabling it however.  
	_comment = Heap replacement can produce MAJOR improvements in performance on Oblivion at a significant cost in stability
	_comment = It crashes instantly on Fallout3 last I remember checking
	_comment = It seems to work on Fallout: New Vegas ?
	_comment = Algorithms: 1=FastMM4, 2=Microsoft (slow on XP), 3=SimpleHeap1, 4=TBBMalloc, 5=ThreadHeap2, 6=ThreadHeap3, 8=tcmalloc
	_comment = Algorithms numbers 1, 4, and 8 require external DLL files in the Data/OBSE/Plugins/ComponentDLLs folder
	_comment = Size is in units of megabytes, and only effects algorithms 3, 5, and 6 (other algorithms dynamically determine their own size)
	iHeapAlgorithm = 6
	bEnableProfiling = 0
	iHeapSize = 250
	bEnableMessages = 0
	bZeroAllocations = 0
}
Hashtables = {
	bUseOverrides = 1
	bEnableMessages = 0
	bEnableExtraMessages = 0
	bEnableProfiling = 0
}
OverrideList = {
	CriticalSection = {
		CallerAddress = 0xA62B29
		comment = Renderer+0x180, recommendation=suppress (mode 5)
		Mode = 5
		Version =FalloutNV 1.4.0.525
	}
	CriticalSection = {
		CallerAddress = 0xA62B17
		comment = Renderer+0x080, recommendation=fair (mode 2) or stagger (mode 3) or suppress (mode 5)
		Mode = 2
		Version =FalloutNV 1.4.0.525
	}
	CriticalSection = {
		CallerAddress = 0xA044FE
		comment = ?, recommendation=stagger (mode 3), maybe high spin?
		Mode = 3
		Spin = 6000
		Version =FalloutNV 1.4.0.525
	}
	CriticalSection = {
		CallerAddress = 0xA5B577
		comment = ?, recommendation=stagger (mode 3)
		Mode = 3
		Version =FalloutNV 1.4.0.525
	}
	CriticalSection = {
		CallerAddress = 0x4538F1
		comment = ?, recommendation=fair (mode 2)
		Mode = 2
		Version =FalloutNV 1.4.0.525
	}
	HashtableEarly = {
		comment = vtable:0x01094e7c
		Address = 0x011F3358
		OldSize = 37
		NewSize = 8701
		Version =FalloutNV 1.4.0.525
	}
	HashtableEarly = {
		comment = vtable:0x01094e3c, caller 0x00A0D777, important during initial game loading?
		Address = 0x011F3308
		OldSize = 37
		NewSize = 371
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x0084B7AB, vtable 0x0107f494, may be active during loading?
		SizeAddress = 0x0084AB60
		OldSize = 37
		NewSize = 117
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x004746BB
		SizeAddress = 0x00473F69
		OldSize = 1001
		NewSize = 5005
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x0058911b
		SizeAddress = 0x00582CA2
		OldSize = 37
		NewSize = 119
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x0058911b
		SizeAddress = 0x00587AC9
		OldSize = 37
		NewSize = 43
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x0058921B
		SizeAddress = 0x00582CEF
		OldSize = 37
		NewSize = 49
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x0058931b
		SizeAddress = 0x00582D64
		OldSize = 37
		NewSize = 31
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x0058931b
		SizeAddress = 0x00583F90
		OldSize = 7001
		NewSize = 7001
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x0058931b
		SizeAddress = 0x00583FF6
		OldSize = 701
		NewSize = 1703
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x006b7f0b
		SizeAddress = 0x006B5C76
		OldSize = 10009
		NewSize = 10009
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x006B81BB
		SizeAddress = 0x006B7A30
		OldSize = 1009
		NewSize = 2809
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x006c62bb - this one is important
		SizeAddress = 0x006C02F8
		OldSize = 37
		NewSize = 121
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x006c62bb
		SizeAddress = 0x006C035F
		OldSize = 37
		NewSize = 95
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x006c62bb
		SizeAddress = 0x006C0397
		OldSize = 37
		NewSize = 97
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x006c6b6b
		SizeAddress = 0x006C03AB
		OldSize = 37
		NewSize = 89
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x006e213b
		SizeAddress = 0x006E13AF
		OldSize = 37
		NewSize = 53
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00845BEB
		SizeAddress = 0x00845558
		OldSize = 5039
		NewSize = 7049
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x006e213b
		SizeAddress = 0x008470FA
		OldSize = 37
		NewSize = 55
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x006e213b
		SizeAddress = 0x00846FFB
		OldSize = 5039
		NewSize = 5031
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x006e213b
		SizeAddress = 0x0084703E
		OldSize = 37
		NewSize = 57
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x006e213b
		SizeAddress = 0x00848072
		OldSize = 5039
		NewSize = 12041
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00558F0B
		SizeAddress = 0x00544FA7
		OldSize = 37
		NewSize = 39
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =also caller 0x00558F0B
		SizeAddress = 0x00544FC9
		OldSize = 37
		NewSize = 29
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =address 0x011F6F44, should be caller 0x00AE7BA7, but showing up as NULL
		SizeAddress = 0x00AD9169
		OldSize = 37
		NewSize = 111
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =address 0x011F6F54, should be caller 0x00AE7C27, but showing up as NULL
		SizeAddress = 0x00AD9189
		OldSize = 37
		NewSize = 111
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =address 0x011F6F64, should be caller 0x00AE7C27, but showing up as NULL
		SizeAddress = 0x00AD91A9
		OldSize = 37
		NewSize = 111
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =address 0x011F6F74, should be caller 0x00AE7CA7, but showing up as NULL
		SizeAddress = 0x00AD91CC
		OldSize = 37
		NewSize = 39
		WordBits = 8
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00a2f00b, multiplied by 4
		SizeAddress = 0x00A2EFDF
		OldSize = 148
		NewSize = 604
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00a2f00b, must be 1/4th of the preceding one
		SizeAddress = 0x00A2EFED
		OldSize = 37
		NewSize = 151
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00a660e2, multiplied by 4
		SizeAddress = 0x00A660B7
		OldSize = 236
		NewSize = 636
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00a660e2, must be 1/4th of the preceding one
		SizeAddress = 0x00A660C4
		OldSize = 59
		NewSize = 159
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00B61872, multiplied by 4
		SizeAddress = 0x00B61841
		OldSize = 404
		NewSize = 1204
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00B61872, must be 1/4th of the preceding one
		SizeAddress = 0x00B61854
		OldSize = 101
		NewSize = 301
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00B7FFA8, multiplied by 4
		SizeAddress = 0x00B7FF73
		OldSize = 148
		NewSize = 988
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00B7FFA8, must be 1/4th of the preceding one
		SizeAddress = 0x00B7FF85
		OldSize = 37
		NewSize = 247
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00b9a61b, multiplied by 4
		SizeAddress = 0x00B9A5EB
		OldSize = 148
		NewSize = 628
		Version =FalloutNV 1.4.0.525
	}
	Hashtable = {
		comment =caller 0x00b9a61b, must be 1/4th of the preceding one
		SizeAddress = 0x00B9A5FD
		OldSize = 37
		NewSize = 157
		Version =FalloutNV 1.4.0.525
	}
}
  

Tales of Two Wastelands

Options for TTW we want to install (you'll need these in a second):

  • TODO

Install TTW

  • Install TTW, choose temp location for FOMODs, click yes to build FOMODs
  • Install TaleOfTwoWastelands_Main.fomod
  • Install TaleOfTwoWastelands_Options.fomod with the above options
  • Install the hotfixes
@BOBYZH
Copy link

BOBYZH commented Oct 4, 2020

This list is outdated for the release of TTW 3.2.x., which made patches for TTW unavailable.

@Bus42
Copy link

Bus42 commented Oct 28, 2022

Thanks for creating this, but several of these are listed as strictly incompatible on the TTW website (such as Project Nevada Extra Options and More Perks). Also, when setting iNumHWThreads, the number should match the actual number of cores on your CPU. For me, that number is 6.

@SimonMeskens
Copy link
Author

You need the TTW versions of said plugins, the page above should link them (though this page is so old at this point, all the links might be broken, I don't have the time to go through it).

@Bus42
Copy link

Bus42 commented Oct 28, 2022

Thanks, and I more than get it. I published a tutorial for modding FNV on potatoes that run Linux, Modding FNV on Linux, that was written just before everything started getting a lot easier. I updated it once and walked away.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment