[人狼] 新.汝は人狼なりや?規格式樣書

看板HOT_Game作者 (喵喵叫的蜜蜂貓)時間15年前 (2009/02/12 22:14), 編輯推噓7(708)
留言15則, 6人參與, 最新討論串1/1
0.規格書的規格書 1.Notion 2.資料結構 3.網頁結構 4.工作分工 5.系統延伸 0.規格書的規格書========================================================== 要討論請到higurashi版回應或推文, 主要規格書修改會一直編輯該版文章 第一章-Notion 各種於設計期間/開發期間/晚上睡覺夢到的點子 未必要實際應用於程式中....但任何點子都可能成為重要的依據 這是在初期開發期間最重要的 也是最需要集思廣益的 第二章-資料結構 當然也可以說是資料庫結構,但事實上只要是陣列變數都屬於此章的範圍 不過初期設計當然還是從資料庫結構開始.... 然後是陣列結構,最後才是定義所有的變數名稱 第三章-網頁結構 所有網頁的名稱, 負責的工作 相互之間傳遞的引數內容,從屬關係 要等第二章弄差不多才要開始處理 第四章-工作分工 作為一個(希望)中型開發計畫 只要2,3章決定了,就可以開始進行工作分工了 第五章-系統延伸 超長時間場(以真實時間計算時間...) 特多人數, 30人up 多占卜/獵人/靈能/etc...超複雜化 背德,戀人,狼占,狸貓,etc...等新職業加入 1.Notion================================================================== 系統======================================================= 將帳戶申請與村民登錄各自獨立 玩家退出村莊(而不是被KICK)/更改名稱頭像的功能 帳號名稱應該為單純英數,村民名稱也應該有所限制 對話的回應功能?悄悄話? 紀錄檔匯出&刪除而不是留在資料庫中(xml+xsl or htm+css or mht/chm or php+css+csv/zip) 測試專用場,身代必為村人,人人有職位 加強的回合狀態顯示(防止漏投) 投票紀錄於哪個TABLE?(討論於2章TABLE ji_player) 內部全部使用UTC Time Time紀錄應該唯一, 但是同時發生的事件應該隨機排序time+1 扮演模式?(玩家頭像&暱稱全部用系統內部設定) 聯合Server表(要有版本,標頭資訊等) 對話制防止對話灌水 簡易新手指南 對話使用ajax與壓縮技術 程式樣板化(文字/版面分離) 依據玩家的銀幕寬度,使用不同的版面 發言的文字顏色分離 替身名字的多樣化, 為特定acc_id而非uname或其他 玩家的預存發言,自訂死亡訊息等(取代"殘破的身體被發現") 允許ICON/MIG儲存於另一個網頁空間(使用FTP或多重途徑連線) 網頁複製文字/COPY畫面....統統不可以 (用照相機我服你...) 專家模式(有效參與場次,KICK次數有限玩家限制) 防止只開專家模式 音效: 開始遊戲/重新投票/日夜切換/未投警告 玩家紀錄 參加場數,完成場數,全參與場數(有留在幽靈間到結束或活到最後) 參加密度,扮演角色次數/獲勝次數 (玩家個人紀錄的公開程度, 應該讓玩家可以自己設定) 不良玩家紀錄 被KICK率(因為會有自行離場, 所以可以計算被KICK率) 在沒有重新投票的狀況下自殺 洗版,多重參賽,重投沒投,作弊嫌疑(一場一次,由玩家於結束後投票) 各種數量限制 同時玩家數目,募集中場次限制,新開募集最小時間差,遊戲中場次限制 所有場次總限制(含剛結束?),玩家重場限制,發言密度限制 專家場比例限制 室長功能? 強制KICK?,開場後修改規則?,廢場? 系統紀錄 每一場的開始跟結束時間,活動密度 遊戲PLAY FRAME配置(預想): 即時|廣告 狀態|對話輸入/登入 ----+ 村投|活人對話 人票| 狀選|- - - - - - 態單|死人/路人對話 規則與選項================================================= 開場GAME START投票Timeout 1A.不Timeout 1B.一段時間自動Timeout 1C.不講話一段時間自動Timeout 2A.可玩家自行取消 2B不可玩家自行取消 預設1C,2A, 不可設定 有玩家被KICK/自行離場 之後? A.全部重投 B.不重投使用Timeout機制 夜間占卜不占的處理: A.占卜死,遊戲繼續 B.系統隨便選 C.不占卜,遊戲繼續 夜間獵人不保護的處理: A.獵人死,遊戲繼續 B.系統隨便選 C.不保護,遊戲繼續 夜間狼部份不投: A.死狼,重投 B.死狼,不重頭 C.不死狼,不重投 日間玩家不投票的處理 A.死人,重投 B.死人,不重投(除非同票) C.不死人,不重投(當廢票,除非同票) D.如果不投不影響結果則不死人不重投,若有影響則...? 同一晚占卜占狐&狼咬占卜之處理 A.兩個都死 B.死占卜不死狐狸 時間制/對話制/混合制 時間制:指定日間長度跟夜間長度(分鐘), 時間到投票時間倒數開始 對話制:限制一個日間或是一個夜間可以說幾句話, 歸零投票開始 混合制:上述兩種同時存在 投票時間可指定? 替身的職業例外?或是遊戲直接從早上開始? 職業希望制,替身君制度,公開票數 16人決定者,16人權利者,20人埋毒者 幽靈觀看角色禁止 更高/低的最大人數限制, 開場最少人數限制 2.資料結構================================================================ 陸續補充中... DB TABLE ji_account======================================== 帳號資料,紀錄玩家帳號密碼狀態跟被KICK紀錄等 acc_id UNSIGNED MEDIUMINT AUTO_INCREMENT=1 NOTNULL 流水編號,從1開始 acc_name VARCHAR NOTNULL 帳號名稱(不是村民名稱) acc_password MD5編碼後的密碼 acc_authority 使用者權限 ... PRIMARY acc_id UNIQUE acc_name DB TABLE ji_room=========================================== 村莊資料以及可選擇的規則 room_no UNSIGNED SMALLINT AUTO_INCREMENT=1 NOTNULL 村莊編號,從1開始 room_name VARCHAR NOTNULL 村莊名稱 room_comment TINYTEXT NULL 村莊說明 room_option BYTE() NOTNULL DEF=0 Bit指定選項,或者拆開來每一項用ENUM? room_timeday UNSIGNED TINYINT NOTNULL DEF=0 啟用日間時間制,單位分鐘 room_timenight UNSIGNED TINYINT NOTNULL DEF=0 啟用夜間時間制,單位分鐘 room_talkday UNSIGNED SMALLINT NOTNULL DEF=0 啟用日間對話制,單位句數 room_talknight UNSIGNED SMALLINT NOTNULL DEF=0 啟用夜間對話制,單位句數 四項可混用,但注意不可time & talk兩項都是0 room_silienttime UNSIGNED TINYINT NOTNULL DEF=0 啟用若多久沒人說話就進入投票,單位秒 room_maxplayer UNSIGNED TINYINT NOTNULL DEF=1 最高開場人數限制 room_minplayer UNSIGNED TINYINT NOTNULL DEF=1 最低開場人數限制 room_timevote UNSIGNED TINYINT NOTNULL DEF=0 投票時間,單位10秒 即若room_timevote=12 => 120秒 room_day TINYINT NOTNULL DEF=0 = -2 已輸出紀錄,不可再進場 = -1 該場已結束,可以進去場後閒聊 = 0 招募中 = 2n-1 夜間 n 日目 = 2n 日間 n 日目 n為正整數(1,2,3,....,127) room_timeleft UNSIGNED INT NOTNULL 制限時間(日間/夜間/投票), 當time()>timeleft及超過時限 room_talkleft UNSIGNED SMALLINT NOTNULL 剩餘的對話句數 room_voteround UNSIGNED TINYINT NOTNULL 目前投票的回數 村莊狀態 day timeleft/talkleft voteround 勝負 招募中 0 忽略 忽略 夜間討論 2n-1 至少其一不為0 0 夜間投票 2n-1 至少其一不為0 >0 日間討論 2n 至少其一不為0 0 日間投票 2n 至少其一不為0 >0 完結討論 -1 忽略 同day=-2 結束 -2 忽略 0 開場前廢村 1 進行中廢村 2 投票平手 3 村民勝利 4 狼勝利 5 狐勝利(人側) 6 狐勝利(狼側) room_lastupdated UNSIGNED INT NOTNULL 該村莊最後一次事件時間 PRIMARY room_no INDEX room_day 基本上...room表有點大....雖然一村只會用到一項.... 可能考慮拆成ji_roomlog(村莊紀錄) 跟ji_roomrun(進行中村莊)兩表(ENGINE=MEMORY) DB TABLE ji_player========================================= 屬於該村莊的村民資料 room_no = ji_room.room_no 其餘規劃中 vote_toid ==0 !=0 招募中 未投票 GAMESTART 已開始 未投票 目標acc_id ji_message也會紀錄投票,但僅供作為log輸出用 vote判定則使用ji_player(遊戲開始投票也用這張表) 或者考慮因為長vote,獨立成ji_vote用ENGINE=MEMORY (註:後來發現ji_vote表很好用, 明天把他弄出去...) DB TABLE ji_icon=========================================== 頭像 DB TABLE ji_message======================================== 屬於該村莊的系統事件 room_no = ji_room.room_no room_day = ji_room.room_day msg_time UNSIGNED TIME NOTNULL UTC Time msg_type UNSIGNED TINYINT NOTNULL msg_text TINYTEXT NOTNULL msg_id_from = ji_account.acc_id msg_id_to = ji_account.acc_id 表格規劃中, 已知原來有用到 FOX_DEAD FOX_EAT GUARD_DO GUARD_SUCCESS LAST_WORDS MAGE_DO MAGE_RESULT NECROMANCER_RESULT OBJECTION RE_VOTE POISON_DEAD_day POISON_DEAD_night VOTE_KILL VOTE_KILLED VOTE_TIMES WOLF_EAT WOLF_KILLED 其實如果沒有狼占這種可以一次投兩種票的角色 甚至可以捨棄ji_message表,所有東西都可以從其他表查到 不管白天的吊人,晚上吃人/占卜/保護都統一到vote去 其餘可以直接輸出到talk不再收回 DB TABLE ji_talk=========================================== 屬於該村莊的對話紀錄 room_no = ji_room.room_no room_day = ji_room.room_day talk_id =0 = 系統事件 >0 = ji_account.acc_id talk_type when talk_id=0 => 玩家加入 開始 日夜切換 遊戲結束 KICK VOTE KICKED KILL VOTE KILLED EAT VOTE EATED EAT FAUL VOTE START REVOTE 突然死亡 etc... when talk_id>0 => =0 一般對話 =1 大聲對話 =2 小聲對話 talk_time UTC Time talk_sentence 內容 原來還用到一個spend_time, 用途不明? 這張表還很有討論空間....事關log輸出效率 -- 渡良瀨 準 連連看: 北條ㄇㄥˊ 男 瑞穗 女 貂蟬 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.180.163

02/05 06:27,
我想建議做出密語的模式 大家知道誰對誰講 不過不知說什麼
02/05 06:27

02/05 06:28,
只有共生可以不讓大家知道來講話
02/05 06:28

02/05 06:29,
阿對了 我是指在白天的時候
02/05 06:29

02/05 06:31,
另外獵人應該要可以知道是否有擋到狼 而不是不知道有擋沒
02/05 06:31
本來就可以不是嗎? 嗎?

02/05 09:17,
...閉門造車果然不好,我已經寫了個10~20%下去了[汗]
02/05 09:17
拿出來分享吧...有不少人都寫一半了XD

02/05 09:22,
之前只開過一次22人場就有17xMB的流量,嚇到我
02/05 09:22
所以對話存取一定要用ajax之類的更新機制

02/05 11:16,
密語機制有點可怕,萬一真神占被當作弊?
02/05 11:16

02/05 11:17,
不會,真占會用pm跟人傳遞查過得名單.... 不過,如果傳到狂
02/05 11:17

02/05 11:17,
人的話,那就完蛋了.....
02/05 11:17

02/05 11:18,
以及,狼跟狂人也會用pm傳名單,擾亂真占建立起那個「安全
02/05 11:18

02/05 11:18,
網」
02/05 11:18

02/05 11:19,
不用想的太可怕,facebook的黑手就有開放pm,遊戲方式會改變
02/05 11:19

