遊戲存檔路徑:%USERPROFILE%/AppData/Local/Pal/Saved/SaveGames/
修改系統時間快速刷新事件。
通過PowerShell腳本,可以快速修改遊戲事件,省去系統設置修改時間的繁瑣流程。
操作有風險,處理不當會導致透支未來時間!!!
操作有風險,處理不當會導致透支未來時間!!!
操作有風險,處理不當會導致透支未來時間!!!
步驟
1、Win+E打開資源管理器,在地址欄中輸入路徑:%USERPROFILE%/AppData/Local/Pal/Saved/SaveGames/
2、進入幻獸帕魯存檔目錄。
3、進入需要更改的遊戲存檔路徑。
4、新建.ps1文件和SaveGames文件夾。(代碼在文末)
5、將代碼粘貼至.ps1文件中並保存。
6、將Players文件夾備份至SaveGames文件夾中。
7、運行PowerShell文件。
8、進行相關操作。
代碼如下
if (-not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {
Write-Warning "請以管理員權限運行此腳本。"
Start-Process powershell.exe "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`"" -Verb RunAs
exit
}
Write-Host @"
*******************************************************************
* *
* 歡迎使用遊戲存檔時間修改腳本。 *
* *
* 此腳本將幫助您快速調整系統的時間。 *
* *
* 遊戲存檔路徑:%USERPROFILE%/AppData/Local/Pal/Saved/SaveGames/ *
* *
* 1. 請注意,在使用腳本之前請備份遊戲文件,以防止存檔損壞。 *
* 2. 如果修改或同步時間未成功,請再次嘗試或手動設置。 *
* 3. 在修改時間之前,請將Players文件夾備份至SaveGames文件夾內。 *
* 4. 修改時間時,請確保最後一次運行遊戲後進行操作。 *
* *
*******************************************************************
"@
function MainMenu {
Write-Host "請選擇一個選項:`n1. 調整系統時間`n2. 替換文件`n3. 同步系統時間`n4. 退出腳本`n"
$choice = Read-Host "請輸入選項編號: "
switch ($choice) {
"1" { TimeChange }
"2" { ConfirmFileReplace }
"3" { ConfirmTimeSync }
"4" { ExitScript }
default {
Write-Host "無效的選項,請重新選擇。`n"
MainMenu
}
}
}
function TimeChange {
$newTime = (Get-Date).AddHours(3)
try {
Set-Date -Date $newTime -ErrorAction Stop
$formattedTime = Get-Date -Format "yyyy年M月d日 HH:mm:ss"
Write-Host "時間已調整為 $formattedTime`n"
}
catch {
Write-Host "時間調整失敗,請檢查權限和設置。`n"
}
MainMenu
}
function ConfirmFileReplace {
$confirm = Read-Host "您確定要將 SaveGames 文件夾中的內容複製到當前目錄嗎?(Y/N): "
if ($confirm.ToUpper() -eq "Y") {
$sourceFolder = Join-Path $PSScriptRoot "SaveGames"
$destinationFolder = $PSScriptRoot
Write-Host "源文件夾路徑: $sourceFolder`n"
Write-Host "目標文件夾路徑: $destinationFolder`n"
if (-not (Test-Path -Path $sourceFolder)) {
Write-Host "SaveGames 文件夾不存在.`n"
MainMenu
return
}
Write-Host "開始複製文件...`n"
try {
Copy-Item -Path "$sourceFolder\*" -Destination $destinationFolder -Recurse -Force -ErrorAction Stop
Write-Host "文件已替換.`n"
}
catch {
Write-Host "文件替換失敗: $_`n"
}
}
MainMenu
}
function ConfirmTimeSync {
$confirm = Read-Host "您確定要同步系統時間嗎?(Y/N): "
if ($confirm.ToUpper() -eq "Y") {
w32tm /config /syncfromflags:manual /manualpeerlist:"time.windows.com"
w32tm /config /reliable:YES
w32tm /config /update
w32tm /resync
if ($LASTEXITCODE -eq 0) {
Write-Host "系統時間已同步。`n"
} else {
Write-Host "時間同步失敗,請檢查權限和網絡連接。`n"
}
}
MainMenu
}
function ExitScript {
Write-Host "腳本即將退出.`n"
Read-Host "按任意鍵退出..."
exit
}
MainMenu