# 1.5 - 综合起来看：从服务器的菜单开始

在经济方面我们将插件的选择和运营的思路分开来讲，而这里开始我们尝试综合起来来看：从菜单开始这一新的节奏。

## 解释：菜单

随便一个游戏最重要的便是菜单了，在我们的服务器中菜单也是重要环节之一。

在服务器中我们经常使用游戏中的箱子 UI 做为服务器菜单依赖载体，因为箱子 UI 面积大，可自定义程度更高，限制更少。

在服务器的菜单里，我们可以制作传送、常用功能、服务器玩法介绍等信息，这取决于作为服主的你是如何思考菜单存在的意义。

### 小技巧：在其他游戏中思考某个功能存在的意义

一般一个畅销的电子游戏肯定会经过多位资深的游戏策划进行反复调整游戏里数值、功能和机制等，我们有时只要多去游玩这些备受好评的游戏，探索出它们备受好评的原因。

我们以菜单为例，下图是制作出马\*欧、塞\*达等众多全球游戏玩家耳熟能详的大IP的任天\*游戏公司发行的《异度神\*2》游戏中的菜单页面，看看我们能学习到什么。

<figure><img src="https://400373137-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFlP4xP4pRQ4Bt9AMcMkX%2Fuploads%2F4JrztBQtU6txH5CLpzPO%2F%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202023-03-10%20123723.png?alt=media&#x26;token=ebc34ae5-0830-465e-a19c-21e3b3655c51" alt=""><figcaption></figcaption></figure>

我们可以发现其由 8 个按钮组成：而每个按钮代表一个功能，这些功能通过名称不难发现一个共同点：它们都是经常使用的。

* **角色**：在这款游戏中，我们可以扮演多位角色，玩家可以选择其一进行控制。这在目前的大多数服务器中并不多见，因为难度较大，如果你是一个新的 RPG 服主，想要突破创新，这就是一个很好的切入点。
* **传送**：传送在服务器中当然是很好实现，也是必备的。我在很多服务器中发现它们的传送菜单里是主城、主世界、下界世界和末地世界，或者再加其他的如副本世界等。而在这款游戏中，传送点的解锁前提是玩家已经到达过这一区域，而在服务器中这一机制也可以很好的被借鉴。在很多速通挑战中，玩家到下界也是需要一定程度准备的，而在你的服务器中，点击一个按钮即可到达，这代价是否太低了？毕竟，你的服务器可不是速通服务器。

{% hint style="info" %}
Minecraft 的速通一般是击败末影龙，而到达下界维度的目的是和猪灵交易，快速获得末影珍珠和击杀烈焰人获得烈焰棒，从而合成末影珍珠。
{% endhint %}

* **任务日志**：在这款游戏中，这里只会显示玩家完成过哪些任务，而不是在这里接取任务。在 RPG 服务器中，配合传送菜单的使用，可以实现让玩家到指定地方 NPC 接取任务，而不是一个菜单搞定的事情。
* **异刃管理**：并不多讲，我们可以通过宠物玩法来替代。
* **佣兵团**：并不多讲，这也是很好的创新点。在这款游戏中，我们可以派遣异刃完成“佣兵团”任务获得奖励。同时佣兵团也有等级，可以提高“异刃”上限和接取的任务，同时 NPC 出售的物品价格也有时受此影响而降低。
* **道具列表**：玩家的背包。
* **系统**：游戏的设置。
* **Ex Pass**：DLC。

除了经常需要使用，菜单也需要简洁干练，需要做到玩家首次熟悉菜单后，可以在不到 **3** 秒钟时间内快速找到自己想要的功能的按钮。合适的菜单按钮名称和描述就显得至关重要。在服务器中，我们无法实现在箱子 **UI** 中直接显示按钮的作用的文本，玩家必须将鼠标移动到物品上才会显示其名称和描述。这时我们可以通过玩家头颅代替图标功能，让玩家能够提前知道按钮的作用。

### 小技巧：获取自定义头颅

我们打开 <https://minecraft-heads.com/> 这个网站，其主菜单有两个按钮至关重要：

* **Player heads**：正版玩家的头颅。
* **Custom heads**：自定义头颅。

我们选择第二个自定义头颅。

<figure><img src="https://400373137-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFlP4xP4pRQ4Bt9AMcMkX%2Fuploads%2F6jqMYMJeShVeya0eM4cE%2F%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202023-03-10%20161053.png?alt=media&#x26;token=f36f78c8-6d4e-4c68-a5fe-ac8f3c541fa3" alt=""><figcaption></figcaption></figure>

点击我们喜欢的头颅，然后翻到最底部，找到 Other 部分。

<figure><img src="https://400373137-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFlP4xP4pRQ4Bt9AMcMkX%2Fuploads%2FNHMlTNYXXAAm4y0RmdZm%2F%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202023-03-10%20161135.png?alt=media&#x26;token=62114e96-8a5a-4812-8358-ff59a3de807a" alt=""><figcaption></figcaption></figure>

找到 Value，点击后面的 Copy 按钮复制。各个菜单如何加入头颅将在后文说明。

## 插件选择：TrMenu

{% hint style="info" %}
笔者注：由于本文写的前后时间较长，本文发布的时候，TrMenu已经不再维护，故而看到此的服主应当慎重选择此插件。
{% endhint %}

**TrMenu** 是国人开发的一个菜单插件，其通过发包实现，功能丰富，可自定义程度高，最贴近实际使用的来说：

* PlaceholderAPI 等变量符可以实时刷新，不需要点击刷新或者通过不断通过刷新菜单等方式实现刷新。
* 支持 Kether 语法，在条件判断等方面几乎就是自己写插件的自定义程度。
* 使用简洁，排版分布通过 yaml 内直接可视，不需要计算第几行第几列这种无聊的问题。

**TrMenu** 项目的 **GitHub** 地址是：

{% embed url="<https://github.com/TrPlugins/TrMenu>" %}

**TrMenu** 的有关教程：

* 官方Wiki：<https://trmenu.insinuate.io/>
* 他人教程：<https://www.mcbbs.net/thread-1375154-1-1.html>

## 插件选择：DeluxeMenus

**DeluxeMenus** 是一个老牌的菜单插件，处于较为尴尬的地位，是该有的都有了，但是想要做点不一样的就非常捉急了。

**DeluxeMenus** 在 **SpigotMC** 的地址是：

{% embed url="<https://www.spigotmc.org/resources/deluxemenus.11734/>" %}

**DeluxeMenus** 有关教程：

* 中文Wiki：<https://deluxemenu.wiki.complexstudio.net/>

## 插件选择：BetterGUI

**BetterGUI** 是本文临近发布时在此额外补充的一个菜单插件，笔者尚未实际上手，它的诞生也有一定年头，并且功能也更为丰富，值得一试。

**BetterGUI** 在 **SpigotMC** 的地址是：

{% embed url="<https://www.spigotmc.org/resources/bettergui.75620/>" %}

官方Wiki（英文）：<https://bettergui-mc.github.io/Docs>
