Flutter 遊戲開發,不只是程式:如何從有想法到實現一款遊戲(二)

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

前言

前一篇說到遊戲開發的契機以及介紹了開發工具與官方提供的遊戲模板,在這一篇文章中,會開始進行遊戲的設計與製作,目標是上架到 Google Play 與 App Store 平台上,讓我們開始吧!

遊戲設計

我要做的遊戲是關於數學簡單運算並加一點運氣的小遊戲,大家是否有玩過扭蛋、盒玩、一番賞、抽獎等等,我們無法事先知道會拿到什麼獎品,所以充滿了隨機性,這種未知性的感覺讓我們產生很大的樂趣,遊戲規則很簡單,目標是增加總積分,每位玩家起始積分為 100,總共為三個步驟:
  • 第一步的主題是數學符號,畫面上會出現九個盒子,玩家可以隨機選至少一個最多三個的盒子,然後進行到下一步。
  • 第二步的主題是數字,畫面上一樣會出現九個盒子,玩家須選擇前一步所選的盒子數量的盒子,有點繞口XD,例如:第一步選三個,那第二步也一定要選三個,接下來到最後一步。
  • 第三步的主題是組合,根據前兩步所選的盒子進行算式組合,組合出合法的算式並得出結果。

製作企劃書

要製作一款遊戲我習慣先寫企劃書,主要大綱為:
  1. 遊戲名稱
    - 需要與遊戲有所關聯性,會與遊戲 Logo 一同設計。
  2. 目標族群
    - 上班族?學生?小朋友?
  3. 遊戲簡述
    - 簡單描述遊戲內容或故事。
  4. 遊戲玩法以及規則
    - 列出所有規則及玩法。
  5. 遊戲頁面
    - 列出所有頁面,包含:Landing Page、主頁面、遊戲頁、設定頁。
  6. 開發流程
    - 依照頁面或功能進行,我會先以遊戲的核心商業邏輯進行開發,先把遊戲主要玩法流程開發完,再慢慢補上其他功能。
  7. 營利模式
    - 遊戲廣告模組應用與開發。
    - 是要做成 Banner 還是彈窗。
  8. 其他

畫面設計(UI/UX)

接下來就是畫出遊戲各個頁面的 wireframe,我習慣使用 figma 設計,市面上還有很多工具可以用,例如:Adobe XD、Sketch,可以選一個自己喜歡的使用。
以下為主要頁面的設計:
wireframe

遊戲模板架構

首先我們把遊戲模板跑起來,你會看到一個簡易的 Landing Page,而main.dart 為主要的入口點,在這個檔案會注入所有的服務,包含:廣告模組、音樂模組、firebase 系統崩潰報告,在 lib/src 下會看到預設寫好的模組。
Landing Page
在 Flutter 中,pubspec.yaml 是一個重要的配置文件,它是管理 Flutter 專案所需的依賴項目和資源的方式之一。
pubspec.yaml 文件中,你可以定義你的應用程式所依賴的套件、圖像、字體、應用程式等等,Flutter 將使用 pub 工具來自動下載、編譯和管理這些依賴項目。該文件還可以指定應用程序的版號、描述、作者、網址等基本資訊。類似於 node.js npm 的 package.json。
依賴的套件
app 圖片、字體
接下來點擊開始遊戲會看到選擇關卡頁面,在這裡我們可以設計各種關卡列表給玩家選擇。
關卡選擇頁
點擊 Level 1 關卡並開始遊戲,遊戲玩法非常簡單只要在 slider 上拉超過 5% 就過關XD。
遊戲頁
遊戲結束
回到 Landing Page 我們點選 Settings 會進入到遊戲設定的頁面,在這裡可以設定玩家名稱、音樂開關或是語言等等。
設定頁
玩家資料都會存放在 PlayerProgress 資料夾下,透過 Provider 注入到 app ,底下的元件都可以呼叫並使用。

結語

