發表文章

目前顯示的是 2017的文章

boardgame.io

https://github.com/google/boardgame.io QQ 被做走了 有空時應該會看看他的設計,看有沒有可以幹來用或是contribute的地方 先這樣 掰

風聲 The Message

Deck: 功能牌牌堆,抽牌用的 Card: 身分牌 角色卡 被動技能(影響Action的判定) 主動技能(Action) 打醬油的勝利條件 是否為隱藏角色 一般卡牌 情報:紅/藍/黑,直達/密電/文本 本身的功能(Action) Board: 隨興的圖板(放置使用過的牌) 每個人前面有個人自己的位置(PlayerStage) Rule: InitGame 發角色二選一 抽陣營 StartTurn 抽兩張牌 InTurn 傳遞情報 EndTurn 某人收下情報,放在PlayerStage EndGame 紅藍方獲得自己陣營的三個情報 打醬油完成自己的勝利任務 Action: 抽牌(from Deck) 選牌(from Cards) 選人 發牌 在圖板上放東西 把圖板上的東西拿起來 偷看牌(peek) 可發動的時間點 Custom Action 鎖定 只能在自己回合使用 指定玩家無法拒收情報 試探 只能在自己回合使用 指定玩家做出指定行為(無法選擇,被試探的一方看完卡牌後系統直接行動) 調虎離山 情報傳遞時都可使用 指定玩家無法收情報 鎖定>調虎離山 破譯 情報傳遞到面前時可使用 可peek情報 燒毀 任何時間都可使用 移除假情報(黑色情報) 識破 別人出功能牌時皆可使用 抵銷別人的功能牌 可抵銷別人的識破 截獲 在別人的情報傳遞階段可使用 直接把情報傳到自己面前 轉移 情報傳到面前時可使用 將情報傳給指定玩家,對方不可拒收 博弈 只能在自己回合使用 將牌庫頂的牌當成情報放在指定玩家面前 調包 情報傳遞時都可使用 將此牌與傳遞中的情報替換,變成公開傳遞 權衡 只能在自己回合使用 棄掉所有手牌,重抽 增援 只能在自己回合使用 從牌庫頂抽自己面前假情報(黑情報)數量+1張牌 真偽莫辨 只能在自己回合使用 從牌庫翻出存活人數張牌,輪流一人選一張成為自己的情報 公開文檔 收下會有可能有特別好處的牌(可用來辨認身分) Player:     Hand: 玩家手上的牌 沒有特別功能   

阿瓦隆 Avalon

