在 Spigot 架設的 Minecraft 伺服器中安裝需要的插件教學

此篇文章是Spigot的延伸教學,在此篇文章中筆者將會示範如何為Spigot裝上你要在Minecraft遊戲中使用的插件功能。當然如果你是使用另外一套Bukkit來架設Minecraft伺服器的話,那也是可以參考此篇教學,因為Spigot和Bukkit兩者所使用的插件幾乎都可以相容的。

此篇文章主要延續之前寫的Spigot架設多人遊玩的Minecraft伺服器,如果你需要參考如何在Debian/Ubuntu環境中架設Minecraft伺服器的話,那可以參考那篇教學。此篇教學將會分別示範3個有提供Spigot插件下載的網站,以及也會示範3個不同的插件,那3個插件下載的網站分別為CurseForge、SpigotMC和Bukkit,而那3個插件部分,分別為:Dynmap、SkinsRestorer和WorldEdit,其中Dynmap(動態地圖-可以在瀏覽器上直接顯示Minecraft世界地圖和玩家動向)和WorldEdit(可以使用指令來構建Minecraft世界,功能十分強大)為功能性插件,而SkinsRestorer(可以更換玩家的人物造型)比較偏向有趣性的插件。另外要說一下就是,目前提供Minecraft插件下載的網站,幾乎都有使用Cloudflare的DDOS防護,而導致無法直接使用Wget或cURL指令來下載插件,為了解決這個問題,筆者在此篇教學,會使用SFTP方式來手動將需要的插件上傳至Minecraft伺服器,而FTP的軟體,筆者會使用FileZilla Client來做示範。

在還未進入教學之前,筆者這邊先列出Spigot插件資源的下載網站連結:

 Bukkit Plugins

 CurseForge-Minecraft: Bukkit Plugins

 SpigotMC Resources

1)下載FTP軟體,及使用SFTP協定連線至遠端的主機。

Step 1:現在一般租用的Linux主機,都有內建了OpenSSH,所以我們可以使用SSH提供的FTP功能,來直接使用SFTP協定,要使用SFTP的功能之前,當然電腦本機也需要安裝好FTP軟體,而你可以使用你自己比較習慣使用的FTP軟體,還有你也需要自己確定你使用的FTP軟體,是可以支援SFTP協定的。如果你不知道要使用哪一套FTP軟體,那可以跟筆者一樣使用FileZilla的FileZilla Client,如下圖所示連結至FileZilla Client下載頁面及點選FileZilla Client免安裝64位元版本的下載連結。

下載FileZilla Client免安裝版本-spigotplugin001

 

Step 2:FileZilla Client免安裝版本下載與解壓縮完成之後,就可以點擊如下圖所示的『filezilla.exe』來開啟FileZilla程式。

執行FileZilla程式-spigotplugin002

 

Step 3:如下圖所示在各個欄位中輸入遠端主機的連線資訊,因為是使用SFTP連線,所以記得要在主機欄位要連線的IP位址前面加上『sftp://』,然後其他欄位就輸入你主機登入的使用者名稱、密碼和Port號(如果使用預設Port號22,可以留空),完成之後點擊『快速連線』按鈕。接著可以先點開『plugins』目錄,假如你所架設的Minecraft伺服器是參考筆者之前寫的Spigot架設多人遊玩的Minecraft伺服器的話,那可以參考如下圖所示Spigot插件存放的目錄位置。

/home/minecraft/server/plugins

使用SFTP協定連上遠端的主機-spigotplugin021

 

2)連上有提供Spigot插件資源的網站下載你要的插件。

**筆者此部分教學會使用Dynmap插件來做例子。

**有提供Dynmap插件下載的網站分別有:

 Bukkit-Dynmap

 CurseForge-Dynmap

 SpigotMC-Dynmap

**筆者此部分教學會使用CurseForge網站來做例子。

Step 1:可以連上有提供Spigot插件資源的網站來選擇及下載你要的插件,如下圖所示為CurseForge-Minecraft: Bukkit Plugins首頁介面說明,在這邊你可以看到有許多插件可供選擇及下載。

連上有提供Spigot插件的網站-spigotplugin041

 

Step 2:如下圖所示可以看到筆者在CurseForge網站選擇了Dynmap插件,在說明頁面中可以看到Dynmap有提供了哪些功能。

以Dynmap插件來做例子-spigotplugin042

 

Step 3:假如此插件是你需要的話,那在下載的時候,不要直接點擊右上角的下載按鈕,因為直接點擊下載,那可能會下載到不相容你Minecraft遊戲的版本,所以你應該點選如下圖所示的『舊版』頁籤,並在『遊戲版本』的下拉式清單中選擇你要下載的Minecraft遊戲版本,然後點擊『篩選版本』按鈕,就可以看到適用你遊戲版本的插件了,接著直接點擊如下圖所示的『下載』圖示按鈕吧。

