[人狼] 文字版偽人狼指令設定
0. 只做了設定,程式碼一行都沒改。
1. 目標:
a. 消除暴斃的設定,改用電腦亂數或AI(?)
b. 利用文字版的 Mud 修改,減輕網路流量及CPU load.
c. 允許制作外掛及AI(Server side)
d. 可以玩單機版
2. 設定
a. 每個人編號. 1,2,3,...,22
b. 提示符號
日-狼 1.路人甲 :>
夜-共 13.狐小妹 :>
c. 狀態
(投票結果顯示資料)
夢遊 # 此回合未下指令投票,為預先投票或電腦亂數.
離魂 # 網路斷線,其他同夢遊.
回魂 # 重新連線的那一回合.(表示損失斷線那一段時間的判斷)
d. 開局後第一個白天回合, 占卜師的占卜發言會等待3分鐘
再統一亂數發送. 但排序為 d1, d2, d3...
3. 指令集:
格式: 縮寫 全名 # 註解
a auto # 自動做動作, 無腦新手專用
# a 占卜師自動占卜未占過的人(亂數)
# a 2 占卜師自動占 2 號, 若 2 號已占卜過,產生提示.
# a 靈能自動驗屍
# a 獵人自動保護
as autosay # 自動做動作+說話,無腦新手專用
# as 3 占卜師自動占 3 號, 並廣播. (同 ds)
# as 靈能自動驗屍, 並廣播.
# as 晚上+共有, 自動說一堆 ...
aw autowrite # 自動寫遺書,無腦新手專用
# 占卜結果, 靈能驗屍結果...
c check # 靈能驗屍
v vote # 投票, 可以預先投, 例: vote 1 2 3 4 5
v2 vote2 # 投票相同時, 要改投誰, 例: v2 2 2 2 2 3 3
b bite # 狼咬人, 可以預先咬, 例 b 5 4 3 2 1
b2 bite2 # 投票相同時, 要改咬誰, 例: b2 2 2 2 2 3 3
d divine # 占卜, 無參數時列出已占結果
# 時間到時則亂數占卜
ds dsay # (divine and say)
# 廣播占卜結果
f fake # 偽裝系列
fd 1 w # 偽占 1 號為狼
fd 2 m # 偽占 2 號為人
fds # 偽占的廣播
fc 1 w # 偽驗屍 1 號為狼
fcs # 偽靈的廣播
g guard # 獵人保護, g 1 (保護 1 號)
# g d1 (保護第1占)
q quickreview # 列出目前已知資訊
# q a 全部資訊
# q d 占卜結果
# q h 吊人資訊
# q w 狼人列表 (狼人端)
# q c 驗屍結果
s say # 說話, 是 SocketMud 目前提供的可用指令.
w write # 寫遺書,例: w abc\ndef\nghi (\n 換行)
w+ # 寫遺書(append 模式), 例: aw\n w+ 我很閒.
4.
code base:
http://www.socketmud.dk/download/SocketMud-2.3.tar.gz
改掉下列這一行,就可以 "say 中文"
diff -u -r1.1 socketmud/src/socket.c
--- socketmud/src/socket.c 2009/02/24 13:22:38 1.1
+++ socketmud/src/socket.c 2009/02/24 13:47:06
@@ -817,7 +817,7 @@
compressEnd(dsock, TELOPT_COMPRESS2, FALSE);
}
}
- else if (isprint(dsock->inbuf[i]) && isascii(dsock->inbuf[i]))
+ else /* if (isprint(dsock->inbuf[i]) &&
isascii(dsock->inbuf[i])) // enable 8-bit */
{
dsock->next_command[j++] = dsock->inbuf[i];
}
參考用:
http://homepages.uc.edu/~hollisgf/nakedmud.html
keyword: mud game programming
keyword: 2shared 4shared csdn
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.22.98
推
02/28 23:05, , 1F
02/28 23:05, 1F
推
03/01 16:32, , 2F
03/01 16:32, 2F