Battlefield 1942: Difference between revisions
DoctorDalek (talk | contribs) (Fixes to deprecated PowerShell scripts) |
DoctorDalek (talk | contribs) No edit summary |
||
Line 5: | Line 5: | ||
{{Game.InfoBox.Developer|Digital Illusions CE}} | {{Game.InfoBox.Developer|Digital Illusions CE}} | ||
|Publishers = | |Publishers = | ||
{{Game.InfoBox. | {{Game.InfoBox.Publisher|Electronic Arts}}{{Game.InfoBox.Publisher|Aspyr Media}} | ||
|Release Date = | |Release Date = | ||
{{Game.InfoBox.ReleaseDate|Windows|September 10, 2002}} | {{Game.InfoBox.ReleaseDate|Windows|September 10, 2002}} | ||
Line 54: | Line 54: | ||
|Contents = | |Contents = | ||
<syntaxhighlight lang="powershell" line> | <syntaxhighlight lang="powershell" line> | ||
if ($OldPlayerAlias -ne "") { | if ($OldPlayerAlias -ne "") { | ||
if (Test-Path -Path "$InstallDirectory\Mods\bf1942\Settings\Profiles\$OldPlayerAlias") { | if (Test-Path -Path "$InstallDirectory\Mods\bf1942\Settings\Profiles\$OldPlayerAlias") { | ||
Line 65: | Line 62: | ||
Copy-Item -Path "$InstallDirectory\ProfileTemplate" -Destination "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias" -Recurse | Copy-Item -Path "$InstallDirectory\ProfileTemplate" -Destination "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias" -Recurse | ||
} | } | ||
} elseif (Test-Path -Path "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias") { | |||
# Profile already exists, probably from a save, do nothing | |||
} else { | } else { | ||
# New install, scaffold new profile | # New install, scaffold new profile | ||
Line 72: | Line 71: | ||
Write-ReplaceContentInFile -Pattern 'rem \*\* (.+) \*\*' -Substitution "rem ** $NewPlayerAlias **" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profile.con" | Write-ReplaceContentInFile -Pattern 'rem \*\* (.+) \*\*' -Substitution "rem ** $NewPlayerAlias **" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profile.con" | ||
Write-ReplaceContentInFile -Pattern 'game.setProfile "(.+)"' -Substitution "game.setProfile ""$NewPlayerAlias""" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profile.con" | Write-ReplaceContentInFile -Pattern 'game.setProfile "(.+)"' -Substitution "game.setProfile ""$NewPlayerAlias""" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profile.con" | ||
Write-ReplaceContentInFile -Pattern 'game.setPlayerName "(.+)"' -Substitution "game.setPlayerName ""$NewPlayerAlias""" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias\GeneralOptions.con" | Write-ReplaceContentInFile -Pattern 'game.setPlayerName "(.+)"' -Substitution "game.setPlayerName ""$NewPlayerAlias""" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias\GeneralOptions.con" | ||
</syntaxhighlight> | </syntaxhighlight> | ||
}} | }} |
Latest revision as of 00:38, 22 February 2024
Developers | |
---|---|
Digital Illusions CE | |
Publishers | |
Electronic ArtsAspyr Media | |
Release Date | |
Windows: September 10, 2002 | |
Genres | |
Shooter | |
View at PCGamingWiki |
Actions
Name | Path | Arguments | Working Directory | Primary |
---|---|---|---|---|
Play Battlefield 1942: Secret Weapons of WWII | {InstallDir}\BF1942.exe | +game XPack2 | True | |
Play Battlefield 1942 | {InstallDir}\BF1942.exe | True | ||
Play Battlefield 1942: The Road to Rome | {InstallDir}\BF1942.exe | +game XPack1 | True |
Install Script
#######################################################################
#Updates Screen Resolution to match desktop resolution
#######################################################################
$Config1 = "$InstallDirectory\ProfileTemplate\Video.con"
$Config2 = "$InstallDirectory\ProfileTemplate\VideoCustom.con"
$Config3 = "$InstallDirectory\Mods\bf1942\Settings\Profiles\Custom\Video.con"
$Config4 = "$InstallDirectory\Mods\bf1942\Settings\Profiles\Custom\VideoCustom.con"
# Bounds are accessible by $Display.Bounds.Width and $Display.Bounds.Height
$Display = Get-PrimaryDisplay
# Use regex to replace text within a file. Quotes are escaped by double quoting ("")
Write-ReplaceContentInFile -Pattern '^game.setGameDisplayMode (.+)' -Substitution "game.setGameDisplayMode $($Display.Bounds.Width) $($Display.Bounds.Height) 32 60" -FilePath "$Config1"
Write-ReplaceContentInFile -Pattern '^game.setGameDisplayMode (.+)' -Substitution "game.setGameDisplayMode $($Display.Bounds.Width) $($Display.Bounds.Height) 32 60" -FilePath "$Config2"
Write-ReplaceContentInFile -Pattern '^game.setGameDisplayMode (.+)' -Substitution "game.setGameDisplayMode $($Display.Bounds.Width) $($Display.Bounds.Height) 32 0" -FilePath "$Config3"
Write-ReplaceContentInFile -Pattern '^game.setGameDisplayMode (.+)' -Substitution "game.setGameDisplayMode $($Display.Bounds.Width) $($Display.Bounds.Height) 32 0" -FilePath "$Config4"
#######################################################################
Name Change Script
A template profile is copied from the base game directory and some files have to be modified to set the primary selected profile.
if ($OldPlayerAlias -ne "") {
if (Test-Path -Path "$InstallDirectory\Mods\bf1942\Settings\Profiles\$OldPlayerAlias") {
# Profile exists with old name
Move-Item -Path "$InstallDirectory\Mods\bf1942\Settings\Profiles\$OldPlayerAlias" -Destination "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias" -Force
} else {
# Old profile doesn't exist, scaffold a new one
Copy-Item -Path "$InstallDirectory\ProfileTemplate" -Destination "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias" -Recurse
}
} elseif (Test-Path -Path "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias") {
# Profile already exists, probably from a save, do nothing
} else {
# New install, scaffold new profile
Copy-Item -Path "$InstallDirectory\ProfileTemplate" -Destination "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias" -Recurse
}
Write-ReplaceContentInFile -Pattern 'rem \*\* (.+) \*\*' -Substitution "rem ** $NewPlayerAlias **" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profile.con"
Write-ReplaceContentInFile -Pattern 'game.setProfile "(.+)"' -Substitution "game.setProfile ""$NewPlayerAlias""" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profile.con"
Write-ReplaceContentInFile -Pattern 'game.setPlayerName "(.+)"' -Substitution "game.setPlayerName ""$NewPlayerAlias""" -FilePath "$InstallDirectory\Mods\bf1942\Settings\Profiles\$NewPlayerAlias\GeneralOptions.con"