抗压背锅吧 关注:5,754,237贴子:165,915,918
  • 5回复贴,共1

盘点冰蛙在dota1中那些开创性设计

取消只看楼主收藏回复



IP属地:湖南来自Android客户端1楼2022-12-17 20:57回复
    不得不佩服早年间的冰蛙等一众 不存在踩什么抬什么


    IP属地:湖南来自Android客户端3楼2022-12-17 20:58
    回复
      top5 屠夫肉钩
      dota1只是war3的一张地图,事实上,dota1中的许多技能,都是war3地图编辑器不支持的,但是ELF、羊刀、冰蛙几代作者,就是能用各种匪夷所思的方式来实现。
      屠夫的钩子,war3原生中并没有这种长距离向自己移动的技能模型——效果模型和动画模型都没有。
      那么这个钩子技能是怎么实现的呢?
      先说动画模型:屠夫链条的每一节,都是一个单位;这个单位的模型其实就是一把箭,每个箭头的指向都与屠夫的出钩方向平行,每个刚出现的箭头与屠夫连接而成的线也与元线相平行,最终无数个箭头连在一起就看起来像链条。
      再说效果模型:钩子的顶端就是一个碰撞物体,钩子顶端会判定100码范围内是否存在物体,如果存在物体,则不断的对该物体造成瞬间的眩晕与强制位移(速度非常快),只到该物体运动到屠夫身边50码左右的位置。


      IP属地:湖南来自Android客户端4楼2022-12-17 21:01
      收起回复
        top4 拉比客偷技能
        最容易出bug的技能 当然冰蛙团队已经做的很好了 这个技能对所有英雄系统架构要很高的要求 因为偷技能是偷对方英雄上一次使用的技能 很多人觉得不就是把对方英雄技能复制过来就可以了吗 但是war3不是这样 war3里的技能基本上由 不可见的单位代为释放的,简而言之就是“马甲”,而一般技能都有一个对应的方法,这个方法里面调用一个或则多个马甲。
        首先,我们要给给拉比克一个变量,同时添加一个定时器,让定时器每隔120+10*lv(大招等级) 清空一次变量,之后在拉比克放技能后只需要寻找对方技能对应的函数,存到这个变量里面,然后调用即可。
        dota1时期基于war3,而war3不允许自定义技能,但触发事件(比如 攻击时如何如何,走到一个区域时如何如何这种)是可以随意编写的。
        就是说 像小Y的束缚 你可以直接用,但像蝙蝠骑士的你却不能直接写,没有编辑技能这个选项。最后的妥协方案是蝙蝠开大时在他身边创建一个隐身无碰撞的单位,然后由他释放枷锁,当你移动时强行将这个隐身的j和敌人一起偏移相应的坐标。


        IP属地:湖南来自Android客户端7楼2022-12-17 21:18
        收起回复
          top3 虚空的大招
          在dota1中,虚空大招使用的一种叫做暂停的机制。
          被暂停的单位会像被眩晕一样,无法使用技能、物品,无法移动或攻击。
          除此之外,被暂停的单位将失去闪避、隐身、伤害格挡,还有一些能够造成AOE的技能(基于永恒献祭制作的技能)。
          被暂停的单位身上的buff/debuff将暂停计时,直到暂停状态结束。
          从这个层面来说,dota1中的时间结界还真的是“锁住了一整块的时间,在结界中受到控制等效果会在结界结束后重新计算, 希望lol也出一个这样的技能。


          IP属地:湖南来自Android客户端8楼2022-12-17 21:34
          回复
            top2 法球类技能
            怎么说呢 这个设计我觉得真的是非常逆天(不是nt) 而且机制特别复杂 诸如黑鸟的法球(根据当前蓝量造成伤害) 沉默的智慧之刃(根据智力造成伤害) 毒龙的吐毒 小黑的冰箭 在我看来 dota1团队是想让平A不那么枯燥的设定 然后这些技能设计起来非常头大(不赘述了。) 真的很佩服当时的设计团队 。


            IP属地:湖南来自Android客户端10楼2022-12-17 21:52
            回复