這局不對勁R 製作手記:八天用 AI 做出一款台灣麻將 Roguelike

台灣 16 張麻將 × 技能卡 × 劇情。從一張草稿圖到 v1.11,八天裡每一次修改的原因和做法。
這是一款什麼樣的遊戲
依照台灣 16 張麻將的規則製作,吃、碰、槓、聽、算台都有。打牌時可以使用技能卡。對手設計成具有個性,並依其個性搭配不同的語音。
主要的玩法是劇情模式(製作期間叫 RUN,v1.11.1 改名)。玩家選一個角色,帶著 450 元,在分岔的地圖上選路。路上有一般桌、菁英桌、事件、商店、休息區,最後是魔王。每過一段從三張技能卡裡選一張,卡片只在這一趟有效。錢輸光,這一趟結束。每個角色有自己的故事。
劇情模式的一趟這樣走(每個節點之間有一段劇情):
- 選角色,帶 450 元出發。
- 在地圖上選路:一般桌、菁英桌、事件、商店或休息區。事件、商店、休息區走完回到地圖繼續選。
- 打贏一般桌或菁英桌,從三張技能卡裡挑一張。
- 打這一章的魔王。贏了進下一章,共 4 章;贏下最後一位,看到這個角色的結局。
- 任何一桌錢輸光,這一趟結束,卡片歸零。
另一個玩法是養成模式(原本叫自由模式)。錢會存下來,圈數自己選,首頁按鈕上顯示目前金額。
遊戲用瀏覽器玩,電腦、平板、手機直拿橫拿都支援。
設計初衷
一般的麻將遊戲,每一局的感覺差不多。我想做的是每一趟都不同:抽到的卡不同,走的路不同,換一個角色故事也不同。
希望這款麻將遊戲能做得像 roguelike,讓玩家沉浸在其中。
——11 月 6 日的修改需求
幾個沒變過的原則:
- 依照麻將規則,不亂改。技能卡只讓機率偏一點。
- 對手有個性:有表情、會喊碰、贏了跳舞、輸了趴桌。
- 畫面有台灣味:夜市、牛肉麵、九份、艋舺。卡片名稱取自台灣的日常。
- 不用下載。
製作方式
圖、模型和程式幾乎都用 AI 工具製作。我決定要什麼、看結果、要求修改。
- 人物造型:參考優質角色圖,交給 AI 重新設計。Midjourney 生成視覺草稿,gpt-image-2.5 編修成設定圖和四面圖。
- 人物模型:四面圖交給 fal.ai 建模,貼圖由 Claude Opus 5.5 編修。
- 語音:使用生活周遭朋友錄製的語音,依角色個性配置。
- 技能和成就:技能卡和角色能力用同一條平衡原則。
一個角色從參考圖到上牌桌的流程:
- 參考角色圖 → Midjourney 生成視覺草稿,挑一張。
- gpt-image-2.5 做設定圖、四面圖、表情。
- 檢查臉和髮型;不對就回上一步重做。
- fal.ai 生成 3D 模型。
- Claude Opus 5.5 修貼圖、接骨架和表情。
- 配上朋友錄的語音,上牌桌。
有強項必有短板
如果某張卡或某個角色太強,其他選項就沒有人選。所以每個技能有一個長處,就配一個短處,數字都壓小。技能只讓牌局偏向某種打法,輸贏仍然看牌怎麼打。
兩個技能作用在同一件事時:
- 方向相同:大的算全額,小的只算四分之一。
- 方向相反:互相抵掉一部分。
- 沒有重疊:照原本的算。
技能卡、角色能力、兩者疊加的算法都照這條原則。成就獎勵只給外觀,不影響牌局。
11 月 4 日|從一張草稿圖開始
起點是一張 AI 生成的草稿圖:黃昏的台北夜市,一張方桌,對面坐著動漫角色。要求是坐姿視角、俯視約 35 度,其他三家只看得到牌背,棄牌散放在中央。

製作方式選了 3D 模型加卡通上色。原因是角色需要表情、動作、換姿勢,2D 每多一個動作就要多畫一套。左右兩家原本只放頭像,改為也坐上桌。
當天完成第一個瀏覽器可玩的版本:吃、碰、槓、算台。之後補上漏掉的胡牌和自摸,再加聽牌提示。
第一個角色重做
第一個角色小晴用程式拼出來,不好看。原因是沒有設定就開工。之後改為先寫角色設定、畫設計草稿,再照圖做模型。