企劃書跟遊戲畫面設計完後,終於要開始來寫遊戲啦,相信我在開發中企劃書跟遊戲畫面一定會反覆修改,也有可能打掉重寫,光是玩法我就改了兩三次,下一篇會開發主要核心邏輯的部分,其實我已經開始寫一部份了XD。
遊戲專案放在下方連結,謝謝你看到這裡 ^^
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Johnson Huang的沙龍 的其他內容
前言 當今時代,遊戲已經不再只是單純的娛樂,更成為人們生活中不可或缺的一部分。隨著技術的發展,遊戲也從單機遊戲轉變成網路遊戲、手機遊戲、虛擬實境(VR)遊戲等多種形式。Flutter 作為一種跨平台的開發框架,正逐漸成為開發遊戲的一個重要工具。本系列文章將以「輕鬆入門 Flutter 遊戲開發」為題
前言 當今時代,遊戲已經不再只是單純的娛樂,更成為人們生活中不可或缺的一部分。隨著技術的發展,遊戲也從單機遊戲轉變成網路遊戲、手機遊戲、虛擬實境(VR)遊戲等多種形式。Flutter 作為一種跨平台的開發框架,正逐漸成為開發遊戲的一個重要工具。本系列文章將以「輕鬆入門 Flutter 遊戲開發」為題
你可能也想看
Google News 追蹤
Thumbnail
大家好,我是woody,是一名料理創作者,非常努力地在嘗試將複雜的料理簡單化,讓大家也可以體驗到料理的樂趣而我也非常享受料理的過程,今天想跟大家聊聊,除了料理本身,料理創作背後的成本。
Thumbnail
哈囉~很久沒跟各位自我介紹一下了~ 大家好~我是爺恩 我是一名圖文插畫家,有追蹤我一段時間的應該有發現爺恩這個品牌經營了好像.....快五年了(汗)時間過得真快!隨著時間過去,創作這件事好像變得更忙碌了,也很開心跟很多厲害的創作者以及廠商互相合作幫忙,還有最重要的是大家的支持與陪伴🥹。  
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
一個獨立開發者,立志打造顛覆性的遊戲體驗,在開拓全新玩法的道路上,砥礪前行。 大家好,我正在開發一款獨立遊戲,以魔法戰鬥為主題,如果想要嘗試遊戲的demo,歡迎到下方連結處,加入我的Discord群組。 魔法與戰鬥的世界---開發中的遊戲   這款遊戲發生在一個飄浮於雲端之上的世界,
Thumbnail
這篇內容,將教你如何開啟新的GameMaker專案,並調整畫面佈局。也會講解,為何建議用英文語系,來進行遊戲開發。
Thumbnail
這篇內容,簡單介紹了GameMaker的遊戲製作原理。包括Object、參數、程式碼等概念。同時也簡單介紹了GameMaker的適用範圍和特色。
Thumbnail
獨立遊戲開發,很多時是一個想法和熱情冒出來後,就叫人衝到電腦前想快點把成品弄完……就算做不了完整版,至少也想有個Demo。 既然想「快點」,那還要不要「花額外時間」去寫企劃書呢? 在處理這個問題之前,要先理解的是,這句話裡面至少有兩種情況。   其一:團隊裡只有一個企劃,所有事情都由一人主導
Thumbnail
# 簡介 身為一位專注於 Vue.js 的前端開發者,這是我第一次嘗試構建 Flutter 網頁應用。讓我們開始吧! ## 第一次嘗試 ### 第一步:創建一個 Flutter 應用 首先,通過運行以下命令來創建一個新的 Flutter 項目: ```sh flutter
Thumbnail
一、了解思維 二、大量體驗 三、拆解架構 四、找出樂趣
Thumbnail
本篇文章將分享手機App設計教學,並往後介紹使用Flutter開發App的相關知識和技巧。透過這系列的分享,讀者將能夠學習如何利用設計和程式開發技能來製作一個App。文章中也提供了一些靈感來源和教學資源,幫助讀者進行設計和開發的思考和學習。
專欄簡介 你是否跟我一樣想做出屬於自己的遊戲? 不會代碼, 沒有經驗, 不會任何遊戲引擎也想進入製作遊戲的世界嗎? 此專欄會包跨 Renpy 的基礎入學教學到獨立製作出完整視覺小說 / 文字冒險遊戲也包跨自訂遊戲的外觀 UI。 除此之外也會時不時分享一些各位在遊戲創作上可以用到的資源 自我介紹 你好
Thumbnail
建立幾個變數如下,最上面兩個變數值為清單值 接下來分別設定球1位置到左上角落、設定球2位置到右上角落、設定球3位置到左下角落、設定球4位置到右下角落 當螢幕初始化的時候,設定玩家球的X、Y座標和大小,並將玩家球的初始顏色,設定成(變數_顏色清單)中.....
Thumbnail
這篇文章將會延續(上)、(中)的內容,談談遊戲開發測試原型的製作與驗證。
Thumbnail
大家好,我是woody,是一名料理創作者,非常努力地在嘗試將複雜的料理簡單化,讓大家也可以體驗到料理的樂趣而我也非常享受料理的過程,今天想跟大家聊聊,除了料理本身,料理創作背後的成本。
Thumbnail
哈囉~很久沒跟各位自我介紹一下了~ 大家好~我是爺恩 我是一名圖文插畫家,有追蹤我一段時間的應該有發現爺恩這個品牌經營了好像.....快五年了(汗)時間過得真快!隨著時間過去,創作這件事好像變得更忙碌了,也很開心跟很多厲害的創作者以及廠商互相合作幫忙,還有最重要的是大家的支持與陪伴🥹。  
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
一個獨立開發者,立志打造顛覆性的遊戲體驗,在開拓全新玩法的道路上,砥礪前行。 大家好,我正在開發一款獨立遊戲,以魔法戰鬥為主題,如果想要嘗試遊戲的demo,歡迎到下方連結處,加入我的Discord群組。 魔法與戰鬥的世界---開發中的遊戲   這款遊戲發生在一個飄浮於雲端之上的世界,
Thumbnail
這篇內容,將教你如何開啟新的GameMaker專案,並調整畫面佈局。也會講解,為何建議用英文語系,來進行遊戲開發。
Thumbnail
這篇內容,簡單介紹了GameMaker的遊戲製作原理。包括Object、參數、程式碼等概念。同時也簡單介紹了GameMaker的適用範圍和特色。
Thumbnail
獨立遊戲開發,很多時是一個想法和熱情冒出來後,就叫人衝到電腦前想快點把成品弄完……就算做不了完整版,至少也想有個Demo。 既然想「快點」,那還要不要「花額外時間」去寫企劃書呢? 在處理這個問題之前,要先理解的是,這句話裡面至少有兩種情況。   其一:團隊裡只有一個企劃,所有事情都由一人主導
Thumbnail
# 簡介 身為一位專注於 Vue.js 的前端開發者,這是我第一次嘗試構建 Flutter 網頁應用。讓我們開始吧! ## 第一次嘗試 ### 第一步:創建一個 Flutter 應用 首先,通過運行以下命令來創建一個新的 Flutter 項目: ```sh flutter
Thumbnail
一、了解思維 二、大量體驗 三、拆解架構 四、找出樂趣
Thumbnail
本篇文章將分享手機App設計教學,並往後介紹使用Flutter開發App的相關知識和技巧。透過這系列的分享,讀者將能夠學習如何利用設計和程式開發技能來製作一個App。文章中也提供了一些靈感來源和教學資源,幫助讀者進行設計和開發的思考和學習。
專欄簡介 你是否跟我一樣想做出屬於自己的遊戲? 不會代碼, 沒有經驗, 不會任何遊戲引擎也想進入製作遊戲的世界嗎? 此專欄會包跨 Renpy 的基礎入學教學到獨立製作出完整視覺小說 / 文字冒險遊戲也包跨自訂遊戲的外觀 UI。 除此之外也會時不時分享一些各位在遊戲創作上可以用到的資源 自我介紹 你好
Thumbnail
建立幾個變數如下,最上面兩個變數值為清單值 接下來分別設定球1位置到左上角落、設定球2位置到右上角落、設定球3位置到左下角落、設定球4位置到右下角落 當螢幕初始化的時候,設定玩家球的X、Y座標和大小,並將玩家球的初始顏色,設定成(變數_顏色清單)中.....
Thumbnail
這篇文章將會延續(上)、(中)的內容,談談遊戲開發測試原型的製作與驗證。