常見問題

給所有人

Sponge 是什麼?

Sponge 是一個多功能的 Minecraft: Java Edition API。它是通過允許插件添加功能到 Minecraft 來豐富您的 Minecraft 體驗。在這裡閱讀更多關於 Sponge 的資訊:簡介 以及 Sponge 的歷史在這裡: Sponge 的歷史

執行 Sponge 有哪些需求?

Sponge(以及 Minecraft)需要 Java Runtime Environment 才能正常執行。顯然你也需要一台電腦來執行伺服器,除此之外什麼都不用。瞭解關於選擇與安裝正確 Java 版本的詳細資訊:安裝 Java

我可以從哪裡取得 Sponge?

你可以在我們的下載頁面下載 SpongeForge 與 SpongeVanilla

有哪些可用的 Sponge 實作?

Sponge 專案目前以 SpongeAPI 開發了兩項實作:

  1. SpongeForge 是 Minecraft Forge 的核心模組,它是一個為了擴展 Minecraft 修改環境而存在的 Minecraft: Java Edition 知名改裝框架。 Forge 缺乏一個跨版本的 API,這就是 Sponge 的起點。Sponge 允許伺服器所有者輕鬆地部署 Sponge 插件,使得伺服器管理更加容易。(SpongeForge 過去被稱為Sponge,直到它為了避免混淆而更改名稱)。
  2. SpongeVanilla,SpongeAPI 的一項獨立實作,於原版的 Minecraft 伺服器上執行。(在開發團隊合併前,SpongeVanilla 被稱為 Granite)。

由於 API 的靈活性,還有社群實作:

  1. LanternServer 是一個開源且相容於 Minecraft: Java Edition 的伺服器,實作了 SpongeAPI。LanternServer 並非基於原版 Minecraft 的程式碼,使它更加的可自訂、開放且高效能。雖然還在開發中,他們的專案很有希望,而且某一天可能會成為不使用 Forge 的伺服器選擇之一。你可以在 GitHub 上找到他們的專案。

我可以從哪裡取得 Sponge 插件?

你可以在 SpongeForums 以及我們幾乎完成的官方插件儲存庫 Ore 上尋找插件。

Bukkit 發生了什麼事?

Bukkit 專案的 API 與伺服器修改已停止進一步的開發。此後不久,Bukkit 的貢獻者之一公布了 DMCA 刪除通知以停止 CraftBukkit 的進一步開發。這屬於他的法律權益。CraftBukkit 及其衍生產品(像是 Spigot 和 Cauldron)的下載與原始碼不再公開。若你想了解這件事為何會影響 Sponge 的開發,可以看看我們的歷史頁面:Sponge 的歷史

我可以用這個來執行 Bukkit 插件嗎?

不行,而且這個功能並不是我們的目標。Sponge 使用它自己的 API(SpongeAPI),而 Bukkit 使用 Bukkit API。雖然第三方有打算在 Sponge 上實作 Bukkit API,但因為 API 設計的不同,這些專案都沒有成果。如果你覺得 Sponge 缺少了什麼功能,或者你找不到你伺服器需要的插件,請考慮在論壇上發文,也許會有人協助你。

給伺服器擁有者

我是伺服器擁有者!切換到 Sponge 會如何影響我的伺服器?

對於已存在的 Forge 伺服器,您需要下載 Sponge 並將其放置到 mods 資料夾中。就可以和其他 Forge 伺服器一樣正常啟動。

非 Forge 的伺服器可能會改用 SpongeVanilla ,這是一項不依賴 Forge 的實作。在 SpongeDocs 的其他部分有從 Bukkit 和/或 Canary 遷移的指南。值得一提的是許多來自 Bukkit 社群的插件開發者已經投身於 Sponge,並計劃為基於 Sponge 的伺服器提供他們的插件。

世界可以被完整移植。若插件開發人員有建立任何轉換方式,你也能保留原本的插件資料。有些插件開發者並不會做這些。

特地在此聲明,我們不會在 Sponge 上提供對 Bukkit 插件的支援。

切換到 Sponge 會如何影響我伺服器上的玩家?

切換到 Sponge 應該不會影響您伺服器上的玩家。 如果您(作為伺服器所有者)遷移正確,玩家將能夠和遷移到 Sponge 之前以相同的方式連接到您的伺服器。他們不必安裝 Forge ——當然,這是以你的伺服器未執行 Forge 模組為前提。

給開發人員

我可以用 Sponge 做什麼?

Sponge 提供了一個插件 API。這意味著你可以馬上建立新的內容與遊戲模式。閱讀我們的插件頁面以快速上手:建立插件

我不能用 Sponge 來做什麼?/ Sponge 有什麼限制?

Sponge 不能在客戶端建立新的方塊、材質、怪物其他任何需要修改客戶端的內容。基於安全考量,SpongeAPI 目前不會支援向客戶端發送模組或插件。但你依然可以在客戶端使用 ForgeAPI,並為伺服器端建立 Sponge 插件。甚至可以在客戶端使用 Sponge,但有些工作仍需透過模組來達成。

我是 Bukkit 插件的開發者!為什麼 Sponge 不能使用 Bukkit 的 API?

Bukkit 的 API 程式碼包含 GPL 授權協議。 這是 Bukkit 在2014年9月滅亡的一個重要原因;改用基於 MIT 授權協議的新 API,我們可以避開 Bukkit 遭遇到的那些問題。雖然這不能讓我們從 Mojang 的控制中解放,因為程式碼是他們的,而我們相信 Mojang 支持改製,所以將會繼續開發。

我能不能用插件存取伺服器的內部?

存取伺服器內部(在 CraftBukkit 中稱為「NMS」或「net.minecraft.server」)可以透過過擁有大量反混淆名稱的 MCP 完成。但是請留意,存取伺服器內部可能會增加插件毀損的風險——一切都取決於你。

參閱 相依於實作的插件 以獲得關於在你的插件中使用 MCP 的介紹。