如何企劃一個角色扮演遊戲‧第四個月

各位好,好不容易遊戲的製作已經完成一半了,現在就要進入後半部份了。在這個時候,等於是一款角色扮演遊戲已經有了最基本的雛形了,因此在本月份的文章中,所要說明的就是如何去使得遊戲能夠更有內涵。

如果各位有看過上個月本刊介紹《猴島小英雄3》時曾經說過,該設計小組在遊戲的製作過成中是採用先先設計遊戲界面,然後再全心全意的去編寫遊戲的劇情。事實上在設計角色扮演遊戲的時候也大致都是這個樣子,很多的角色扮演遊戲到了遊戲製作的最後期時,也都只剩下劇情的編寫及串連而已。因此,在這個月的專欄中,筆者就來為各位介紹一下有關劇情的編寫以及如何控制遊戲的進行。

遊戲的訊息種類

如果各位常玩角色扮演遊戲,在遊戲中都會有一種角色無論在什麼時候和他對話都是相同的答案。這種只有一百零一句對話訊息的角色,在遊戲中大多扮演著配角,也就是所謂的「跑龍套」。例如說,當我們進入一個新的地點,在入口處遇到一位角色,常常是說著「這裡是XXX村,歡迎您的到來。」像這樣的角色,由於只有這一句對話,因此常被我們稱之為「單句型角色」。

說到這裡,各位是不是發現這樣的角色似乎出現在各種的遊戲中呢﹖無論是國內的角色扮演遊戲、日本遊樂器上的角色扮演遊戲、以及歐美的角色扮演遊戲中,都有著這一類的角色出現。這種角色的出現,並不代表著什麼,而它唯一能夠表示的,就是在任何種類的角色扮演遊戲中,配角的存在都是很重要的。

如果所有的角色都只有一句對話,那麼在遊戲進行時不會覺得很無聊嗎﹖早期的角色扮演遊戲都是這樣,所有的角色都是「消息不靈通人士」,因此常會發生一位角色告訴玩家某個事件,可是當玩家解決這個事情時,他還是只會說這一句話,完全不明白玩家早就解決了這個事情。為了解決這樣的狀況,從「單句型」演變出目前在角色扮演遊戲中最常見的「多句型」對話系統了。

什麼是「多句型」對話系統呢﹖單從字面上的意思看來,就是遊戲中的角色不在是只有一句對話訊息了。而這樣的作法可以使得遊戲中的角色對話變得更豐富,自然對於遊戲的內容有很大的幫助。和前面所提的「單句型」的簡單狀況來比,「多句型」對話中的角色,就可以依不同的時期,講不一樣的話來對應,使得玩家可以獲得更多的消息。

就筆者個人的看法,角色扮演遊戲中最佳的對話系統,無疑的就是「關鍵字」對話系統了。這種系統有著相當靈活的角色間的對話,能夠架構出真實世界相同的交談狀況。如果各位玩家是本專欄的忠實讀者,那麼應該記得在八五年一月的本專欄中,筆者曾經就關鍵字對話系統做過一番介紹。

為什麼筆者會這樣說呢,各位可以先這樣子想想。在真實的世界裡,難道和人交談時會一下子就講出重要事情嗎﹖以遊戲的世界來說,當一名冒險者初次進入一個村莊,難道說這些村民就會很快的和他說出事情的真相,這樣子不是很奇怪嗎﹖

各位讀者看這裡,對於各種對話系統是否有一點印象了呢﹖也許您還是一頭霧水,不過沒有關係,下面筆者就將對這幾種對話系統一一介紹,並且以各種編寫劇情時的企劃案來逐一解說。

◎單句型◎

若是各位要製作單句型的劇情,那麼可以說是再簡單不過了。您只要將所有在遊戲中的訊息,一一的編成文字資料,然後再讓程式依玩家遭遇的人物,顯示出相對的訊息文字即可。因此,以下就是這種狀況的訊息:

村民甲「這裡是阿里村,是一個小小的漁村。」
村民乙「最近因為海浪很大,所以我們都不能出海去打漁了。」
村民丙「不知道是怎麼一回事,海浪怎麼都這麼大。」
村民丁「再不能出海打漁,就無法生活了。」