02/05 11:19,
,但不管怎麼改,玩家還是會玩出一套模式的....
02/05 11:19

02/05 11:23,
不過我個人不太希望全有pm功能.... 那樣玩起來會很混亂....
02/05 11:23
pm功能可以弄在長時間場, 保證一團混亂XD

02/05 11:31,
~"~
02/05 11:31

02/05 11:44,
我覺得我要開始練打字速度了......
02/05 11:44

02/05 12:47,
密碼加一點調味料吧 sha1(strtolower($acc).$passwd)之類的
02/05 12:47
沒有意義....

02/05 12:50,
我是好孩子,我有做 ._./
02/05 12:50

02/05 12:59,
遊戲開始前 希望可以有自行離開(踢自己)的功能
02/05 12:59

02/05 12:59,
讓第一名進場的玩家有直接踢人(不用集5人)的功能也不錯
02/05 12:59

02/05 13:00,
否則常常踢人就踢半天 囧
02/05 13:00

02/05 14:07,
戀人︰村人方職業,晚上可互通訊息,其中一位死亡另一
02/05 14:07

02/05 14:07,
位將會殉情
02/05 14:07

02/05 14:07,
村人方優勢︰可指證對方清白 狼方優勢︰可雙殺
02/05 14:07

02/05 14:07,
僅限村人是戀人考慮到狼晚上也要說話
02/05 14:07

