本帖最后由 白羊羊 于 2020-3-12 12:11 编辑

简介:VexView是一款能够制作自定义界面的插件,它由插件和MOD配合完成全部的显示任务。它的高强度自定义性赢得了当下不少服主的青睐,VexView从出生至今,已超过一年时间,通过期间的不断更新,现在的界面体制已非常完善,当然,在以后的更新中,我们会继续开发更多的实用内容。虽然VexView曾经是付费插件,但是现在已经免费开放使用,我们也欢迎各位服主选择VexView作为服务器的UI设计插件!
你可以在这里免费下载:https://www.mcbbs.net/thread-786587-1-1.html

特点:
  • 长期维护更新,BUG问题修复迅速。
  • 插件国内使用人数正在不断扩大,据统计已有少许国外用户在使用。
  • 相比原版的箱子GUI更美观,更便于控制。
  • 非常多的显示类型,如Tag、GUI、HUD等。
  • 用户对于VexView附属内容的定制需求量不断增加。
  • 服主可以在原版GUI和VexGUI二选一使用。

本教程目录:
主线:
  • 第一章 - 开始你的VexView奇妙之旅
  • 第二章 - 自定义Gui界面
  • 第三章 - 添加Gui的组件
  • 第四章 - 自定义HUD/Tag显示
  • 第五章 - 自定义物品高级显示框和高级广播FlowView
  • 第六章 - 自定义计分板与背包侧边栏
  • 第七章 - 其他功能
拓展:
  • 拓展: 自定义AuthMe登录界面
  • 拓展: 自定义任务插件对话界面和任务笔记
  • 拓展: MOD的更多设置

序章 - 引言
在开始我们的教程之前呢,先对每一位服主说几句吧!

本教程的确很长,我也是这样认为的,但是,长有长的理由。很多服主为了图快,跳着阅读教程,只找自己需要的内容,这样明显是错误的,每章的标题仅仅是一个概括,不去仔细的看每一章,你不会知道一些重要的功能如何去使用。是,可能有一些内容的确没有,但是根据我的观察,很多服主甚至连怎么启用VexView都不知道,教程第一章图文并茂的东西你都不看,就跑去各大群里面做伸手党,谁会鸟你呢?所以,最重要的一句忠告,在你想伸手要别人学习的答案之前,想想看你真的有认真看过此教程吗?

如果您连这个序章都不看或者是跳读,请问您这样的态度,能学到什么呢?

不要被一个"懒"字打败,为什么人家的服务器就是玩家多,而你的服务器被玩家嫌弃,这绝对是原因之一!虽然内容多,但是它真的不难,不要被篇幅吓到,就像高中的时候做线性规划这类数学题,篇幅是大,但是你不去仔细读你怎么会知道其实它的数据已经给你提供得妥妥的,难道你就因为篇幅放弃这道整整12分(全国卷)的题目吗?

最后,祝各位服主能够在本篇教程学到自己想要的内容。

第一章 - 开始你的VexView奇妙之旅

同意VexView协议:
开始使用VexView之前,请同意协议,首次载入插件时,将出现配置文件vexview.yml
该文件用于填写相关授权信息,让我们现在开始吧!
#请将其改为true,修改后即为同意协议,不看协议出现问题后果自负!
  1. eula: true
复制代码
#是否启用引导菜单
  1. guide: false
复制代码
#是否启用更新提示
  1. updater: true
复制代码
填写完成后,再次启动服务器,在VexView载入时,将出现以下内容:
现在你可以检查你的./plugins/VexView文件夹内是不是已经生成了一大堆文件夹和文件了。

1.7或者某些ANSI编码服务器开启的时候要报错,所有配置文件转妈就行了。

安装使用:
当服务端完成载入后,现在就是客户端的MOD安装和配置了。
首先,你需要一个安装了Forge的客户端,并将对应版本的VexView_MOD放入.minecraft/mods文件夹下
然后安装我们的默认材质包,将下载得到的vexview压缩包解压并直接拖入.minecraft文件夹。
若材质包没有,请在VexView官方群内(774603579)获取。
启动您的客户端,打开Mod列表,查看VexView是否载入,如果载入,即可完成安装!
现在点击多人游戏
加入您的服务器,将会出现连接Gui,这是正常的,因为客户端要检测您的服务器是否安装VexView
就像这样:

完成检测后,即可开始游戏!
如果不需要显示此Gui,可以在MOD配置文件中设置关闭,将在之后讲解。
第二章 - 自定义GUI界面

为了让教程简单易懂,我来大概介绍一下一个VexViewGui的组成。
先看我们的示意图:
用文字描述就是,你可以创建一个GUI,但是它仅仅是本体,这时你可以为它添加一个甚至多个GUI组件,这就是一个GUI的组装。当你完成组装后,就可以为玩家打开此GUI界面了,非常简单方便。

好,现在就是关键性的问题了,怎么开始我们的GUI组装并发送呢?
我们为所有服主提供了一套完整的GUI配置文件,首先是我们的GUI本体,找到服务端plugins/vexview文件夹下的gui文件夹,这里面,包含VexView默认为你生成好的一个GUI,现在我们来解读一下这个GUI配置文件的相关内容:
  1. #设置Gui的贴图
  2. gui: '[local]gui.png'
  3. #设置gui的X坐标(设置为-1则默认居中)
  4. x: -1
  5. #设置gui的Y坐标(设置为-1则默认居中)
  6. y: -1
  7. #设置gui的贴图显示宽度
  8. width: 240
  9. #设置gui的贴图显示高度
  10. high: 158
  11. #自定义图片文件
  12. image:
  13. - example
  14. #自定义GIF图片文件
  15. gifimage:
  16. - example
  17. #自定义消息文件
  18. text:
  19. - 'text'
  20. #自定义按钮文件
  21. buttons:
  22. - 'test'
  23. #自定义物品槽
  24. slot:
  25. - 'apple'
复制代码
看上去参数很多呢,不要害怕,我们来解读,首先是第一个Gui的贴图链接,我来解释一下VexView的贴图链接机制,VexView的贴图分以下两种:
网络贴图很简单,这里着重介绍一下本地贴图,本地贴图默认存放在客户端的.minecraft/vexview/textures文件夹中(受某些启动器影响,可能会在其他位置,但是一定是会生成的),这个位置也是可以更改的,我们后面介绍。

既然知道了图片URL的填写机制,解读上面的配置文件就很简单了,URL这项填写的是"[local]gui.png",说明使用的是本地贴图,如果客户端.minecraft/vexview/textures文件夹没有gui.png这个文件,使用 /opengui <玩家名称> normal 在游戏中打开这个默认的GUI:
它会提示您,这个GUI的背景贴图没有了,你只需要根据它给你的路径添加这个文件就可以了。

正确打开之后,它像这样(内容可能有差别但是是一定可以显示出来的)
好,现在已经可以打开这个默认的GUI了,那么我们接着来解读剩下的几项,先来说那个x和y吧,一定要仔细看下面的内容,不然很容易绕晕!
在VexView中,所有的GUI都有一个坐标轴来进行位置操作,每一个GUI的坐标原点,是从左上角开始的,但是它和我们的中学阶段学习的
平面直角坐标系有一些不同,它的Y轴是反向的!也就是说,如果左上角坐标是(0,0)的话,游戏界面高度是256,那么左下角的坐标就是(0,256)了,游戏界面宽度为500,那么右下角的坐标就是(500,256)了。
不过,很方便的是,我们提供了-1这个参数,当GUI的xy坐标为-1时,它将被永久居中,无论客户端怎么变换分辨率。
所以,为了居中,我们默认提供的参数就是-1了。
还有一点需要注意的是,Minecraft的分辨率和Windows的分辨率单位是不一样的,默认情况下它会比你屏幕的分辨率单位稍微大一些,所以说在调整坐标时,需要注意换算。

接下来就是width和high这两个值了,顾名思义,贴图的实际宽高。
然后xshow和yshow这两个值,它们是游戏内的显示宽高,根据自己的需要进行调整即可,默认大小是240*158,也就是上面那种效果。

所有的配置文件都是热更新的,你不用担心你编辑之后需要重载插件的问题,编辑好之后再次打开这个GUI即可!

关于命令:
VexView第一个命令就是/opengui <玩家名称> 文件名称(去掉尾缀)
看看上面教程使用的命令,就是这种格式。
第三章 - 添加GUI的组件