我們就以上面的例子來說明。如果這是一個只有四個人的小漁村,最近因為受到天候的影響,使得他們沒有辦法出海。因此當玩家所扮演的角色進入這個村子時,就會獲得上面所列出來的消息。我們姑且不管這些漁民為什麼會對一位陌生人抱怨這些,就當作這是角色扮演遊戲中的傳統好了。當玩家所操控的角色向這四位村民交談時,就可以獲得這四句訊息,也就瞭解到目前應該要幫助漁民找出天候改變的原因,才可以解決無法出海的問題。

既然知道了這個村子目前的狀況,玩者所操控的角色可能就要去找出原因,也許是需要到海上找出海浪變大的原因,也許是有一隻大章魚引起這麼大的海浪,也許有很多的也許。不過這都不是我們在討論對話系統時的重點,所以我們就將它放到一旁。

那麼筆者為什麼會談到這些東西,其實是要各位想想看在這種單句情況下,若是玩家所扮演的主角解決了這個問題,讓海浪恢復正常使得漁民可以出海捕魚的時候,這些村民會說些什麼﹖由於每一名角色都只有一句話,因此就算是解決了這個事情對於交談時的訊息還是沒有影響,他們這一百零一句的對話在此時看來不是很荒謬嗎﹖

◎多句型◎

由於有著以上的問題,因此就有著「多句型」的對話系統出現。多句型對話系統就是用來處理在不同時期,讓角色有著不一樣的訊息,使得玩家能夠看到合於時期的對話訊息,這也就是多句型對話系統的最佳用途。

現在我們再以前面所舉的例子來看,若是要讓這些村民有著合乎時期的對話訊息,就必需要分別為他們編輯相對的訊息。因此這四位村民的第二句訊息可能如下:

村民甲「這裡是阿里村,是一個小小的漁村。」
村民乙「哈哈,終於恢復平靜了。這下子又可以出海了。」
村民丙「原來是有怪物在作怪,海浪才會變得這麼大。」
村民丁「這樣子生活就不會有問題了。」

由於村民乙、丙、丁的對話訊息和這個事件有關,因此我們要分別為他們準備第二句的訊息,這樣子在事情解決之後,再去和他們交談就不會有荒謬的對話發生。至於村民甲,由他的對話和事件並沒有任何的關係,因此不為他準備第二句訊息也沒關係。

至於在程式上要如何去處理這種狀況呢,其實只要在玩家控制的角色解決事情的時候打開一個旗標(一般的稱法是Flag),使得程式在處理時知道這時候要用那一段訊息。此時的流程圖如下:

流程圖一:判斷旗標顯示對話的流程

開始

和村民交談

判斷旗標﹖
↓尚未解決   ↓已經解決
第一句訊息  第二句訊息│

結束

從以上的流程中各位可以看到,只要在進行對話的時候去判斷是否有打開某個旗標,就可以選擇相對尋息來表示。同樣的,如果還有另一個事件和這些角色有關,也可以再加上新的判斷式來處理新的訊息。

還記得筆者在剛開始時曾經提過通常角色扮演遊戲製作到後期時,大多都剩下訊息對話的編輯沒有完成嗎﹖其實這指的就是這一部份。由於大部份的遊戲並不是採用固定的編輯器來處理,因此在訊息的處理上要一段一段的測試,才不會發生意外。因此當遊戲進行到製作後期時,其餘的部份都已經完成了,只剩下訊息來是要照著步驟一步一步來就會有這樣的現象。特別是在國內,由於角色扮演遊戲的訊息是由企劃編寫,可是卻由程式來處理流程,因此自然就會把時間拖得比較久。

要解決這樣的問題,就必需要在遊戲開始進行設計時,先讓企劃開出所有的訊息所需選項及相關旗標,然後讓程式為他編寫一個適當的編輯器。如此一來,企劃可以在沒程式的情況下進行劇情的編輯及測試,就可以免除這樣的問題。記得筆者在上一期的回答問題中曾經提到「RPG ツクール95」這款軟體,就有著很完整的劇情編輯及測試的功能,可以說是一個相當不錯的教材。

◎關鍵字◎

