求一张魔兽争霸地图怎么添加图


· TA获得超过3.3万个赞

rn都会给出录象嘚地图的

是某些大型比赛的特定图吗[带广告的图]

你去录象下面看看有没有地图包下载


你对这个回答的评价是

下载百度知道APP,抢鲜体验

使鼡百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的***

要做的是一个3C中的人物选择功能也就是当小精灵进入能量圆的时候选择对应的英雄,这是一个3C最普通的选人功能那么动手了。

首先找到地图编辑器编辑器位于魔兽目录下,名为WorldEditor.exe(世界编辑器)双击打开。第一次使用地图编辑器系统会自动为我们创建一张64*64大小,环境为罗丹仑的夏天的新地图如果想要手动创建新地图,可以通过点击菜单栏的文件 - 新地图/File - New Map来创建如果想要关闭在打开编辑器的同时创建新地图的功能,可以同过选择攵件 - 参数设置 - 常规 -

地图创建完毕以后看见的就是这个地图编辑器的组成了按2下G关闭坐标格的显示。在制作上面提到的功能以前让我们先做点准备工作。首先既然是选择英雄那么英雄自然是必不可少的,按U打开单位编辑面板在这里可以选择我们所希望的单位放置到地圖上,我选择了恶魔猎人(Demon Hunter)血巫师(Blood Mage)和巫妖王(Lich King),当然各位如果看上其他英雄请随意这并不会影响后面的制作。顺便说说在单位面板中切换种族的方法是在第三行左边的那个扩展菜单里面选择希望的种族由于选择英雄的时候所看见的英雄是不被我们控制的,必須选择了以后才能控制因此一般的做法是将英雄更改为中立单位,更改的方法是双击放置在地图上的英雄选择常规 - 玩家 - 中立无敌意/General - Player - Neutral Passive。紸意各英雄之间不要间隔太远否则让小精灵跑来跑去的很麻烦。放好英雄以后当然还要在英雄面前放个能量圆作为小精灵进入选择用能量圆可以在单位面板的中立敌对分支中找到。最后再放上选英雄用的小精灵由于多个玩家的选择英雄的原理是相同的,所以这里我们呮做3个玩家的选择因此只放属于3个势力玩家的小精灵。如

工作就算是完毕了接着开始做功能部分,要用到触发器

由于是初次介绍,為了不扰乱大家的思维所以我对触发器的原理不做太多的介绍,大家只需要知道触发器的作用就是可以以事件的方式来实现一些功能就鈳以了按F4打开触发器编辑器/Trigger Editor,删除默认的那个触发器,那是为MEELE准备的可以看见在魔兽地图编辑器中,一个触发器是由事件(Events)环境(Conditions),动作(Actions)三部分左右这三个部分之间的关系可以用一个简单的例子说明:“火药接触火以后爆炸”。在这里火药与火接触就是事件,只有二者接触才会发生以后的动作;而火药接触的对象必须是火才会爆炸所以

火在这里作为环境,限制火药爆炸需要的条件;火药爆炸就是动作是在与火接触以后引发的动作。在触发器里面我们可以根据需要自己修改事件环境,动作这三部分的内容比如可以将吙药与火接触爆炸改为与水接触爆炸。那么有了以上概念来看看选择英雄的制作方法,首先英雄必须在发生了一个事件以后才会被选择而这个事件在这里就是:小精灵进入能量圆;但是在这里必须限制只有小精灵进入能量圆的时候英雄才会被选择,其他种类的单位进入則什么都不会发生于是整个触发的环境 - 也就是限制条件也有了,就是:进入能量圆的单位类型是“小精灵”;最后就是动作了英雄被選择,其实选择英雄的动作就是把英雄的从中立单位更改为玩家势力控制的单位把上面所说的步骤以触发的方式写出来就是这样的:

一個单位进入能量圆范围内

进入的单位的类别是“小精灵”

把能量圆对应的英雄的控制者改为选择英雄的玩家

现在再按照写出来的触发在地圖编辑器中寻找对应的选项。

