PixelBBS 我的世界像素论坛

标题: [2022.3]DungeonPlus|独立地牢副本使用教程|详细教学地牢制作 [打印本页]

作者: 像素搬运菌    时间: 2024-2-22 00:40
标题: [2022.3]DungeonPlus|独立地牢副本使用教程|详细教学地牢制作
DungeonPlus前情提要

之所以写这个帖子是因为BBS上好像还没有什么详细的教学说明
WIKI相信有大部分萌新选手也是不太能看明白的
所以在这里出个相对来讲可能比较详细的教学说明,帮助大家能够制作独立地牢
这个教程帖的内容是对应DungenonPlus 1.1.6版本来写
1.1.6的版本我还没整体尝试过,之前开发写的时候用的是1.1.4的版本
所以可能有部分地方说的不是很明白也有可能说的不对
不过大概制作一个简单的副本还是绰绰有余的
那么就开始教学吧!
后面有傻瓜式看图手把手教你做地牢!我就不信你还不会!!!
2021.11.16地牢功能性篇章教程完结!
另有视频附带和功能性模板分享
2022.3.22补充
我会在过几天有时间了重新写一下教程内容 因为这个教程内容是正对1.1.4版本的
DungenonPlus已经更新到1.2.4的版本了 新版的配置内容可能会和旧版的有些不一样
所以我会在有时间的时候对这个教程进行一次重写
针对1.2.4的版本进行书写一个新的编辑教程
2023.8.4
第四章节图片的掉了很多重新补了一下图片。
(我今天才知道快照被下架了还想着能找回最开始的图片。。。)

先上链接
DungenonPlus插件下载
DungenonPlus WIKI链接



DungeonPlus教学篇

1.了解DungeonPlus插件配置

在你想制作一个独立地牢之前,你要先了解插件配置文件夹内的配置文件对应的用途是什么,了解了他们的用途,做起来就会非常轻松

下面我给大家一一列举一下

actionscript 是整个地牢运行开启的脚本组配置,非常重要!是一个主要的配置文件
dungeon 这个是在你导入map地图后会生成的一个副本的配置文件
extension 这个其实我也不太清楚,这个是1.1.6新增的配置文件夹,理论上来讲是全息脚本组的东西[因为我打开看了一下]如果不对就看看wiki吧!
lang 顾名思义是语言文件
map 这个就是存放副本地图的文件夹,把地图丢在这里面然后再游戏内输入指令导入就会在dungeon中出现名字一样的副本配置
config 明摆了就是插件的主配置文件夹
dungeon-view 这个就是类似一个副本的展示菜单和传送吧![我个人反正是不用的可以用龙核萌芽VV等做自定义UI界面然后传送副本]
kether 完全不知道[差点骂人]

以上这些就是每个插件配置对应的作用
接下来我们学习如何制作一个简单的独立地牢副本

2.开始制作一个简单的独立地牢

我们明白了每个配置的作用后差不多就可以开始试着制作一个简单的地牢副本了!
拿起小手手我们一步一步慢慢来!

首先我们说一下dungeon中的配置文件的作用

我在map中放入地图的文件名字叫fb,那么在dungeon中的配置也会是叫fb这个名字,如下图

那么我们打开在dungeon中的配置,会看到如下几个配置文件夹以及配置文件夹
interact 交互脚本组
task 任务组
monster 怪物组
obstacle 障碍组
option 副本主配置核心

了解了这些配置后那么我们开始制作一个简单的独立副本
稍后我会在下面放一个我自己做的一个简单副本参考模板,大家可以看着我这个细心看[我这个配置版本用的是dp的1.1.3的版本1.1.6我不确定能不能完全直接覆盖导入,应该有些地方要自己改动一下]

因为DungeonPlus是可以在游戏内有编辑器制作的,如果你干写配置估计会很麻烦,但是如果你搭配上编辑器一起用就会很简单
我这就不说太多没用的东西,只说点的制作方法和用途,大家可以看我的参考模板自己改动

那么制作一个简单的地牢的副本其实只需要用到两个配置文件夹即可,就是dungeonactionscript其他配置如果你不做太复杂的副本基本上是用不到的,首先我们打开dungeon中的option这个是整个地牢副本的核心配置文件我这边就按照我的模板配置打开给大家解说看

