性别:男-离线 博雅张生
(张生手持石鼓文)

象郡公中书令枢密直学士

Rank: 19Rank: 19Rank: 19Rank: 19
资政殿大学士(从一品)
组别 经略使
级别 前将军
好贴 3
功绩 1118
帖子 1730
编号 28805
注册 2004-12-26


发表于 2006-8-9 01:03 资料 个人空间 短消息 看全部作者 QQ


QUOTE:
那么循环结构呢? 无论C/C++,Pascal,Basic,java,C#等各种各样的语言,都离不开for,while这些循环的,那么曹操传剧本文件的循环结构在哪呢?
当一个Scene包含多个Section时,这个Scene就是一个循环结构,当你没有执行0d指令结束Scene时,整个Scene里面始终是循环执行不会跳出的,这有点象while。

岳飞传里牛皋转参军和银瓶能力的计算就是用这样的循环完成的。实际上在一个Scene中,程序是从下到上判断Section的。如果不满足Section的条件,则会去判断上面一个Section。而如果满足了Section的条件,就会在执行了Section之后再次从最底下的Section开始判断。这个特点其实也可以利用。

QUOTE:
0-254正好是255个局部变量,255-999又是可用的全局变量

全局变量可以到2047

QUOTE:
你想用几位表示一个数字,这个随便,按照电脑本身的8位一个字节也可以,不过用10位也不错,比较好记。

岳飞传里用的是1,2,4,8,10,20,40,80,100,200,400,800……

QUOTE:
不过遗憾的是,这个只能在一关中设置,过了关数据就清掉了,回复为Data里面的数据,所以人物五围数字只能作为局部数据,但是要做为全局数据就不行(这点只有隋唐可以例外) 。

要保留为全局数据,其实就是要避免游戏从Data中读取那个人物的原数据。(36和38对人物数据的读取和赋值都是直接操作内存),因此似乎只要人物不入队出队,不上战场似乎就可以。


精华帖
顶部
性别:男-离线 博雅张生
(张生手持石鼓文)

象郡公中书令枢密直学士

Rank: 19Rank: 19Rank: 19Rank: 19
资政殿大学士(从一品)
组别 经略使
级别 前将军
好贴 3
功绩 1118
帖子 1730
编号 28805
注册 2004-12-26


发表于 2006-8-9 01:09 资料 个人空间 短消息 看全部作者 QQ


QUOTE:
在曹操传的Exe以及其他一般MOD的Exe(说岳不是) ,剧本指令是从RS剧本里读进去后,有个switch的地方。
00410A1C  |.  FF248D 2F1141>JMP DWORD PTR DS:[ECX*4+41112F]

岳飞传把410A23-411124那一大段代码化简了,腾出1700多字节

QUOTE:
显然01指令没有什么用处,直接就跳到0041112B处了,而08及其他有功能的指令,都是Call另外地方的指令,最后完成后也是跳转到0041112B结束。

01是重要的结构指令啊。子事件的标志。MOV EAX,4就是这个标志吧。

QUOTE:
要把108个谈一遍! 那不累死

可惜当时不会反汇编。108个代码完全是通过试验确定功能的。当时可把我和幽幽累坏了。

QUOTE:
但是中国的程序员通常都很天才,往往这种很职业的事是不干的,何况Van的编辑器对剧本指令和参数都有做合法性校验,

van是很职业的

本贴加精华。

[ 本帖最后由 博雅张生 于 2006-8-9 04:23 编辑 ]


精华帖
顶部
性别:男-离线 博雅张生
(张生手持石鼓文)

象郡公中书令枢密直学士

Rank: 19Rank: 19Rank: 19Rank: 19
资政殿大学士(从一品)
组别 经略使
级别 前将军
好贴 3
功绩 1118
帖子 1730
编号 28805
注册 2004-12-26


发表于 2006-8-9 14:34 资料 个人空间 短消息 看全部作者 QQ


QUOTE:
原帖由 岱瀛 于 2006-8-9 14:02 发表
没想到得精这么容易灌灌水得来第一精
01和00指令都没有call 函数,他们就是 mov eax 一个值,00用的是03,01用的是04,而所有指令出现参数异常的EAX好象都是用了05,这个会倒置重读这条剧本指令,好象是 ...

嗯。而且对于测试性质的指令来说,如果条件成立eax是1,条件不成立eax是0。
else 比较特殊,eax是6
精华帖
顶部

正在浏览此帖的会员 - 共 1 人在线




当前时区 GMT+8, 现在时间是 2025-4-30 04:06
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.010298 second(s), 9 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP