自定义地图首页地图制作教程

数据模块

V. 为单位添加动画

你可能已经注意到了,在测试技能时,人民的英雄这一单位只是呆呆地站在那里,当然技能的确是被使用了,但他没有任何一个类似抬抬手的动作表现。手榴弹就像从他肚子里射出来,脑子想想就放置了炮塔又打爆了跳虫。要让人民的英雄在使用技能时表现出合适的动作动画,我们便要深入动作者类目中的内容,如效果类目,动作者包含的设定十分丰富,但较为复杂。

  • 单位、技能、效果及其它类目定义了《星际争霸II》的一切内容,而动作者类目定义了每一种内容的外在及声音表现。在游戏中见到的每个单位、效果和技能都与动作者相关联。

    • 有关单位如何运作的各项信息都保存在单位类目中:
      • 生命
      • 能量
      • 技能
      • 移动速度


    • 单位的外形信息保存在动作者中:
      • 模型
      • 动画
      • 单位图标
      • 声音


  • 同效果类似,动作者也有不同的类型。动作者可用于控制:
    • 单位
    • 飞弹
    • 声音
    • 效果
    • 其它


  • 通过“动作者消息”,我们可以告诉动作者在什么时候做什么事情。每个动作者消息都包含一个事件,零个或更多的条件以及一个消息。
    • 事件 – 在游戏中等待某些事情发生,从而触发要发送给动作者的消息。如,等待恶火攻击某样东西。
    • 条件 – 类似于触发器使用的条件。当事件发生时,我们会检查游戏中的某项条件已符合。如,当恶火攻击某样东西的时候,我们会检查恶火的武器是否已经升级过。
    • 消息 – 即事件发生时,我们想做的事情。如,当恶火攻击时,我们让单位表现他的攻击动画。


不同动作者之间的互动可能会让初级用户感到复杂。现在,我们仅对几个动作者消息进行修改,以便让我们的英雄单位在使用技能的时候拥有对应的动画表现。

  • 打开动作和类目
  • 选择雷诺 – 雷诺
  • 找到并双击“开启+”字段值,打开动作者消息窗口。你可以在这里实际了解事件、条件和消息的概念。


A. 穿刺弹

使用该技能时,我们要让动作者雷诺播放他的攻击动画,即单位会向技能发出的方向举枪射击,看起来像是在发射穿刺弹。

创建事件

  1. 要新建一个事件,右键点击动作者消息列表的任意位置,然后选择添加事件选项。
  2. 选择我们刚刚新建的动作,我们便可以在动作者消息窗口的右侧看到其事件选项。
  3. 信息类型:选中列表中的技能
    1. 可以看到很多不同的信息类型,包括单位创建、技能正在被使用、单位死亡、正在对单位添加或移除行为(状态效果)等等。
    2. 列表中的“选择技能”允许我们选择一个会触发“动作者消息”的技能。


  4. 源名称:选择雷诺突击队员 – 轨道枪狙杀。
    1. 因为我们选择了“技能”作为我们的信息类型,那么“源名称“选项便列出了游戏中所有的技能。


  5. 子名称:选择源施放开始
    1. 因为我们选择了“技能”作为我们的信息类型,“子名称”便列出了一个技能所包含的所有不同阶段。这样我们便可以选择“动作者消息”将在技能具体的哪个阶段得以触发。
    2. 技能阶段可以包括如:当技能开始施放、当技能结束施放、当技能开始或结束引导,或是当技能进入准备施放阶段。
    3. “源施放开始”表示当源(我们的单位)开始施放技能。所以当人民的英雄开始使用轨道枪狙杀技能时,该动作者消息即会触发。


如果我们要一个事件触发两个消息,则应该再创建一个事件,并将所有设置设为同第一个事件相同的内容,然后为其设置一个要关联的消息。如,当创建一个动作者的时候,我们呀播放一段声音或动画。我们可以创建2个事件,命名为“动作者创建”,其中一个包含“创建声音”,另一个为“动画播放”。

创建条件

