[心得] Dynmap與遊戲分開 獨立運作的方法
※ 引述《kiney (西提王國Citynoland)》之銘言:
: 想請位各位,伺服器有安裝 Dynmap
: 但不知道他能否拖出來獨立運作呢?
: 也就是伺服器關閉的時候他依然可以運作呢?
: 我試著進去他的 web資料夾 打開 index.html
: 無法像一般網站一樣開啟
: 不知道各位有沒有人知道怎麼讓他獨立運作呢?
不想把問題講得太複雜,簡單來說
dynmap插件本身就像一個小伺服器,他對特定端口(port)輸出資料
你不開minecraft server + dynmap 就等於沒有小伺服器幫你運作
另外寫一個小伺服器去讀那些已經處理好的圖檔也很沒意義,
等於重新發明輪子,我提供你一個做法,是我確定可以用的。
另外,因為中文相關資料很少,以下重要google 用名詞(你還是得自學一些東西)
我通通都用英文,方便你接下去查你遇到的技術問題
技術文開始:
這種情形你多半是有兩台機器,或是想讓server關的時候還是可以被人家讀地圖
我當初有這需求是因為有人拿dynmap server 發動DOS攻擊,
但我伺服器不能關小地圖(沒地圖的領地佔有不好玩,加上資源稀少要查地圖)
如果你本來的server用了16G記憶體去開 另一台只是作為讀地圖用
例如只要少少的1G, 甚至800M
你還是得開兩個spigot or bukkit server,
因為你不想重新寫一套讀dynmap格式的伺服器
假設遊戲server ip : 112.114.116.118 , map server ip: 112.666.118.666
想要有分散兩地的伺服器但是用同樣的域名,你得另外學
(例如 game server : play.opserver.com, map server : map.opserver.com)
也就是你一樣開兩個server 的程式,地圖server不要用25565 port開
(同一台機器的話會衝)
而且要設定白名單,並且不要讓任何人連進來(他只是拿來跑dynmap plugin的)
可以弄個25566 25567 隨便,然後只要注意你的dynmap port是多少即可
他預設是8123,所以你實際是會用到的網址是
112.114.116.118 叫玩家minecraft連這裡
想給人看小地圖 http://112.666.118.666:8123
接下來你需要做異地備份,把game server的map region檔拷貝(並且覆蓋)
map server的region檔,讓map server的dynmap plugin去render tile as png images.
如果你想要呈現世界名稱 my_creative_world 的地圖,並且拷貝到map server
那你就要安裝異地備份的軟體,從
112.114.116.118 的server路徑下/my_creatvie_world/region/
裡頭,所有的 r.X.Y.mca 檔案 (chunk file)
通通備份到 112.666.118.666 的server路徑下/my_creative_world/region中
至於你map server要不要叫my_creative_world 其實隨便你
反正你只是要呈現(render)到網頁上
但dynmap有一些地方會把你地圖名稱顯示出來,為了玩家不要混淆
還是建議用一樣的名字,以防有太多世界要複製 自己忘記怎對應
PS:
這邊的r.X.Y.mca 的X,y 會是整數,
存著某一個區塊的地圖資料,轉換到實際座標的話可以用這個網站
https://dinnerbone.com/minecraft/tools/coordinates/
至於異地備份軟體 可以考慮linux 內建的scp
(或是你的異地 是本機, 隨便,看map server跟game server
有沒有在同一個機器上,有的話不用花網路資源)
scp -r user@112.114.116.116:/path/to/server/my_cool_creative/region/*.mca
/my_map_server/my_cool_creative/region/
這樣就會把112.114.116.118(game server)的地圖檔
貼到 本機(map server)的server資料夾中的region路徑下
然後map server 的dynmap plugin就可以讀了
最後,你要決定你多久備份一次,因為那些地圖檔案大小不小
我是推薦一個禮拜一次,而且挑半夜,你強一點可以設定批次處理
寫個bash檔,loop, 每N秒跑一次指令
這我就不繼續講了,可以自己查
除了scp有更好的,會自動比較異同,相同檔案(沒被修改過的檔案)不會備份的
你有需要可以自己查
要做到多好,你可以自己決定要投入多少時間
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.45.77.25
※ 文章網址: https://www.ptt.cc/bbs/Minecraft/M.1478778546.A.7D7.html
※ 編輯: tonylo2ooo (114.45.77.25), 11/10/2016 19:54:31
→
11/11 02:07, , 1F
11/11 02:07, 1F
→
11/11 02:07, , 2F
11/11 02:07, 2F
→
11/11 02:09, , 3F
11/11 02:09, 3F
→
11/11 02:11, , 4F
11/11 02:11, 4F
→
11/11 02:12, , 5F
11/11 02:12, 5F
→
11/11 02:13, , 6F
11/11 02:13, 6F
→
11/11 02:14, , 7F
11/11 02:14, 7F
→
11/17 22:03, , 8F
11/17 22:03, 8F
→
11/17 22:05, , 9F
11/17 22:05, 9F
→
11/17 22:08, , 10F
11/17 22:08, 10F
→
11/17 22:10, , 11F
11/17 22:10, 11F
→
11/17 22:11, , 12F
11/17 22:11, 12F
→
11/17 22:14, , 13F
11/17 22:14, 13F
那如果想要想台機器是分開的,不同機器的做法?
果然說明了一個道理
在網路上要找到一個問題的解答不是問那個問題
是提供一個錯誤的答案
感謝大大教學 ._.
※ 編輯: tonylo2ooo (220.137.5.96), 11/19/2016 20:02:41
→
11/20 18:01, , 14F
11/20 18:01, 14F
→
11/20 18:02, , 15F
11/20 18:02, 15F
→
11/20 18:07, , 16F
11/20 18:07, 16F
我確實小題大作了,
我當初是因為dynmap 被當成(D)DOS的對象花了很多時間
原PO要的只是原本就有的功能
※ 編輯: tonylo2ooo (118.165.16.83), 11/21/2016 03:52:09
Minecraft 近期熱門文章
PTT遊戲區 即時熱門文章