创建一个新的触发/New Trigger方法是在触发编辑器右方的窗口中按鼠标右键选择新&lt触发器/New Trigger&gt,新触器发会被自动命名为“为命名触发00X”触发器的名字可以通过在选择触发以后按F2来修改。然后点击新建的那个触发在右下方的触发编辑窗口中鼠标右键,选擇 新事件/New Event在出现的选单中选择 单位 - 单位进入区域/Unit Region,这时候窗口会自动切换到大地图要求我们选择一个区域,这里要解释一下在魔兽中我们平时所看见的例如进入能量圆,或者进入花园进入洞穴诸如此类“进入某个地点”的情况,其实并不是进入了我们看见的地方洏是进入了事先放置在能量圆,花园洞穴等位置上的一个区域(Region)。而现在我们要做的正是放置这么一个区域并且在事件中选择他作为尛精灵进入的区域在大地图上可以看见

面板已经自动切换到区域面板(直接打开区域面板的快截键是R),点击面板上坐标样的按钮使之處于按下的状态按住右键拖动鼠标在能量圆上画一个和能量圆大小差不多的区域出来,再次点击面板上的按钮使之处于弹起的状态然後点选刚才放置的区域,会自动切换回触发编辑窗红色字体部分也会被刚才所选的区域的名字取代,连续确定2次事件便做好了。

g Unit的意思是“进入单位”这里指进入区域的单位Equal to的意思是“等同于”。

最后是动作/Actions, 在这里先整理一下有哪些动作需要执行:

1由于选择好英雄鉯后小精灵会消失,所以在动作的开头要从游戏中移除小精灵

2,更改被选英雄所属的势力为玩家操纵的势力

3,将选好的英雄移动到指萣位置也就是3C中的基地。

4由于英雄只能被选择一次,所以在动作的最后要关闭整个触发使之不再执行

对应以上4条的动作分别是:

这樣整个触发就完成了,对照这个触发再将选择另外2个英雄的也完成最后保存地图,保存的时候会提醒你为每个势力放置开始点如果没囿放置,会自动为你在地图任意区域放置手动放置的方法是在单位面板中选择开始点的图标然后进行放置。保存地图以后按Ctrl + F9测试一下吧~另外别忘记在菜单栏设定 - 玩家/Scenario - Player&gt中将势力2和3的控制者设置为玩家/User,否则在游戏里就不能选择势力23了。

刷兵(有的地方把这个叫做孵蛋峩完全不能理解…………)。简单解释就是每隔一定时间产生一些单位在基地附近那么废话不多说,下面开始介绍怎样制作

大家都知噵在3C中兵是每隔一定时间就会自动产生的,在触发器中我们将这种每隔固定时间就会自动发生一次的事件叫做“周期性事件”,一般来說经常通过以下两种途径来实现事件的周期发生:

第一种是通过触发器中的循环事件来实现的(也有将这个叫做回圈的)在触发器中新建一个Action(动作),在下拉菜单中找到这样的句子——For Each Integer A,Do Multiple Actions(对于所有的整数数值A执行若干动作),点击确定以后会看见在Actions(动作)这个类下媔已经增加了这样的一个Action(动作):

(对于所有的整数值A从1到10,执行动作 循环 - 动作)

我详细解释一下这个Action的作用For

会重复执行20次动作,假设是from 5 to 10则只会执行5次动作至于为什么不直接用from 1 to 5来代替from 5 to 10,这是在某些时候必须

用到的功能至于具体使用的时机,为了不使大家头脑混乱现在暂时不做解释,等到实际使用中遇到类似情况再做说明

现在为了更形象的说明这个功能,我们来做个简单的范例按F4打开触发器編辑器,新键一个Event(事件):Player - Player 1 (Red)

Player(玩家) - Cinematic Skipped(电影被跳过)这个事件的作用是当玩家1按下ESC键的时候就会触发动作。接着增加一个动作

这样就將需要重复执行动作的次数定为10次然后在Loop - Actions下面依次添加这些动作:

(游戏 - 向所有玩家显示信息 : 将作为循环序列的整数A的值转换为字符串类型[关于数据类型,这里不多做解释大家只需要知道只有字符串类型的数据才能被作为信息显示出来就可以了]。在这里“作为循环序列的整数A”其实就是用来记录已经重复执行了多少次动作的一个数值)添加这个动作的顺序为New Action(新动作) - Game(游戏) -

(等待1.00秒,这样在每佽执行动作以后都会间隔1秒才执行下一次动作)添加这个动作的顺序为New Action(新动作) - All(所有) - Wait(等待)

然后在整个循环Action(动作)的后面(紸意,是在整个For Each Integer的后面不要添加到Loop - Actions下面去了)添加这个

作用是在整个循环结束以后显示一句话以标明循环结束了。当然其中的finish大家可以隨自己爱好随意更改

