铁血丹心

 找回密码
 我要成为铁血侠客
搜索
查看: 1631|回复: 11

请教pascal重定义问题

[复制链接]
发表于 2009-3-25 14:33 | 显示全部楼层 |阅读模式

马上注册,结交更多侠友!

您需要 登录 才可以下载或查看,没有账号?我要成为铁血侠客

x
最后还是没解决,不过没必要了,已经直接改了

----

我不想改动原游戏中任何代码,而达到改变代码中变量和function
等,我想把这些重定义放到同一个(或者一组)文件中,达到修改的目的

要怎么做?

说详细点,写了~

[发帖际遇]: winson7891在华山山谷捡到被令狐冲打落的宝剑,送回给宁女侠,宁女侠感谢万分,送你银两16.


[ 本帖最后由 winson7891 于 2009-3-27 18:33 编辑 ]
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2009-3-25 15:33 | 显示全部楼层
代码肯定要有少量修改,把你的新函数放到一个新unit里面,在原来所需的实现部分的uses添加你的新单元,必要的话也要在新单元的uses部分添加原有的单元。

之后就是在你想要修改的调用函数的部分调用原有函数改成你的函数。

[发帖际遇]: weyl发现瘫痪在地的殷梨亭,从他身上偷得银两8.
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2009-3-25 23:10 | 显示全部楼层
weyl大~能不能给小弟写个简单的框架式实例啊?

刚刚写了几次在游戏中都没有成功反映出来,可能是根本侦察不到,也不知道是哪里出问题了~

感觉pascal比之之前接触的lua,有点陌生啊~看了网上的基础教程也是云里雾里

要是你嫌麻烦的话,那就算了,慢慢再看~哈

[发帖际遇]: winson7891帮周威信押镖,结果:被太岳四侠打劫,倒赔银两17.
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2009-3-25 23:47 | 显示全部楼层
可以先分析代码的结构和引用关系
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2009-3-26 15:57 | 显示全部楼层
通读了一次所有的pas文件,当然因为函数等过多,没有一一对照着看,不过大致是是知道怎么回事了,但是疑惑更深

不是所有的逻辑都是通过pascal来实现的吗?那么,为什么把这些文件都移出游戏目录,游戏依然可以正常运行?不会瘫痪至少会报错吧?是不是有点诡异?现在想起来,貌似苍龙逐日等mod也是没有pas文件的

然后,我尝试直接在目录等测试比较方便的方面改动的代码,竟然对游戏没有作出任何改动?这是为什么?难道必须把.pas文件中的改动导出到别的地方,才能直接作用于游戏吗?

是不是我有什么理解错了?很疑惑,又或者,是我对复刻版的工作原理存在误解?

请weyl大解答,不然的话真的无从入手~

[发帖际遇]: winson7891卖下一个mod的制作人绝密采访稿,狂赚银两20.
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2009-3-26 16:03 | 显示全部楼层
所有的代码都必须编译之后才能生效。
编译之后所有逻辑进入exe文件,与源码再无关联。

你必须安装delphi之类的pascal的编译器,加上sdl支持,修改代码后重新编译才可以。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2009-3-26 16:22 | 显示全部楼层
怪不得~~我一直以为直接生效呢~
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2009-3-26 17:31 | 显示全部楼层
说实话复刻版没什么好改的,任何地方都做得很到位
通过KG的改良之后。。很完美了

[发帖际遇]: aawc1144挺身而出,阻止萧峰打“段正淳”,阻止失败,阿朱遇难,花银两25帮助萧峰安葬阿朱.
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2009-3-26 18:48 | 显示全部楼层
是吗?

呵呵~

看来阁下不是很明白一个编程者的思维方式啊~

[发帖际遇]: winson7891在海边沙滩上捡到一支圣火令,当废铜卖了,获得银两9.
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2009-3-26 22:45 | 显示全部楼层
weyl大,我还想问一下具体的命令
例如我想把kys_battle中的一个function如abc在新的unit如modify中改写成abc_new要怎么写?
abc_new的定义与abc相同,
然后在一个procedure m中调用
procedure m;
begin
abc := abc_new;
end
当然是错了~但网上查不到相关资料,只好问你了~

[table=100%,#cbb48a][tr][td][size=9pt][发帖际遇]: [url=http://www.txdx.net/event.php]winson7891抢了钟灵给段誉的绣花鞋,被钟灵见到放闪电貂追杀,掉了银两41.
[/url][/font][/td][/tr][/table]
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2009-3-27 09:30 | 显示全部楼层
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2009-3-27 09:56 | 显示全部楼层
.....................................................

那不是要逼我改源代码吗?这很不符合我做事的原则啊

而且要是直接改源码,拿出来分享的时候对于使用者是既不方便的,

我是这么想的,要是可以在新文件中引入函数的话,那作出来的更改就可以轻易地推广和作用于所有复刻版的mod了

有什么尽量少改源码而把新函数和流程从新文件引入的方法啊?提点一下~哈

[发帖际遇]: winson7891去客栈吃饭,碰到郭靖,你请郭靖吃饭,花掉银两5。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。

本版积分规则

小黑屋|手机版|铁血丹心

GMT+8, 2024-12-23 09:18

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表