02/05 14:07,
不然狼能當戀人應該更有趣
02/05 14:07

02/05 14:14,
狼占是建議不要
02/05 14:14

02/05 14:15,
真占+狼咬+狼占 一天被檢驗三次會玩死妖狐XD
02/05 14:15

02/05 16:20,
Kenqr説應是「室長」之類的功能吧?
02/05 16:20

02/05 16:33,
不建議做密語耶,這樣子就不夠公平了,除非大家都看得見
02/05 16:33

02/05 16:36,
我也看過狼跟村民有禁斷之戀的XD
02/05 16:36

02/05 16:38,
禁、禁斷之戀XDDDDDDDDDD
02/05 16:38

02/05 17:54,
要怎麼禁斷之戀啊 白天大家都看得到啊XD
02/05 17:54

02/05 17:56,
原來有些狼喜歡白天來 //memo
02/05 17:56

02/05 18:02,
樓上好糟糕
02/05 18:02

02/05 18:12,
光菱,你多心了,用密語騙人只會騙更大..... = =
02/05 18:12

02/05 18:23,
ice,那改成狼占占到狐,狼會暴斃如何? XDDDDD
02/05 18:23

02/05 18:25,
這樣狼狐各有損 村人得利
02/05 18:25

02/05 18:27,
背德和貍貓是誰提的啊 怎麼都沒設定出來(敲碗)
02/05 18:27

02/05 18:29,
有沒有人要先把新遊戲規則訂出來? 我來當主持人。
02/05 18:29

02/05 18:30,
先來進行幾場紙上遊戲,就能知道哪以該調整了
02/05 18:30

02/05 19:03,
以及,在除錯階段我可以幫忙,我還蠻喜歡挖BUG的.....
02/05 19:03

02/05 19:46,
其實說真的,這東西規模不大,一兩個人就可以寫一支。增加
02/05 19:46

02/05 19:46,
人力不見得能做的比較快/比較好。所謂人月神話是也。
02/05 19:46

02/05 19:47,
我建議定住遊戲規則(或規定哪些規則可調整),然後好幾組
02/05 19:47

02/05 19:48,
人馬同時開發,競爭有時能更有效促進開發效率…XD
02/05 19:48
只會導致多頭馬車, 光是只有我跟企鵝兩個版本就亂七八糟了...

02/05 20:27,
其實仔細想想 中毒死和被咬死怎樣都不會一樣不是
02/05 20:27

02/05 20:28,
為什麼沒辦法區分兩種屍體 只是能知道就對狼不利就是
02/05 20:28

02/05 20:30,
有時候可以掩護到妖狐 讓人家以為妖狐已死
02/05 20:30

02/05 20:30,
至於獵人那個是因為獵人常常沒有以守到結果推理 或留訊息
02/05 20:30