牌桌修改
開始玩之後,才知道需要修改哪些部分:
- 手牌站立角度不對。調整。
- 金幣圖示佔位置。改為桌面中央的顯示器,顯示胡牌、自摸次數和剩餘金額。
- 玩家面板擋到牌。改為嵌進桌面。
- 桌上牌太小看不清楚。改為點牌,自動放大。
- 畫面下方太空。視角往前推。
- 角色沒有鼻子。補上。
同一天決定:每個角色三種勝利動作、三種敗北動作,每次隨機播放。
11 月 5 日|對手設計
靜音時不知道誰喊了碰。加上叫牌貼圖:誰碰、吃、胡,角色旁邊跳出大字貼圖,每個角色的字體和顏色不同。
規則補了兩項。明聽和暗聽可選,明聽不能換牌,暗聽可以。台灣麻將的特殊牌型全部補齊,每種有專屬標題圖,台數越高動畫越多。
電腦對手分 10 級,經過測試確認等級越高勝率越高。玩家可以開電腦代打,預設 Lv1,可升級。
場景增加到六個:台北牛肉麵、士林夜市、雪山溫泉旅館、頂樓電競直播間、九份山城茶樓、艋舺龍哥麻將會館。桌子、椅子、牌背和按鈕樣式跟著場景換。

加上開場動畫:角色走進來坐下,玩家視角跟著走到桌邊,接著擲骰、發牌。八個角色八種走法。可在設定中跳過。
11 月 6 日|從 12 關改成劇情模式
原本是 12 關直線闖關。問題是每次路線都一樣。這天改掉,當時的名稱是 RUN:
- 12 關直線,改為 4 章分岔地圖。
- 卡片只在這一趟有效。拿過的卡記在蒐集冊。
- 拿卡改為三選一,原本只能抽不能挑。
- 錢輸光就結束。起始金額改為 450,縮短一趟的時間。
- 魔王本金是玩家的 3 倍,菁英桌 1.2 到 1.8 倍。對手輸光離場。
難度設得高。預期多數玩家在第四關附近結束,後段需要拿到好卡並搭配得當。
技能卡
卡片照平衡原則設計。例如一張卡提高摸到紅中的機率,同時降低摸到青發的機率。另外設計了不靠機率的卡,例如三選一變四選一、輸光時救一次的復活卡。設計文件列了 38 張數值卡和 41 張特殊效果卡。
卡片分主動和被動。主動卡點擊發動;被動卡拿到即生效,畫面上顯示圖示,作用中圖示發光。卡面是 70 年代復古印刷風。


語音和歌曲
音效有洗牌、摸牌、打牌、骰子和場景環境聲。角色語音依個性設計:入座招呼各五種,碰、胡、自摸,打牌報牌名,部分角色有口頭禪,例如「碰一個」、「我吃,感謝」。
遊戲有八首中文歌曲,對應不同場景,例如《夜市 Go Go Go》、《合歡山的雪》、《頂樓連線》。歌詞寫的是場景裡的事,內容有趣。遊玩時歌詞顯示在畫面上方,跟著音樂走。首頁預設一首,其他的玩過對應關卡後解鎖,可在蒐集冊播放。

當晚遊戲第一次上線,可用 LINE 登入和取名。之後的修改舉例:
- 新增上滑出牌。點牌也會誤觸縮小,改為只有上滑才出牌。
- 提示文字擋到對家的臉。換位置,可關閉。
- 音量面板太複雜。只留音樂、音效和靜音。
- 主動卡要選牌,操作多。改為點擊直接發動。
11 月 7 日|改名,新增養成模式
遊戲名稱從「台灣十六張R」改為「這局不對勁R」。
養成模式有四張牌桌:路人桌、錢巷桌、菁英桌、雀神桌,每台 20 到 150 元,入座門檻 200 到 1,500 元。流程是選桌、選場景、選圈數。錢會累積,卡片可合成升級,代打可逐級購買。
- 沒有救濟金。輸光後等信箱每天的 500 元。
- 贏錢抽 10%,放進全體玩家共用的獎池。
- 商店價格隨持有金額提高,每天的 500 元不能直接買東西。
- 重複的卡自動合成,最高 Lv3。
- 加入 6 張詛咒卡,只有壞處,混在抽卡池。
道具店的兩位老闆
商店原本是一排按鈕:抽卡、加卡槽、移除卡、升級代打。這天重做:背景改為復古展示櫃,商品擺在櫃上,旁邊站一位老闆。