现在来说说看下面的几个参数吧,它们都是GUI的组件配置项,没有组件的GUI没有灵魂,它仅仅就是一张图片而已!而组件的添加,能够丰富你的GUI,实现更多的功能,就像上面的图中那样。
目前可以在配置文件夹中配置的组件有这些:
  • 自定义图片 - 显示图片
  • 自定义文本 - 显示文本(支持大小缩放)
  • 自定义GIF图片 - 显示GIF图片
  • 自定义按钮 - 点击后可以执行命令等
  • 自定义HoverText文本 - 描述框
  • 自定义Slot物品槽 - 显示你的物品(不可拖拽)
通过这些组件的相互配合,各式各样精美的GUI界面就出现了!
现在我们就来解读一下默认GUI已经为我们配置好的内容吧,首先可以看到image项,这就是自定义图片组件,下面可以填多个参数,那么该怎么去填写呢?
  1. image:
  2. - example
复制代码
我们来看看这个example是什么,打开服务端的.plugins/VexView/image文件夹,神奇的一幕出现了,这个文件夹下有一个example.yml文件,想想看,这不就是文件名称去掉了后缀吗?正确!你需要填写的就是文件名称除去yml后缀。
我们再来看其他组件,gifimage文件夹里面也有一个同名的文件,text、buttons、slot都有他们对应的文件,这下就好办了,我们直接CV组件的配置文件,就可以修改这些默认的组件配置文件并将其添加到我们自己的GUI中了。
这些默认的组件配置文件中,每一项和GUI一样,都自带了对应的描述,比如image组件:
  1. #图片URL链接地址
  2. #URL
  3. image: 'https://www.baidu.com'
  4. #图片在GUI中的显示X轴位置(0为最顶端)
  5. #GUI X location(Set to -1 to center)
  6. x: 110
  7. #图片在GUI中的显示Y轴位置(0为最左端)
  8. #GUI Y location(Set to -1 to center)
  9. y: 0
  10. #图片的实际宽度
  11. #The actual width of the picture
  12. width: 50
  13. #图片的实际高度
  14. #The actual height of the picture
  15. high: 50
  16. #图片的显示宽度
  17. #Picture display width
  18. xshow: 50
  19. #图片的显示高度
  20. #Picture display height
  21. yshow: 50
  22. #Hovertext显示,当鼠标移动到图片上时,将会显示附加信息(不填则不启用)
  23. #如需开启,请填写text文件夹下的文件名称(忽略坐标,仅读取文字)
  24. hovertext: text2
复制代码
你会发现某些参数和之前的GUI差不多诶,是的,的确如此,URL的填写格式、宽高等都是和GUI一样的,不过,x和y稍微有一些变化。
由于组件是GUI的一部分,因此它是跟着它的爸爸(GUI)做事的,所以呢,组件的x和y坐标原点是GUI的右上角而不是整个游戏界面的右上角,这是需要注意的。

其他的组件相关描述还请服主自行查看。

提升逼格就来发Hovertext吧
我们可以看到这些组件都有(除了slot)一个hovertext选项,那这个是干嘛的呢?
你一定知道当你的鼠标放在物品上会显示他的描述框对吧?

那么组件可不可以也像这样显示描述文本呢?答案是可以的!
可是这个又该怎么填写呢?
它也需要你提供一个text组件,所以和上面一样,text文件夹下新建一个text2.yml文件,然后在hovertext后面写上text2即可,和上面是一样的,不过请注意,只能填写一个,格式就像上面的配置文件那样。
第四章 - 自定义HUD/Tag显示
再自定义HUD教程开始之前,我们先来科普一下什么是HUD吧。
在游戏中,你的血量、饥饿度、氧气值、经验条...这类在游戏时显示在屏幕上的内容,就是HUD。
VexView可以让你显示你的自定义图片、文本的HUD内容,提升逼格必备,就像这样:

非常方便,你只需要使用一个命令即可:
/sendhud <类型> <文件名称> <玩家> <数字ID> <时间>
如果你还希望HUD是根据屏幕百分比设置坐标你可以输入此命令:
/sendhud <类型> <文件名称> <玩家> <数字ID> <时间> <相对布局X> <相对布局Y>
类型包含以下两种:
  • image - 图片(暂不支持gif)
  • text - 文本
文件名称依然填写和Gui配置文件一样的文件名字去掉尾缀(也就是打开image/text文件夹里面的内容作为HUD显示内容)
数字ID必须是整数且不能重复,否则会被顶替。
时间以秒为单位,可以设置为0来表示永久显示。


自定义Tag内容

HUD我们知道是什么了,那Tag又是什么玩意呢?看图:

图中可以看到,玩家的脚下居然显示了一张图片!
可能您已经猜到了,这正是Tag内容、就像玩家头顶上的那个名字一样,它是一个在三维世界中显示的东西。
添加一个tag的方法非常简单,首先打开我们的自定义Tag文件夹: ./plugins/vexview/tag
可以看到一个默认生成的文件,我们打开它:
  1. #这是一个自定义Tag配置文件
  2. #什么是Tag?它可以让你在3D世界中显示图片、文本等
  3. #此Tag的id,它可以是任意字符串
  4. id: 'default'
  5. #此Tag类型
  6. #IMAGE表示图片、TEXT表示文本、GIF表示gif图片
  7. type: GIF
  8. #对应文件夹下的文件名称
  9. #请注意,图片的长宽在这里是以游戏内的一格方块宽度为单位!
  10. #例如image文件夹下的图片example.yml在这里就这样填写:
  11. file: 'example'
  12. #以下选项控制tag的方向
  13. direction:
  14.    #这是此tag在不同坐标轴上的旋转角度,注意,是角度
  15.   rotate:
  16.      x: 0
  17.      y: 0
  18.      z: 0
  19.    #是否跟随视线,开启后以上旋转配置无效
  20.    #此Tag将自动旋转并永远朝向玩家,无论玩家视线方向如何
  21.   for_player: false
  22.   #若此Tag添加到玩家身上,该玩家自己是否可以看见这个Tag
  23.   player_can_see: true
复制代码
介绍非常全面,我们可以看到一个自定义Tag不仅支持多种显示类型,同时还支持旋转、可见性、自适应。
你可以在配置文件中进行详细的配置,并在游戏内使用一下命令来添加一个Tag:
/vextag add <类型> <tag文件名称> <对应名称> x y z
类型分两种:
  • world - 世界Tag,在固定坐标显示
  • player - 玩家Tag,跟随玩家显示
tag文件名称就是tag文件夹下的文件去掉尾缀的名称。
对应名称:如果是世界tag,请输入世界名字;如果是玩家tag,请输入玩家名字。
xyz就是要显示的坐标。

当然,可以添加,也可以移除
/vextag remove <类型> <tag文件名称> <对应名称>
参数和上面是一样的,只是无需再指定坐标

你也可以进行列表
/vextag list <类型> <对应名称>
列出某个世界所包含的Tag列表或者是玩家的。
第五章 - 自定义物品高级提示框

你是否也想有物品模型3D预览?满足你!正如我们2.4版本的介绍图那样:
支持任意物品、方块,他可以直接替换掉原本提示框的背景、展示3D模型旋转预览、超长时还会滚动显示!
首先是最受欢迎的3D模型预览:
请在手上拿好你要开启的物品并输入:/vexitem preview true
然后是自定义背景:
请在手上拿好你要开启的物品并输入:/vexitem backimage <图片URL>
注意:仅支持本地贴图!
如果你认为你的lore太长了,可以限制它的高度(游戏内像素为单位,和GUI宽度是一个标准)
请在手上拿好你要开启的物品并输入:/vexitem tipheight <高度>
被限制高度后,物品的lore将上下滚动显示。

使用FlowView高级广播
这是一个很早就推出的功能,我们也很看好它,用作服务器的广播还是很逼格,很显眼的。
它支持在屏幕任意位置显示,支持颜色代码,支持一键全服播报。
使用方法是:
/flowview <玩家> <显示位置> <文本内容>
  • 玩家 - 填写将要发送的玩家名称,你也可以使用@all为全服玩家发送。
  • 显示位置 - 即消息在屏幕上显示的位置,这个位置按高度百分比计算,只能填入0-100的整数,像上图的位置,就是5。
  • 文本内容 - 就是要显示的消息,支持&颜色代码,可使用”_/”代替空格。
玩家客户端正在播放一条FlowView消息时,再次播放会直接中断上一次并开始新的FlowView消息播放,客户端只能同时播放一个FlowView消息。
第六章 - 自定义计分板与背包侧边栏

我们在1.5版本中新增了背包侧边栏,在plugins\VexView\inventory\inventory.yml中进行配置
我们在1.6.2背包对其进行了强化,现在,你可以添加按钮、图片、文本。
要启用此功能,请将enable设置为true
为了减少网络消耗,现在侧边栏不会自动刷新了,玩家每一次打开背包,都会更新侧边栏的相关数据,当然,如果玩家打开得过快,会被限制从服务器获取数据。
高度width与宽度height均可自定义,贴图支持网络图片与本地图片url
当侧边栏所有的贴图载入完成后,才会出现侧边栏开关。

