Descent 3: Difference between revisions

From LANCommander
No edit summary
No edit summary
 
Line 5: Line 5:
{{Game.InfoBox.Developer|Loki Software}}{{Game.InfoBox.Developer|Outrage Games}}
{{Game.InfoBox.Developer|Loki Software}}{{Game.InfoBox.Developer|Outrage Games}}
|Publishers =
|Publishers =
{{Game.InfoBox.Developer|Interplay Entertainment}}{{Game.InfoBox.Developer|Graphic Simulations}}
{{Game.InfoBox.Publisher|Interplay Entertainment}}{{Game.InfoBox.Publisher|Graphic Simulations}}
|Release Date =
|Release Date =
{{Game.InfoBox.ReleaseDate|Windows|June 17, 1999}}
{{Game.InfoBox.ReleaseDate|Windows|June 17, 1999}}
Line 23: Line 23:
|Name = Install Script
|Name = Install Script
|Description =  
|Description =  
|RequiresAdmin = True
|RequiresAdmin = False
|Contents =
|Contents =
<syntaxhighlight lang="powershell" line>
<syntaxhighlight lang="powershell" line>
New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage"
$VirtualStore = "registry::\HKEY_CURRENT_USER\Software\Classes\VirtualStore\MACHINE\SOFTWARE"
New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor"
 
New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor\Settings"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage"
New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent 3 Level Editor"
New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent 3 Level Editor\Settings"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent3"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent3\Version"
 
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent 3 Level Editor" -Name "D3Dir" -Value "$InstallDirectory" -Force
 
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "ConnectionSpeed" -Value "Fast" -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "NetworkConnection" -Value "LAN" -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "ProfanityPrevention" -Value 0 -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "PredefDetailSetting" -Value 3 -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "PreferredRenderer" -Value 2 -Force
 
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3\Version" -Name "Build" -Value 0 -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3\Version" -Name "Major" -Value 1 -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3\Version" -Name "Minor" -Value 4 -Force


New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor" -Name "D3Dir" -Value "$InstallDirectory" -Force
New-Item -Path "registry::\HKEY_CURRENT_USER\Software\Outrage"


New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "ConnectionSpeed" -Value "Fast" -Force
New-Item -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3"
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "NetworkConnection" -Value "LAN" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "net directory" -Value "" -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "ProfanityPrevention" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "ConnectionSpeed" -Value "Fast" -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "PredefDetailSetting" -Value 3 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "EnableCHFlight" -Value 0 -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "PreferredRenderer" -Value 2 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "EnableJoystickFF" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "EnableMouseman" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "FindFastDisable" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "KeyboardType" -Value "United States" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "LanguageType" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "NetworkConnection" -Value "LAN" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "PredefDetailSetting" -Value 3 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "PreferredRenderer" -Value 2 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "ProfanityPrevention" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_vsync" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "SoundMixer" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "CommandLine" -Value "" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_gamma" -Value "1.500000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "SND_mastervol" -Value "1.000000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "MUS_mastervol" -Value "0.500000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_pixelerror" -Value "10.000000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_terraindist" -Value "120.000000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "Dynamic_Lighting" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "TerrLeveling" -Value 2 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RoomLeveling" -Value 2 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "Specmapping" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "FastHeadlight" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "MirrorSurfaces" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "MissileView" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailScorchMarks" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailWeaponCoronas" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailFog" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailCoronas" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailProcedurals" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailObjectComp" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailPowerupHalos" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_resolution" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_bitdepth" -Value 16 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_bilear" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_mipping" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_color_model" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_light" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_texture_quality" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "VoicePowerup" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "VoiceAll" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "ForceFeedbackAutoCenter" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "ForceFeedbackGain" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "SoundQuality" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "SoundQuantity" -Value 30 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "Default_pilot" -Value "" -Force


New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Build" -Value 0 -Force
New-Item -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3\Version"
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Major" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3\Version" -Name "Major" -Value 1 -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Minor" -Value 4 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3\Version" -Name "Minor" -Value 4 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3\Version" -Name "Build" -Value 0 -Force


# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage"
# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor"
# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor\Settings"
# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3"
# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version"
#
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor" -Name "D3Dir" -Value "$InstallDirectory" -Force
#
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "ConnectionSpeed" -Value "Fast" -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "NetworkConnection" -Value "LAN" -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "ProfanityPrevention" -Value 0 -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "PredefDetailSetting" -Value 3 -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "PreferredRenderer" -Value 2 -Force
#
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Build" -Value 0 -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Major" -Value 1 -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Minor" -Value 4 -Force
</syntaxhighlight>
}}
           
{{Game.Scripts.Uninstall
|Name = Uninstall Script
|Description =
|RequiresAdmin = False
|Contents =
<syntaxhighlight lang="powershell" line>
$VirtualStore = "registry::\HKEY_CURRENT_USER\Software\Classes\VirtualStore\MACHINE\SOFTWARE"
Remove-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent 3 Level Editor" -Recurse
Remove-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Recurse
Remove-Item -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Recurse
</syntaxhighlight>
</syntaxhighlight>
}}
}}
Line 53: Line 143:
|Contents =
|Contents =
<syntaxhighlight lang="powershell" line>
<syntaxhighlight lang="powershell" line>
# Takes the variable $Filename, splits it by invalid characters, then joins using _
# Make the player name safe as a file name
$NewPlayerAlias = $NewPlayerAlias.Split([IO.Path]::GetInvalidFileNameChars()) -join '_'
$NewPlayerAlias = $NewPlayerAlias.Split([IO.Path]::GetInvalidFileNameChars()) -join '_'


# Converts a string to a UTF16-encoded byte array. This looks like ASCII characters separated by 0x00 in most cases.
Copy-Item -Path "$InstallDirectory\DefaultPilot" -Destination "$InstallDirectory\$NewPlayerAlias.plt"
$bytes = ConvertTo-StringBytes -Input $NewPlayerAlias -Utf16 1 -MaxLength 19


Copy-Item -Path "$InstallDirectory\DefaultPilot" -Destination "$InstallDirectory\$NewPlayerAlias.plt"
# Pad the alias with an ASCII DEL character. This will not work with a value of 0x00 as the loading of the profile will corrupt it.
$paddedAlias = $NewPlayerAlias.PadRight(19, [char]127)
$bytes = ConvertTo-StringBytes -Input $paddedAlias -Utf16 0 -MaxLength 19 -MinLength 19


Edit-PatchBinary -FilePath "$InstallDirectory\$NewPlayerAlias" -Offset 0x4 -Data $bytes
Edit-PatchBinary -FilePath "$InstallDirectory\$NewPlayerAlias.plt" -Offset 0x4 -Data $bytes


New-ItemProperty -Path "HKCU:\SOFTWARE\Outrage\Descent3" -Name "Default_pilot" -Value "$NewPlayerAlias.plt" -Force
New-ItemProperty -Path "HKCU:\SOFTWARE\Outrage\Descent3" -Name "Default_pilot" -Value "$NewPlayerAlias.plt" -Force
</syntaxhighlight>
</syntaxhighlight>
}}
}}

Latest revision as of 00:41, 22 February 2024

Developers
Loki SoftwareOutrage Games
Publishers
Interplay EntertainmentGraphic Simulations
Release Date
Windows: June 17, 1999
Genres
SimulatorShooter
View at PCGamingWiki

Actions

Name Path Arguments Working Directory Primary
Patch Configuration {InstallDir}\InjectD3Configuration.exe False
Play {InstallDir}\InjectD3.exe True
Level Editor D3EDIT.EXE {InstallDir}/Editor False

Install Script

$VirtualStore = "registry::\HKEY_CURRENT_USER\Software\Classes\VirtualStore\MACHINE\SOFTWARE"

New-Item -Path "$VirtualStore\WOW6432Node\Outrage"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent 3 Level Editor"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent 3 Level Editor\Settings"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent3"
New-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent3\Version"

New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent 3 Level Editor" -Name "D3Dir" -Value "$InstallDirectory" -Force

New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "ConnectionSpeed" -Value "Fast" -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "NetworkConnection" -Value "LAN" -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "ProfanityPrevention" -Value 0 -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "PredefDetailSetting" -Value 3 -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Name "PreferredRenderer" -Value 2 -Force