dungeon-init-script 是在地牢开启后初始化执行的事件命令
condition 是地牢在启动时需要具备的条件,比如需要1-3人组队,或者是需要XXX物品才可以进入,可以看这个模板

action-script 就是在地牢启动完成后执行的事件,这里就召唤怪物组的关键!我相信有很多新手会在怪物组生成的地方卡关,这里稍后我会说明
dungeon-reward-script 就是在地牢结束后执行的事件

接下来我们看monster的怪物组配置

rcj和rcjboss就是我这两个怪物组的名字 这里的配置我就不过多的说明了,因为在地牢编辑内有很详细的说明,WIKI也有说明,我就不多做解释了
那么我们创建好这个怪物组后保存设置,然后疑问就来了
问:为什么我设置了怪物组他没有生成出来?
答:因为你没有在actionscript写入开启怪物组的脚本组

那么这边我们打开actionscript

可以看到我这边设置的名字是怪物副本脚本组这个就是我启动地牢后他会执行的脚本组!当然名字你们可以自定义,中文,英文都可以
我们要把这个脚本组写入到我们dungeon中的option内,写法我刚刚上面有图可以看见
action-script:
- $script{script=怪物副本脚本组} @player
我们这样写入后,然后再回到actionscript中
true:  看到这块地方!我们可以看到下面是这样的
- "$message{type=text;text=&e&l你已经成功进入副本} @dungeon"
- "$monstergroup{group=rcj,rcjboss;repeat=false;delay=1} @dungeon"
第一条的意思就是在玩家开启进入副本后,会有地牢执行一条文本发送给进入这个地牢副本的玩家[你可以完全自定义]
第二条就是触发我们的怪物组,刚刚我展示是怪物组名字是rcj和rcjboss
repeat=false 的意思是否会重复触发这个怪物组,一般做副本都是写false的 如果你有自己独特的想法也可以写true
delay=1 就是这个怪物组触发生成的延迟 一般写1就是进入直接生成 如果你写10就是会在你进入地牢10秒后在生成怪物
他这里还可以写很多东西 我这边为了方便大家学习起来不烧脑就写了两个 如果有自己想想法可以多看看WIKI然后写入

这边我们要注意的一个点是这里group=rcj,rcjboss 他这样是会同时触发两个怪物组的,当然你也可以分开写 比如这样
- "$monstergroup{group=rcj;repeat=false;delay=1} @dungeon"
- "$monstergroup{group=rcjboss;repeat=false;delay=100} @dungeon"
这样的话就是进入副本直接触发rcj怪物组 100秒后触发rcjboss怪物组
总之地牢开启和怪物组生成可以有很多不同的类型创意 比如我举几个例子
可以只触发rcj怪物组 然后击败rcj怪物组到一定数量后触发rcjboss脚本组
也可以用很多交互脚本和障碍组制作多种元素的地牢副本
总之一句话 多学多看多问群

然后我说一下interact和dungeon 脚本组和障碍组
脚本组的话我的分享末班里有些一个脚本组 是这样的

我这个配置是意思是这样的
击败亡灵魔主后延迟10秒结束副本 就是会自动给你传送出去 你也可以做踩上一个方块离开啥的,反正拓展性很多
奖励这个东西话其实可以略过,直接用MM怪物的掉落物就行了
这个亡灵魔主的名字他是模糊检测的,只要有这四个字就行,无视颜色符号和特殊符号啥的
你这样写完他也是不会触发的 你要给他写到option内的action-script处,我上面图片有,看一下就行了我就不说明了

这样一套下来你基本上就完成了一个普普通通的独立地牢的制作
地牢的玩法拓展性很多,我这边只是做了一个最简单的地牢而已[因为可能有很多人最简单的都不会,那种复杂的就根本不用说了]
总之DungeonPlus的玩法拓展性很多,他可以做到剧情副本 闯关副本 解密副本 机关副本 合作副本等
我几句话是说不明白的,可能需要上万字或者几个视频才能让你们明白一点
总之还是一句话,多看多练多学多测试,没有什么是做不出来的
如果有什么不明白的地方可以加楠木的地牢交流群:789066322 和大伙一起讨论吧!



3.地牢模板分享和后话