無擴充版本,因為我自己也沒玩過全部擴充功能... Deck: 只有剛開始把人物牌洗勻的功能 Card: 角色牌 透票用的牌 出任務用的結果牌(成功/失敗) Token 拿來紀錄隊長的信物 紀錄任務結果的token 紀錄回合數的token Board: 遊人數決定要用哪個圖板 記錄任務結果 在上面寫著每次任務要多少人出任務,幾個失敗算失敗 每個人前面有個人自己的位置(PlayerStage),拿來放隊長信物&投票結果 Rule: InitGame 用遊玩人數決定參與的角色,牌面朝下讓大家挑(其實就是隨機發啦 壞人相認(除了奧伯倫) 梅林看壞人(除了莫德雷德) 派西維爾看到魔甘娜&梅林 InTurn 隊長進入選人出任務Action 所有人進入投票Action 若成功,進入出任務Action 若失敗,傳遞隊長信物,新隊長從頭進入InTurn EndTurn 公布任務結果 投票失敗的記數信物歸零 EndGame 若任務成功3次以上,邪惡爪牙現身,進入刺殺Action 刺殺結束,判定勝利方是誰 公布角色牌 Action: 選牌(from Cards) 選人(單選or多選) 在圖板上放東西 圖板上東西轉移 Custom Action 投票Action 每個人都可以投贊成與反對票,投完後同時開票(公開的結果) 出任務Action 出任務的人可以選擇行動,只有反方可以選擇失敗 判定成功或失敗,公開行動結果 刺殺Action 邪惡爪牙可以討論要刺殺誰 Player:     Hand: 玩家手上的牌 好像沒有手牌     Stage: 放在玩家前面的牌 角色牌 不同角色有不同的能見度

血契獵殺 Blood Bound

Deck: 只有剛開始InitGame時三個陣營各有一個deck,抽出需要數量混勻後讓玩家選牌(非從deck抽牌) Card: 角色牌,必須要可以部份揭露(custom peek) 道具,鵝毛筆、長劍、盾牌、詛咒、法杖、摺扇 血量指示物(數字1~9*2,紅藍未知陣營指示物*n) 備忘卡(以後有說明也可以以這種形式提供給玩家) Board: 每個人前面有個人自己的位置(PlayerStage) 沒有特別的 Rule: InitGame 依玩家人數選擇角色卡,先從各個陣營各挑出需要的牌數出來洗勻之後,再讓玩家選擇 決定刀子的持有者 可以peek右側的玩家角色卡右下角的線索 (給左手邊的玩家看,同樣意思啦) InTurn 選擇action,砍人或給刀子 EndGame 有人死亡,由檯面上的PlayerStage決定勝利者(鵝毛筆、詛咒會影響勝利者的判定) Action: 選牌(from Cards) 在圖板上放東西 給道具(鵝毛筆、長劍、盾牌、詛咒、法杖、摺扇) 把圖板上的東西拿起來 衛士受到第三點傷害之後,盾牌&長劍會消失 偷看牌(peek) 弄臣的特殊能力可以看整張的角色卡 Custom Action Partially Peek Peek可以調整看到的內容 攻擊 決定攻擊的對象 可以干涉的玩家(攻擊者/被攻擊者/已經揭露等級的人除外,其他都可以) 被攻擊者決定要不要讓人幫擋,要讓誰幫忙擋(如果有多人願意擋) 受到傷害的人取得刀子,決定要揭露甚麼指示物(若為干涉則強迫揭露等級指示物) 若揭露等級指示物,觸發特殊能力 擁有刀子的人開始下個回合 給刀子 nothing happened,擁有刀子的人開始下個回合 特殊能力 細節就不多寫了 會需要的feature大致上就是給道具、造成傷害(有可能有強迫指定揭露的指示物)、補血 之類的 Player:     Hand: 玩家手上的牌 手上拿著刀子者可以行動     Stage: 放在玩家前面的牌 蓋著的角色卡 已揭露的指示物 道具影響Action裡面的邏輯 道具影響勝利判定的邏輯

Bang!

Deck: 抽牌, 使用過的牌堆 (有人的功能是從使用過的牌堆抽牌) Card: 陣營牌(剛開始隨機抽,只有警長是打開的) 角色牌(剛開始選定之後放在PlayerStage, 影響PlayerAttribute) 裝備(放到PlayerStage, 影響PlayerAttribute) 對人使用的牌(在Action裡面寫細節) 血量Token(UI受PlayerAttribute影響) Board: 使用過的牌堆 各自的PlayerStage Rule: InitGame 抽陣營 發角色二選一 由警長開始出牌 StartTurn 判定Jail/Dynamite 抽牌 InTurn 出牌 EndTurn 棄牌 OnEvent 有人死亡可以幫補血 警長殺到副警長必須棄牌脫裝 EndGame 警長死亡or歹徒背叛者全數死亡 Action: 發牌 抽牌(from Deck) 選牌(from Cards) 棄牌 出牌(無針對or針對某人, 判定距離) 在PlayerStage上放東西 把PlayerStage上的東西拿起來 影響Player Attribute(生命) Bang攻擊人,被攻擊人要可以判定(如果裝備酒桶)&出dodge General Store 讓大家選牌的事件 Dual 對決事件 Indian! 印地安事件 Player: Hand: 手牌數量<=目前血量 Stage: 陣營 角色 血量 裝備 Dynamite Jail

矮人礦坑 Saboteur

Deck: 全部的play卡,棄牌堆 Card: 陣營: 一開始選完牌之後就一直在PlayerStage上蓋著只有自己能看 起始點: 在InitGame階段被放到Board上 終點*3: 在InitGame階段被隨機放到Board上(蓋著的,可以被peek) 路線: 必須在自己PlayerStage沒有妨礙牌的時候才能出,路線必須要合理才能出 地圖: 可偷看(peek)終點牌 拆路: 把board上面的牌丟到棄牌堆 妨礙工具: 出了之後放在PlayerStage 修復工具: 出了之後把PlayerStage對應的妨礙牌丟到棄牌堆 金塊: 計分用 Board 中間隔七格的地圖, N+5*M+7 的棋盤格,無限大小(N & M是自然數) Rule:     InitGame: 隨機分隊(隨總人數決定好壞人卡數量) 手牌數(隨人數而定) 放置起點 終點隨機擺放     InTurn: 出牌or棄牌     EndTurn: 抽牌     EndGame: 分錢 Action: 在Board上放東西在PlayerStage上放東西 把Board上面的東西拿掉 把PlayerStage上面的東西拿掉 抽牌 選牌(分陣營) 偷看終點的牌 Player:     Hand: 就手牌,沒甚麼特殊功能     Stage: 陣營牌(蓋著的牌) 裝備狀態(開著的牌),會影響可以選擇的行動

G3.js document

每寫完一個遊戲都來更新一下這個library會有啥需求 Deck: 就是牌堆嘛,拿來抽牌或是廢牌堆 Card: 牌可綁定Action 拿在手上就有功能的牌(Bang!有人要死的時候可以用beer救人之類的) 放到PlayerStage的牌 放到Board的牌 Token (Blood Bound, Bang!) 備忘卡 (Blood Bound, Bang!) Board: 棋盤形的圖板(Saboteur) 隨興的圖板 每個人前面有個人自己的位置(PlayerStage) Rule: InitGame StartTurn 由手牌決定行動者是誰(Blood Bound) InTurn(可能可以有很多階段) EndTurn EndGame Action: 可發動的時間點(The Message) 抽牌,從Deck抽 選牌,從一些公開/不公開的Cards裡面選 選人(Avalon) 發牌 棄牌 在圖板上放東西 把圖板上的東西拿起來 偷看牌(peek) Custom Action(Bang!, Blood Bound, Avalon) Player:     Hand: 玩家手上的牌 可見度要可以調(Hanabi) 由手牌決定行動者是誰(Blood Bound) 有些牌是隨時都可以出的,在Action裡面著名可發動的時間點     Stage: 放在玩家前面的牌 可見度要可以調 影響player自身attribute(Saboteur, Bang!) Util: 語音on/off (Avalon)

Project G3.js (暫名)

全名GonnaGoodGame.js,目標是做出一套桌遊的framework。 目標是幫助桌遊設計師prototyping,讓小孩實作自己的想法、學習寫程式,讓有想法的人但是懶得做黑手工作的人輕鬆的開發遊戲。 為工程師省掉 做連線 / 刻UI / 思考架構 的時間;為設計師省下 把東西實體化 / 驗證想法 / 設計過程中優化 的成本;對小孩嘛,希望可以讓他們得到 樂趣 / 邏輯能力 。也讓 以上的人 有個可以分享自己想法的途徑。 完畢。 MileStone 1: 開始用物件導向的角度歸納出各套桌遊的邏輯,並且從各種桌遊中再歸納出一套桌遊framework的需求。 每日一更新,預計一兩個月後歸納出的需求應該會漸漸stable,到時再來實作。 Checklist( 十一月初): 歸納出一套粗陋的文件,簡單介紹有哪些class可以給開發者使用 MileStone 2: 以粗陋的文件為基礎,把每個feature都實作出來。開始想這套framework的初版要建立在甚麼平台上。Web? Unity? Standalone app?畢竟這套邏輯只是一套桌遊的邏輯,讓使用者/設計者玩的地方沒啥限制。 Checklist( 十一月底): 把文件說的library真的完成 評估電腦還是連線功能比較容易prototype出來。 MileStone 3 : 實作UI部分的東西。 思考一下連線的架構。 Checklist(十二月底): 實作UI部分 Future Work: 在MileStone1裡面完成的psuedo遊戲邏輯中,挑幾款來實作。 實作過程要順便思考有沒有辦法把這段實作的過程變成一套可以拖拉編輯的程式。 Checklist: 做幾款特色各異的遊戲,這段時間必須要持續polish MileStone 1完成的那些文件。 實作連線功能(剛開始可能要先做一些可以單人遊玩的遊戲)