如果你想要任何一个H游的全回想 但你无法找到与之相关的资源,请联系我

Mm
mmdjj
如果你想要任何一个H游的全回想 但你无法找到与之相关的资源,请联系我
没有官方存档/没有官方回想手段/在互联网上找不到回想资源,请联系我
我会我会通过逆向分析存档格式,手动定位并修改CG/回想解锁标志位,帮你生成全回想存档。
已有多年实战经验,无论何种引擎/存档格式/存档是否加密等等,just contact me
Mm
mmdjj
Re: 如果你想要任何一个H游的全回想 但你无法找到与之相关的资源,请联系我
mmdjj没有官方存档/没有官方回想手段/在互联网上找不到回想资源,请联系我
我会我会通过逆向分析存档格式,手动定位并修改CG/回想解锁标志位,帮你生成全回想存档。
已有多年实战经验,无论何种引擎/存档格式/存档是否加密等等,just contact me
你只需要告诉我游戏名,我就会直接给你一份该游戏的全回想存档,我也会在游戏内打开此存档,确认此存档可用且解锁全回想
私信或者qq669867259 最多三小时出结果给你
ddejb
Re: 如果你想要任何一个H游的全回想 但你无法找到与之相关的资源,请联系我
mmdjj
mmdjj没有官方存档/没有官方回想手段/在互联网上找不到回想资源,请联系我
我会我会通过逆向分析存档格式,手动定位并修改CG/回想解锁标志位,帮你生成全回想存档。
已有多年实战经验,无论何种引擎/存档格式/存档是否加密等等,just contact me
你只需要告诉我游戏名,我就会直接给你一份该游戏的全回想存档,我也会在游戏内打开此存档,确认此存档可用且解锁全回想
私信或者qq669867259 最多三小时出结果给你
大佬,这个qq号搜索不到呀
Mm
mmdjj
Re: 如果你想要任何一个H游的全回想 但你无法找到与之相关的资源,请联系我
ddejb
mmdjj
mmdjj没有官方存档/没有官方回想手段/在互联网上找不到回想资源,请联系我
我会我会通过逆向分析存档格式,手动定位并修改CG/回想解锁标志位,帮你生成全回想存档。
已有多年实战经验,无论何种引擎/存档格式/存档是否加密等等,just contact me
你只需要告诉我游戏名,我就会直接给你一份该游戏的全回想存档,我也会在游戏内打开此存档,确认此存档可用且解锁全回想
私信或者qq669867259 最多三小时出结果给你
大佬,这个qq号搜索不到呀
哦抱歉,现在可以搜到了,留言在这儿也行我都会看到的,就是可能有点不及时,抱歉抱歉
Mm
mmdjj
お嬢様とダンジョン攻略
在这个贴子下也记录一下最近逆向的一些游戏吧。哎,我总不能把这些放在我的个人博客上吧,暴露XP了;但不记录下来又有点可惜,就放在这里吧。顺便放一下游戏名,要是之后有人来搜的话也好找存档。
游戏名:お嬢様とダンジョン攻略
来自本站另一位朋友Temmie的介绍:这个作品的话不是纯正的m向,稍微适合Switch属性一点()
如果喜欢大小姐类型,还是Switch的话蛮适合的~(既能玩弄傲娇大小姐,又能被高高在上地玩弄)
REVERSE:
拿到游戏先看根目录结构,Game.exe + www/ + package.json + 一堆nw.js的dll,典型的RPG Maker MV打包。RMMV的存档机制是固定的:游戏数据以JSON格式存储,经过LZString压缩后以base64编码写入 www/save/ 目录下的 .rpgsave文件。知道引擎就等于知道了存档格式,这一步没什么悬念。

先看 www/data/System.json,这个文件是RMMV的全局配置,里面定义了所有开关(switches)和变量(variables)的名称。打开一看
,开关表里直接写着每个H场景的名字:イリウ1手コキ、イム1バック、レティア1バック……命名非常直白,连猜都不用猜。这些开
关就是回想的解锁标志位。

但光知道哪些开关控制回想还不够,还得确认回想画廊在哪、它怎么读这些开关。用脚本遍历所有地图的事件数据,找到
Map065.json(魔法店2)里有大量事件,每个事件都是两页结构——Page 0是默认的空状态,Page
1带有开关条件,满足条件才显示为可交互的宝箱。每个宝箱对应两个Common Event调用,一个是带文字版,一个是 文字無し
版(就是回想用的纯场景回放)。把所有事件的Page 1条件开关提取出来,得到完整的回想开关列表:1, 2, 4, 5, 7, 8, 9, 10, 11,
12, 13, 14, 15, 16, 18, 19, 20, 39, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 57。

接下来改存档。用游戏自带的 www/js/libs/lz-string.js 做解压,LZString.decompressFromBase64
得到原始JSON。RMMV的存档JSON不是纯粹的JSON,它用了一套叫JsonEx的序列化协议——对象带 @c(循环引用ID)和
@(构造函数名),数组被包装成 {"@c": id, "@a": [实际数据]}。开关数据存储在 save.switches._data["@a"]
里,是一个普通数组,下标对应开关ID,值为 true/false。

直接改这个数组,把所有回想相关的开关位置设为true,然后 JSON.stringify 回去再 LZString.compressToBase64 压缩写回文件。

这里踩了一个坑。为了方便查看效果,我同时修改了存档里的 map._mapId 想把玩家直接传送到回想房间。结果加载后地图完全错乱——
因为RMMV存档里的map对象包含了当前地图的完整运行时状态(事件位置、自开关等等),你改了 _mapId
但里面的事件数据还是原来那张地图的,游戏就傻了。正确的做法是只设置玩家对象上的传送标志:player._transferring =true、
player._newMapId = 65,让游戏自己在下一帧走正常的地图加载流程。
改完加载存档,自动传送到回想房间,满屏宝箱,全部可交互,收工。
整个过程没有任何加密,RMMV对于逆向来说基本是裸奔的状态。唯一需要注意的就是JsonEx的序列化格式,别手贱乱改结构性字段就行。
EASY REVERSE,下次出CTF题能不能叫他们逆H游存档啊(笑
Akane7
Re: 如果你想要任何一个H游的全回想 但你无法找到与之相关的资源,请联系我
Femdom_University_Zero_V1.60
Mm
mmdjj
Re: 如果你想要任何一个H游的全回想 但你无法找到与之相关的资源,请联系我
Akane7Femdom_University_Zero_V1.60
我正在逆了