工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 9:59 AM
任務系統好難做,完全沒想到居然是給自己挖了大坑
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 10:01 AM
又沒辦法請人幫忙,狀況有點像是想要在家裡做新的裝潢機能櫃,可是家裡已經被各種雜物堆滿
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 10:02 AM
就算請師傅來我也只能請師傅幫我做櫃子,那些雜物還是得自己整理不能請師傅整理
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 10:03 AM
只好一邊整理(自己造成的)雜物堆,一邊慢慢自己一片片釘板子上去的感覺ˊˋ
Chúgiâu
@XenStalker
Thu, Aug 11, 2022 10:51 AM
看具體需求內容有什麼,做任務系統之前其實要先做事件系統
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 11:28 AM
Chúgiâu
:
我不曉得其他人怎麼做的,所以就自己慢慢土炮
目前做出來的有:
- 開啟遊戲會從資料表(Excel > csv >json)讀一個任務總表進來,交給QuestManager物件,後續有需要查詢任務就找它,不同程式之間用quest id字串來溝通
- 遊戲中的任務列表,可以顯示「進行中」「已完成」的任務(儲存方式是字串List),在列表這裡可以選擇放棄任務,會跳對話框詢問。
- 在同一個NPC身上接取任務和對話,依據任務狀態顯示不同的對話(這邊是用Fungus套件去拉流程圖)
- 任務條件達成(身上有該任務需要的道具) 的時候,任務icon會改變,可以找同個NPC回報並完成任務
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 11:33 AM
- 另外也有做出回報任務可以拿到金錢和道具獎勵
- 接任務的時候可以先給道具,例如NPC有壞掉物品請玩家修理,就會拿到壞掉物品x1,用製作系統把它變成修好物品,就能拿去回報任務
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 11:40 AM
現在想做但有點卡住的部份:
- 和NPC1對話完之後,去找NPC2對話繼續進行這個任務,再去找NPC3…
- 從NPC1那裡接取任務拿到道具A,將道具A交給NPC2完成任務 (所謂的跑腿任務)
- 把不同狀況的流程對話抽出來到外部資料表填寫,就不用每個任務都拉一次Fungus流程圖,連結一直跑掉還要重設很煩
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 11:47 AM
困難點:
跨NPC對話這部份不確定怎樣才能顯示正確的對話和進度,又要能一套系統整個遊戲共用,還要在企劃的時候方便編輯…在想是不是在進行中任務的部份加個進度欄位(int),然後掛在NPC身上時要同時設定他是哪個任務的第幾段對話…
但是就還要考慮到1.任務沒分段的情況如何處理 2.同一個NPC身上掛好幾個任務的情況如何處理
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 11:48 AM
(我有時候自言自語完解法就出來了,先寫出來釐清一下狀況)
Chúgiâu
@XenStalker
Thu, Aug 11, 2022 11:50 AM
簡單一點的會像 RPG Maker 的事件功能,然後再用事件編輯器去編任務。
事件全部都是計數器、標記和指令,計數器和標記概念上其實就是變數,但基於效能考量,這些變數名稱通常只用整數,概念上是標記編號。
事件觸發來源
事件執行條件
事件動作或事件效果
編輯工具的話,就沒有特定做法了。
總之任務都是靠事件系統驅動。
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 12:02 PM
這樣講起來我好像應該去玩一下RM或類似的工具看它怎麼做的,20年沒碰了…
土炮做輪子還是很容易卡關
但又很難買人家做好的車然後只拆輪子,拔不下來…只能想辦法做個類似的
Chúgiâu
@XenStalker
Thu, Aug 11, 2022 12:09 PM
XD
工人智慧海苔🎮
@nxk
Thu, Aug 11, 2022 5:31 PM
把所有可能性列出來之後發現超複雜
看來要先從外部讀對話開始做了…不然每個都單獨拉流程我會瘋掉…
載入新的回覆
我不曉得其他人怎麼做的,所以就自己慢慢土炮
目前做出來的有:
- 開啟遊戲會從資料表(Excel > csv >json)讀一個任務總表進來,交給QuestManager物件,後續有需要查詢任務就找它,不同程式之間用quest id字串來溝通
- 遊戲中的任務列表,可以顯示「進行中」「已完成」的任務(儲存方式是字串List),在列表這裡可以選擇放棄任務,會跳對話框詢問。
- 在同一個NPC身上接取任務和對話,依據任務狀態顯示不同的對話(這邊是用Fungus套件去拉流程圖)
- 任務條件達成(身上有該任務需要的道具) 的時候,任務icon會改變,可以找同個NPC回報並完成任務
- 接任務的時候可以先給道具,例如NPC有壞掉物品請玩家修理,就會拿到壞掉物品x1,用製作系統把它變成修好物品,就能拿去回報任務
- 和NPC1對話完之後,去找NPC2對話繼續進行這個任務,再去找NPC3…
- 從NPC1那裡接取任務拿到道具A,將道具A交給NPC2完成任務 (所謂的跑腿任務)
- 把不同狀況的流程對話抽出來到外部資料表填寫,就不用每個任務都拉一次Fungus流程圖,連結一直跑掉還要重設很煩
跨NPC對話這部份不確定怎樣才能顯示正確的對話和進度,又要能一套系統整個遊戲共用,還要在企劃的時候方便編輯…在想是不是在進行中任務的部份加個進度欄位(int),然後掛在NPC身上時要同時設定他是哪個任務的第幾段對話…
但是就還要考慮到1.任務沒分段的情況如何處理 2.同一個NPC身上掛好幾個任務的情況如何處理
事件全部都是計數器、標記和指令,計數器和標記概念上其實就是變數,但基於效能考量,這些變數名稱通常只用整數,概念上是標記編號。
事件觸發來源
事件執行條件
事件動作或事件效果
編輯工具的話,就沒有特定做法了。
總之任務都是靠事件系統驅動。
土炮做輪子還是很容易卡關
把所有可能性列出來之後發現超複雜
看來要先從外部讀對話開始做了…不然每個都單獨拉流程我會瘋掉…