侧边栏内容
配置好侧边栏的样式之后,就是内容了,我们用page文件来存储每一页的相关内容
所有的页数信息填写在pages下,有几页填几个,所有的page信息请在plugins\VexView\inventory\pages文件夹下配置
  1. pages:
  2. - 'example'
复制代码
Page文件
找到plugins\VexView\inventory\pages文件夹
随便建一个文件xxx.yml并添加以下内容:
  1. #这一页的文本内容,添加文本文件名称
  2. #文本内容会自动刷新
  3. text: []
  4. #这一页的图片内容,填写图片文件名称
  5. image: []
  6. #这一页的按钮,填写按钮文件名称
  7. button: []
复制代码
最后,一个漂亮的侧边栏就出来了~

自定义计分板
开启计分板:
你可以为玩家自定义计分板,计分板内容在plugin/vexview/scoreboard.yml中进行配置
将scoreboard设置为true,重载配置文件,即可在客户端展示自定义计分板。
  1. #是否使用自定义计分板
  2. scoreboard: true
复制代码
玩家按下 "N" 键,即可展示/隐藏自定义计分板(可在客户端中更改热键)
开启自定义计分板后,请注意,自定义的计分板会覆盖在原版计分板的上方。
计分板内容:
  1. #每个世界的计分板内容,所有的计分板文件都在scoreboard文件夹中
  2. #格式<世界名称:计分板文件>
  3. #不设置则此世界不开启计分板
  4. worlds:
  5. - 'world:default'
复制代码
刷新频率和样式:
由于计分板需要实时更新,因此服主可以根据服务器实际情况,自行设置计分板刷新频率
  1. #计分板的刷新频率(以tick为单位,20tick=1秒)
  2. refresh: 100
  3. #计分板贴图URL地址
  4. url: '[local]test.png'
  5. #计分板贴图实际宽度
  6. xSize: 20
  7. #计分板贴图实际高度
  8. ySize: 32
  9. #计分板贴图显示宽度
  10. xShow: 80
  11. #计分板贴图显示高度
  12. yShow: 128
复制代码
计分板文件:
关于计分板样式,设置方法与之前的GUI、图片等相同(支持本地图片),但是需要注意的一点是,计分板永远会位于客户端右侧居中位置(同原版计分板相同)
我们可以在.\plugins\VexView\scoreboard文件夹中找到一个默认生成的计分板文件,可以看到它的名称就是上面填写名称去掉了尾缀(其实所有的配置文件就没不去掉尾缀的)
  1. #计分板的内容
  2. #依然是填写text文件名称
  3. #一个代表一页
  4. text:
  5. - 'text'
  6. - 'text2'
  7. #计分板不同页面的切换间隔
  8. #当上面的页数超过一页时才会生效
  9. change: 200
复制代码
现在重启客户端和服务器进入游戏吧,看看精美的计分板!
第七章 - 其他功能

客户端验证
客户端验证是什么?在开始我们的游戏之前,VexView的客户端要和服务器进行一次"握手"动作来获取一部分服务端的信息。否则无法判断客户端是否支持使用VexView功能。目前提供的配置文件verification.yml是这样的:
  1. #验证客户端MOD版本与服务器插件版本是否相同,否则踢出玩家
  2. #例如(VV客户端版本为1.5,而服务端版本为1.6)
  3. version_kick: false
  4. #如果玩家没有安装MOD,是否踢出玩家
  5. no_mod_kick: false
  6. mod_delay: 0
  7. #文本内容
  8. kicktext: '您的VexView版本与服务器不匹配!'
  9. nomodtext: '您未安装VexView于客户端!'
复制代码

连接数据库
VexView在2.3.8版本以后支持数据库并同步以下数据:
  • 自定义玩家Tag内容
  • 自定义药水效果
它的配置文件dataconfig.yml是这样的:
  1. mysql:
  2.   #是否启用MySQL数据库存储数据
  3.   #跨服请请一定使用MySQL数据库并开启此选项
  4.   #否则可能会出现一些不同步的问题
  5.   enable: false
  6.   info:
  7.     databasename: test
  8.     username: root
  9.     password: lk.test
  10.     port: 3306
  11.     ip: localhost
  12. messages:
  13.   sync: '> 正在同步VexView的内容...'
  14.   finish: '> 完成同步!'
