iT邦幫忙

2026 iThome 鐵人賽

DAY 20
0
Software Development

Unity進階——做一個完整的遊戲系列 第 20

Day 20:建立森林場景原型與主線探索路線

  • 分享至 

  • xImage
  •  

前一天我完成了村長 NPC 與第一段互動對話,玩家已經可以進入村長家,靠近村長並觸發對話。接下來,村長對話後應該要引導玩家前往下一個探索區域,所以 Day 20 開始製作森林場景。

森林在這個專案中不是普通的背景地圖,而是玩家離開教學區後遇到的第一個主要危險區域。這裡之後會出現大量小怪,擊敗小怪可能掉落金幣或武器。金幣可以拿去武器鋪購買裝備,掉落的武器則可以裝備或賣掉。

武器品質暫定分成四種:普通、精英、史詩和傳說。森林深處會有一隻精英怪,看守裝有傳說武器的寶箱。這把傳說武器之後會成為挑戰洞穴最終 Boss 的關鍵,因為普通、精英甚至史詩武器都無法對最終 Boss 造成有效傷害。

不過 Day 20 先不做完整戰鬥、掉落、背包或裝備系統,而是先把森林場景的探索路線和空間規則建立出來。
一開始我先建立森林場景的整體構圖。因為 TutorialScene 的左側出口通往森林,所以玩家進入 ForestScene 後,應該從畫面右側出現,並往左深入森林。這樣場景方向才會和前面規劃一致。

https://ithelp.ithome.com.tw/upload/images/20260918/201783733JwPHApzC3.png

森林入口設計在右側,右側有一塊草地作為進入區域。主要道路則改成左右向,讓玩家沿著路往左探索。
這裡特別避免把道路做成上下方向,因為教學場景是從左側通往森林,如果進入森林後方向突然變成上下,玩家會覺得場景連接不自然。

同時,森林不能看起來像人工整理過的公園,所以道路不使用整齊石板路,而是改成泥土路或踩踏出來的路徑。石頭只作為場景周圍點綴,不當作主要道路。接著,我調整泥土路的走向。泥土路不是只停在草地區域內,而是一路往左延伸,穿過草地後繼續深入森林外圍。

https://ithelp.ithome.com.tw/upload/images/20260918/20178373tJUUQUyYjl.png

這條泥土路的用途很明確:它是玩家深入森林的主要路線。玩家從右側入口進入後,會沿著這條路往左走。越往左,代表越接近森林深處,也越接近精英怪與傳說武器寶箱的位置。

這樣設計後,場景的探索方向就很清楚:右側是入口,左側是危險區域。泥土路不只是一條裝飾路線,而是整個森林關卡的主線動線。

接著,我規劃森林中的怪物與寶箱位置。因為森林是第一個主要戰鬥區域,所以不能只放一兩個怪物點。玩家沿著泥土路深入時,應該會逐漸遇到多個小怪刷新點,讓森林有危險感。

https://ithelp.ithome.com.tw/upload/images/20260918/20178373Tp2chnTQvu.png

這一步主要建立或調整 ForestMonsterMarkers,並放置多個 SmallMonsterSpawn。這些小怪刷新點分布在入口到森林深處的路線附近,之後可以用來生成普通怪物。

同時,我也重新整理了精英怪與寶箱的位置。LegendaryChestPoint 放在地圖最左側,也就是泥土路的盡頭;EliteMonsterSpawn 則放在寶箱前方的小路中央。這樣設計可以確保精英怪真的守住寶箱,而不是讓玩家直接繞過去拿獎勵。

這裡的邏輯很重要:傳說武器寶箱不能只是放在森林某個角落,否則玩家可能完全不需要戰鬥就能拿到。它必須被放在狹長通道的盡頭,並由精英怪守住,這樣才符合「擊敗精英怪後取得關鍵武器」的主線節奏。接著,我開始處理寶箱小路兩側的障礙物。使用者已經手動調整過地板,所以這一步只處理路障,不再重刷地板。

我使用場景中已有的 BrokenRunePillar_EliteHint 和 BushCluster_08 作為小路兩側的阻擋物。石柱放在小路上方,灌木放在小路下方,形成一條通往寶箱的狹長道路。

https://ithelp.ithome.com.tw/upload/images/20260918/201783738siuf7ugMd.png

這些石柱和灌木不只是裝飾,而是用來控制玩家路線。它們讓前往寶箱的道路變窄,玩家無法從旁邊繞過精英怪直接拿寶箱。

這也讓森林場景更符合原本設定:越往森林深處,路線越被樹木、灌木和遺跡殘骸包圍,玩家會感覺自己正在進入一個比較危險、比較封閉的區域。接著,我替這些路障物件加入碰撞箱。

https://ithelp.ithome.com.tw/upload/images/20260918/20178373ikPtGdyFxg.png

我選取其中一個路障物件,例如 DeepRoadRuneBlocker_Top_01 或 DeepRoadBushBlocker_Bottom_01,確認它有 BoxCollider2D,且沒有勾選 Is Trigger。

這代表它不是觸發區,而是真正會阻擋玩家移動的障礙物。這一步的目的,是避免玩家從石柱或灌木上穿過去。
完成森林內部路線與障礙後,最後要設定教學場景與森林場景之間的轉場。因為前面已經規劃過 TutorialScene 有三個出口,其中左側出口通往森林,所以 Day 20 需要把這條轉場路線接起來。

https://ithelp.ithome.com.tw/upload/images/20260918/20178373DmEFsVBFlK.png

在 TutorialScene 左側出口建立或確認 Exit_ToForest,並在這個物件上加入 BoxCollider2D,勾選 Is Trigger。接著掛上 SceneTransitionPoint,設定:
Target Scene Name = ForestScene
Target Spawn Point Name = Entry_FromTutorialRuins
這樣玩家從教學場景左側出口進入,就會切換到 ForestScene,並出現在森林入口位置。

同時,也需要保留從森林回到教學場景的入口點,讓玩家之後可以返回。
Day 20 不需要再加 20-7,因為目前流程已經完整:森林整體構圖、泥土路、怪物與寶箱標記、小路障礙、路障碰撞、教學場景與森林場景轉場都已經建立。

透過 Day 20 的製作,森林場景不再只是另一張地圖,而是開始具備關卡設計的功能。玩家從教學場景進入森林後,會沿著泥土路往左深入;路上會遇到多個小怪刷新點;最深處有精英怪與傳說武器寶箱;寶箱路線被障礙物限制,玩家不能輕易繞過戰鬥。

目前 Day 20 先完成場景與路線規劃,戰鬥、掉落、金幣、武器品質、商店購買與傳說武器限制 Boss 傷害,會留到後面的天數逐步實作。


上一篇
Day 19:放置村長 NPC 與建立第一段互動對話
下一篇
Day 21:與村長對話後顯示目前目標
系列文
Unity進階——做一個完整的遊戲25
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言