選擇所需要的Dynmap插件版本-spigotplugin043

 

Step 4:如下圖所示可以看到筆者已下載了Dynmap插件。

將Dynmap插件下載至電腦本機-spigotplugin044

 

Step 5:接著在FileZilla的本地站台這邊點開你剛剛下載Dynmap的資料夾位置,然後可以用拖曳方式將插件拖到遠端站台『plugins』的目錄下。

將下載好的插件上傳至Minecraft伺服器的plugins目錄位置-spigotplugin061

 

Step 6:將插件上傳好到遠端的Minecraft伺服器後,接著就可以重啟你的Minecraft伺服器了。

**如果你是參考筆者之前寫的Spigot架設多人遊玩的Minecraft伺服器的話,那可以輸入『/etc/init.d/minecraft restart』指令來重啟你的Minecraft伺服器。

新的插件上傳完成之後,接著要重新啟動Minecraft伺服器-spigotplugin062

 

Step 7:接著回到Dynmap的說明頁面,在頁面中可以看到首次使用的說明,從說明中可以看到只需在瀏覽器的網址列輸入你Minecraft伺服器的IP位址及Port號『8123』就可以連上Dynmap動態地圖了。

可以查閱插件的相關文檔,以可以來進一步知道要怎麼使用插件的功能-spigotplugin063

 

Step 8:如下圖所示筆者輸入了筆者的Minecraft伺服器IP位址和Port『8123』,可以看到是可以成功連上Dynmap動態地圖,首次開始連進去的時候,你應該是看到全部黑色的畫面,而那是正常的,就放著給他跑一下,就會看到正常的Minecraft地圖了。當然假如跑了一段時間,周圍還是出現黑色的畫面,那就表示說那些黑色畫面是還未探索的地方。

**如果你的Minecraft伺服器有在使用防火牆,請記得將Dynmap所使用的『8123』Port加入至iptables中,以Debian/Ubuntu來說,最常使用的防火牆為UFW,那可以輸入『sudo ufw allow 8123/tcp』指令來允許外面的連線經由Port 8123來連線至你的主機。

可以看到Dynmap的使用方式是需要在瀏覽器輸入Minecraft伺服器的IP位址和Port號就可以在瀏覽器上看到Minecraft遊戲即時的動態地圖-spigotplugin081

 

Step 9:如果你有為你的Minecraft伺服器設定域名,那可以將IP位址換成域名及加上『8123』Port號,一樣是可以連上Dynmap動態地圖。

如果有為Minecraft伺服器設定域名,那也可以輸入域名及加上Port號,一樣可以開啟動態地圖-spigotplugin082

 

Step 10:如下圖所示為Dynmap介面功能的簡單介紹。另外,如下圖所示你可以看到筆者的Dynmap動態地圖出現黑色的方塊無法正常顯示的問題,其實Dynmap是有提供相關指令來解決這個問題的,而地圖渲染指令為『dynmap fullrender world』,讓Dynmap跑一段時間就可以解決這些黑區塊的問題,需要注意的是,使用『dynmap fullrender world』指令會耗用你主機不少的資源,所以假如Dynmap動態地圖都顯示正常的話,要記得取消渲染,而取消渲染的指令為『dynmap cancelrender world』。

**除了上面提到的Dynmap兩個指令之外,Dynmap有提供相當多的指令,你可以參考webbukkit/dynmap-Commands

**指令除了能在Screen輸入之外,如果你要在遊戲中使用你的角色來輸入指令,那也是可以的,你需要先從Screen授予你自己遊戲角色管理員權限,而OP指令格式參考如下:

op <遊戲角色名稱>

**獲得管理員權限之後,就可以來輸入如下面所示的相關指令了。

使用遊戲的角色來渲染當前的地圖。

/dynmap fullrender

要使用遊戲的角色來渲染Minecraft主世界(World)。

/dynmap fullrender world

使用遊戲的角色取消渲染地圖。

/dynmap cancelrender

Dynmap介面的功能介紹-spigotplugin083

 

Step 11:滑鼠滑向Dynmap動態地圖右側,可以看到更多的功能,如下圖所示點選world的『地底透視』,可以看到很清楚的地下結構,這功能對於如果要尋找廢棄礦坑或其他洞穴十分有幫助。

Dynmap動態地圖有提供地底透視功能,這在探索遺跡時十分好用-spigotplugin084

 

Step 12:你也可以自己額外架設網頁伺服器,來讓玩家在輸入網址時不用輸入Port號,如下圖所示也可以看到筆者為域名綁上了SSL憑證

**Dynmap有提供一系列文檔,包含:自架網頁伺服器的設定、Dynmap進階的設定、Dynmap性能上的改善和其他文檔,你可以點選連結webbukkit/dynmap-Home來查看Dynmap相關的文檔。

可以自己額外架設網頁伺服器,來讓玩家在輸入網址時不用輸入Port號-spigotplugin085