New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3\Version" -Name "Build" -Value 0 -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3\Version" -Name "Major" -Value 1 -Force
New-ItemProperty -Path "$VirtualStore\WOW6432Node\Outrage\Descent3\Version" -Name "Minor" -Value 4 -Force

New-Item -Path "registry::\HKEY_CURRENT_USER\Software\Outrage"

New-Item -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3"
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "net directory" -Value "" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "ConnectionSpeed" -Value "Fast" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "EnableCHFlight" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "EnableJoystickFF" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "EnableMouseman" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "FindFastDisable" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "KeyboardType" -Value "United States" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "LanguageType" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "NetworkConnection" -Value "LAN" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "PredefDetailSetting" -Value 3 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "PreferredRenderer" -Value 2 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "ProfanityPrevention" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_vsync" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "SoundMixer" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "CommandLine" -Value "" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_gamma" -Value "1.500000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "SND_mastervol" -Value "1.000000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "MUS_mastervol" -Value "0.500000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_pixelerror" -Value "10.000000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_terraindist" -Value "120.000000" -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "Dynamic_Lighting" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "TerrLeveling" -Value 2 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RoomLeveling" -Value 2 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "Specmapping" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "FastHeadlight" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "MirrorSurfaces" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "MissileView" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailScorchMarks" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailWeaponCoronas" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailFog" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailCoronas" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailProcedurals" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailObjectComp" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "DetailPowerupHalos" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_resolution" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_bitdepth" -Value 16 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_bilear" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_mipping" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_color_model" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_light" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "RS_texture_quality" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "VoicePowerup" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "VoiceAll" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "ForceFeedbackAutoCenter" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "ForceFeedbackGain" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "SoundQuality" -Value 0 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "SoundQuantity" -Value 30 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Name "Default_pilot" -Value "" -Force

New-Item -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3\Version"
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3\Version" -Name "Major" -Value 1 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3\Version" -Name "Minor" -Value 4 -Force
New-ItemProperty -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3\Version" -Name "Build" -Value 0 -Force

# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage"
# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor"
# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor\Settings"
# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3"
# New-Item -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version"
# 
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent 3 Level Editor" -Name "D3Dir" -Value "$InstallDirectory" -Force
# 
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "ConnectionSpeed" -Value "Fast" -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "NetworkConnection" -Value "LAN" -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "ProfanityPrevention" -Value 0 -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "PredefDetailSetting" -Value 3 -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3" -Name "PreferredRenderer" -Value 2 -Force
# 
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Build" -Value 0 -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Major" -Value 1 -Force
# New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Outrage\Descent3\Version" -Name "Minor" -Value 4 -Force

Uninstall Script

$VirtualStore = "registry::\HKEY_CURRENT_USER\Software\Classes\VirtualStore\MACHINE\SOFTWARE"

Remove-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent 3 Level Editor" -Recurse
Remove-Item -Path "$VirtualStore\WOW6432Node\Outrage\Descent3" -Recurse
Remove-Item -Path "registry::\HKEY_CURRENT_USER\Software\Outrage\Descent3" -Recurse

Name Change Script

# Make the player name safe as a file name
$NewPlayerAlias = $NewPlayerAlias.Split([IO.Path]::GetInvalidFileNameChars()) -join '_'

Copy-Item -Path "$InstallDirectory\DefaultPilot" -Destination "$InstallDirectory\$NewPlayerAlias.plt"

# Pad the alias with an ASCII DEL character. This will not work with a value of 0x00 as the loading of the profile will corrupt it.
$paddedAlias = $NewPlayerAlias.PadRight(19, [char]127)
$bytes = ConvertTo-StringBytes -Input $paddedAlias -Utf16 0 -MaxLength 19 -MinLength 19

Edit-PatchBinary -FilePath "$InstallDirectory\$NewPlayerAlias.plt" -Offset 0x4 -Data $bytes

New-ItemProperty -Path "HKCU:\SOFTWARE\Outrage\Descent3" -Name "Default_pilot" -Value "$NewPlayerAlias.plt" -Force