企劃調整什麼會令程式頭痛?

更新於 發佈於 閱讀時間約 1 分鐘

一款遊戲的開發,肯定伴隨大大小小的修改和調整。

創作者不能怕改。但問題是,改東西需要花時間。一些看似簡單的改動,背後程式邏輯可能要好幾天,甚至幾星期才能修正。

對於不懂程式的人,有時很難判斷東西好不好修。所以今天就來說一下,對程式來說什麼樣的修正會令我們頭痛呢?

 

先以一個草莓奶油蛋糕為例子:

當我們已經弄好蛋糕,卻突然想把草莓全部改成芒果。理論上很簡單,只要把草莓都拿掉,改放芒果就行。

而如果要把奶油都去掉,改成巧克力漿……雖然有點費工,不過理論上也行,小心把奶油都刮掉就好。

但今天想把麵粉去掉,改成香蕉蛋糕,那基本上就只能打掉重來了。

 

簡單來說,遊戲有分「外在」和「內在」。

一般而言最外在的就是美術,只要功能完整,換圖或換3D模型都只是替換檔案。(但不一般的情況是更換美術後過於吃效能,導致程式要做效能管理。)

其次是一些數值相關的,比如武器傷害、技能冷卻時間等,除非不小心改成「0除以0」,不然很少有意外。

操作手感和關卡設計那些大概也是草莓。

而「更改或增加遊戲功能」是奶油,處理時有可能傷及本體,但還不至於出大問題。

舉個例子,假如企劃突然想要「精確迴避時有子彈時間」,這時程式除了把功能寫出來,還要多次測試確保舊有動作不會出bug。

要知道程式的世界是連「上下次序倒轉」也有機會出錯的,一個看似問題不大的新功能也隨時會令遊戲當掉。

