Re: [閒聊] tmi2-mudlib 的更改
這裡聊一下在 win 下當 mud auto shutdown 時會產生的問題,最大的
問題就是 auto shutdown 後 mud 不會重開。
若是在 linux 下,這個透過寫 script 的方式就能解決,也就是 ps -x
後判斷執行緒還在不在,不在的話就重啟 mud 這樣,然後每隔 n 秒就
判斷一次。
而在 win 下要判斷某個執行緒還在不在就比較麻煩。對 java 等程式語
言較熟的人或許能寫出用來控制的小程式,我對這個不熟就沒辦法哩,
我熟而且也會寫的話就會把它塞進 tmi2_v3_改 了。
不過我記得網路上好像有這類的小程式,若我有找到而且試用後也 ok,
就會把它塞進 tmi2_v3_改。
那麼理論上也可以仿照一般線上遊戲的做法,由管理者公告每週的定期
維護時間,時間一到就關機維護或是立即重開這樣。這種做法也蠻適合
win 下的 mud,因為一般的 win 開機開太久總會頓頓的。
其它就是透過將主機設定為具有遠端連線功能,如果 mud 掛了就可立即
遠端連進來重開之類的。當然實際上應避免出現這樣的情況發生。
若採取定期維護的做法,使用者也可以將一些重大更新放在這個時間去
做更新。傳統上 mud 具有不需重開即可立即做大部份更新的優點,但是
日後這應該侷限在一些緊急 bug 或 error 的處理上,管理者才不會因
此而得經常性的改動 mud 的內容。調整為每周做一次更動,既可明確知
道更動的範圍,也容易做各週更動的備份,而玩家也較容易對每週或每
兩週的更動有期待感(例如使用者可預告要更動的內容)。
(包括區域的釋出、玩家相關數值的調整等也應該這樣做)
so,當 mud 在 win 上面跑時我比較建議上述的做法,tmi2_v3_改 實際
上也是可以在 linux 下面跑的,只是 mudos 要依照 options.tmi2 那
一份來 build,這個我比較不熟,就待以後較為瞭解的人能代為撰寫相
關教學文件哩。
我是覺得在 win 下面跑就足夠了,現在機子的效能都很好,而且在 win
下面跑也很方便,大部份的 win 都能跑 IIS,這樣其實就能實現在 mud
主機上面跑網頁直接讀取 mud 資料的理想,只要透過簡單的 asp 就能
辦到。(我以前在公司有稍微實作過)
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.157.53
※ 文章網址: http://www.ptt.cc/bbs/mud/M.1404356967.A.73A.html
→
07/03 11:10, , 1F
07/03 11:10, 1F
更新一下,我剛試過可以,寫一支簡單的 bat 檔就可,所以我將
啟動 mud 與 啟動 wiz 兩個捷徑,換成兩支 bat 檔,如下
D:\tmi2_fluffos_v3_改\bin\啟動mud.bat
==============================================
echo off
driver config.tmi2.win32.txt
ping 127.0.0.1 -n 3 -w 1000 > nul
啟動mud
==============================================
D:\tmi2_fluffos_v3_改\bin\啟動wiz.bat
==============================================
echo off
driver config.tmi2.wiz.txt
ping 127.0.0.1 -n 3 -w 1000 > nul
啟動wiz
==============================================
上面的 ping 的動作裡面有個數字 3,它就相當於 sleep 3 的意
思,也就是如果你將 mud shutdown 的話,它會在 3 秒後自己重
開的意思,這個秒數是可以自己訂的。
bat 模擬 sleep 的教學在底下
http://blog.miniasp.com/post/2009/06/24/Sleep-command-in-Batch.aspx
(透過 ping 是最簡單的,其實一般的 ping 指令就能延遲個幾秒
了,不是很在意秒數的話只要做 ping 127.0.0.1 即可)
※ 編輯: laechan (210.61.157.53), 07/03/2014 11:24:45
討論串 (同標題文章)
完整討論串 (本文為第 23 之 27 篇):
mud 近期熱門文章
PTT遊戲區 即時熱門文章