首页 > 分享 > 正文

苏丹的游戏:游戏源文件修改方法分享

分享 加菲猫 -[整理] 2025-04-10 11:39 0 127

苏丹的游戏》中的游戏源文件是非常重要的,然而很多玩家不知道怎么修改游戏源文,步骤有些复杂,这包含大量游戏内文本和剧情细节,因此仅适用于多周目通关的玩家,首先,这一部分的内容不涉及平衡性改动,所以只需要修改游戏存档文件即可实现。

苏丹的游戏游戏源文件怎么修改

前言

剧透警告:本攻略包含大量游戏内文本和剧情细节,仅适用于多周目通关的玩家。尚未完整体验剧情的玩家请谨慎阅读,以免影响游戏体验。

这篇攻略是为那些已经多次通关、对游戏内容非常熟悉的玩家准备的。开发团队为这款游戏倾注了大量心血,剧情、难度和玩法都经过精心设计。因此,对于还没有完整体验游戏的玩家,楼主不建议也不提倡任何形式的文件修改,更不推荐为了通关而改动存档。

这份攻略的目的是希望大家在多周目之后,能多一些新的乐趣、自定义玩法,或者探索未解锁的支线剧情。鉴于游戏目前处于早期开发阶段,demo 版的存档文件结构便于调整,适当的修改不仅可以丰富游戏的可玩性,还能在遇到平衡性 bug 时避免弃档重玩。

不过,楼主仍鼓励大家在不破坏游戏平衡的前提下合理修改,以尊重游戏的完整性和设计初衷。

友情提醒:修改存档只是为了增加趣味,并不适用于快速通关。

免责声明:本攻略仅供多周目玩家在不破坏游戏性和尊重原有设计的前提下进行文件修改。如本攻略内容被视为违规或侵犯游戏制作者的知识产权,请吧务直接删除本帖。感谢游戏制作者的辛勤付出,同时也希望所有玩家能合理使用此攻略。

首先,这一部分的内容不涉及平衡性改动,所以只需要修改游戏存档文件即可实现,无需改动源代码(永久自定义卡序则需要源代码修改)。

存档文件位置

首先来看一下存档文件位置

C:\Users\你的用户名\AppData\LocalLow\Double Cross\Sultan's

Game\SAVE\76561198963386332

需要注意的是,AppData 是一个隐藏文件夹,相信经常修改游戏存档的8u都知道,不了解的出门左转查一下相关教程(雾),这里就不赘述了。

特别注意:任何涉及文件改动的操作一定要先备份文件!若因此造成存档损失,楼主概不负责。

存档

打开文件夹后,第一个文件 auto_save 就是游戏的主要存档。

注意:游戏目前没有多存档功能,因此主菜单进入的存档只认这个文件。

后面的文件可以视为每一天(即每个回合)的备份,用于实现游戏中的“回到上回合开始”功能。这个auto_save文件会在游戏内任何操作时自动覆盖更新。

第二个文件 failed_messages:用于记录失败信息,这里不多解释。

第三个文件 global:与本部分修改无关,暂时略过。

第四个文件 last_round_end:即“回到回合开始”的存档。

剩下的文件 round_xxx:每个回合的存档,文件名中的数字表示回合数(即存活天数)。这些存档不会被删除,而是每回合开始时覆盖更新,因此sl大法就是利用这些回合存档来实现的。

回到最新的存档

相信很多人点击“回到上回合开始”之后,有时会后悔,想直接回到最新的存档。那么该如何操作呢?

这个问题的关键在于,回合存档不会被删除,而是覆盖更新。因此,当你开始新游戏时,上一轮的存档其实还在,只是从第一回合开始逐步覆盖。要区分不同游戏轮次的存档,我们只需查看文件的修改时间,就能知道哪些存档属于本轮游戏,哪些是上一轮的。

从图片里可以看到,修改日期有明显的断层,断层以上的文件就是本轮游戏的存档,以下的文件则是上一轮游戏的存档。

要恢复某个回合的存档,只需把你需要的存档文件复制出来,并重命名为 auto_save 即可(注意扩展名,如果使用 win10 默认设置,扩展名是隐藏的,无需更改;若文件末尾是 .json,则重命名为 auto_save.json)。

看到这里,相信大家已经意识到一个事情:既然存档不会被删除,我们实际上可以回到上一轮游戏。只需按照上面的方法,将上一轮的存档覆盖 auto_save 即可。

存档文件代码

这个游戏源文件代码可以说相当友好,而存档文件代码则相当恐怖——它只有一行!一行!

