電子遊戲製作

電子遊戲製作（粵拼：din6 zi2 jau4 hei3 zai3 zok3；英文：game dev）係製作一隻電子遊戲嘅過程。廿一世紀嘅電子遊戲設計以及製作係一個相當專業化嘅領域，而大公司製作新遊戲預算閒閒地都過百萬美金。
要製作一隻電子遊戲，製作者需要做多個工序：佢哋要諗好隻遊戲嘅核心諗頭，再做好程式編寫、電腦圖像製作、同為隻遊戲寫故仔等嘅工作，整一隻初型出嚟，跟手仲要試行試玩吓隻初型，發覺到有問題就要返轉頭執（電子遊戲設計），搞掂出得街之後，仲要度有關點樣為隻遊戲做宣傳等嘅問題，而且喺隻遊戲出咗街之後，製作組仲要喺社交媒體等嘅地方留意玩家俾嘅意見，睇吓隻遊戲有冇乜嘢需要再執。因為電子遊戲製作嘅專業性，呢個領域當中有相當多嘅行話。

基礎
1982 年嘅食鬼遊戲
内文：電子遊戲
電子遊戲（electronic game）係一種電腦程式。一個遊戲程式結構大致如下：喺一隻遊戲嘅程式啟動嗰陣，個程式要初始化（initialize）－設定好嗮隻遊戲嘅參數嘅數值、講好嗮要用乜資源等等。初始化咗之後，個程式就要進入遊戲迴圈（game loop）－喺程式編寫上，迴圈（loop）係一類控制流程機制，能夠令一段程式碼只要某啲條件唔達到，就會一路係噉重複行，而相對喺冇迴圈嗰陣，段碼會逐句逐句行，行一次就算。好似係以下呢段食鬼嘅虛擬碼噉，就用咗個 while 迴圈：
move_speed = ...
 number_of_ghost = ...
 ... 用若干行 declaration 設定遊戲柞參數嘅數值
 
 while player.lives > 0 當玩家有多過 0 條命嗰陣一路做...（「玩家命變咗 0」就係 GAME OVER 條件）
    // Process Inputs；睇讀取輸入
    JoystickData j = grab raw data from joystick 由手掣嗰度探測玩家撳咗乜掣
    
    // Update Game World；睇遊戲邏輯同人工智能
    update player.position based on j 基於玩家撳嘅掣，更新玩家角色嘅位置
    foreach Ghost g in world for 每一隻鬼
       if player collides with g 如果玩家撞到嗰隻鬼
          kill either player or g 玩家就死
       else
          update AI for g based on player.position 基於隻鬼嘅人工智能，更新佢嘅位置
       end
    loop
    // 喺現實應用上，以上嘅各個動作通常會每個做一個子程式。
    
    ...
    
    // Generate outputs；睇遊戲外觀
    draw graphics 喺熒光幕上面畫相應嘅影像
    update audio ... 同埋整聲效
 loop

遊戲製作過程
宮本茂嘅相，2015 年影嘅；宮本茂係日本公司任天堂旗下最有料到嘅遊戲設計師之一。
睇埋：遊戲設計

製作團隊
一隻遊戲嘅製作團隊主要包括咗以下嘅成員：
遊戲設計師（game designer）係負責諗出一隻遊戲個核心諗頭嘅人，遊戲設計師要度好一隻遊戲嘅規則同埋最重要嘅遊戲機制，好多時仲會負責度隻遊戲嘅美學部份嘅大方向（例如諗吓隻遊戲要用科幻做主題定點）。佢哋嘅工作主要係啲概念性嘅嘢居多，比較少做啲實質嘅工作將自己嘅諗頭具體化。
遊戲製作師（game developer）係比較前線嘅遊戲製作人員，負責諗遊戲設計師嘅諗頭要點樣具體實現（例如係喺電子遊戲嘅製作當中，製作師要處理程式編寫嘅問題，而設計師會比較少參與呢樣工作）。喺大型嘅遊戲製作項目當中（例子有換卡遊戲同多數嘅電子遊戲），通常會有多位製作師，每個負責隻遊戲嘅某個部份。
遊戲美工師（game artist）係專職負責美學部份嘅製作人員，佢哋會用各種工具將設計師同製作師畫落嘅圖像修改同美化，令（好多時好潦嘅）概念圖變成出得街嘅圖像。例如喺製作立體電子遊戲嘅過程裏面，設計師同製作師會畫好人物嘅草圖，但呢啲草圖通常都唔係咁靚（始終設計師同製作師唔係專職做美術嘢），所以就要由班美工師出手用各種圖像軟件等嘅架生整啲出得街嘅圖同立體模型出嚟（睇埋電腦圖像）。