金大叔:韓國大叔,口頭禪「阿一古」,常提炸雞、泡菜、燒酒。出現機率九成。劇情裡講台灣國語腔,「是」說成「素」,「說」說成「縮」。
夏海:講話直接,偶爾夾日文。出現機率養成模式一成、劇情模式一成五。只有她賣兩樣東西:遊戲加速 GOGORU(1.5 倍免費,2 倍、2.5 倍、3 倍分別 1,200、1,800、2,400 元,永久有效)和角色艾文芒果。她也是首頁的引導員。
每次進商店,先決定誰顧店,再決定口氣。口氣五種:俏皮、推銷、鼓勵、酸人、普通,整次造訪用同一種。點商品,老闆用這個口氣說明功能和價格。
金大叔介紹抽卡的五種說法:
| 口氣 | 台詞 |
|---|---|
| 俏皮 | 閉上眼睛、心裡喊三聲「金價大牌」,會出好東西喔~ |
| 推銷 | 隨機一張能力卡,抽到一樣的還會自動合成升級,超值! |
| 鼓勵 | 抽一張吧!換一個翻身的機會,大叔相信你手氣會來。 |
| 酸人 | 抽到爛卡別哭著來找大叔退錢喔。 |
| 普通 | 隨機拿到一張能力卡。兩張相同同等級的卡會合成升一級,最高 Lv3。 |
夏海的說法:「抽到什麼算你的命,別怪我。」
特殊情況另有台詞。錢不夠:「大叔這裡不能賒帳喔」。抽到詛咒卡:提醒可用櫃上的剪刀移除,價格兩倍。輸到坐不了桌:提醒去信箱領 500 元。
加入劇情後,兩位老闆也是劇情裡和玩家角色對話的人。
同一天完成:劇情模式輸光的敗北畫面(一男一女抱頭痛哭,副標題「你的靈魂和肉體已經脫離,請投胎後開始」);每次更新顯示玩家版更新公告。
角色選擇
進任何模式前先選角色。版面參考格鬥遊戲:左邊 3D 角色,右邊頭像。點頭像換角色並播放自我介紹。初始三個角色,其他達成條件解鎖。


修改:腳沒有踩地的感覺,下半身和鞋子重做;站姿手部僵硬,重調;新增拖曳旋轉。
11 月 8 日|角色全部重做
角色選擇把角色放大後,舊模型顯得粗糙。改用新流程:四面圖轉 3D 模型,再接骨架和表情。第一個是新角色藍小熊,效果好,其他角色全部照做。

遇到的問題:
- 模型的臉和設定圖不像。原因是四面圖沒有檢查就送出。改為先確認臉、眼睛、表情再送,避免浪費生成費用。
- 辮子在背面圖畫錯。原因是描述太複雜。改為「辮子自然垂在背後」。
- 臉上有黑色色塊、下巴發黑、眼睛重複貼圖。逐一修正。
- 部分表情貼圖讓臉變髒,例如龍哥張大嘴。停用。
另外用捏臉軟體做了兩個角色:櫃檯客服葉朝顏、工程師艾文芒果。艾文芒果用我自己的聲音。
劇情
每個角色有自己的故事,例如找一隻叫小肥花的貓、吃不到的滷肉飯、半夜的臭豆腐味。所有故事最後都到艋舺龍哥麻將會館。對話在玩家角色和兩位老闆之間進行,每個節點一段,可跳過。
每個角色有 10 種表情的半身圖。選定角色後,這一趟不能換人。
劇情彩蛋
第一輪故事寫完後各自獨立。修改要求:所有故事發生在同一個台北,每個故事裡放幾件屬於其他故事的小事。
重複出現的東西有八樣:
- 小肥花:很胖的橘白貓,琉花故事的主角。
- 戴墨鏡的鴿子:會排隊、會點頭,只說「咕」。
- 流浪滷肉飯攤:布簾寫著「今天在這,明天不知道」。
- 凌晨三點的臭豆腐味:人稱「三更臭」,雪山上也聞得到。
- 心法殘頁:秘笈缺的那幾頁,有一頁被拿去墊桌腳。
- 「紅蟲」紀念牌:把「紅中」印錯字的麻將牌。
- 金龍杯碎片:摔碎的獎盃。
- 十年之約:龍哥在每個結局都提到,他在等一個船上的老朋友。

以小肥花為例:
- 紫音的故事:娃娃機玻璃上的尋貓啟事。
- 密室事件:現場有橘色貓毛。
- 賭神的故事:紙條背面有貓腳印和鮭魚味。
- 大海的故事:打翻滷肉飯的胖貓,項圈刻著「小肥花」。
七個故事各自埋了哪些線索:
| 故事 | 出現的彩蛋 |
|---|---|
| 第五張紅中 | 小肥花、流浪滷肉飯攤、三更臭豆腐味 |
| 金龍杯密室事件 | 小肥花、心法殘頁、紅蟲紀念牌 |
| 十六張心法 | 三更臭豆腐味、金龍杯碎片 |
| 賭神流浪記 | 墨鏡鴿子、小肥花、流浪滷肉飯攤 |
| 尋找小肥花 | 流浪滷肉飯攤、心法殘頁、三更臭豆腐味 |
| 吃不到的滷肉飯 | 小肥花、墨鏡鴿子 |
| 半夜的臭豆腐 | 紅蟲紀念牌、小肥花、金龍杯碎片 |
這些線索在龍哥的故事裡交代來龍去脈。虎婷婷的故事也接上同一組線索,另有 6 個新彩蛋。
彩蛋對白出現時蓋彩蛋章,並記入蒐集紀錄。v1.7.1 上線時共 8 個故事、32 個彩蛋。目的是讓玩家換角色再玩時,認出上一趟看過的東西。

