皇家守卫军吧 关注:90,955贴子:1,140,195

各位,进行全代融合的最后一块基础拼图,终于做好啦

只看楼主收藏回复

首先得先向fl版作者道歉,因为接下来,我需要用fl版来作为对比。为什么要用fl版?因为流辉一枪他看过我写的代码,他也承认他的代码质量比不上我。如果用别的作者来对比,他们大概率没看过我代码,肯定会产生对抗的心理。所以就委屈一下流辉一枪了
那么接下来先召唤四个四代英雄镇一下场子。

不好意思。接下来应该是先从底层逻辑的改动,开始说吧。
众所周知,铁皮五代原版一直是不支持旋转精灵图的,并且每张图集都需要加一个小白点上去,来给血条用。这种做法十分不科学。
于是我改了渲染的逻辑,现在可以支持旋转精灵图了,并且也不需要加小白点了。顺便说一句,我修正了铁皮的骨骼动画的渲染逻辑。为何是修正?因为铁皮对于旋转的处理是有问题的。另外,铁皮的骨骼动画的offset.y的方向和普通动画的offset.y的方向是相反的,非常反人类,所以我把它纠正过来了。
下图红线处,就是铁皮有问题的部分。


IP属地:广东1楼2025-08-28 18:01回复
    然后说一点没那么底层的改动吧。
    比如反甲,骨龙版里的反甲有两种选项,一种是百分比反甲,一种是固定数值的反甲,并且反甲的伤害类型可以设置。如图所示:

    而铁皮原版只能设置反甲的百分比,并且只有真实伤害一种类型。
    再比如,杰克南瓜灯通过平a释放累积的伤害。

    这个机制也是需要修改system.lua文件来实现的。


    IP属地:广东2楼2025-08-28 18:16
    收起回复
      2025-12-10 09:23:22
      广告
      不感兴趣
      开通SVIP免广告
      接下来,先去吃个饭,吃完再说。


      IP属地:广东3楼2025-08-28 18:18
      收起回复
        支持每个为爱发电的高技术力大佬流辉大佬也很优秀,希望大佬不要闹得不愉快,能强强联合才有更多优质的改版能玩


        IP属地:浙江来自Android客户端4楼2025-08-28 18:21
        回复
          你加油我从头到尾都比较佛,看到好用的代码自然是先拿来用而且去年11月底和三个w商量做改版的时候就是拿你举例的


          IP属地:北京6楼2025-08-28 18:39
          收起回复
            虽然看不懂,但是觉得很厉害


            IP属地:广东来自Android客户端7楼2025-08-28 18:45
            回复
              为FL和古龙大佬和彩,希望强强联合实现全代大联合


              IP属地:重庆来自Android客户端8楼2025-08-28 18:46
              回复
                铁皮反人类的代码可太多了,修不完根本不想修


                IP属地:广东9楼2025-08-28 19:15
                回复
                  2025-12-10 09:17:22
                  广告
                  不感兴趣
                  开通SVIP免广告
                  虽然看不懂但是可以无脑喊一句牛逼


                  IP属地:上海来自iPhone客户端10楼2025-08-28 19:26
                  回复
                    接下来就是particle_system的改动了。这里科普一下什么是particle_system,说白了就是用来做尾焰特效的一个东西。但是吧,铁皮的particle_system并不支持骨骼动画,而且还不支持水平翻转。不支持骨骼动画的话,我们可以用普通动画来做,虽然要麻烦画图的人了。但不支持水平翻转的话,那用来做particle_system的动画都必须对称,
                    如果不对称,那相应的投射物或者单位进行水平翻转的时候,就会露出破腚,让人贻笑大方了。
                    什么你说单位也有particle_system,不应该只是投射物才有的吗?不不不,像四代的蚀骨之魂就是有particle_system做出来的特效的。
                    而且杰克南瓜灯的鬼马同样也是有particle_system的特效,并且还是多重particle_system特效。
                    所以为了达到原版级的美观性,也为了后人的方便,我修改了原有的particle_system逻辑,让其支持骨骼动画和水平翻转。


                    IP属地:广东11楼2025-08-28 19:40
                    回复
                      接下来是预判逻辑的修改。众所周知,铁皮的防御塔经常出现打飞机,不,打空气的情况。
                      这一半原因是铁皮的业务逻辑没写好,另一半原因则是predict_enemy_node_advance函数的逻辑有问题。

                      如上图所示,铁皮的预判逻辑,居然是用投射物的飞行时间(flight_time)* 单位的移动速度(speed)/ 平均的节点距离(average_node_dist),从而算出单位将会移动多少个节点,再算出单位要到达哪个节点。
                      这里科普一下节点。kr的一条路径实质上,是由若干条线段构成的,线段两端的点就是节点,而平均的节点距离,铁皮代码里的规定是6。
                      但实际上,铁皮并不一定会遵照这个规定。所以就会出现算不准的情况。
                      所以我又优化了一下铁皮的代码,让算出来的误差更小,同时让predict_enemy_node_advance函数可以估算逆行的单位的位置。
                      你们感兴趣的话,可以去看一下骨龙版的代码。这里我就不继续水字数了。


                      IP属地:广东12楼2025-08-28 20:13
                      回复
                        又有事情做了,可能要明天继续。这里给自己插眼。


                        IP属地:广东13楼2025-08-28 20:16
                        收起回复
                          fw大学生都看不懂大佬的代码


                          IP属地:浙江来自Android客户端14楼2025-08-28 20:40
                          收起回复
                            太牛逼了,期待那一天的到来!


                            IP属地:广东15楼2025-08-28 20:43
                            回复
                              2025-12-10 09:11:22
                              广告
                              不感兴趣
                              开通SVIP免广告


                              IP属地:浙江来自Android客户端16楼2025-08-28 21:11
                              回复