接下來我們看看關鍵字系統的資料結構吧。在前面說明單句式系統的時候,筆者曾經說過要以旗標來判斷顯示那一句訊息,其實這個所謂旗標就是遊戲中控制劇情目前發展到那裡的指標。同樣的在關鍵字系統中這些旗標也存在著,只不過除了它們之外還要再加上一組關鍵字的旗標,而這些關鍵字的旗標就是這種交談系統的重心。

筆者在這裡就以曾在專欄中提出的範例來作一說明。在遊戲中,當玩者從其中一位角色的口中獲得一個關鍵字之後,這個關鍵字的旗標就會打開,之後若是有遇到對這個關鍵字有所瞭解的角色時,在交談的選單中就會出現這個關鍵字。

程式會先判斷目前玩者已經獲得那些關鍵字,然後再看這一名交談的對象對於那些關鍵字會有反應,接下來在在選單中就會出現這些有反應的關鍵字讓玩者選擇。在選擇了某個關鍵字之後,相關的訊息就會顯示在畫面上,同時若是有某個關鍵字會因為問了這一句話之後打開,也會在訊息顯示之後將此一關鍵字的旗標打開。接下來我們看看下面這個例子。

在這個例子中,會有某甲以及某乙兩個人,在遊戲的過程中玩者必需先從某甲的口中獲得一句暗號,然後用這個暗號向某乙詢問,才可以獲得所需的資料。
某甲(無關鍵字):喔,是你呀。我相信你一定是想要加入這個秘密的組織,不過若是沒有組織的口令的話,是不可能加入的。
◎在這句訊息後關鍵字「口令」打開

某甲(口令):你想要知道口令?那我就告訴你,我們的口令就是神出鬼沒。
◎在這句訊息後關鍵字「神出鬼沒」打開

某甲(神出鬼沒):不對不對,這句口令不是對我說的,你必需要找到我們組織的某乙,然後對他說出這個口令,就可以加入我們的組織了。

因此在這個地方我們可以看到,在開始的時候玩者和某甲交談時會先獲得「口令」這個關鍵字,接下來這個關鍵字就會出現在交談的選單中。而玩者選擇口令這個關鍵字之後,就可以再獲得進一步的資料以及「神出鬼沒」這個關鍵字。之後再以神出鬼沒這個關鍵字向某甲詢問,就可以得知這個關鍵字的使用方式。
某乙(無關鍵字):對不起,我什麼事都不知道,請你不要來打擾我好嗎。

某乙(神出鬼沒):你知道我們的口令,那麼你可以加入我們的組織了。我們的任務是要推翻目前的政府,希望你也為這件事盡一份力。
◎成功的加入叛亂組織了

從這裡我們可以看到,若是玩者在還沒有獲得神出鬼沒這個關鍵字的時候來找某乙交談,那麼是無法從某乙的口中獲得任何的消息。但是當玩者從某甲的口中獲得了「神出鬼沒」這個關鍵字之後,在交談的選單中就會出現這個選項,選擇後從某乙處就可以得到回應,也就可以加入判亂組織了。這一種的交談訊息結構,也就是關鍵字系統真正能夠發揮作用的地方。

在設計關鍵字系統的時候有一件事要注意,那就是需要適時的將某些沒有作用的關鍵字關掉。就以上面的例子來說,當玩者成功的加入了判亂組織之後,這一部份的事件可以說是已經結束了,此時就可以將「口令」以及「神出鬼沒」這兩個關鍵字關閉。不過若是這兩個關鍵字還有作用的話,就不可以這麼輕率的關閉它。

說到這裡也許有人會說其實這種劇情不需要用關鍵字系統,就算是單純的單句式結構就可以處理了。但是請各位想想看,這裡的劇情若是當玩者一和某甲交談,某甲就將所有的消息一股腦的都說了出來,那麼不是很沒有意思嗎﹖除此之外,關鍵字系統在玩者被遊戲卡住的時候,還可以讓玩者重複詢問相同的關鍵字來獲得訊息,比起單句式結構那種不小心沒有看到就會被卡住的情況來說,是不是也顯得比較人性化呢﹖

程式的特效設計

另一方面,隨著遊戲製作的進入後期,一些需要的特殊效果也必需要由程式設計師來完成。舉個例子來說,像是進出城時畫面的切換方式,有的遊戲是使用放大縮小;有的是採用馬塞克切換畫面的方式;有的則是利用畫面的淡入淡出來進行切換。無論是那一種方式,都是為了要加深玩家對遊戲的印象。

