关于如何将Win幻兽帕鲁服务端存档转化为单人本地存档的一种方法(无损转移)
本文转自博主的个人博客:https://blog.zhumengmeng.work,欢迎大家前往查看。
原文链接:点我访问
**起因:**最近大火的开放世界缝合体游戏幻兽帕鲁的大火也是引起了博主的注意,然后博主和周边小伙伴纷纷入手,博主也是利用自己的PC搭建了游戏服务器跟小伙伴们一起游玩。但是临近过年,博主需要回家过年,家里断电,到时肯定服务器不会运行,故引起博主的思考,有没有一种办法能够将幻兽帕鲁服务器存档转到线下单人存档呢???
参考资料:https://nga.178.com/read.php?tid=39076684
一、转移准备
- palworld-host-save-fix:一个最近在存档转移上应用最多的Git项目之一,你需要将其下载到你的电脑上。
- 在自己的电脑上安装Python3+。
- 点击这里下载Rust,下载完毕后右键选择以管理员进行安装。
- 点击这里下载Visual Studio 2022社区版本
- 将云服务器的存档进行复制备份,其通常位于 游戏服务器安装位置/PalServer/Pal/Saved/0/xxxxxx,我的建议是将Saved文件夹直接进行复制备份。
二、环境配置
我们在接下来要对palworld-host-save-fix的环境进行配置,首先是Python3+,这一步此处省略,网上教程很多,大家可以直接去网上搜索教程。
2.1 Cargo(Rust)安装
其次是uesaver-rs,这个库是用来解析二进制文件,并且能够将其转化为json文件,但是安装uesaver-rs需要对**Cargo(Rust)**进行安装。这里就用到了我们准备工作中的Rust安装包,下载完毕后右键以管理员运行。
这里会提示你电脑无环境,输入1。
然后你会发现其帮你下载了一个Visual Studio 安装器,这个暂时不管,此时cmd如下图所示。
输入1,选择默认安装,结果如下图所示,按下回车以继续,窗口自动关闭,至此Cargo(Rust)安装完毕。
2.2 安装Visual Studio,并安装C++编译器以及Win10SDK。
打开我们下载的Visual Studio 2022社区版本,右键以管理员运行,点击继续,此时如下图所示,下载器对本体进行下载。
此时按照下图进行勾选,分别选择使用C++的桌面开发,Win10SDK以及MSVC v142 -VS 2019C++ x64/86生成工具,然后点击右下角安装。
等待下载完毕,取消勾选安装后启动(其实取不取消都无所谓,无非她安装完会启动一下,手动关闭亦可)
2.3 安装Uesaver-rs
按下win+R,输入CMD,启动cmd回车命令行。
输入代码cargo install --git https://github.com/trumank/uesave-rs.git
,如果前面步骤安装顺利的话,其会下载很多依赖并且无报错,那么就意味着安装成功,安装完毕后输入uesave --help
,会显示其相应版本。
常见问题:
- 报错缺少一个叫做link.exe文件,参考:https://stackoverflow.com/questions/63390924/rust-link-exe-not-found,意味着你需要重回2.2步骤,对c++编译环境进行安装。
- 下载过慢,显示443或者time out。参考这两篇文章进行修改,分别对应着有魔法与无魔法的两种情况:
- 有魔法:Git报错: Failed to connect to github.com port 443 解决方案
- 无魔法:rust cargo配置本地仓库源
读到这里我们就已经走完一大半路程了,只需最后的临门一脚。
三、存档转移
以我们备份的Saved文件夹为例,我们下边的操作也全部是围绕着备份的Saved文件夹进行。
此教程的备份Saved文件夹位于E盘,即E:\\Saved。
先打开游戏,新建一个本地单人存档,进入以后创建新角色,随机推出,打开其存档位置,通常位于:C:\user\用户名\AppData\local\Pal\Saved\SaveGames\xxxxxxxx\xxxxxxxx,xxxxx通常是一串数字和字母的混合字符串。
找到存档中的Players,会发现其下仅有一个0…00001.sav,选中将其复制到E:\Saved\SaveGames\0\0F7733564B49EC9D77D646B6CE1F4575\Players中,注意:0F7733564B49EC9D77D646B6CE1F4575为博主服务器存档文件夹名称,可能与读者的不一样。
此时E:\Saved\SaveGames\0\0F7733564B49EC9D77D646B6CE1F4575\Players,中如下图所示:
已知其中的01840DDA000000000000000000000000.sav为博主的个人存档玩家数据,00000000000000000000000000000001.sav为博主本地单人存档玩家数据,E:\Saved\SaveGames\0\0F7733564B49EC9D77D646B6CE1F4575 为博主的备份服务器存档(地图数据+玩家数据)
利用记事本打开我们准备工作中下载的Palworld-host-save-fix文件夹下的fix-host-save.py,
找到下图所示的代码,将其中的**/全部修改为\\**,并保存。
重要的一步要来了!!!!!
win+R打开CMD,cd到下载的Palworld-host-save-fix文件夹下,博主的位于E:\palworld-host-save-fix-main\
需要输入的命令则是
e:
cd E:\palworld-host-save-fix-main\
执行如下命令:
python3 fix-host-save.py "C:\Users\15892\.cargo\bin\uesave.exe" E:\Saved\SaveGames\0\0F7733564B49EC9D77D646B6CE1F4575 01840DDA000000000000000000000000 00000000000000000000000000000001
等待数分钟,等待页面出现**Fix has been applied! Have fun!**即可。
删除刚刚创建的新的单人本地存档,并打开steam,点击小齿轮选择属性,关闭steam云同步(此步必须进行,不然打开游戏会将你修改过的存档进行覆盖)
最后我们只需要将我们备份存档Saved文件夹下的0F7733564B49EC9D77D646B6CE1F4575,直接拉至\AppData\local\Pal\Saved\SaveGames\xxxxxxxx\xxxxxxxx(本地存档位置)即可,拉过去以后如下图所示:
此时打开游戏,点击开始游戏,选择你转移好的存档,进去以后你会发现,你的世界还是你的世界!
祝君好运
相关文章:

