地图在人物不在的存档修复

简介: 地图在人物不在的存档修复

现象

用户使用存档上传功能在导入完整的Saved文件夹后,仍然只有地图信息,没有人物信息,需要恢复以前的用户存档。

这种情况可能在这些场景中出现:

  • 腾讯云的存档转阿里云
  • 已有ECS转计算巢,地图在人物角色丢失

具体解决方案

前提

  1. 执行该修复方案的前提是必须已经有可用的存档备份。
  2. 所有人退出游戏。

Linux

备份、获取steamappid信息

  1. 远程登录服务器
  1. 进去计算巢的服务实例页面:https://computenest.console.aliyun.com/service/instance/cn-hangzhou,然后点击具体的服务实例。

image.png

  1. 点击资源,然后再点击远程连接,弹出页面点击免密登录

image.png

image.png

  1. 选择会话管理后点击确定

image.png

  1. 先关闭幻兽帕鲁服务端服务
# 关闭服务
sudo systemctl stop pal-server
  1. 备份游戏存档,执行下面命令后将会在/home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Saved_Backup文件夹中创建一个备份的存档文件,如下所示。

image.png

sudo apt install zip unzip
# 定义存档路径和备份路径
destinationDir="/home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Saved"
desParentDir="/home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal"
backupDir="/home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Saved_Backup"
# 生成备份文件的名称,包含日期以便于区分不同的备份
timestamp=$(date +"%Y%m%d%H%M%S")
backupFileName="Saved_Backup_${timestamp}.zip"
# 创建备份目录,如果不存在的话
mkdir -p "$backupDir"
# 打包指定目录到ZIP文件
zip -r "$backupDir/$backupFileName" "$destinationDir"
  1. 查看steam appId。计算巢部署的Linux路径下可查看此文件Steam appid
cat /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt
  1. 如果显示的是0,则执行下面命令。

image.png

sudo cp /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt.bak
sudo echo 2394010 | sudo tee /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt
sudo chattr +i /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt
  1. 如果显示的是2394010,则执行下面命令。

image.png

sudo cp /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt.bak
sudo echo 0 | sudo tee /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt
sudo chattr +i /home/ecs-assist-user/.steam/SteamApps/common/PalServer/Pal/Binaries/Linux/steam_appid.txt
  1. 将备份的.zip压缩包解压后替换当前Saved文件。

如果你的计算巢帕鲁服务版本支持 游戏运维-上传存档,则直接上传你本地的存档即可完成替换。

如果你的计算巢版本不支持上传存档自动替换,则参考存档手动替换教程实现存档替换,替换后重启

  1. 执行重启命令。
sudo systemctl start pal-server

Windows

登录到ECS并备份当前存档

  1. 计算巢找到你的服务实例,点击资源类型【实例】的云资源进入ECS控制台

image.png

image.png

在ECS控制台详情页右上角点击远程连接,选择workbench登录


image.png

  1. 输入密码即可进入

image.png打开powershell。输入该命令完成备份

image.png

# 定义存档路径和备份路径
$destinationDir = "C:\Program Files\PalServer\steam\steamapps\common\PalServer\Pal\Saved"
$savedParentDir = "C:\Program Files\PalServer\steam\steamapps\common\PalServer\Pal"
# 定义备份目录,确保它不在源目录的子目录中
$backupDir = "C:\Program Files\PalServer\steam\steamapps\common\PalServer\Pal\Saved_Backup"
# 生成备份文件的名称,包含日期以便于区分不同的备份
$timestamp = Get-Date -Format "yyyyMMddHHmmss"
$backupFileName = "Saved_Backup_$timestamp.zip"
# 创建备份目录,如果不存在的话
if (-not (Test-Path -Path $backupDir)) {
    New-Item -ItemType Directory -Path $backupDir
}
# 打包指定目录到ZIP文件
Compress-Archive -Path $destinationDir -DestinationPath "$backupDir\$backupFileName"
# 输出备份完成的信息
Write-Host "Backup completed: $backupDir\$backupFileName"
# 停止 pal-server 服务以准备更新存档
$ProcessName = "PalServer-Win64-Test-Cmd"
if (Get-Process -Name $ProcessName -ErrorAction SilentlyContinue) {
    Stop-Process -Name $ProcessName -Force
    Start-Sleep -Seconds 1
}

获取当前的steamappid