模板地牢分享链接
链接: https://pan.baidu.com/s/1O8fFmwHm4wn_hXRiEVTKag
提取码: k2nc
这个号只能上传5MB的附件 这个模板有9MB 所以只能传网盘啦
如果你有什么好的地牢想法想制作却又不会的可以加我QQ846410171
如果我觉得可以的话会采用部分难度比较高的地牢玩法来制作一款地牢副本免费分享给大家
并且略微的做一些说明讲解
那么最后就是希望大家都能学会运用DungeonPlus,毕竟这确实是一款不错的独立地牢副本插件
谢谢大家!





4.傻瓜式地牢看图教程

有地牢基础的可能一看就明白了,可能会有部分萌新选手和第一次接触DungeonPlus的人不太明白
所以在这里开一个傻瓜式看图制作地牢小教程,方便大家制作地牢
那么开始前我们需要用到三个插件DungeonPlus和MythicMobs还有Multiverse-Core
MythicMobs的话我就用之前从烙铁的群扣来的mm怪物直接展示给大家看

那么首先第一步,哎就是找地图 把地图导入到我们的map文件夹中,名字自己起![注意一定要英文,高版本的dp不在支持中文了]

哎好,那么我导入了名字叫nxx的副本地图,现在呢我们去游戏内输入指令/dp import nxx,然后就会有导入成功的提示了

哎好,这么一来副本就创建好了,完事了nono了,那么下一步就是打开我们的dungeon,里面就会多出来一个nxx的文件夹,像这样

哎好,nono了,那么现在我们先进入这个地牢开始编辑奥
我们输入指令/dp editor edit nxx
哎好,这样我们就进入了这个地牢副本的编辑状态
ok,那么我们开始编辑一下这个地牢
进入后我们输入/dp editor info 打开我们的编辑器

那么首先第一步呢,就是先设置一下我们的出生点,就是玩家开启进入地牢后再那个位置出生和死亡后哪里重生
我们站好位置调整好角度,打开聊天框,点击一下 出生点 这三个字 啊ok 出生点设置完毕!
然后接下来我们打开 地牢的基础设置

就会出现这个么东西 地牢启动时初始化 就是我们上面说的dungeon-init-script
一般给他弄一下出生点 禁止破坏就差不多了 这个setmap千万不要动他!
我们点一下那个绿色的+号就能开始编辑,我就拿地牢启动执行做比方

点了之后就会出现这个么东西,你把鼠标放到对应的文字上面,会有这个东西是干什么的介绍说明
这边我就拿Script来说 因为要启动脚本组的嘛 这个是必须要的

然后我点一下这个,就会在聊天框弹出来怎么写的说明
他默认是这样涩的熬$script {script=脚本组,...} @player

然后这个脚本组的名字你可以自定义,到时候在actionscript里面需要用到
我这边写的脚本组名字叫 nxx脚本组 记一下记得
写完之后按回车就会在这里给你加进去

然后我们在加一下交互脚本组启动

点击后会出现以下的信息提示,具体写法看下面

脚本类型我们写KILL 因为我们是要做击杀怪物结束的 name的话就你自己想 我写的是 nxx自定义 这个要记住了

完成之后我们按回车就会保存到里面了,然后差不多地牢启动执行就完事了

接下来可能信息提示会被刷掉 我们接着输入/dp editor info
然后看到我们的怪物组 如果你打算新建一个怪物 就点击哪个怪物下面的绿色的+

然后就会弹出来让我们输入怪物组的名字,这个怪物组的名字也是自定义 不过自己要记住了

我这设置的怪物名字叫nxx 然后输入后按回车就会多出来这个nxx的怪物组 你也可以建立很多怪物组

然后我们点击哪个黄色的 nxx 这个怪物组 就会弹出来下面这个东西 那么我们先绑定一下生成的怪物
点击这个黄色的怪物绑定

就会弹出来这个东西 这个要怎么呢 怪物名字对应是就是mm里面的名字 数量写1就行了 分散距离也写1 如果你想这个刷怪点出两个怪
那么怪物数量就写2 分散距离你自己看着写 不要让他们贴在一起就行了 如果数量写2的话推荐分摊距离写3或以上
然后怪物名字的话我们对应一下mm里面 我这边的怪物名字叫 幻影守卫 那么下面我就这么写


写完之后按回车 就会弹出来绑定的提示,是不是已经有人拿木剑疯狂点击但是就不能绑定上,没错!你少了一个步骤

