
备份模组 A 7天杀客户端专用世界存档与备份工具
TechFreqsBackupMod,一款专为单人游戏/仅限客户端的模组,能够自动管理《7 Days to Die》存档数据的备份。通过可配置选项和清晰的工具提示信息,确保玩家能安全保存游戏进度。
查看大图TechFreq 备份模组 V1.6
一个单人/仅限客户端的模组,可自动管理《七日杀》存档文件的备份,确保玩家能通过可配置选项和清晰的工具提示信息来保存游戏进度。
备份创作与自动保存通知
故事时间:
非常适合模组制作者或原版玩家,他们可能希望在发生最坏情况或游戏崩溃时备份自己的存档文件。
至于我的情况,我还没有找到某种备份模组,只能依靠手动备份的方法。
即使在研究了论坛寻找恢复我的 playerxml 的方法后,当我尝试加载存档时发现它已经损坏,而且几乎没有在 A21、A20 和 A19 早期版本中遇到这种情况时,有没有可靠的解决方案。而我会在日志中收到红色的空引用错误...,结果发现由于一个糟糕的模组,我的玩家 XML 文件在那个新存档中损坏了。
所以,在恢复备份时,即使只是几天前的旧存档,
毕竟我当时手动备份了,
但我并不总是记得这么做,
考虑到我的 ADHD 大脑,
还有生活中各种事情的干扰。
即使在手动恢复后,我也能直接跳回游戏,
只需要进行一些调整,
并重新分配技能树中的点数到其他技能上,
这没什么大不了的,
但这激发了一个想法...
因此,这个模组诞生了,并认为每个人都应该至少了解一下这类事情。尽管存在崩溃、延迟或一些自然原因。
但尽管如此...
最新更新日志
版本 1.6
- 修复问题:在启用或禁用时,为自动和手动备份添加了更多调试日志!
- 修复问题:自动备份未启动:即使
config.json中设置了EnableAutoBackup=true,它也不会自动启动,除非你手动切换(/disableauto然后/enableauto)或按数字键盘 3,因为代码中的initialPromptTriggered保持为false。 - 修复问题:更新了
LoadWorldSettings和HandleInitialPrompt功能,若备份已存在则自动设置initialPromptTriggered=true,跳过 Y/N 提示并在加载时立即启动计时器。 - 修复问题:整体稳定性,优化了
LoadWorldSettings以正确初始化每个存档的设置,切换时重置计时器,并确保工具提示/音效始终触发。同时修正了currentState逻辑以防止错误跳过。
整体特点
自动备份:
每隔 30 分钟(可通过 config.json 配置)在单人模式下运行,并提前 1 分钟发出警告:“自动备份将在 1 分钟后进行...”。
每次备份后重置计时器。
手动备份:
通过游戏聊天框输入 /manualbackup 或 /mb 触发。显示“即将开始手动备份...”一次,等待 2 秒后开始备份,
接着显示“备份已完成,生成的世界存档:{world}/{save}”。
备份内容:
保存特定的存档文件夹(Saves/<world>/<save>)、生成的世界(GeneratedWorlds/<world>)以及来自 Saves 的根文件(serveradmin.xml、sdcs_profiles.sdf、profiles.sdf)。
包含用于初始备份的 Config 文件夹,以及每个 zip 备份创建时附带的 readme.txt 文件,内含恢复说明。
存储的 ZIP 文件位于:
Mods/TechFreqsBackupMod/Backups/<世界>/<存档>
(例如,Backup_<时间戳>_Navezgane_太多.zip)。
备份管理:
每个存档限制为 8 个备份(可配置),若超出则删除最早的备份(可通过 deleteOldBackupsImmediately 配置)。
检查是否有 1 GB 的可用磁盘空间,如果不足则失败并提示“备份失败:磁盘空间不足”。
技术细节:
- 使用 Harmony 修补
EntityPlayerLocal.Update以实现备份逻辑,以及GameManager.ChatMessageServer以支持手动命令。 - 依赖于
MonoBehaviourSingleton来实现基于协程的延迟和工具提示持续显示(10 秒)。 - 可通过
config.json配置(间隔时间、最大备份数、通知、删除策略)。 - 没有进度条;仅使用工具提示作为反馈。
文件位置修复:
已修正为从 C:\Users\<User>\AppData\Roaming\7DaysToDie\Saves 中获取 serveradmin.xml、sdcs_profiles.sdf 和 profiles.sdf。如果 sdcs_profiles.sdf 仍然缺失,则会记录路径以供调试——可能是特定设置导致的问题(例如文件不存在或命名错误)。
移除了 .nomedia 文件:
由于《七日杀》不会读取如备份等子文件夹中的模组,且在 PC 上无关紧要,加之图片已过时,故认为无必要保留。
用户体验:
简单的单人备份工具提示驱动界面,附带清晰开始和完成消息。
为磁盘空间和缺失文件提供稳健的错误处理,确保即使可选文件(如 sdcs_profiles.sdf)不存在,备份仍可继续进行。
免责声明:
使用此模组即表示您承认,TechFreq 不对因使用该模组而导致的任何问题、崩溃或冲突负责。
使用风险自负。安装任何类型的模组前,请备份您的游戏文件。
感谢您的下载,祝您游戏愉快!
安装:
- 确保 harmony 模组存在于模组目录中,因为它是必需的。
- 下载模组文件,解压模组文件。
- 请备份您的世界、存档或游戏文件。
- 将它们放入《七日杀》游戏的 Mods 目录中。
- EAC 必须被禁用,尽管我希望未来这一点能有所改变,就目前而言 DLL 不受 EAC 支持,但 XML 没有问题,遗憾的是这是一个 dll 修改。
- 这仅适用于客户端,但也许这也同时适用于服务器端和客户端兼容性?
无需进一步设置。尽情享受吧!
致谢:
感谢 TechFreq 和人工智能,包括 ChatGPT、微软 CoPilot AI、Twitter/X 的 Grok AI,帮助我创建了这个模组。
由于我对游戏模组制作的知识有限,只能边学边做,没有它们的帮助我无法完成这项工作。
同时也感谢整个模组社区的集体智慧与支持。
我非常感谢您对模组的任何反馈。
支持公告:
这个模组可能会也可能不会交叉发布到 7DaystoDieMods。对于那些想支持 'TechFreqs' 作品的人来说,通过 ModsFire 在他们的网站上下载(广告支持,每次下载都能获得收益)对我帮助很大!除了 NexusMods 外,他们的网站上还提供了一个直接的 MEGA 镜像,NexusMods 也提供直接链接,但这些链接不会按点击或下载获得收益,而是通过捐赠点或通过 PayPal 或 Ko-fi 的 'TechFreqs' 捐赠链接运行。
另外,以下链接和简介中的链接(广告支持,每次点击都能带来收益)对我帮助很大!
一旦观看完广告并通过点击 OUO短链接上的继续按钮提示后,您将被引导至 'TechFreqs' 的社交媒体或打赏页面。
然而,捐款并非强制要求,但每一份支持都能在路上助我们一臂之力,并为未来的更多模组、音乐和漏洞修复提供动力。所以再次感谢你们的慷慨,并查看这篇模组帖子。
社交媒体:
如果你欣赏“TechFreqs”的工作并想表示支持,可以使用这个捐赠链接,尽管这不是必须的。
Ko-fi 页面:https://ouo.io/KHl59h
1
感谢您查看模组帖子、分享并享受任何模组内容本身。再次感谢!祝游戏愉快!
喜欢这个模组吗?
有反馈、想法或需要故障排除?
加入 TechFreq 超酷小队! https://ouo.io/FXCrA1
来我们的 Discord 一起放松,畅聊游戏、分享梗图,还有更多模组更新等着你!
至于 TechFreqs 音乐,这是免版税音乐,可用于您的项目或休闲聆听!
源音乐文件可随意索取,欢迎在 Discord 上询问!或获取更多内容!
社交媒体:https://ouo.io/CjpGJ6
看看今天的幕后花絮氛围!再次感谢大家查看模组帖子。
先前更新日志:
V1.5
- 修复了手动备份或自动备份触发时日志刷屏的问题。
更不用说工具提示信息了,所以现在它们只显示一次,并且在日志中有准确的详细信息,没有垃圾信息!
以及为自动备份添加了备份完成消息。
版本 1.4
可配置 启用/禁用备份模组工具提示音效:
设置:"EnableTooltipSounds": true/false在config.json中。
声音:使用sounds.xml中现有的 7 Days to Die 音效(例如,成功时使用coins_grab,警报时使用ui_menu_click)。可配置自动备份/手动备份在磁盘空间不足时暂停:
设置:"MinFreeSpaceMB": 1024(默认 1 GB)在config.json中。
行为:当空闲空间低于此阈值时,暂停自动备份并阻止手动备份,同时显示警告提示。config.json中的"MinFreeSpaceMB"设置允许用户自定义自动备份暂停或手动备份阻止所需的最小剩余磁盘空间。默认为 1024 MB(1 GB),但用户可将其设为任意值。例如:"MinFreeSpaceMB": 512表示如果备份文件较小,则最小空闲空间为 512 MB。"MinFreeSpaceMB": 2048表示 2 GB,适用于拥有大型存档文件并希望有更大缓冲空间的用户。
当然,为了确保万无一失,这个模组包含了一个空白的世界设置 JSON 文件,但只有在安装模组后加载世界时才会生效。
它会根据需要创建和更新配置 json 文件,或世界设置 json 文件以使模组正常运行。游戏中没有工具提示信息,仅为一般性说明。
至于模组的功能,沉默但有用。
V1.3
新增的世界设置 JSON 文件,
这样它就能跟踪世界和条件,看自动备份是否启用或禁用,以及仅检查现有备份,如果存在的话。
提示以创建一个初始版本等,并具备先前修订的功能。
至于我的例子两个世界:
{
"纳维兹加尼/多得离谱": {
"自动备份已启用": false,
"已提示初始备份": true,
"已有备份": true
},
"Pregen04k1/waytoosmall": {
"自动备份已启用": false,
"已提示初始备份": true,
"已有备份": false
}
}
但如果它生成了一个与你的系统相关的新世界,请自由地为你的世界取一个独特的名字,因为我不清楚你的世界存档名称或标签是否涉及特定字符、数字或特殊符号。
V1.2
可配置的 config json!
耶!感谢社区提供的错误报告和评论。
现在包括:
- 保存源路径,以便为你的世界存档自定义保存位置
- 以及 BackupLocation,一个可自定义的世界存档备份位置。
在配置 json 中默认设置:
"保存源路径": "%AppData%\\7DaysToDie\\Saves",
"BackupLocation": "备份"
但默认目录检查是否未更改:
- 保存位置:
C:\Users\ROGPC\AppData\Roaming\7DaystoDie\Saves - 存储备份:
C:\Program Files (x86)\Steam\steamapps\common\7 Days To Die\Mods\TechFreqsBackupMod\Backups
所以如果你打算将文件夹更改到另一个位置以进行测试
(例如 "BackupLocation": "C:\\Users\\ROGPC\\Downloads\\7D2DBACKUPS\\Backups"),
确保目录中包含双斜杠。
此外,新增了一个可配置选项,可通过 config json 启用自动备份或禁用备份功能!
以及新增的命令如 /enableauto 或 /disableauto,如果在游戏聊天框中输入用于切换启用或禁用自动备份功能,以及可自定义的切换键绑定,默认为小键盘 3。
同时也无需编辑配置 JSON 文件即可开启或关闭自动备份功能,根据需要。
至于手动备份,现在如果发现旧的存档,它会将其删除,并当然会创建一个新的存档...每 8 个文件。它会创建一个第 9 个作为临时文件,然后删除最后一个旧的存档!
由于这仍然是半自动的,所以值得注意,如果需要的话,为了确保存档正常工作,你可能需要将世界存档文件移动到其他地方,因为它可能会占用大量空间,诸如此类。
仔细检查您设置的目录,并确保您的系统拥有完全控制权限,默认情况下应该已经具备,但请再次确认。
尚未在外部驱动器上测试,但我祈祷它应该能正常工作,只要在属性中为文件夹本身设置了权限。
V1 和 V1.1
主要特点:
初始备份提示:
在世界加载后延迟 5 秒,检查是否存在备份。
如果没有备份,提示:
“首次初始备份?按 Y 确认或 N 取消。之后将根据配置 json 中的 {interval} 分钟间隔自动备份。”Y 触发立即备份,显示“正在制作备份,可能需要一些时间,可能会出现卡顿...”,随后显示“备份完成,生成的世界存档位于:{world}/{save}。”
N 或超时(60 秒)显示一次“无备份。自动:{interval}m”,然后切换到自动备份模式。
干杯!
正在加载版本记录…
























正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。