复制代码

自定义游戏菜单
VexView在早期版本就支持了自定义游戏菜单,什么是自定义游戏菜单?请看图:

你可以自定义设置游戏菜单名字、游戏菜单右侧公告栏、以及连接自己服务器的官网。
在2.4版本之后,若服务端vexview.yml开启vexviewstore选项,还会现在VexView Store官方资源商店。
它的配置文件gamemenu.yml是这样的:
  1. #是否启用自定义游戏菜单(玩家按下ESC时的界面)
  2. enable: true
  3. #您的服务器官网链接(没有则填none)
  4. url: 'none'
  5. #您的服务器名称
  6. name: 'Minecraft §4幻§6想§2家§3园'
  7. #服务器公告内容
  8. text:
  9. - '欢迎来到幻想家园,在这里,你可以随意'
  10. - '搞基,从现在开始,你就是我们的一员了'
  11. - '————————————————————————————————————'
  12. - '今日新闻:'
  13. - '1.卢本伟死灰复燃,复播开始'
  14. - '2.RNG再夺LOL世界冠军'
  15. - '3.残叶竟然穿上了比基尼'
  16. - '————————————————————————————————————'
  17. - '感谢PCD小组为本服务器捐赠888

  18. {:compass_28:}[size=3][b]自动公告系统[/b][/size]
  19. 其实我一说了你们就知道这个是什么了,每次进服都会为你自动打开一个GUI,这就是自动公告。
  20. 它的配置文件announcement.yml是这样的:
  21. [code]#选用的gui(新建一个gui请在VexView\gui文件夹内编辑)
  22. gui: 'normal'
  23. #是否启用进服公告功能,如果下方AuthMe支持开启,则在玩家登录后显示一个GUI
  24. #如果下方AutheMe功能未开启,则在验证完成后显示一个GUI
  25. enable: true
  26. #是否开启Authme支持,开启后,玩家登陆后显示GUI
  27. authme: true
复制代码

自定义公告
什么是自定义公告,每次进服自动为你打开的那个GUI就是自定义公告。
它的配置文件annuncement.yml如下:
  1. #选用的gui(新建一个gui请在VexView\gui文件夹内编辑)
  2. gui: 'normal'
  3. #是否启用进服公告功能,如果下方AuthMe支持开启,则在玩家登录后显示一个GUI
  4. #如果下方AutheMe功能未开启,则在验证完成后显示一个GUI
  5. enable: true
  6. #是否开启Authme支持,开启后,玩家登陆后显示GUI
  7. authme: true
复制代码
至此,你已阅读完VexView普通用户教程的全部内容。
拓展 - 自定义Authme登陆界面

若你的服务器已安装AuthMe插件,你就可以使用我们的自定义登陆界面了。
打开配置文件login.yml开始设置:
  1. #是否使用自定义的登录界面
  2. #需要AuthMe作为前置
  3. #Whether to use a custom login interface
  4. #Requires AuthMe or other login plugins as frontends
  5. login: true
  6. #密码输入框颜色
  7. # password input box color
  8. #BLUE/RED/YELLOW/BLACK/GREEN/WHITE/PURPLE
  9. textfieldcolor: BLUE
  10. #密码输入框是否半透明
  11. # Is the password input box translucent?
  12. textfieldalpha: true
  13. #自定义登录界面的背景图片URL
  14. #Custom login screen background image URL
  15. url: '[local]login.png'
  16. #自定义背景图片显示的X坐标
  17. #The X coordinate of the custom background image display
  18. x: 0
  19. #自定义背景图片显示的Y坐标
  20. #The Y coordinate of the custom background image display
  21. y: 0
  22. #背景图片的实际宽度
  23. #The actual width of the background image
  24. xSize: 694
  25. #背景图片的实际高度
  26. #The actual height of the background image
  27. ySize: 434
  28. #背景图片的显示宽度
  29. #Display width of background image
  30. xShow: 694
  31. #背景图片的显示高度
  32. #Display height of background image
  33. yShow: 434
复制代码
完成设置后,进游戏看看效果吧!

拓展 - 自定义任务对话框和任务笔记