02/05 20:31,
常常讓妖狐還活著最後變妖狐勝XD 讓我以為獵人不知道
02/05 20:31

02/05 21:33,
狼狐禁斷之戀....好萌啊 XDDDD
02/05 21:33

02/05 21:41,
然後狼為了朋友不投票自爆 悲壯的禁斷戀情結局
02/05 21:41

02/05 21:45,
幼馴染狼要阻止已是不及 只能懷想前幾晚的情話而惆悵XD
02/05 21:45
※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/06 01:24) ※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/06 03:27) ※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/06 03:34)

02/06 10:54,
關於F23對於狼給假占名單的問題 如果大家能知道交談對象
02/06 10:54

02/06 10:59,
也可以抓出一狼和可能是狼的嫌疑者 未必太不利
02/06 10:59

02/06 11:01,
因為密語使用者本身就會引起懷疑 算是有點雞肋的功能
02/06 11:01

02/06 11:04,
只是讓狂人 狐和靈能影響變大 增加遊戲職業的玩法
02/06 11:04

02/06 11:06,
還有一個問題就是沒時間點人密語和是否可多人密語吧
02/06 11:06
※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/06 17:03)

02/07 13:21,
希望能改成不用投票,不少人被村民吊,火氣會很大.....
02/07 13:21

02/07 13:21,
為那些沒水準的人想想吧......
02/07 13:21

02/07 15:29,
什麼東西不用投票?
02/07 15:29
※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/08 03:15) ※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/08 04:15) ※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/08 04:18) ※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/08 19:38)

02/08 21:00,
吊人....
02/08 21:00

02/09 01:53,
吊人不投票怎麼吊人@_@
02/09 01:53

02/10 16:58,
#19ZvqjtC (Facebook) 關於玩過黑手的人的感想,關於pm部分
02/10 16:58

02/10 16:58,
可以參考
02/10 16:58

02/11 22:04,
戀人: 對方角色存活到最後即勝利 < 這樣?XD
02/11 22:04

02/12 03:14,
無意間晃到一個戀人規則FAQ http://0rz.tw/2qReM
02/12 03:14

02/12 03:15,
但是我沒仔細看 只有看Q11 戀人一人一狼 比起愛情,食慾優先XD
02/12 03:15

02/12 03:16,
只是這樣的情況下狼戀人不會自殺XD
02/12 03:16
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.180.163 ※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/12 22:18)

02/12 22:57, , 1F
狼也不止一隻啊~四狼分別有四個戀人嗎?
02/12 22:57, 1F

02/12 22:57, , 2F
還是說,只有一個戀人,那其他三狼要吃怎辦
02/12 22:57, 2F

02/12 22:59, , 3F
先吃狼~XDDDDD
02/12 22:59, 3F
※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (02/12 23:46)

02/13 13:58, , 4F
占不能不占 狼不能不殺 這兩個可是核心阿
02/13 13:58, 4F

02/13 14:00, , 5F
不占跟不殺是沒辦法繼續遊戲 我只認同獵人可以不保護
02/13 14:00, 5F

02/13 14:00, , 6F
那就是臘人了
02/13 14:00, 6F

02/13 14:00, , 7F
決定者似乎是沒用的職位..
02/13 14:00, 7F

02/13 14:02, , 8F
同票決定者優先 那和多一票有什麼不同 而且看不出來XD
02/13 14:02, 8F

02/13 14:07, , 9F
有權力者容易看出來 決定者不容易看出來
02/13 14:07, 9F

02/13 14:08, , 10F
除非有出現同票狀況 而決定者有投 否則無法縮小範圍
02/13 14:08, 10F

02/13 14:08, , 11F
人少而權力者常早死的情況下 容易造成翻盤
02/13 14:08, 11F

02/13 14:09, , 12F
權力者反而比較沒用 早早吊死..
02/13 14:09, 12F

02/13 14:20, , 13F
法拉之前有場是2村+權力狼 投到和局(攤手)
02/13 14:20, 13F

02/13 14:22, , 14F
村民太NICE了
02/13 14:22, 14F

02/13 22:53, , 15F
需要圖片我可以繼續製作 開發其實我也行 但是好麻煩算了
02/13 22:53, 15F
文章代碼(AID): #19b2xQOH (HOT_Game)