关于如何将Win幻兽帕鲁服务端存档转化为单人本地存档的一种方法(无损转移)
本文转自博主的个人博客:https://blog.zhumengmeng.work,欢迎大家前往查看。 原文链接:点我访问 **起因:**最近大火的开放世界缝合体游戏幻兽帕鲁的大火也是引起了博主的注意,然后博主和周边小伙伴纷纷入手,博主也是利…...

计算机网络——IP协议
前言 网络层的主要负责地址分配和路由选择,ip负责在网络中进行数据包的路由和传输。 IPv4报文组成(了解) IPv4首部:IPv4首部包含了用于路由和传输数据的控制信息,其长度为20个字节(固定长度)。 版本&#…...
Linux命令-ar命令(建立或修改备存文件,或是从备存文件中抽取文件)
补充说明 ar命令 是一个建立或修改备存文件,或是从备存文件中抽取文件的工具,ar可让您集合许多文件,成 为单一的备存文件。在备存文件中,所有成员文件皆保有原来的属性与权限. 语法 ar [-]{dmpqrtx}[abcfilNoPsSuvV] [memberna…...

flask基于python的个人理财备忘录记账提醒系统vue
在当今高度发达的信息中,信息管理改革已成为一种更加广泛和全面的趋势。 “备忘记账系统”是基于Mysql数据库,在python程序设计的基础上实现的。为确保中国经济的持续发展,信息时代日益更新,蓬勃发展。同时,随着信息社…...

【leetcode题解C++】257.二叉树的所有路径 and 404.左叶子之和 and 112.路径总和
257. 二叉树的所有路径 给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root [1,2,3,null,5] 输出:["1->2->5",&…...

Linux——文本编辑器Vim
Linux中的所有内容以文件形式管理,在命令行下更改文件内容,常常会用到文本编辑器。我们首选的文本编辑器是Vim,它是一个基于文本界面的编辑工具,使用简单且功能强大,更重要的是,Vim是所有Linux发行版本的默…...

以“美”为鉴,探寻香港比特币现货ETF的未来发展
出品|欧科云链研究院 作者|Hedy Bi 根据The Block于1月29日的报道,嘉实国际成为了首家向香港证监会提交比特币现货ETF申请的机构。早在去年12月22日,香港证监会发布了《有关证监会认可基金投资虚拟资产的通函》,明确…...
Unity项目打包的方法(之一)
在 Unity 中,将项目打包成 .unitypackage 文件和直接压缩 Assets、Packages 和 ProjectSettings 目录有几个关键区别,主要体现在打包方式、使用目的和包含的内容上。 打包成 UnityPackage .unitypackage 是 Unity 的一种打包格式,它允许你将项…...

如何安装MySQL
如何安装MySQL 前提条件下载MySQL在 Windows 上安装 MySQL验证 MySQL 安装 MySQL是当今工业界广泛使用的最流行的关系数据库管理软件之一。它通过各种存储引擎提供多用户访问支持。它得到了甲骨文公司的支持。在本节中,我们将学习如何为初学者下载和安装 MySQL。 前…...
如何编写.gitignore文件
文章目录 前端架构师教你如何编写.gitignore文件.gitignore文件简介.gitignore文件的语法规则.gitignore文件的最佳实践常见问题与解决 前端架构师教你如何编写.gitignore文件 .gitignore文件简介 .gitignore文件是Git版本控制系统中一个非常有用的工具。它可以指定一组文件或…...

U-Boot学习(7):内核启动之bootz启动zImage源码分析
在上一节中,我们分析了U-BOOT初始化的流程,最后就是进入U-Boot的命令行中执行了,如果用户没有任何操作,则经过固定延时后将执行默认的bootcmd环境变量里的指令,那这里面肯定就是启动内核了。在U-BOOT简介及命令行指令详…...
[GN] DP学习笔记板子
文章目录 Bitset滚动数组多重背包区间DP树形dp状压dp模拟退火 Bitset 使用bitset需要引用<bitset>头文件。 其声明方法为: std::bitset<N>s; (N为s长度)常用函数: b.any() 判断b中是否存在值为1的二进制位 b.none() 判断b中是否不存在值为1的二…...

GLog开源库使用
Glog地址:https://github.com/google/glog 官方文档:http://google-glog.googlecode.com/svn/trunk/doc/glog.html 1.利用CMake进行编译,生成VS解决方案 (1)在glog-master文件夹内新建一个build文件夹,用…...
微信小程序如何实现点击上传图片功能
如下所示,实际需求中常常存在需要点击上传图片的功能,上传前显示边框表面图片显示大小,上传后将图形缩放到边框大小。 实现如下: .wxml <view class="{{img_src==?blank-area:}}" style="width:100%;height:40%;display:flex;align-items: center;jus…...

Windows Qt C++ VTK 绘制三维曲线
Qt 自带数据可视化从文档上看,只能实现三维曲面。 QwtPlot3D在Qt6.6.0上没编译通过。 QCustomPlot 只能搞二维。 VTK~搞起。抄官网demo。 后续需求: 1、对数轴 2、Y轴逆序 3、Z轴值给色带,类似等高线图的色带 期待各位大佬多多指导。…...

Android T 远程动画显示流程(更新中)
序 本地动画和远程动画区别是什么? 本地动画:自给自足。对自身SurfaceControl矢量动画进行控制。 远程动画:拿来吧你!一个app A对另一个app B通过binder跨进程通信,控制app B的SurfaceControl矢量动画。 无论是本地动画还是远程…...

【计算机网络】【练习题及解答】【新加坡南洋理工大学】【Computer Control Network】
说明: 仅供学习使用。 一、题目描述 题目共4问,描述网络通信中的 帧传输时延(Frame Delay)、传播时延(Propagation Delay),以及 链接利用率(Link Utilization) 的相关…...

云计算HCIE备考经验分享
大家好,我是来自深圳信息职业技术学院22级鲲鹏3-1班的刘同学,在2023年9月19日成功通过了华为云计算HCIE认证,并且取得了A的成绩。下面把我的考证经验分享给大家。 转专业进鲲鹏班考HCIE 大一上学期的时候,在上Linux课程的时候&…...
Threejs API——`OrbitControls`相机控件
文章目录 API用法API OrbitControls 相机控制用法 导入import {OrbitControls } from three/examples/jsm/controls/OrbitControls.js import {DRACOLoader,AmbientLight,Color,MOUSE,...

远程教育:低代码在教育技术领域的重塑之力
新冠肺炎大流行对世界各地的行业产生了影响,其中一些行业的影响远远超过其他行业。食品、零售、供应链、娱乐和航空业是受影响最大的行业,为确保不间断运营,这引发了一场数字革命。相信,这种数字化的采用将长期保持下去࿰…...

idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...

工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...

MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
4. TypeScript 类型推断与类型组合
一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式,自动确定它们的类型。 这一特性减少了显式类型注解的需要,在保持类型安全的同时简化了代码。通过分析上下文和初始值,TypeSc…...
作为测试我们应该关注redis哪些方面
1、功能测试 数据结构操作:验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化:测试aof和aof持久化机制,确保数据在开启后正确恢复。 事务:检查事务的原子性和回滚机制。 发布订阅:确保消息正确传递。 2、性…...
Vite中定义@软链接
在webpack中可以直接通过符号表示src路径,但是vite中默认不可以。 如何实现: vite中提供了resolve.alias:通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...