开启任务对话框:
如果你使用了 BetonQuest / Cronus 插件,那么现在就可以获得更逼格的展示了,你可以自定义对话展示框。
注意:支持任意数量的选项,请跟据实际情况设置选项数量,避免选项过多无法显示。
你可以自定义以下内容:
  • 对话框样式(仅本地)
  • 按钮样式(仅本地)
  • NPC立绘(URL或本地)
首先来说如何开启此功能,首先请确保你服务器安装并成功加载了BetonQuest插件。
打开服务端文件夹下的plugin/VexView/conversation.yml文件
  1. gui: true
复制代码
将gui项设置为true。
然后在BQ的配置文件中,将default_conversation_IO项,修改为vexshow
  1. default_conversation_IO: vexshow
复制代码
或者在Cronus的配置文件中,将dialog-style项改为vexshow
  1. dialog-style: vexshow
复制代码
NPC立绘设置
然后回到VexView的配置文件中,在这里,你可以自定义每一个NPC的立绘图。(其实就是在对话框左端展示的图片)
要自定义一个NPC立绘图,首先要让这个NPC能够被插件识别,我们找到 plugins\BetonQuest\default\conversations 目录
打开你的对话配置,找到quester项,en后面的名称即为NPC英文名称(如果没有请自行添加)
  1. quester:
  2. en: 'Innkeeper'
  3. cn: "§5旅馆老板"
复制代码
我们在bqconversation.yml下面接着写,具体格式如下:
  1. #立绘设置
  2. Innkeeper:
  3.    #该NPC的立绘贴图
  4.    image: '[local]t.png'
  5.    #该NPC专用的对话框贴图(只能填写本地图片)
  6.    back: '[local]bq.png'
  7.    xSize: 239
  8.    ySize: 261
  9.    xShow: 120
  10.    yShow: 130
复制代码
最后,进入游戏,与NPC对话时,就可以显示出我们的自定义面板了!

任务笔记
从1.5.8版本开始,你可以让玩家随时查阅他的任务笔记了,任务笔记可以显示在背包侧边栏处,需要注意的是,计分板和背包侧边栏的空间有限,你需要合理控制玩家的任务笔记数量。
此功能的配置文件位于journal.yml文件中,下面是详细配置:
  1. #这个是任务笔记显示设置
  2. journal:
  3.     #是否开启此功能(将在背包侧边栏显示)
  4.     enable: false
  5.     #显示位置A为侧边栏,B为计分板,C为均显示
  6.     #当机分板显示时,会覆盖掉计分板配置文件的内容以及
  7.     #其他插件修改的计分板内容
  8.     type: A
  9.     x: 6
  10.     y: 6
  11.     #特殊文本
  12.     no_journal: '  暂无任务笔记'
  13.     journal: '  任务笔记'
复制代码
开启后,游戏内就可以显示我们的任务笔记了,不过格式需要各位服主调整一下哦。
拓展 - MOD的更多设置

自动连接服务器
设置自动连接服务器非常简单,在客户端的.minecraft中找到config文件夹,然后打开vexview.cfg,找到aoutconnect项,将Enable设置为true,然后在下面的IP处填写服务器的IP地址,带上端口。{}
autoconnect {
B:Enable=true
S:IP=localhost:25565
}
客户端自动连接的背景,在MOD中的custom文件夹中,名为back.png,可以直接更换任意尺寸的图片,但是文件名称不得修改!

自定义客户端标题
像上面一样,打开vexview.cfg文件,找到client项,直接在下面Title后面写上想要自定义的标题即可:
client {
S:Title=卢本伟牛逼
}

任务对话框相对布局
考虑到某些玩家使用高分辨率的客户端,对话框显示出来的效果非常差,图片不会自动拉伸等,我们设计了相对布局。相对布局采用按游戏窗口大小百分比的形式,设置对话框的大小。将Enable项改为true以启用此功能,下方Height为相对高度,Width为相对宽度,对话框会自动居中。
relativelayout {
B:Enable=false
D:Height=0.2
D:Width=0.9
}

侧边栏开关按键偏移量
在原基础位置上进行的坐标偏移量,只能使用整数!
sidebar {
I:x=0
I:y=0
}

连接Gui开启和关闭
connectgui {
开启重试Gui
B:RetryGui=true
开启连接中Gui
B:Show=true
}

自定义贴图存储路径
imagepath {
S:local_path=vexview/textures
}

至此,你已阅读完VexView教程的全部内容!祝贺!
[groupid=1330]PluginsCDTribe[/groupid]