因此,有時候企劃人員會希望遊戲能有著與眾不同的效果,才可以發揮到吸引玩家的目標。在這樣的狀況下,程式本身所擁有的現成的副程式可能就不夠來執行這樣的特效,而需要花一些時間來處理這一方面的事情。若是如同筆者在前面曾經提過的有適當的訊息編輯器讓企劃來處理訊息的話,那麼程式自然就有較多空餘的時間來處理這一方面的事情。

問題回答

上一期筆者曾經提到電腦玩家和麥田合作出版了一本名為「解開角色扮演遊戲之謎」的書,裡面就有講到一些與遊戲製作有關的知識,希望這本書能夠帶動相關叢書的出版風氣,這樣將是有志於遊戲界的玩家之福。結果反而收到許多讀者寫信來詢問這本書到底上市了沒有,在那裡可以買得到﹖

筆者在和電腦玩家的編輯詢問之後,只能確定這本書的確是已經印好了,而且筆者的手上也已經拿到好幾本。為什麼在市面上看不到這一本書,恐怕就要問出版社了。

問題:有讀者問到,上一期筆者介紹的那幾本日文書,各是提供了那一方面的資料。
回答:在這裡,筆者就對這幾本書的內容作一個大概的說明,希望對於讀者會有幫助。

Fantasy Making Series 1 : Fantasy Making Guide 新紀元社
Fantasy Making Series 2 : City Making Guide 1 新紀元社
Fantasy Making Series 3 : Scenario Making Guide 新紀元社
Fantasy Making Series 4 : City Making Guide 2 新紀元社
Fantasy Making Series 5 : Dungeon Making Guide 新紀元社

這五本書是一系列的,內容則比較偏重於文字資料。裡面的插圖不多,可是有用的資訊卻不少。第一本是以介紹幻想世界的構成及所有可以使用在遊戲中的元素為主,可以說是這一系列書籍中的入門書。第二及第四則是說明城市的構成,如果你要設計一個角色扮演遊戲,這裡面倒是給了不少有關城市的結構及組成的豐富資料。第五本的內容則是以地下城為主,裡面說明了在各種情況下的地下城會是如何的狀況。至於第三本,筆者個人極力推薦有志當個戲企劃或是編寫劇本的讀者去看,裡面很詳細的說明的在不同的人數下,如何去架構故事,以及一些對於故事發展具有張力的選擇,像是人際關係、衝突等,則有著很清楚的介紹。

RPG 幻想事典 SOFTBANK
RPG 幻想事典 Item Guide SOFTBANK
RPG 幻想事典 Monster Guide 東洋篇 SOFTBANK
RPG 幻想事典 Monster Guide 西洋篇 SOFTBANK

這四本書則是另一個系列的,分別提供了不一樣的資訊。其中的Monster Guide 中洋篇及西洋篇分別是各式各樣的怪物,當您在設計遊戲的時候,可以從這裡找尋可以使用的怪物,是很有用的一本圖鑑。而Item Guide裡有著各種有趣的道具,及普通的各式裝備,也是一本不錯的資料書。

世界神話事典 角川書店

至於這一本的功能就比較特別了,它裡面記載了各國的神話故事及相關的記載。如果你要設計一個與神話有關的遊戲,適當的參考一下這些書籍可以獲得足夠的背景。

架空地名大事典 講 談 社

至於這一本,則是在介紹各種遊戲、小說中出現的架空地名,這些虛構的地名是在幻想遊戲中不可缺少的,其中一些命名得相當不錯的地行則可以拿來使用。

問題:有讀者在筆者介紹到「RPG ツクール95」這款軟體後,已經想辦法取得了。但由於這個程式設計得較複雜,又不是那麼容易看得懂,因此希望筆者能夠在這裡說明一下。
回答:由於這款軟體要說明起來不是一兩行就可以搞定的,因此筆者實在很難在這裡一下子說明清楚,不過筆者會找個機會將這個軟體的功能作一番說明,同時舉幾個例子讓各位能夠更瞭解。目前,就只能請各位等一下吧。

(1997.08 發表於電腦玩家雜誌)

Leave a Reply

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *