polytopia吧 关注:1,437贴子:4,619
  • 12回复贴,共1

强制推动机制详解

只看楼主收藏回复

强制推动指在已有单位的格子上生成新单位(如制造超级单位/兽人,或在遗迹中得到剑士)时,原先的单位被迫移动到邻近格子的现象。利用好此机制可以达成良好的战术效果。本贴将详细介绍这一游戏机制并给出一些实际应用案例。


IP属地:福建1楼2024-07-05 13:43回复
    省流简略版
    若被推动的是敌对单位,则该单位被推向原位置。
    若被推动的是已移动过的己方单位,则该单位沿原移动方向移动一格。如果它被推动前攻击了敌方单位,则向攻击的方向移动一格
    若被推动的是尚未移动过的己方单位,则该单位向地图中央移动一格
    盟友单位被超级单位推动的效果和敌对单位相同,但若在盟友单位所在格制造兽人,兽人会直接消失。
    如果以上描述的移动方向被地形/其他单位阻挡,则移动到转向角度尽可能小的格子上,角度相同时逆时针优先。如果无处可动,则被推动单位直接消失。


    IP属地:福建2楼2024-07-05 13:45
    收起回复
      以下是详细解析


      IP属地:福建3楼2024-07-05 13:47
      回复
        朝向
        每个单位都有一个叫做“朝向”的参数,用于控制单位面对的方向,同时单位被强制推动时的移动方向也主要受此影响。朝向有八种:北(N)、东(E)、南(S)、西(W)、东北(NE)、东南(SE)、西北(SW)、西南(SE),游戏地图的上角方向为北。游戏中单位贴图的朝向看起来只有东西两种,这和实际的朝向并不完全一致的。
        当被推动时,敌方单位和盟友单位的优先移动方向与其朝向相反,友方单位与其朝向相同。
        下面介绍改变单位朝向的方式


        IP属地:福建4楼2024-07-05 13:51
        回复
          先说令人迷惑的新单位朝向,这是由新单位生成的位置决定的。
          为方便解释这个问题,需要引入“中心格”的定义:边长为奇数的地图的中心即为中心格,边长为偶数的地图中心四格中靠北的格子为中心格。中心格生成的新单位总是朝南。
          以中心格为原点,西南方向为X轴正方向,西北方向为Y轴正方向建立直角坐标系,则新单位的朝向(heading)与其位置坐标(x,y)的关系为

          heading的可能取值为0到7八个整数,依次对应东北、东、东南、南、西南、西、西北、北八个朝向。
          round(x)表示四舍五入取整。
          此处的atan2(y,x)定义为


          IP属地:福建5楼2024-07-05 14:16
          回复
            只看公式不够直观,具体情况如图所示。
            121:

            196:

            256:

            324:

            400:
            900:


            IP属地:福建6楼2024-07-05 14:25
            回复


              IP属地:江苏来自Android客户端7楼2024-07-06 22:22
              回复


                IP属地:江苏8楼2024-07-11 11:24
                回复
                  移动,攻击,遭受攻击均会改变单位的朝向。
                  移动的效果是使单位朝向变为其移动轨迹最后一步的方向。
                  攻击的效果粗略讲就是使两个单位“面对面”。


                  IP属地:福建来自iPhone客户端9楼2024-09-20 18:44
                  回复
                    如果将要被强制推动朝向的目标单元格已被其他单位占了呢?被推到其他格子感觉是随机的,有没有人总结出规律呢?我只知道周围都被占了的时候这个单位会原地消失


                    IP属地:北京来自iPhone客户端10楼2024-11-18 14:21
                    收起回复