计算巢部署的Windows路径下可查看此文件获取Steam appid.windows下可直接搜搜steam_appid.txt该文件,如不存在代表steamappid=0.

C:\Program Files\PalServer\steam\steamapps\common\PalServer\Pal\Binaries\Win64\steam_appid.txt

根据steamappid的值决定操作

如果当前steam appid=2394010或1623730,下面的执行采用默认情况即可。

  1. 路径切换到
C:\Program Files\PalServer\steam\steamapps\common\PalServer\Pal\Binaries\Win64
  1. 打开steam_appid.txt文件,输入0并保存。(steam appid=2394010或1623730

如果steam appid=0或文件不存在,则新建steam_appid.txt文件,输入2394010并保存

image.png

  1. 右键打开该文件属性,设置为只读。

image.png

  1. 打开Powershell,输入该指令

image.png

$TaskName = "PalServerAutoStart"
Start-ScheduledTask -TaskName $TaskName

将之前备份的存档覆盖当前存档

如果你的计算巢版本支持 游戏运维-上传存档,则直接上传你本地的存档即可完成替换。

如果你的计算巢版本不支持上传存档自动替换,则参考存档手动替换教程实现存档替换,替换后重启

相关实践学习
2048小游戏
基于计算巢&ECS云服务器快速部署,带您畅玩2048小游戏。
相关文章
|
12月前
|
弹性计算 运维 Linux
存档拷贝后地图在人物不在的存档修复
存档拷贝后地图在人物不在的存档修复教学
|
4月前
|
人工智能 计算机视觉 开发者
SmartEraser:中科大推出图像对象移除技术,轻松移除照片中的不想要元素,保留完美瞬间
SmartEraser 是由中科大与微软亚洲研究院联合开发的图像编辑技术,能够精准移除图像中的指定对象,同时保留周围环境的细节和结构,适用于复杂场景的图像处理。
127 8
SmartEraser:中科大推出图像对象移除技术,轻松移除照片中的不想要元素,保留完美瞬间
|
人工智能 网络安全 Python
修复旧照片,找到新感动
共赴亚运盛会
400 1
|
12月前
|
文字识别 测试技术 数据安全/隐私保护
案例:批量区域识别内容重命名,批量识别扫描PDF区域内容识别重命名,批量识别图片区域内容重命名图片修改图片名字,批量识别图片区域文字并重命名,批量图片部分识别内容重命文件,PDF区域内容提取重命名
该内容介绍了如何使用区域识别重命名软件高效整理图片,例如将图片按时间及内容重命名,适用于简历、单据等识别。文中提供了软件下载链接(百度云盘和腾讯网盘),并列出软件使用的几个关键条件,包括文字清晰、文件名长度限制等。示例展示了银行单据和公司工作单据的识别情况。文章还提及OCR技术在图片文字识别中的应用,强调了识别率、误识率和用户友好性等评估指标。如有类似需求,读者可留言或下载软件测试,并提供图片以获取定制的识别方案。
508 2
|
算法 计算机视觉
使用同步图像跟踪白板上的标记
使用Simulink基于图像跟踪白板上的标记。
131 0
|
12月前
|
SQL 数据可视化 数据库
聊天记录年度报告一览无余:轻松多格式导出永久保存,深度智能分析
聊天记录年度报告一览无余:轻松多格式导出永久保存,深度智能分析
聊天记录年度报告一览无余:轻松多格式导出永久保存,深度智能分析
|
计算机视觉
当「分割一切」遇上图像修补:无需精细标记,单击物体实现物体移除、内容填补、场景替换(1)
当「分割一切」遇上图像修补:无需精细标记,单击物体实现物体移除、内容填补、场景替换
209 0
|
人工智能 编解码 移动开发
当「分割一切」遇上图像修补:无需精细标记,单击物体实现物体移除、内容填补、场景替换(2)
当「分割一切」遇上图像修补:无需精细标记,单击物体实现物体移除、内容填补、场景替换
151 0
|
Shell 开发工具
如何快速定位到报错日志中的关键信息,一招学会,赶快GET吧
如何快速定位到报错日志中的关键信息,一招学会,赶快GET吧
如何快速定位到报错日志中的关键信息,一招学会,赶快GET吧
|
数据挖掘
复现手机文件管理系统中删除重复图像功能点
复现手机文件管理系统中删除重复图像功能点
147 0
复现手机文件管理系统中删除重复图像功能点
下一篇
oss创建bucket