Zh-tw/Your First Left 4 Dead Map: Difference between revisions
No edit summary |
m (obsolete language category) |
||
(36 intermediate revisions by 9 users not shown) | |||
Line 1: | Line 1: | ||
{{lang|Your First Left 4 Dead Map}} | |||
這個教程對象並不是入門級的地圖製作者,所以教程所用的技巧可能看不懂,建議先看 | 這個教程會教大家製作一個基本的{{L|Left 4 Dead}}地圖。教程會教大家如何使用一些在必需{{L|Left 4 Dead}}地圖上必要的{{L|Entity}} , 例如Director,生成可用的武器和生成喪屍等等。還解釋一些地圖製作者常犯的錯。 | ||
這個教程對象並不是入門級的地圖製作者,所以教程所用的技巧可能看不懂,建議先看{{L|Your_First_Map|Basic level construction}}。 | |||
---- | ---- | ||
<center>[[ | <center>[[File:Tut title.png]]</center> | ||
[[ | [[File:1st_l4d_map_1.gif|frame|right|本教程地圖的布局。]] | ||
這個教程會教大家製作一個一共包含兩個章地圖的戰役,但永遠玩不完,没有結局。Sounds fun, right? 這個教程目標不是完整的戰役,但會教大家如何製作一個基作的基本的L4D地圖。 | 這個教程會教大家製作一個一共包含兩個章地圖的戰役,但永遠玩不完,没有結局。Sounds fun, right? 這個教程目標不是完整的戰役,但會教大家如何製作一個基作的基本的L4D地圖。 | ||
<br> | <br> | ||
Line 18: | Line 20: | ||
* 雾的控制器 (粒子效果需要) | * 雾的控制器 (粒子效果需要) | ||
<br> | <br> | ||
以下教程會根據右面那張圖的布局。 | 以下教程會根據右面那張圖的布局。 | ||
還有的是Hammer並没有中文版,所以一些功能上的字眼仍然使用英文。 | 還有的是Hammer並没有中文版,所以一些功能上的字眼仍然使用英文。 | ||
{{clr}} | |||
== 生還者開始地點 == | == 生還者開始地點 == | ||
首先在上圖最左邊(區域紅色1)里面增加一個Entity名叫<code>info_player_start</code>。之後,增加另外兩個Entity,<code>info_director</code>和<code>env_fog_controller</code>,這兩個Entity放在那裡都可以。為了方便,建議都放到區域1。 | 首先在上圖最左邊(區域紅色1)里面增加一個Entity名叫<code>info_player_start</code>。之後,增加另外兩個Entity,<code>info_director</code>和<code>env_fog_controller</code>,這兩個Entity放在那裡都可以。為了方便,建議都放到區域1。 | ||
Line 30: | Line 32: | ||
* 彈藥 <code>weapon_ammo_spawn</code> | * 彈藥 <code>weapon_ammo_spawn</code> | ||
開始地點需要一道安全門,新增一個Entity叫 | 開始地點需要一道安全門,新增一個Entity叫<code>prop_door_rotating_checkpoint</code>。在「Properties」里,更改名稱(Name)為「checkpoint_exit」,「Spawn Position」設定成「Closed」,「world model」設成「models/props_doors/checkpoint_door_01.mdl」和確定「Flag」內的「Starts Open」没有被選取。還有確保安全門上「EXIT」的標誌是向內的。 | ||
生還者開始地點大致上完成,最後增加一個Entity叫<code>info_landmark</code>,並命名為「landmark_a」,之後會解釋為什麼。 | 生還者開始地點大致上完成,最後增加一個Entity叫<code>info_landmark</code>,並命名為「landmark_a」,之後會解釋為什麼。 | ||
== | == 救出死去同伴的密室 == | ||
之後我們會製作兩個小密室(上圖區域2),救出死去同伴。在第一個小密室里,大家只需要增加四個Entity,包括三個<code>info_survivor_rescue</code>和一個<code>prop_door_rotating</code>。在第二個小密室里,同樣做法。 | |||
我們需要一道闊54個單位,高104個單位的門,所以<code>prop_door_rotating</code>里的「world model」設成「models/props_doors/doormain01.mdl」。 | |||
== | == 安全室和轉換地圖 == | ||
現在我們製作一個可以轉換到下一個地圖的安全室。安全室(區域3)門口位新增一個一道門<code>prop_door_rotating_checkpoint</code>,這里與之前的安全門有少許不相同,開它的「Properties」,並把它命名為「checkpoint_entrance」,「world model」設成「models/props_doors/checkpoint_door_02.mdl」,亦都確保「Flag」內的「Starts Open」是選取了的。還有安全門上「小屋圖示」是向外的。 | |||
我們要轉換地圖需要增加<code>info_landmark</code> 和 <code>trigger_changelevel</code>。首先我們在安全室的中間位置增加<code>info_landmark</code>,之後將其命名為「landmark_2」。現在我們在安全室內建立一個大型的方塊(Brush),方塊的大小要蓋著整個安全室,不可有空位,最低限度需要貼著牆邊,穿過牆都不要緊。之後開啟<code>trigger_changelevel</code>的「Properties」,「landmark name」設成「landmark_b」和「Next map」設成「1st_l4dmap_b」。 | |||
== | == 製作路線(Nav) == | ||
要令電腦玩家懂得在你的地圖上走動,無論是生還者或感染者,你都需要為你的地圖製作一個路線圖(mapname.nav 檔案)。製作一個基本的路線圖,你需要編譯你的地圖,並進入遊戲,成功載入你的地圖。當地圖完全載入,你的準星要描著地上,開啟指令控制台(按~鍵),輸入以下指令: | |||
: <code>sv_cheats 1</code> | : <code>sv_cheats 1</code> | ||
: <code>nav_edit 1</code> | : <code>nav_edit 1</code> | ||
Line 49: | Line 52: | ||
: <code>nav_generate</code> | : <code>nav_generate</code> | ||
當你選入了<code>nav_generate</code>,地圖會自動運算路線圖。如果你運氣好的話,當運算完畢時你不會再看見錯誤信息「NAV ERRORS - Map is unplayable!」,因為<code>nav_generate</code>亦都會為你的路線圖設定屬性(Attribute)。 | |||
用「select_with_attribute A」指令以看到一些屬性變化。選取了的區域(淡黃高亮)是所「Marked」的屬性。例子,現在我們想找CHECKPOINT的位置,使用「select_with_attribute CHECKPOINT」指令,選取了的區域(淡黃高亮)就是CHECKPOINT位置。 | |||
選入「nav_edit 1」指令,之後選入以下指令: | |||
: select_with_attribute DOOR | : select_with_attribute DOOR | ||
:: | :: 有門的地方會被選取。 | ||
: select_with_attribute CHECKPOINT | : select_with_attribute CHECKPOINT | ||
:: | :: 安全室會被選取。 | ||
: select_with_attribute RESCUE_CLOSET | : select_with_attribute RESCUE_CLOSET | ||
:: | :: 救同伴的密室會被選取。 | ||
: select_with_attribute ESCAPE_ROUTE | : select_with_attribute ESCAPE_ROUTE | ||
:: | :: 有很多區域會被選取,由生還者玩家開始地點到安全室。 | ||
[[File:L4d_select_door.jpg|200px|thumb|left|using select_with_attribute DOOR]] | |||
[[File:L4d_select_checkpoint.jpg|200px|thumb|left|using select_with_attribute CHECKPOINT]] | |||
[[File:L4d_select_rescuecloset.jpg|200px|thumb|left|using select_with_attribute RESCUE_CLOSET]] | |||
{{clr}} | |||
=== NAV Marking === | === NAV Marking === | ||
在這個情況,「nav_generate」所生成的路線圖是十分完美的,所有相關的屬性都已經為我們設定好了。但是有時候運氣不是太好,需要手動設定一些屬性。你要用指令「mark A」,A是你想設定的屬於。 | |||
例如,「nav_generate」不能自動設定安全室的屬地,你需要以下指令: | |||
sv_cheats 1 | sv_cheats 1 | ||
nav_edit 1 | nav_edit 1 | ||
現在到安全室,準星向著安全室的地上,打開控制台,選入: | |||
* mark CHECKPOINT | |||
有時候安全室內有多個區域需要設定成CHECKPOINT,我們可以用指令: | |||
* nav_gui | |||
[[File:L4d_select_checkpoint2.jpg|200px|thumb|right|the nav mesh now with both checkpoints marked]] | |||
方便選取多個區域。選取後,同樣做法,在控制台,選入「mark CHECKPOINT」。 | |||
如果你設定錯誤,可以用以下指令: | |||
* <code>nav_clear_attribute A</code> | * <code>nav_clear_attribute A</code> | ||
** | ** 你想移除某區域內屬性A (eg: <code>nav_clear_attribute CHECKPOINT</code>) | ||
或者你想移除整個地圖的屬性,可用以下指令: | |||
* <code>wipe_attributes</code> | * <code>wipe_attributes</code> | ||
當你完成了設定屬性後,切記儲存,指令是「<code>nav_save</code>」。之後你需要用指令「<code>nav_analyze</code> | |||
」分析一次你的地圖。 | |||
== | == 感染者出現在你的地圖 == | ||
現在你的路線圖已經完成,你需要選入以下指令才會有喪屍生成: | |||
: <code>director_stop</code> | : <code>director_stop</code> | ||
: <code>director_start</code> | : <code>director_start</code> | ||
== 製作第二章地圖 == | |||
如果你已經明白如何製作你第一個地圖,第二個圖基本上没有難度。 | |||
== | == 附加事項 == | ||
還有很多武器可以使用,你不一定只用SMG或Pump-shotgun: | |||
* | * <code>weapon_rifle_spawn</code> | ||
* <code>weapon_autoshotgun_spawn</code> | |||
* <code>weapon_hunting_rifle_spawn</code> | |||
== | == 相關資料 == | ||
* | * {{L|Left 4 Dead Level Creation}} | ||
* | * {{L|Navigation Meshes}} | ||
{{ACategory|Left 4 Dead}} |
Latest revision as of 04:11, 22 August 2024
這個教程會教大家製作一個基本的Left 4 Dead 地圖。教程會教大家如何使用一些在必需Left 4 Dead 地圖上必要的Entity , 例如Director,生成可用的武器和生成喪屍等等。還解釋一些地圖製作者常犯的錯。
這個教程對象並不是入門級的地圖製作者,所以教程所用的技巧可能看不懂,建議先看Basic level construction 。

這個教程會教大家製作一個一共包含兩個章地圖的戰役,但永遠玩不完,没有結局。Sounds fun, right? 這個教程目標不是完整的戰役,但會教大家如何製作一個基作的基本的L4D地圖。
首先,製作一個可玩的L4D地圖需要以下的東西:
- A director (導演)
- 生還者開始地點
- 兩道安全門
- 武器,彈藥和藥包
- 救出死去同伴的密室
- 轉換地圖
- 雾的控制器 (粒子效果需要)
以下教程會根據右面那張圖的布局。
還有的是Hammer並没有中文版,所以一些功能上的字眼仍然使用英文。
生還者開始地點
首先在上圖最左邊(區域紅色1)里面增加一個Entity名叫info_player_start
。之後,增加另外兩個Entity,info_director
和env_fog_controller
,這兩個Entity放在那裡都可以。為了方便,建議都放到區域1。
之後確保env_fog_controller
的「Properties」內,「Fog Enable」是「Yes」的。
在這里,我們可以新增加以下補給的Entity:
- 四個藥包,
weapon_first_aid_kit_spawn
- 兩支槍;
weapon_smg_spawn
和weapon_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_landmark
和 trigger_changelevel
。首先我們在安全室的中間位置增加info_landmark
,之後將其命名為「landmark_2」。現在我們在安全室內建立一個大型的方塊(Brush),方塊的大小要蓋著整個安全室,不可有空位,最低限度需要貼著牆邊,穿過牆都不要緊。之後開啟trigger_changelevel
的「Properties」,「landmark name」設成「landmark_b」和「Next map」設成「1st_l4dmap_b」。
要令電腦玩家懂得在你的地圖上走動,無論是生還者或感染者,你都需要為你的地圖製作一個路線圖(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
- 有很多區域會被選取,由生還者玩家開始地點到安全室。
NAV Marking
在這個情況,「nav_generate」所生成的路線圖是十分完美的,所有相關的屬性都已經為我們設定好了。但是有時候運氣不是太好,需要手動設定一些屬性。你要用指令「mark A」,A是你想設定的屬於。
例如,「nav_generate」不能自動設定安全室的屬地,你需要以下指令:
sv_cheats 1 nav_edit 1
現在到安全室,準星向著安全室的地上,打開控制台,選入:
- mark CHECKPOINT
有時候安全室內有多個區域需要設定成CHECKPOINT,我們可以用指令:
- nav_gui
方便選取多個區域。選取後,同樣做法,在控制台,選入「mark CHECKPOINT」。
如果你設定錯誤,可以用以下指令:
nav_clear_attribute A
- 你想移除某區域內屬性A (eg:
nav_clear_attribute CHECKPOINT
)
- 你想移除某區域內屬性A (eg:
或者你想移除整個地圖的屬性,可用以下指令:
wipe_attributes
當你完成了設定屬性後,切記儲存,指令是「nav_save
」。之後你需要用指令「nav_analyze
」分析一次你的地圖。
感染者出現在你的地圖
現在你的路線圖已經完成,你需要選入以下指令才會有喪屍生成:
director_stop
director_start
製作第二章地圖
如果你已經明白如何製作你第一個地圖,第二個圖基本上没有難度。
附加事項
還有很多武器可以使用,你不一定只用SMG或Pump-shotgun:
weapon_rifle_spawn
weapon_autoshotgun_spawn
weapon_hunting_rifle_spawn