Your First Left 4 Dead Map

From Valve Developer Community
< Zh
Jump to: navigation, search
English (en)Português do Brasil (pt-br)Русский (ru)中文 (zh)中文(台灣)‎ (zh-tw)Translate (Translate)

(注意:这个教程的zh-cn版大部分内容是通过zh-tw版转码而成的,对于语言上的冲突请谅解。) 这个教程会教大家制作一个基本的Left 4 Dead(en)地图。教程会教大家如何使用一些在必需Left 4 Dead(en)地图上必要的Entity(en) , 例如Director,生成可用的武器和生成丧尸等等。还解释一些地图制作者常犯的错。

这个教程对象并不是入门级的地图制作者,所以教程所用的技巧可能看不懂,建议先看Basic level construction(en)


Tut title.png
本教程地图的布局。

这个教程会教大家制作一个一共包含两个章地图的战役,但永远玩不完,没有结局。听起来很搞笑,不是吗?这个教程目标不是完整的战役,但会教大家如何制作一个基作的基本的L4D地图。
首先,制作一个可玩的L4D地图需要以下的东西:

  • A director (导演)
  • 生还者开始地点
  • 两道安全门
  • 武器,弹药和药包
  • 救出死去同伴的密室
  • 转换地图
  • 雾的控制器 (粒子效果需要)


以下教程会根据右面那张图的布局。 还有的是Hammer并没有中文版,所以一些功能上的字眼仍然使用英文。

生还者开始地点

首先在上图最左边(区域红色1)里面增加一个Entity名叫info_player_start。之后,增加另外两个Entity,info_directorenv_fog_controller,这两个Entity放在那里都可以。为了方便,建议都放到区域1。 之后确保env_fog_controller的「Properties」内,「Fog Enable」是「Yes」的。

在这里,我们可以新增加以下补给的Entity:

  • 四个药包,weapon_first_aid_kit_spawn
  • 两支枪; weapon_smg_spawnweapon_pumpshotgun_spawn
  • 弹药 weapon_ammo_spawn

开始地点需要一道安全门,新增一个Entity叫prop_door_rotating_checkpoint。在「Properties」里,更改名称(Name)为「checkpoint_exit」,「Spawn Position」设定成「Closed」,「world model」设成「models/props_doors/checkpoint_door_01.mdl」和确定「Flag」内的「Starts Open」没有被选取。还有确保安全门上「EXIT」的标志是向内的。

生还者开始地点大致上完成,最后增加一个Entity叫info_landmark,并命名为「landmark_a」,之后会解释为什么。

救出死去同伴的密室

之后我们会制作两个小密室(上图区域2),救出死去同伴。在第一个小密室里,大家只需要增加四个Entity,包括三个info_survivor_rescue和一个prop_door_rotating。在第二个小密室里,同样做法。 我们需要一道阔54个单位,高104个单位的门,所以prop_door_rotating里的「world model」设成「models/props_doors/doormain01.mdl」。

安全室和转换地图

现在我们制作一个可以转换到下一个地图的安全室。安全室(区域3)门口位新增一个一道门prop_door_rotating_checkpoint,这里与之前的安全门有少许不相同,打开它的「Properties」,并把它命名为「checkpoint_entrance」,「world model」设成「models/props_doors/checkpoint_door_02.mdl」,亦都确保「Flag」内的「Starts Open」是选取了的。还有安全门上「小屋图示」是向外的。

我们要转换地图需要增加info_landmarktrigger_changelevel。首先我们在安全室的中间位置增加info_landmark,之后将其命名为「landmark_2」。现在我们在安全室内建立一个大型的方块(Brush),方块的大小要盖著整个安全室,不可有空位,最低限度需要贴著墙边,穿过墙都不要紧。之后开启trigger_changelevel的「Properties」,「landmark name」设成「landmark_b」和「Next map」设成「1st_l4dmap_b」。

制作路线(Nav)

要令电脑玩家懂得在你的地图上走动,无论是生还者或感染者,你都需要为你的地图制作一个路线图(mapname.nav 档案)。制作一个基本的路线图,你需要编译你的地图,并进入游戏,成功载入你的地图。当地图完全载入,你的准星要描著地上,开启指令控制台(按~键),输入以下指令:

sv_cheats 1
nav_edit 1
nav_mark_walkable
nav_generate

当你选入了nav_generate,地图会自动运算路线图。如果你运气好的话,当运算完毕时你不会再看见错误信息「NAV ERRORS - Map is unplayable!」,因为nav_generate亦都会为你的路线图设定属性(Attribute)。

用「select_with_attribute A」指令以看到一些属性变化。选取了的区域(淡黄高亮)是所「Marked」的属性。例子,现在我们想找CHECKPOINT的位置,使用「select_with_attribute CHECKPOINT」指令,选取了的区域(淡黄高亮)就是CHECKPOINT位置。

选入「nav_edit 1」指令,之后选入以下指令:

select_with_attribute DOOR
有门的地方会被选取。
select_with_attribute CHECKPOINT
安全室会被选取。
select_with_attribute RESCUE_CLOSET
救同伴的密室会被选取。
select_with_attribute ESCAPE_ROUTE
有很多区域会被选取,由生还者玩家开始地点到安全室。
using select_with_attribute DOOR
using select_with_attribute CHECKPOINT
using select_with_attribute RESCUE_CLOSET

NAV Marking

在这个情况,「nav_generate」所生成的路线图是十分完美的,所有相关的属性都已经为我们设定好了。但是有时候运气不是太好,需要手动设定一些属性。你要用指令「mark A」,A是你想设定的属于。

例如,「nav_generate」不能自动设定安全室的属地,你需要以下指令:

sv_cheats 1
nav_edit 1

现在到安全室,准星向著安全室的地上,打开控制台,选入:

  •  mark CHECKPOINT

有时候安全室内有多个区域需要设定成CHECKPOINT,我们可以用指令:

  •  nav_gui
the nav mesh now with both checkpoints marked

方便选取多个区域。选取后,同样做法,在控制台,选入「mark CHECKPOINT」。

如果你设定错误,可以用以下指令:

  • nav_clear_attribute A
    • 你想移除某区域内属性A (eg: nav_clear_attribute CHECKPOINT)

或者你想移除整个地图的属性,可用以下指令:

  • wipe_attributes

当你完成了设定属性后,切记储存,指令是「nav_save」。之后你需要用指令「nav_analyze 」分析一次你的地图。

感染者出现在你的地图

现在你的路线图已经完成,你需要选入以下指令才会有丧尸生成:

director_stop
director_start

制作第二章地图

如果你已经明白如何制作你第一个地图,第二个图基本上没有难度。

附加事项

还有很多武器可以使用,你不一定只用SMG或Pump-shotgun:

  • weapon_rifle_spawn
  • weapon_autoshotgun_spawn
  • weapon_hunting_rifle_spawn

相关资料