喂死鲤鱼 发表于 2011-8-12 16:07:51

关于SF2下面牵引式榴弹炮和自行火炮……

SF2下面有无榴弹炮的定义,做了门D-30榴弹炮出来试验……
单纯的把GroundObjectRole=改成Artillery并没有达到我所期待的效果,火炮在轰击固定的目标的时候确实可以模拟抛物线弹道,但是遇到步兵战车和主战坦克之类的移动目标的时候会突然改平,变成纯粹的反坦克炮,有没有办法让单位能对攻击的目标一视同仁……

附几张测试贴图,一个是曲射弹道,目标为Hawk和爱国者的固定式阵地,另外一个是以挑战者2坦克为目标,结果攻击移动目标时,弹道夹角明显变了:

这是炮击固定目标的:
file:///D:/Backup/我的文档/ThirdWire/StrikeFighters2%20Europe/ScreenShots/img00198.JPG?ra=0.017106910166753197

这是炮击移动目标:
file:///D:/Backup/我的文档/ThirdWire/StrikeFighters2%20Europe/ScreenShots/img00199.JPG?ra=0.41157869938953767

喂死鲤鱼 发表于 2011-8-12 16:14:17

这里还有几辆以前做的2S系自行火炮,存在同样的问题


file:///D:/Backup/我的文档/ThirdWire/StrikeFighters2%20Europe/ScreenShots/img00024.JPG?ra=0.9629458363709492


file:///D:/Backup/我的文档/ThirdWire/StrikeFighters2%20Europe/ScreenShots/img00032.JPG?ra=0.7225639857975074

lookat00 发表于 2011-8-12 17:21:37

作的不错又想起了军训时 教我们开榴弹炮 。。。。

HoneyFox 发表于 2011-8-12 21:36:37

把BallisticComputer或者RangeFinder里的某一个设置为0或者不写(这样就是默认为0了),应该就可以了。
不过具体是BallisticComputer还是RangeFinder我就记不得了。

喂死鲤鱼 发表于 2011-8-13 17:02:12

好吧,我很无耻的把游戏主程序的一部分源代码给解出来了……

有一些新发现,地面单位可以用DeployAnimationID=和DeployAnimationTime=来调用指定部件的动画,导弹的话,把IndependentPitchMovement=FALSE修改为TRUE后面跟上Yaw和PitchModel可以让导弹各自不受约束的独立活动,

目前只解开了AircraftObjects.dll和GroundObjects.dll,MissileObjects.dll程序被加了壳,还没有找到合适的手段去除掉这层壳……

小-R 发表于 2011-8-13 17:18:36

回 4楼(喂死鲤鱼) 的帖子

能不能把SF2的代码复制到SF1里呢?

喂死鲤鱼 发表于 2011-8-14 11:52:31

回 5楼(小-R) 的帖子

1代卸载了,而且传说1代的源码变动跟2代相差很大,而且我现在也只是能查看编辑里面现有的源代码,还不知道怎么编写一个新的命令集以实现新的效果,C++基础薄弱啊,也不想怨天尤人,走一步是一步,熟悉了那些编码规则和指令集啥的,才会考虑真正意义上的去修改源码,现在只是改动一些不痛不痒的地方,还有就是偷窥一些程序里面隐藏的命令行参数啥的,

HoneyFox 发表于 2011-8-14 20:16:44

you need OD. 顺带说一句:想反汇编,你不懂C++和略懂一些C++是没什么区别的。只有非常熟悉C++(尤其是它的编译器),才会有些帮助。

noclip 发表于 2011-8-15 00:52:09

快使用那啥DGB

喂死鲤鱼 发表于 2011-8-15 07:38:00

OllyDebug有……
以前学的都是基于VB的编程,C语言荒废……
而且用OD把SF2的主程序解开的时候发现里面用的算法是十六进制和八进制的,不是我在VB里面熟悉的二进制和十进制
页: [1]
查看完整版本: 关于SF2下面牵引式榴弹炮和自行火炮……