我们要先点一下这个绿色的+

然后在左键点击我们需要创建刷怪点的地方 他就会创建成功啦!你在一个怪物组创建很多怪物,我这边为了节省时间
就只选择创建一个怪物点了!

接下来我们看到这里 交互脚本组 在刚才怪物组的下面 如果看不见了 就再次输入/dp editor info
我们点击这个黄色打开

就会弹出这个界面 然后我们点击这个绿色的+

选择KILL的脚本方式

点击选择后会优先弹出来这个,这个啥都不用改 直接按回车就行了

然后就会让我们输入这个脚本组的名字 刚才我们在上面已经设置过脚本组的名字了,叫 nxx自定义 那么我们这边就输入nxx自定义就行


输入回车后就会看到我们创建成功了 然后我们点击这个黄色的 nxx自定义 不要点+号

就会出来这个提示界面,我们点击这个参数 设置一下击杀什么怪物触发这个交互组

刚刚我只设置了一种怪物名字叫 幻影守卫 那就直接输入幻影守卫就行了 这样我们击败幻影守卫后就会触发这个交互组
然后我们点击下面的加号 我上面的图是提前创建好了已经 我这边再说一下 点击这个绿色的+

就会弹出来很多可以交互的内容 这边我们选择end结束地牢的事件

这个内容你自己自定义修改就行了 然后要注意的地方是 reward=false 这个地方意思是是否开启地牢奖励 因为我没有设置地牢奖励
所以这边填false就行了 掉落物设置直接用mm自身掉落就行了 然后delay=10 这个地方是延迟执行 就是会等10秒后结束副本
如果你设置5就是5秒后离开副本 1就是1秒后离开副本

上面都设置完成后 我们点击保存就可以完成这个设置啦!

不要高兴的太早!刚刚我们把地牢都设置好了 那样子是不会触发怪物组的 我们要在actionscript里面写入我们的脚本组
我刚刚设置的脚本组名字叫 nxx脚本组 那边这么就像我这样设置就行了
第一条就是你进入副本后 会由地牢给进入副本的玩家发送这条消息
第二条就行触发的怪物组 我刚刚设置的怪物组叫nxx 那么这边就写nxx 如果你设置了多个怪物组,那么这边可以这样写
nxx,nxx1,nxxboss  以此推类

最后一步切记!改完actionscript保存后 记得要重载一下地牢 dp reload
不然这个脚本组是不会存在的 重载完成之后就可以进入我们的副本了!
/dp start nxx 进入副本后就可以看到我们设置的发送消息触发啦!那就证明怪物组也成功启动了
我们就可以到我们设置好的位置看到我们的怪物!

然后我击败了这个怪物 十秒后就我给我带离副本啦!

最后我们就会被传送回我们进入副本的地方[应该是这样的,还是会返回主城来着的]

那么傻瓜式地牢创建的教程就全部完成了!
恭喜你!你也会制作独立的地牢副本了!



5.DungeonPlus的功能效果教程

基础的简单的地牢构建想必大家已经的比较精通和熟练了
也能通过看着教程来制作出一个简单的独立地牢副本
那么这边的教程打算给大家深入的讲解一下关于DungenonPuls的一些功能性的效果说明和展示
就是Hologram全息脚本 交互组脚本 地牢任务 障碍组 这些 分别对应的配置是 hologram interact task obstacle
在我们制作一个功能性地牢前,我们所需要可能会用到的插件有这些
DungenonPuls 地牢插件主体
MythicMobs mm怪物主体[制作副本怪物]
Multiverse-Core多世界插件[地牢前置]
HolographicDisplays全息插件[地牢前置]
PlaceholderAPIpapi变量插件[地牢前置]
Citizens自定义公民插件[终于制作地牢内生成npc]
DragonCore白龙的龙之核心插件[制作部分怪物模型以及障碍物模型等]
这些插件除了必要前置以外 其他的你愿意搞就搞 不愿意也无所谓


开始教程



1.Hologram全息脚本的运用

那么首先我们先学习一下Hologram全息脚本的使用方法,他对应的配置文件路径如下

extension/hologram

那么这个全息可以实现的功能有哪些?除了可以在副本内有hd的全息显示以外,我们还可以用全息制作变量/触发脚本

什么是制作变量?在1.1.7版本或者1.1.6版本中的hologram 里面有自带的一个默认配置