中后面数字+1减去前面数字的次数,而当所有的重复次数被执行完毕以后则会继续执行整个循环后面的动作。这样僦很简单方便的实现了周期性事件的执行但是用这个Action(动作)实现的周期性事件有两个弊端,第一是循环执行的次数有限大家也看见叻,在这个Action中无论如何也要求输入2个数字以确定执行次数;第二是每次执行动作之间的时间间隔有最小限制在上面的例子中,大家将Wait 1.00 seconds(等待1秒)改为Wait 0.00 seconds(等待0秒)以后进入游戏测试会发现即使是0秒,也会有微小的等待时间(大概0.1~0.4秒左右视电脑配置而定),这样在执行某些重复时间间隔很小的周期性事件的时候就完全无法实现了,对于必须排除以上两种限制的周期事件就必须用到另外一种方法,periodic event(周期循环事件)和For each Integer不同的是,这是一个Event(事件)而不是一个Action(动作)

添加这个事件的方法:New Event(新事件) - Time(时间) - Periodic Event(周期事件),添加完成鉯后可以看见在Event这一类下面出现了这样的Event(事件):

(时间-每1.00秒游戏时间)作用很明显就是每1秒都会执行一次Actions(动作)中包含的所有动莋,Every 1.00 seconds中的数字用于指定每多少秒执行动作对于这个事件的功能,我们仍然可以用1个简单的范例来说明

新建一个触发器,Event(事件)就用仩面那个事件将1.00调整为0.50,也就是每0.5秒执行1次然后按下Ctrl+B打开变量编辑面板,(由于变量是第一次接触所以我暂时不详细说明,大家按照我说的做就是了以后会对变量和数据类型做详细介绍。)点击面板上方的绿叉按钮在出现的窗口中下方的下拉菜单选择Integer(整数)然後在上面的输入栏中为这个变量随便起一个名字,[图:var.gif]这里我用的名字是i1便于下面统一介绍这样就建立好了一个类型为“整数”型的变量。暂时将这个变量放在这里备用回到刚才建的触发,在Actions(动作)类中添加如下动作:

这个Action(动作)的作用是每次循环执行动作的时候讓i1这个整数的值等于它当前的值+1比方i1当前的值是5那么执行动作以后i1的值就是

添加方法同上,作用是显示i1的值

然后进入游戏测试,会看見在游戏中将自动

以每0.5秒的速度显示数字数值为上一次显示的数字+1。由此总结出Periodic Event(周期循环事件)的特点是会在激活触发以后以Event(事件)中规定的时间间隔来重复执行Actions(动作)中包含的所有动作并且只要该触发没有被关闭,就会一直执行下去

以上就是两种最常见的周期性事件的实现方法,那么在此理论基础上我简单叙述一下刷兵触发的原理

刷兵触发就是一个周期事件,其动作的内容就是在指定位置創建单位下面我简单的将这个触发写一下,并且加上少许说明相信大家在对上面所讲的内容理解了的情况下应该立刻明白其中的道理。

[单位 - 为玩家1(红色)创建一只狼在农场0009所在的位置面向系统默认的方向]

整个触发如果用语言表达的意思就是每隔3秒钟只要农场0009依然存活,就创建一只狼在农场所在的位置

进入游戏进行测试以后,大家应该不难发现这个触发有这样一个弊端:创建的单位没有数量限制哪怕地图上已经有了几百,几千只狼只要农场0009仍然存活,就会不断有新的狼产生对于这种情况,我们可以通过加入如下的一个简单条件来给予限制:

is alive) Equal to True是指所有“仍然存活”的单位由于这个条件比较复杂,下面列出详细的添加方法:

- 点击“Triggering Unit(触发单位)”将之改为“Matching Unit(匹配单位)” - 连续确定2次点击“FootMan(步兵)”将之改为你在Action(动作)中所指定的生产单位种类,在这里我选择的是“狼” 接下来点击“Condition2(條件2)” - 点击图示位置[图bolc.gif] - 在下拉菜单中选择“Unit is Alive(单位仍然存活)”

最后一直点击确定回到第一层菜单将中间的“Equal to(等同于)”改为“Less Than(小於)”再点击最后那个0将其改为你所希望的最大出兵数量,到此整个Condition(条件)就完成了

以上就是一个限制了出兵最大数量的刷兵触发的基本原理但是在实际制作中并不是这么简单,对应很多情况需要做出调整有兴趣的可以自己去研究研究。

参考资料

 

随机推荐