金庸群侠传MOD发布 金庸群侠传MOD攻略讨论 金庸群侠传修改技术交流 设计自己的武侠单机游戏 创造独特的游戏形象
发新话题
打印

[MOD技巧] z.dat里改变性别的位置

本主题由 lift_viper 于 2008-3-1 16:22 关闭 本主题被作者加入到个人文集中

z.dat里改变性别的位置

辟邪剑谱和葵花宝典可以改变性别(0->2),这是由z.dat里的一段代码控制的。大致逻辑是:

修炼物品
判断是否4e或5d (这两个物品的代码)
提问
是 则 改变性别 0 to 2

在新的z.dat里这段代码在2b000附近,而改变之后的性别由2b014控制。

试验:把2b014从2改到1,练过葵花去收欧阳克,成功

[ 本帖最后由 weyl 于 2008-7-12 17:08 编辑 ]
本帖最近评分记录
  • 游客 +6 不錯! 2007-12-6 00:26

TOP

性别不是那么重要啊...

TOP

如果以后想用女主角,可以应用啊!

TOP

5体投地!!!
LZ加油

TOP

想做个只能女人练的,练之后变男人的猛男宝典

TOP

回复 #5 Danger326 的帖子

这个可以做,把葵花宝典和辟邪剑法前后判断性别的代码改掉即可,会覆盖原来的效果。不过似乎没啥用,因为图片不会变。
性别属性是隐藏的,判断性别的事件似乎只有欧阳克加入和任我行取笑。

TOP

《葵花宝典》和《辟邪剑谱》改变人物性别的问题

下面是sub_2a86c子程的一段代码:

movsx   eax, word_54B74
movsx   eax, word_18FE2C[eax*4]
imul    eax, 0BEh
cmp     word_250000[eax], 4Eh
jz      short loc_2AF15

cmp     word_250000[eax], 5Dh
jnz     loc_2B018

loc_2AF15:
movsx   eax, word_1C0B78[esi*2]
imul    eax, 0B6h
cmp     word_23001C[eax], 0
jnz     loc_2B018


程序连续比较了3个值:4E,5D,和零。在游戏中4E和5D即这两个物品的代码,而0表示男性。如果3项均符合则跳到一段显示代码(就是需要xxxx,是否仍要继续),这段代码的最后两句是:

cmp     byte_51B6B, 59h
jnz     short loc_2B01D

59h就是字符Y,jnz表示不同的话就转向,相同的话就转到:

……
mov     word_23001C[eax], 2
……

从游戏设定来看这一句就是改变性别的了。那么只要把这几句改变,这两种物品的效果就会变化。这个2在文件中的偏址就是2b014h。

这两个物品的特殊效果是直接写在源代码中的,当然可以换成别的或去掉,但是增加数量就有些难度。
本帖最近评分记录

TOP

LS太行了
都想不到能这样

TOP

发新话题