線上遊戲開發記事【46】規劃時思考後續擴張的需求

線上遊戲的開發和單機遊戲最大的不同,就是遊戲會隨著後續的資料片不斷的進行擴充。因此在前期的規劃時,如果沒有考慮到日後的擴充或是在規劃資料格式時沒有思考後續的需求,等到後面開發新的資料片有牽涉到之前相關的功能時,就會遭遇到擴充上的障礙。

就以銀狐當時所負責的這個專案來說,遊戲的賣點是『武將卡』這個系統,因此除了遊戲中有許多和武將卡有關的設計,讓遊戲的各項系統繞著武將卡的這個核心外,每一次新的資料片推出就會推出一批新的武將卡。而這些新增加的武將卡,也必須要和之前已經設計的相關遊戲機制產生某種程度的連結,因此前期如果沒有做好相關的規劃考慮到後續的需求,就會發生想要擴充時受到限制,或是為了新的擴充而不得不大修資料結構的問題。同時因應這每一次的擴充,如何減輕維護相關遊戲系統的資料也會是一項學問。

在專案剛開始的時候,遊戲中只有一個打怪掉武將卡的系統和武將卡有關。在這個階段,每次新增了什麼武將卡,只要將相關的武將卡編號填到打怪掉落物品的資料中就可以。雖然說武將卡不斷的增加,但是需要維護的資料只有打怪掉落物品這一項。不過隨著後續的武將卡轉蛋機、武將卡料理、武將卡裝備強化、種武將卡的遊戲系統一個又一個的設計出來,再加上武將卡取得的管道也從原本單純的只有打怪取得變成有任務、轉蛋機專屬以及產品包贈品等等越來越多的變化,這時候在武將卡資料的維護上就變得很複雜了。

隨著專案的持續開發,專案成員的更替,這個資料的維護就變成是一項充滿了危機的負擔。舉例來說,當初為了讓武將卡轉蛋機有獨特的吸引力,因此製作了一批特殊造型的武將卡。為了維持這批武將卡的稀有性,這些武將卡只有經由轉蛋機取得,如果不小心放到打怪的掉落物品列表中,就會出現『量產』的狀況,也會失去這些轉蛋機專屬武將卡的吸引力;同樣的,為了營運單位銷售產品包所特別製作的武將卡,若是不小心在遊戲中有其他的獲得管道,那麼這個原本應該能夠吸引消費者購買的誘因也會消失。

不過,專案在開始規劃武將卡系統的時候並沒有預想到會有這樣的需求。一般來說,如果初期有想到的話,只要透過武將卡的編號來做簡單的劃分(舉例來說,1字頭的是打怪取得、2字頭的是轉蛋機取得、3字頭的是任務取得等等這樣的規劃),就可以很輕鬆的將武將卡劃分為幾個大類,然後靠著編號就可以區分取得的管道。因為沒有這樣的劃分,所以在武將卡的文件中需要有一份表格,裡面記載了每一張武將卡可以從那個管道取得,這樣後面加入專案的遊戲企劃才能夠掌握使用這些武將卡的原則。

除了在分類上沒有做,在武將卡的編號上專案也採用了很怪異的編碼。一般來說,我們在製作一系列的武將卡時,應該採用流水號的方式來進行編號(舉例來說,如果一開始有十張武將卡,編號就從1編到10,然後候面增加的時候就11、12、13這樣陸續增加下去)。這樣做,未來如果有某個遊戲系統需要產出武將卡,就只需要給一個編號的範圍(例如:1到10號)就可以很簡單的用亂數來隨機產出任何一張武將卡。

但是當時專案並沒有這麼做,武將卡的編號並沒有採用流水號的方式來編碼,而是沒有什麼特別規則的前面的號碼用了幾個、後面的號碼用了幾個,而且還因為某些武將的美術製作進度出了些狀況,還有跳號和空號的狀況發生。這樣的編碼方式,造成了相關的遊戲系統需要亂數產出武將卡時都需要額外建表,將有使用的武將卡編號一一列到表中,這樣子相關的遊戲系統才可以順利產出真正存在的武將卡,也因此增加了維護這些資料的負擔。隨著後續武將卡的相關系統一個又一個的推出,這方面的工作也越來越多。

也因為這個初期規劃時沒有思考到的狀況,所以後續在維護這些資料的時候曾經出過數次的狀況。像是將不應該放入打怪掉落的武將卡被編入打怪掉落的資料中、應該可以種出來的武將卡因為漏編入相關表格中,所以玩家怎麼種都種不出來、或是只能透過轉蛋機取得的武將卡被營運單位拿去當成贈品送給參加活動的玩家。這些事件的發生雖然說不能全將問題推到初期資料規劃上,如果在執行的時候有仔細檢查就可以避免。不過若是初期規劃時有先思考到這一部份,在規劃的時候就做出比較妥善的安排,後續出錯的機會自然也會降低。

  • CSH

    嗯嗯, 不過以資料管理的觀念來看, 使用編號的開頭來分類, 對於後續的擴張性來說並不會是最好的方法. 例如到
    遊戲後期如果出現了要修改某張武將卡取得的方式的要求, 或是想要讓某張武將卡的取得方式不只一種, 這種分類
    方式就會出問題了.

    當然, 利用這種”系統功能限制”也會是一個很好的擋箭牌就是了……

    • 功能和需求是相對應的,
      如果初期設計只有單一的一種獲得管道後期要再改, 那就要看改不改得了.
      所以我才會說要多思考一下後面擴張的需求.

  • ICEE

    恐怖。。還真是有夠亂啊