对于我们讨论的这个动作者消息而言(也包括本教程要创建的其它动作者),我们并不需要设置任何条件。我们将会在以后的教程中讲述条件创建的内容。我们现在只需要了解条件的使用与创建事件和消息的方式很相似。

创建消息

  1. 在我们创建事件时,系统就已经为我们在消息下方自动创建了一个默认的消息。选择该消息,我们便可以在“动作者消息”窗口的右侧看到其选项。
  2. 将“目标”栏留空。“目标”指的是我们要向其发送消息的动作者。因为我们要将该消息发送给当前这一动作者,所以我们不需要填写“目标”。
  3. 将信息类型一栏改为动画播放。
    1. 动作者消息包含很多很多种不同的类型。
    2. 我们可以改变动作者的比例、动作者的颜色/色调、动作者透明度,我们还可以改变该动作者使用的模型。我们甚至可以在动作者消息中创建其它动作者。
    3. 我们不再需要某个动作者时,还可以使用动作者消息来清除动作者,因此如果我们收到的事件为“单位死亡”,那么消息便可以设置为“摧毁动作者”。
  4. 在参数区,选中“名称”字段。在参数区的下方,可以看到名称下拉菜单。在下拉菜单右侧,可以看到“自定义”按钮。将名称下拉菜单项改为任意一个可用的下拉菜单项,或按下“自定义按”钮来创建自己的名称。
    1. 动画的名称不对动画起任何特殊作用,只是用来在其它动作者消息中引用它。
    2. 例如,我们可以在一个消息中说“开始播放动画 FunTimes”,然后在另一个消息中写“停止播放Fun Times动画”。


  5. 另外,在参数区中,选择动画属性。在参数区下方,可以看到动画属性下拉菜单。选择列表中的“攻击”。
    1. 这里包含了游戏中可用的所有属性名的列表。不是每个模型都拥有所有的动画。要查看哪些动画可用于某个特定的动作者,请右键点击“对象列表”中的动作者,然后选择“预览动作者”。

      该操作将打开预览器窗口(我们将在将来的教程中对此做更详细的介绍),并显示动作者的模型和信息。预览器窗口右侧中间位置是一个类目列表。展开“动画序列”类目便可以看到正在查看的模型可以使用哪些动画。

    2. 当你在下拉菜单中选择一个选项时,另一个下拉菜单将会出现,使用该菜单便可对动画做出更多的调整。在本例中,我们不需要做进一步的调整。


  6. 在参数区,将“时间类型”从“自动”改为“时长”,将“时间变量”从-1改为2。该操作可使动画在2个“游戏时间秒”内进行播放。如果我们保留默认值,该动画将以默认的速度进行播放然后停止,实际效果会比技能施放表现所需的时间短一些。
  7. 参数区内的其它内容均保持默认。


现在,技能动画应该已经准备妥当!保存修改,进入游戏开始测试。

B. 投掷手榴弹

在使用这个技能时,我们要让动作者雷诺播放他的法术动画,让雷诺做出抬手投掷的动作,看上去像是在投掷手榴弹。动作者消息的设置如下图所示:

在使用这个技能时,我们要让动作者雷诺播放其法术动画,就像投掷手榴弹技能一样,使其看上去像是扔出了炮塔。动作者消息的设置如下图所示:

现在,我们已经完成了英雄单位其余技能动画的设置,保存修改,进入游戏测试!

正如我们想要的那样!我们创作了我们的自定义英雄单位,人民的英雄,包括生命值、护甲、能量值、自定义的武器以及全新的技能。通过三篇教程的介绍,读者已经对《星际争霸II》编辑器有了一定的了解。我们其实仅仅涉及了编辑器的一些基本功能,但希望本系列教程能够帮助读者打下坚实的基础,能够对地形、触发器和数据部分的内容形成初步的认识,以便将来制作出更为多样的地图。在接下去的教程中,我们将介绍更多有关数据、高级触发概念等方面的内容。同时,游戏和战网也为大家提供了大量的MOD和地图,为大家制作自定义地图提供了很多有关地形、触发器和数据方面的参考。希望大家乐在其中,我们下次见!