同一天完成:載入時的聽牌小測驗;結算畫面加角色頭像,贏家彩色、輸家黑白;首頁加入夏海,點按鈕時說明功能。
11 月 9 日|手機直拿
玩家回報:手機畫面放大後,結算的「確定」按鈕點不到。修了兩次。
新增直拿版面,橫拿不變。直拿時牌桌在中間,手牌放大成兩排在下方,剛摸的牌分開並加金框。首頁、商店、地圖、劇情、角色選擇都有直拿版。選牌桌和選關卡改為左右滑動。


為了之後上架 iOS 和 Android,同時處理:瀏海手機按鈕被擋、小按鈕不好點、Android 返回鍵直接關閉遊戲。
劇情模式節奏加快:一般桌最少 2 局、魔王桌 3 局,達成條件即過關,畫面顯示「通關所需 x/y」。牌桌提示刪掉教學文字,只顯示誰打出什麼,並直接用角色名字。
11 月 10 日|v1.11
頭髮、新角色、牌桌
雪乃的長髮和紫音的雙馬尾加上走路時的擺動。坐下前頭髮會亂跳,改為只在進場走路時擺動。
新角色虎婷婷:龍哥在泰國的女兒,脾氣火爆,講話夾泰文。她和龍哥的衣服在舉手時會被手臂帶著變形,已修正。角色解鎖統一為信箱收信,開信後角色說開場白。
牌桌重新設計:六個場景各有桌面和椅子,出牌有漣漪,場景有雨、霧、雪、煙火。桌邊閃爍燈條刺眼,改為柔和的效果。
NPC 思考時間
靜音時,對手出牌後另一家立刻碰走,看不清楚打了什麼。改為電腦在吃、碰、槓、胡之前隨機停 0.3 到 1 秒。
角色能力
每個角色一個被動能力,有強項也有短板,數字小。選角畫面和角色資訊卡會列出兩者。角色能力和技能卡作用在同一件事時,大的算全額,小的算四分之一。
結算畫面
原本是一張表。改為牌一張張排出、台數逐項蓋章、金額跳動,背景依場景換色。
成就殿堂
30 張成就,美式漫畫風。依已有戰績計算,舊玩家開啟時會有已達成的項目。

獎勵只有外觀:稱號、頭像框、牌背、桌布、結算特效、吉祥物。修改兩處:測試時成就全部顯示為已解鎖;稱號文字蓋到桌上金額。
點數原本是門檻,改為消費。點數最多 58 點,全部買要 75 點。重置要付養成模式資金,第一次 5,000 元,每次加倍,上限 80,000 元。
傾斜視角和載入畫面
手機傾斜時,牌桌視角跟著移動。載入畫面從靜止圖改為動態:背景緩慢移動,加上光線、火花和紅紙。
困難與做法
| 問題 | 原因 | 做法 |
|---|---|---|
| 角色不好看 | 沒有設定就開工 | 先寫設定、畫設計草稿,再做模型;之後全部重做 |
| 模型的臉不像 | 參考圖沒檢查 | 四面圖先確認再送,描述寫簡單 |
| 闖關單調 | 每次路線一樣 | 分岔地圖、卡片每趟歸零、三選一 |
| 卡片強弱失衡 | 技能不能蓋過麻將本身 | 有強項必有短板;疊加時小的算四分之一 |
| 看不清誰做了什麼 | 多數人靜音玩 | 叫牌貼圖、提示用角色名字、電腦動手前停頓 |
| 手機畫面卡住 | 玩家拿手機的方式不同 | 新增直拿版面 |
| 獎勵沒有取捨 | 全部都拿得到 | 點數消費且買不完;重置有代價 |
接下來
線上對戰開發中:配對人數不足由電腦補位,斷線由電腦接手。另一個目標是上架 iOS 和 Android。傾斜視角的方向和幅度還需要在更多手機上確認。
遊戲網址:taiwan16r.lovemage.workers.dev(免費,不用下載)。本文依版本更新公告、設計文件和修改需求紀錄整理。