这个的话我自己改动过,所以和默认的可能不太一样,不过也查球不多,我来给大家讲解一下

hologram: 这块位置顾名思义就是全息显示的信息,你可以自己完全自定义修改,然后再副本内放出来

<if:[<mob:kill-amount *狂暴村民>>=3] *&a&l完成 &f(点击通关) *&c未完成>

这个的话他就是我们所用到的一个全息变量,他可以检测击杀怪物,他这边的意思就是需要击败三次名为狂暴村民的怪物

这个名字的话是mm插件的模糊检测,只要名字对得上就行了,无视颜色符号和特殊符号

然后我们看下面的action: 这个就是这个全息组的脚本内容,4就是第四行有包含点击通关这四个字的,只要有包含

我们左键或者右键点击这个全息,他就会触发下面的脚步内容 $end{type=text;text=地牢挑战成功,即将返回主城;reward=true} @dungeon

这个脚本的意思就是结束地牢,这个上面我们也有说道,wiki也有写,我就不多做解释了

他除了可以做结束地牢以外还可以做很多的脚本内容,这个就靠大家的想象力和临场发挥了,wiki和我上面都有具体说明

那么我们配置好这个全息组了 他是不会直接在副本中生成的,需要我们在副本配置的option中写入生成全息的脚本内容

具体写法如下,注意要卸载action-script: #地牢启动执行 处,当然如果你写在actionscript配置里面理论也是可以的

- $hologram{name=example;operation=create;location=103.512,82,-455.262} @dungeon

name=example 这个name注意了,这个是你全息文件夹的名字,不是内部的名字,一个文件夹只能创建一个全息

如果你想创建多个全息,就要多谢几个文件夹,名字就给你们自定义了operation=create 这个是他的执行方法 我这边写的是生成 当然还有删除啥的

删除的delete 还有一个是啥我忘记了 大家可以自己进入游戏用地牢内的编辑器查看 location=103.512,82,-455.262 这个就是他生成的坐标点





2.interact交互脚本的运用

交互脚本组的运用非常的多,可以说基本上一个带有功能性的地牢,都离不开交互脚本

交互脚本可以做到的类型有很多比如,触发障碍组 删除障碍组 触发全息 删除全息 触发npc 发送命令等

相当于他就是一个可以通过玩家自身交互来执行的地牢命令,而不是局限于只能用地牢option和actionscript来触发命令

交互脚本的类型主要有这些

KILL 击杀怪物时触发

BREAK 破坏方块时触发

PLACE 放置方块时触发

WALK 玩家经过时触发

AREA 玩家进入区域时触发

COMMAND 玩家在聊天框输入命令时触发(执行玩家为触发者)

BLOCK_INTERACT 玩家与方块交互时触发

ENTITY_DEATH 怪物死亡时触发

PLAYER_DEATH 玩家死亡时触发

这些的话在wiki上也有详细的说明,我就不全部一一给大家介绍了,就拿几个我这个功能性配置里面的给大家来说

我制作的这个地牢用到的交互脚本类型有KILL WALKPLACE

KILL的话我就不说了,因为我上面也有说道这个脚本的使用方法,就是击杀某个怪物后触发的交互命令


WALK 这个的话是玩家经过触发,是什么意思呢?就是和脚本方块一样,玩家踩上去这个方块,就会触发执行交互命令



大家可以看我这个配置说明,我给大家介绍一下,type就是类型 类型就是WALK

first的话就是是否会重复触发

locatlon-a 这个就是方块A的位置坐标,就是我们要让他踩上的方块的坐标 这个可以在游戏内地牢编辑中木铲点击方块,就可以获取坐标

locatlon-b 顾名思义就是方块B的坐标,如果你只需要一个方块的话这个可以不写,但是我不知道他这样两把加起来能不能做成范围的

有兴趣的可以尝试一下看看,我还没这样尝试过

level就是需要的等级,一般写0 如果你有需求可以写上等级 比如10 那玩家如果等级没有到10级,那么就算踩上了他也不会触发这个交互命令

permission就是是否需要对应权限触发,一般写none就行了,如果你有需求也可以改成需要权限的,那么方法就和等级同理

script这个的话就是我们最主要的了,就是踩上这个方块后我们触发执行的交互命令,你可以自定义完全自定义衍生拓展