疊代設計
内文：疊代設計
疊代設計（iterative design）係設計上常用嘅手法，而廿一世紀初嘅遊戲製作主流就係用呢種方法嘅。呢種方法強調係噉整原型同埋進行測試，喺測試當中睇吓件成品有冇問題，如果搵到有問題嘅就要改，重複噉樣做，一路直至件成品出得街為止。疊代遊戲製作嘅具體步驟如下：
計劃吓件產品（隻遊戲）應該係點嘅樣－諗吓隻遊戲嘅核心諗頭係乜（例：「我想整一隻紙牌遊戲，隻遊戲係模擬兩隊中世紀歐洲軍隊嘅戰鬥」）；核心諗頭會界定隻遊戲嘅目標（要模擬中世紀歐洲軍隊嘅戰鬥）同受乜限制（要係一隻紙牌遊戲）；然後設計師圍繞個諗頭，度吓隻遊戲應該有乜嘢規則、用博弈論等嘅數學模型模擬吓隻遊戲玩起上嚟會係點樣、以及開始計劃吓隻遊戲嘅美學部份（諗個故仔嘅大綱、幫啲角色畫概念圖... 呀噉）；喺整一隻攞嚟賣嘅遊戲嗰陣，製作團隊仲要開始度吓搵邊間公司幫手出版等嘅問題。
整一個原型（prototype；指一個行得到嘅雛型）出嚟－例如如果設計緊一隻紙牌遊戲，就要開始整啲玩到嘅卡出嚟，而如果設計緊一隻電子遊戲，就要開始做程式編寫嘅工作，寫一個完整，行得到嘅遊戲程式出嚟；遊戲嘅原型通常外觀上都係唔靚嘅（美工師仲未開始插手），因為設計師同製作師多數會想搞掂咗規則呢啲硬性嘅嘢先至開始諗外觀。
測試吓個原型行起上嚟點－個製作團隊可以親自玩吓隻遊戲，又可以係請啲人返嚟幫手試玩，途中佢哋可以用各種方式搜集有關「隻遊戲玩起上嚟係點」嘅數據，例如佢哋可以俾啲幫手測試嘅人玩完之後填問卷，問卷問佢哋玩落有乜嘢感覺（例如係有冇進入心流狀態），甚至乎可以用腦電圖（EEG）等嘅神經科學方法，量度試玩者玩隻遊戲嗰陣嘅腦活動。
分析測試所得到嘅數據－通常喺呢個階段，啲設計師都會開始發覺到隻遊戲有啲嘢需要修改，例如係可能發覺隻遊戲嘅某一個關卡玩起上嚟零舍唔順暢，又或者係某一件武器或者人物太勁，搞到玩家用佢等如自動贏，冇誘因用其他武器或者人物呀噉。
按照分析結果諗吓隻遊戲嘅規則應該做啲乜嘢修改－例如如果發覺隻遊戲其中一個人物太勁（是但一個試玩者用佢都等如自動贏），噉要做嘅修改可能就包括咗「要減低呢個人物嘅移動速度」、「要減低佢啲攻擊嘅殺傷力」等等。
返去步驟 2。
上述呢個過程會一路重複，直至班設計師同製作師覺得滿意或者交貨期限到咗為止。

遊戲分析
内文：遊戲分析
廿一世紀初嘅遊戲設計同製作亦都開始重視遊戲分析（game analytics）嘅思考。遊戲分析指用某啲方法攞取有關「隻遊戲運作起上嚟係點」嘅數據，跟手再對啲數據進行分析，評估隻遊戲使唔使改。遊戲分析常見於電子遊戲嘅製作－製作組可以將個遊戲程式編寫成曉自動噉將數據（「邊年邊月邊日幾點，有幾多玩家玩緊邊個關卡」等等嘅資訊」）傳返去製作組手上，令到分析起上嚟更容易。遊戲分析上最常會留意嘅變數有以下呢啲：
客戶量度：包括描述玩家數量嘅獲得同維持嘅數據，包括每日有玩隻遊戲嘅人數、有幾多百分比嘅玩家玩玩吓就冇玩隻遊戲、以及平均每位玩家喺隻遊戲身上使幾多錢（可以睇吓微交易）呀噉。
群體量度：指描述玩家同玩家之間嘅互動嘅數據，包括每位玩家每日向第啲玩家傳咗幾多條短訊、遊戲有幾常出現短訊內包含粗口（假設個程式曉辨別粗口同非粗口）嘅情況、以及遊戲嘅留言板上有幾常有留言呀噉。
表現量度：指描述遊戲程式表現嘅數據，好似係（所有玩家加埋）遊戲程式每日幾多次搞到輕機、網上遊戲嘅 ping 值（ping 指訊號傳遞所需嘅時間，數值一般係愈細愈好）、以及玩家玩起上嚟嘅幀率等等。
遊戲性量度：指遊戲入面發生嘅玩家同遊戲之間嘅互動，例如係每位玩家喺某一個關入面逗留咗幾耐、每位玩家喺每一關入面死咗幾多次、以及每位玩家喺遊戲世界入面搵到幾多虛擬金幣... 等等。
... 等等。