至於遊戲核心則是蛋糕底,更改下去的破壞程度不一。2D平台改成橫向射擊還算可以,卡牌遊戲改成3D動作——直接混在一起做成巫師3還比較快((X


在上述前提下,再舉一個可能更易理解(?)的例子:

2D平台遊戲《瑪利歐創作家2》。

這遊戲能讓玩家設計關卡,或遊玩他人設計的關卡。

程式已經分割好不同功能的方塊讓玩家自由組合,這是「把設計元素都規劃成草莓」的好例子。

而因為要追求穩定性,玩家能動的亦只有草莓。要處理奶油——比如新增磚塊功能、新增變身道具等,玩家並沒有這樣的權限。

至於蛋糕底更不用說——畢竟這已經是市售成品:D


Btw,上述是最簡單的例子。

真實開發情況會複雜很多。功能與功能之間互相影響,就如同拔走草莓時,上面總會沾點奶油。

要判斷什麼影響較大,靠的當然是經驗。

極端做法是「久病成醫」,每次改動都抓住程式問詳細,當被否決得多時,自然知道怎麼改會出事。

另一做法是參考一下不同遊戲的模組(Mod),畢竟大部分遊戲模組都是建基於本體內容之上。

最常見的是更改模型——如同本文一開始所說,這只是簡單的換圖檔。

其次新增武器、道具等也不少見。

但這其實也分兩類:一種是「新增模型,但道具效果基於遊戲已有內容」。比如遊戲內有「火球術」,這時新增一個「手榴彈」,那就只是用不同的美術模型來觸發技能,本質上仍歸類為草莓。

另一種則是連道具效果也改掉,比如新增一個「追蹤彈」系統,而整個追蹤功能都是自己寫。這就是奶油,隨時與本體程式衝突,容易閃退甚至開不了遊戲。有時亦會因「遊戲本體更新」而令模組不能用。

最後的「蛋糕底」模組,不見得會有,但正因沒有所以才算蛋糕底。

會動到最底層的遊戲核心,所花心力已經和開發新遊戲差不多。除非是對遊戲很有愛,或是遊戲本體相對自由(比如麥塊)才會出現這類模組。


總括而言,企劃在調整時儘量只動到草莓和奶油就好。

話雖如此,什麼是草莓什麼是奶油其實程式決定的。

上面說過「操作手感和關卡設計『大概』是草莓」,其前提是程式有把事件規劃好。

比方說,一個2D平台遊戲,有「一般地版」、「移動平台」、「運輸帶」3種地型。而程式一開始把這些地型都分成不同物件處理。導致企劃想要「移動平台+運輸帶」時,程式就要新增第4個物件。

但假如一開始規劃好,「移動平台」是「一般地板+小風扇」;「運輸帶」是「一般地板+滾輪」。那麼要達成企劃想要的新功能,只要把「一般地板+小風扇+滾輪」就好。

一些奶油會因為規劃得當而變成草莓。反過來亦然,沒規劃好就什麼都是奶油,甚至是蛋糕底。

但我相信「程式規劃」是所有寫程式的人的目標:D

企劃找程式合作時,就先相信他們有這能力。假如真的做不出來,再來討論怎麼處理……老實說,溝通才是企劃最最最重要的技能(所以我做不來;-;)。

avatar-img
25會員
45內容數
要寫程式時想畫圖; 要畫圖時想寫小說; 要寫小說時想吃下午茶
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
千色茶果 的其他內容
Instrumect 是我從2022年10月開始製作的遊戲。 在那之前,其實嘗試過各種大大小小的遊戲開發,包括RPG、橫向射擊、2D平台遊戲等,但最後都熱情耗盡,所有項目皆斷尾(ゝ∀・)⌒☆ 當初會選擇開發那些類型,不外乎考慮市場熱門程度和製作難易度。而最後會沒了熱情,是因為我對那類遊戲興趣沒很
獨立遊戲開發,很多時是一個想法和熱情冒出來後,就叫人衝到電腦前想快點把成品弄完……就算做不了完整版,至少也想有個Demo。 既然想「快點」,那還要不要「花額外時間」去寫企劃書呢? 在處理這個問題之前,要先理解的是,這句話裡面至少有兩種情況。   其一:團隊裡只有一個企劃,所有事情都由一人主導
我其實不算程式出身。 我在香港中學畢業(亦則高中畢業)後,飛到台灣讀多媒體,大二才接觸程式。 如果是程式老手,可能可以直接用C++、Python這些程式語言來做遊戲。但新手如(當時的)我,需要一個遊戲引擎。 事實上,程式老手也會需要遊戲引擎。畢竟直接使用程式碼大概就和鑽木取火差不多,而遊戲引擎
各位好,我是千茶。 本職博奕遊戲前端工程師,工餘時間在當獨立遊戲開發者。 鑒於本人性格超內向,加上博奕遊戲和一般遊戲(如Steam上看到的那些)不太一樣,我對遊戲產業基本上沒認識也沒人脈。 所以這系列文章並不會看到: .遊戲業界介紹 .遊戲公司的分工、職缺 .etc.   能看到的只
Instrumect 是我從2022年10月開始製作的遊戲。 在那之前,其實嘗試過各種大大小小的遊戲開發,包括RPG、橫向射擊、2D平台遊戲等,但最後都熱情耗盡,所有項目皆斷尾(ゝ∀・)⌒☆ 當初會選擇開發那些類型,不外乎考慮市場熱門程度和製作難易度。而最後會沒了熱情,是因為我對那類遊戲興趣沒很
獨立遊戲開發,很多時是一個想法和熱情冒出來後,就叫人衝到電腦前想快點把成品弄完……就算做不了完整版,至少也想有個Demo。 既然想「快點」,那還要不要「花額外時間」去寫企劃書呢? 在處理這個問題之前,要先理解的是,這句話裡面至少有兩種情況。   其一:團隊裡只有一個企劃,所有事情都由一人主導
我其實不算程式出身。 我在香港中學畢業(亦則高中畢業)後,飛到台灣讀多媒體,大二才接觸程式。 如果是程式老手,可能可以直接用C++、Python這些程式語言來做遊戲。但新手如(當時的)我,需要一個遊戲引擎。 事實上,程式老手也會需要遊戲引擎。畢竟直接使用程式碼大概就和鑽木取火差不多,而遊戲引擎
各位好,我是千茶。 本職博奕遊戲前端工程師,工餘時間在當獨立遊戲開發者。 鑒於本人性格超內向,加上博奕遊戲和一般遊戲(如Steam上看到的那些)不太一樣,我對遊戲產業基本上沒認識也沒人脈。 所以這系列文章並不會看到: .遊戲業界介紹 .遊戲公司的分工、職缺 .etc.   能看到的只
你可能也想看
Google News 追蹤
Thumbnail
現代社會跟以前不同了,人人都有一支手機,只要打開就可以獲得各種資訊。過去想要辦卡或是開戶就要跑一趟銀行,然而如今科技快速發展之下,金融App無聲無息地進到你生活中。但同樣的,每一家銀行都有自己的App時,我們又該如何選擇呢?(本文係由國泰世華銀行邀約) 今天我會用不同角度帶大家看這款國泰世華CUB
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
遊戲風格的大改變雖然對莫澄是個不小的挑戰,對其他人而言要將一款遊戲從無到有也一樣不簡單,斐生看著螢幕一直出現的錯誤警示符號煩躁不己,這個情況己經連續好幾天了,蕭世辰了解他的個性越是急躁越是無法找到突破口來解決問題,於是他提議今天提早下班他打算做一桌好菜,讓他能夠放鬆些。 「這樣會不會買太少了?
Thumbnail
這篇內容,將教你如何開啟新的GameMaker專案,並調整畫面佈局。也會講解,為何建議用英文語系,來進行遊戲開發。
Thumbnail
這篇文章描述了作者從兼職開發轉為全職開發的過程,並分享了從混進學界指日可待的積極態度。作者也提及自己在專案製作與個人生活上的矛盾與感想,最後分享了專案管理和敏捷開發相關的文章與影片。
Thumbnail
這篇文章探討了在專案開發中遇到的時間壓力和執行困難,以及如何無效應對這些挑戰。 沒有工時估算、客戶溝通、交付時間表設定、程式品質管理、工作量管理、合同和專業態度等方面的建議。
Thumbnail
這篇文章討論了遊戲美術專案執行和技術面可能遇到的問題,包括人的問題以及技術困難,並提出瞭解決方法。
Thumbnail
資料的統合 在程式設計中,其他人通常關心是否注意到執行的細節。作為程式設計師,主要應該關心的是程式的表現,但往往忽略了很多細節,這些細節可以決定程式的好壞。程式的好壞很大程度上取決於資料的統合,也就是資料是否被正規化。 不同類型的資料在系統中呈現一致 正規化可能對一些人來說聽起來很抽象,有些人
Thumbnail
如何改變對待挑戰的心態,從負面抱怨轉變為積極挑戰,並提出找出可以控制的部分,將挑戰轉變成一場遊戲的方法。
Thumbnail
日前,因為遊戲初步認識一位遊戲修改師,比我用EXCEL撰寫五行生剋的程式語言還要高階(連遊戲都能修改,新創一個程式難嗎?),只是在創作過程中跌跌撞撞,明明是自己親手撰寫,耗費心力與時間,得到的答案是-被網友檢舉,被網友謾罵,為何會這樣?以致於他個人創作轉於認同他的,他才願意分享,因為他怕再次分享
Thumbnail
這篇文章將會延續(上)、(中)的內容,談談遊戲開發測試原型的製作與驗證。
Thumbnail
對理工出身的我而言,「人的感受」真的很難處理,因為你控制不了對方的感覺。 你想嘛!工程師寫程式,寫錯了,改一改重新編譯,我們沒有必要去對程式碼噓寒問暖呀~
Thumbnail
現代社會跟以前不同了,人人都有一支手機,只要打開就可以獲得各種資訊。過去想要辦卡或是開戶就要跑一趟銀行,然而如今科技快速發展之下,金融App無聲無息地進到你生活中。但同樣的,每一家銀行都有自己的App時,我們又該如何選擇呢?(本文係由國泰世華銀行邀約) 今天我會用不同角度帶大家看這款國泰世華CUB
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
遊戲風格的大改變雖然對莫澄是個不小的挑戰,對其他人而言要將一款遊戲從無到有也一樣不簡單,斐生看著螢幕一直出現的錯誤警示符號煩躁不己,這個情況己經連續好幾天了,蕭世辰了解他的個性越是急躁越是無法找到突破口來解決問題,於是他提議今天提早下班他打算做一桌好菜,讓他能夠放鬆些。 「這樣會不會買太少了?
Thumbnail
這篇內容,將教你如何開啟新的GameMaker專案,並調整畫面佈局。也會講解,為何建議用英文語系,來進行遊戲開發。
Thumbnail
這篇文章描述了作者從兼職開發轉為全職開發的過程,並分享了從混進學界指日可待的積極態度。作者也提及自己在專案製作與個人生活上的矛盾與感想,最後分享了專案管理和敏捷開發相關的文章與影片。
Thumbnail
這篇文章探討了在專案開發中遇到的時間壓力和執行困難,以及如何無效應對這些挑戰。 沒有工時估算、客戶溝通、交付時間表設定、程式品質管理、工作量管理、合同和專業態度等方面的建議。
Thumbnail
這篇文章討論了遊戲美術專案執行和技術面可能遇到的問題,包括人的問題以及技術困難,並提出瞭解決方法。
Thumbnail
資料的統合 在程式設計中,其他人通常關心是否注意到執行的細節。作為程式設計師,主要應該關心的是程式的表現,但往往忽略了很多細節,這些細節可以決定程式的好壞。程式的好壞很大程度上取決於資料的統合,也就是資料是否被正規化。 不同類型的資料在系統中呈現一致 正規化可能對一些人來說聽起來很抽象,有些人
Thumbnail
如何改變對待挑戰的心態,從負面抱怨轉變為積極挑戰,並提出找出可以控制的部分,將挑戰轉變成一場遊戲的方法。
Thumbnail
日前,因為遊戲初步認識一位遊戲修改師,比我用EXCEL撰寫五行生剋的程式語言還要高階(連遊戲都能修改,新創一個程式難嗎?),只是在創作過程中跌跌撞撞,明明是自己親手撰寫,耗費心力與時間,得到的答案是-被網友檢舉,被網友謾罵,為何會這樣?以致於他個人創作轉於認同他的,他才願意分享,因為他怕再次分享
Thumbnail
這篇文章將會延續(上)、(中)的內容,談談遊戲開發測試原型的製作與驗證。
Thumbnail
對理工出身的我而言,「人的感受」真的很難處理,因為你控制不了對方的感覺。 你想嘛!工程師寫程式,寫錯了,改一改重新編譯,我們沒有必要去對程式碼噓寒問暖呀~