尤里mod吧 关注:3,664贴子:78,891
  • 9回复贴,共1

【精荐】关于尤里Mod的小小Tips

取消只看楼主收藏回复

【绝对原创】版权没有 转载不究(但请注明作者LH_Mouse)
①关于Art中的FLH问题
游戏的地图是由正方形的小方格组成的,不过由于视角的关系变成了菱形。游戏中这个正方形的对角线长是60个像素,则边长约是42个像素FLH中的单位是1/256边长,也就是说约每6个单位等于1个像素。那么对于步兵单位来说,我们看到他面朝右时可以直接读出发射点距图片中心的横坐标差值,乘以6即得F的数值;我们看到他面朝下时直接读出发射点距图片中心的横坐标差值,乘以6即得L的数值;看到他面朝下时可以直接读出发射点距图片中心的纵坐标差值,乘以7即得H的数值(注意这个是7,中间几何计算比较繁琐,略去)。
②制作SHP图片应该注意的
SHP是使用序列颜色的图形组,它要显示必须借助于调色板,因而转换成的图片最好同样采用序列颜色。PNG、JPG都不是序列颜色的格式,最好不要用。应该用PCX,但是它只能用有限的几种编辑器打开。Photoshop太慢,推荐用XCC Mixer直接Ctrl+C然后粘贴到画图里,编辑后再Paste回去。
③其它的小问题
Rules中的武器是区分大小写的,弹头和抛射体不区分
弹头爆炸半径不要超过10
RadLevel不要小于100,要么就用0
单位注册时不要把新加入的东西插入原来的列表中,任务中触发调用的列表是用序号的



删除|1楼2009-12-09 18:35回复
    高手不敢当……抱歉,调色板没改过。不过别的贴有,刚才我还看到了,忘了……主菜单按钮的调色板是sdbtnanm.pal。一般如果cache.mix里没有适合的调色板的话就在和那个shp同一个mix里找。


    删除|3楼2009-12-09 21:17
    回复
      晕了,勘误都发错了…删了重发…
      勘误:由于时间紧任务重把FLH数值的计算方法打错了…抱歉!正确的方法是:F是正确的;L是当人面向下时,偏左取负值,偏右取正值,其余不变;H是人面向右时读出纵坐标差值,减去L的一半(带正负号),再乘以7。


      删除|6楼2009-12-10 03:57
      回复
        比如一个步兵,在他向右开火的帧中发射点距图片中心向右偏移16像素、向上偏移13像素,向下开火时向左偏移2个像素。那么F=16*6=96,L=-2*6=-12,H=(13-(-2)/2)*7=98,再取个好数,得FLH=95,-15,100。


        删除|7楼2009-12-10 04:10
        回复
          F=Front L=Left H=Height
          就这么记


          删除|8楼2009-12-10 08:27
          回复
            【补充】
            动画在ArtMD.ini中可以规定伤害。但是这个伤害的单位是点数/每秒钟。也就是说每15帧。伤害的弹头定义于RulesMD.ini的CombatDamage\FlameDamage2,默认为Fire2。这是红警1中用来实现喷火兵喷出的火焰对建筑物的持续性燃烧伤害,但是在红警2中已经没有这个东西了。所以,我们可以利用这个东西做出一个特殊效果的动画,比如某个弹头爆炸后生成一个时间较长的闪电,Damage=1000,弹头CombatDamage\FlameDamage2=IonWH,那么任何从此经过的单位都会被闪电“击中”而死亡。如果改成LoopCount=-1就更猛了……


            删除|9楼2009-12-10 17:05
            回复
              在PCX转SHP的过程中调色板会丢失。
              也就是说PCX图像只保留了颜色索引。
              所以用Photoshop等软件进行渲染,它更改的是调色板,没有更改颜色索引,当然会掉色。
              解决方法就是在用XCC转换成SHP时确保勾上View→Palet→Use for conversion,进行调色板转换。


              删除|12楼2009-12-10 19:46
              回复
                楼上请说明是几楼


                删除|14楼2009-12-12 04:16
                回复
                  【补充】VXL文件FLH计算方法
                  VXL图形是从中心开始计算的,所以在截面上量出发射点的FLH距离就行了。
                  但是实际这么做行不行呢?不行!打开VXLSE,点击Section→Voxel Header→Misc,出现Scales、Bounds两组数据,这是什么呢?这就是控制显示方式的地方。
                  Scales只有一个数据Scale,控制hva文件里的数据缩放比例,也就是说hva里向量扭曲1个单位映射到vxl里是多少单位。实际是由于向量的方向与长度无关,所以这个只对向量平移,也就是hva用XCC转换成csv之后每个向量的第四个参数有效果。
                  Bounds包含六个数据,分别是Min和Max的X、Y、Z。它们控制了我们在VXLSE里看到的单位在游戏中的表现方式。六个坐标描述了一个长方体,我们的单位将被拉伸缩小恰好填满这个区域。打比方来说,Z轴是前后方向,那么如果我们将MaxZ和MinZ都加上10,单位将被整体向前平移10个像素;如果我们使MaxZ和MinZ的差值变成原来的一半,单位在前后的方向上将被压缩成一半。
                  所以,计算VXL的FLH是相当复杂的。首先,计算XYZ方向的缩放比率,然后找到原点在VXL上的位置,再根据发射点和原点之间的坐标算出ΔX、ΔY、ΔZ,分别乘以6,然后根据(注意VXLSE 1.2c在编辑模式中左右是反的、预览是正的,VXLSE 1.38没这个问题)X,Y,Z→L,H,F的方法调整下顺序就行了(用VXLSE 1.2c的朋友请取L的相反数)。


                  删除|17楼2009-12-13 20:02
                  回复
                    那不是标准的pal格式,只有EA的游戏才认,应该用特殊的软件打开(报歉我忘了叫什么)


                    删除|20楼2009-12-16 23:34
                    回复