这边我所用到的方法是触发恢复两个名为z1,z2的障碍组,并且给由地牢给玩家发送一条消息,障碍组稍后我会说到

大家不一定要像我这样写,你可以自己完全自定义拓展按照你的想法自己去编写这个交互脚本命令

具体的可用的交互命令有很多,一两句话也说不完,大家在游戏内进入地牢编辑模式打开编辑器查看即可

这边给萌新选手的建议,不要按照我的配置在后台写配置,要多尝试在游戏内使用编辑器制作,制作完可以再用后台配置改写

因为编辑器的使用是远远比写配置要简单的多的多的多


PLACE 就是在玩家右键交互的时候如果和配置所需道具的名字对应,你们他就会触发下面的交互脚本内容



location 就是需要交互方块的位置 blockName 就是需要交互方块的检测名字,需要有对应的名字才能进行交互

然后我下面触发的脚本指令的意思是删除名为z1的障碍组和删除名为z1的全息组并且对玩家发送一条消息

这个名字的话就是你自己设置障碍组和全息的组名,delete就是清除

这个的话就是要配合好障碍组,从而实现利用交互脚本来开启或是删除一个障碍组和脚本组





3.obstacle障碍组功能的运用

障碍组的话相对来讲可能会比较好理解,不过障碍组需要配合交互脚本来运行,或者你也可以用地牢主配置生成

配合交互脚本是最好的,[因为可能比较方便],上面我就是用了交互脚本来配合障碍组的生成的

一般制作障碍组都是用block脚本来制作障碍组,如果你有自己的想法也可以换成其他的脚本方式



z1就是这个障碍组的名字,name=z1 这个的话推荐大家和障碍组的名字对应 start就是坐标A点开始的位置

end就是坐标B点结束的位置,这样设置好,他就在A和B这两个点形成一个正方形或者是长方形的障碍组区域

这边的话我是创建了两个障碍组,我这个障碍组的会阻止玩家前进,需要配合交互脚本的PLACE的方法,做到玩家放入对应交互物品从而清楚障碍组

当然你也可以做很多的拓展性功能,比如你可以用障碍组制作楠木视频展示的那种灼烧效果和炸弹桶等


我这里就是配合交互脚本组制作的障碍,需要有交互脚本内对应名字的物品放入这个空位,然后才会进行清理这个障碍组

这个清理的方法可以看上面的交互脚本的PLACE的类型,当然你也可以做成其他的交互方式,比如击杀或者破坏,和经过等

这个就看大家自己的实践操作和想法思维了

障碍组大家可以在游戏内地牢编辑功能中,使用木锄左键和右键来设置一个区域的block障碍组

然后配合交互脚本组来实现这个障碍组的开启和删除还有功能性等

大家可以看一下我的分享功能配置中的障碍组设置和交互脚本组的搭配衔接

总之还是得靠大家自己发挥想象力,制作你想象中的地牢样式

我这只是给大家做一个参考和给大家讲解一下使用的方法而已





4.task任务组的运用

除了全息/交互/障碍这些,在地牢中还可以使用task的任务组,从而实现在剧情和任务地牢

这个的话其实我没怎么用过,大家可以查看一下楠木的wiki中的task任务教程,来制作地牢中的任务

其实我个人有一个制作任务的想法,就是还没尝试过,我把想法告诉大家,有兴趣的可以去尝试一下

就是利用生成npc的脚本命令,在地牢内生成对应npc,在用bq任务写对应的任务介绍和说明

从而衔接在地牢副本内的npc上,然后实现在地牢中制作任务的功能

当然这只是我的一个想法而已,具体还没尝试过,如果会bq的应该对你来讲是挺容易的,如果不会bq可以多试试地牢自带的task任务


5.最后

总之一个地牢他可以实现的功能性太多太多了,还得各位自己多多使用地牢编辑器

来做一些多功能的地牢效果,下面吧我制作好的一款功能性地牢分享给大家作为参考制作


我会把这个地牢的展示视频效果放在下面,大家有兴趣的可以看一看!

那么全篇地牢的详细教程说明基本上也完结了,那么希望这个教程能对正在研究地牢的你有所帮助

谢谢大家!楠木yyds!







欢迎光临 PixelBBS 我的世界像素论坛 (https://www.pixelbbs.cn/) Powered by Discuz! X3.4