所有内容都堆在同一行里,用记事本打开就是一大串密密麻麻的字符。

为了方便展示,楼主这里用 VSCode 打开并且格式化,但大家在实际修改时,用记事本也完全可以操作,只是阅读起来会费点眼神。

修改卡序

在进行修改时,建议大家利用 Ctrl+F 搜索关键词,快速定位需要的内容。

文件最前面是基础的存档信息,这部分可以忽略,不需要修改。

sudan_redraw_times_per_round 表示每回合可以重新抽几次苏丹卡。这里为了测试楼主设置了99,默认值为1。sudan_redraw_times 则表示到下一次重新抽卡还要等待的回合数。sudan_redraw_times_recovery_round 是每隔几天可以重新抽卡,默认值为7。

"sudan_pool" 表示苏丹卡的卡池,位于文件的中间部分。这里我们来详细说明卡牌的结构:uid 是存档内的唯一标识,每张卡牌的 uid 独一无二,即使是同样的卡牌也会有不同的 uid。

id 则是卡牌对应的源文件标识,表明了卡牌具体信息。sudan_pool_index 是卡牌的顺序号,修改卡序需要更改的就是这个属性。

卡序在每轮游戏开始时就确定,根据 sudan_pool_index 按顺序出现,不修改文件的情况下无法更改。重新抽卡时,会直接抽取当前苏丹卡池中下一张待抽的卡,而被换掉的卡会紧接着排在后续顺位中,轮到时重新进入抽卡序列。

苏丹卡的 id 范围从 2010001 到 2010016,其中 01 到 04 是杀戮卡,05 到 08 是纵欲卡,09 到 12 是奢靡卡,13 到 16 是征服卡。每种类型的卡按照岩石、青铜、白银、黄金的顺序排列。所以 2010001 代表岩石杀戮卡,2010016 则代表黄金征服卡。

我这里展示的卡序是测试用的:按照 id 顺序重复4次外加一张黄金奢靡卡,总共65张卡牌。

从卡序上来看,序号1的卡应是岩石杀戮卡,但我测试中第一张卡是最后的黄金奢靡卡。

这是因为游戏开始时,玩家抽到的第一张苏丹卡的卡序是最后一张,也就是 sudan_pool_index 为65的卡,而在默认情况下是 sudan_pool_index 为28的卡。

图片中没有显示 sudan_pool_index 为65的卡,因为 sudan_pool 是卡池,而 sudan_pool_index 为65的卡已出现在玩家手中,不再在卡池中。可以在 "cards" 部分找到它。对于默认游戏,直接搜索 "sudan_pool_index": 28。

因此,非常建议在游戏一开始就修改卡序,否则需要不断翻找目标苏丹卡的位置。此外,修改时直接调整 id 而非 sudan_pool_index,因为卡牌顺序与 uid 绑定,进度也与 uid 绑定,而卡牌的具体信息则与 id 绑定。

使用固定的卡序

前面的修改方法是针对大体卡序随机的情况下调整个别卡牌的顺序。如果希望每轮游戏开始时使用固定的卡序,则需要修改源文件。

首先找到文件位置:通过 Steam 库右键点击游戏 → 管理 → 浏览本地文件,进入 Sultan's Game DEMO\Sultan's Game_Data\StreamingAssets\config\init 文件夹。

在这里你会看到 0.json 和 1.json 两个文件,0.json 是教学关的源文件,而 1.json 是常规情况下的源文件。

在文件中找到 "sudan_pool": [,后面就是卡牌的顺序。你会发现我的卡序与上一层的游戏截图一致,而你的会与我不同,因为我为了测试修改过内容。

这里最后一张卡就是代表黄金奢靡卡的 2010012。因此,只需按照你想要的顺序调整这里的卡序即可,注意将第一张卡牌放在最后一位。

调整好卡序后,游戏默认依然会随机生成卡序。这时我们需要关闭洗牌功能,将 "sudan_shuffle" 从 true 改为 false。

默认设置中

"sudan_redraw_times_per_round": 1,

"sudan_redraw_times_recovery_round": 7,

如果想要无限重抽,只需将 "sudan_redraw_times_recovery_round" 从 7 改为 0,无需修改 "sudan_redraw_times_per_round"。

如果你不想改动抽卡间隔,只想调整每次可以重抽的次数,那么将 "sudan_redraw_times_per_round" 改成你想要的值即可。同理,也可以分别设置不同回合数的重抽次数。


#苏丹的游戏#攻略#PC


取消评论根据实名政策,请在登录后再评论!

暂无评论
请先 登录 再评论,如果还未注册,请先 注册