[优化]RandomTeleport —— 使用高版本异步区块生成优化CMI随机传送[1.14+] - 服务端插件 - Minecraft(我的世界)中文论坛 -.html

[优化]RandomTeleport —— 使用高版本异步区块生成优化CMI随机传送[1.14+] - 服务端插件 - Minecraft(我的世界)中文论坛 -

Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

查看: 3321|回复: 6
打印 上一主题 下一主题

[原创插件] [优化]RandomTeleport —— 使用高版本异步区块生成优化CMI随机传送[1.14+]

[复制链接]
Hanssc 当前离线
积分
5607
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2018-7-1
查看详细资料

来自:江西

跳转到指定楼层
楼主
发表于 2020-7-17 14:39:01 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
服务端插件
英文名称:RandomTeleport
中文名称:随机传送
插件来源:原创
适用服务端:Spigot 
插件类型:综合 其他 
语言支持:简体中文 English 
适用版本:1.16.X 1.15.X 1.14.X 
前置Mod|插件:CMI
下载地址:https://www.mcbbs.net/
原帖地址:-
插件Logo:-
插件简介:-

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
本帖最后由 Hanssc 于 2020-8-6 18:52 编辑

前言

目前市场上的随机传送插件若干性能问题:

1. 寻找安全着陆位置
2. 传送后周围的区块如未生成,那么他将被同步生成。


本插件主要对第2种情况进行了优化。


如果要同时对第1种情况优化,那么需要完全重写一个随机传送插件,不是很划算。
具体方法可以是
1. 异步加载区块
2. 等待加载,然后获取区块快照
3. 异步对快照进行着陆点检查
4. 重复直到找到安全着陆位置


插件原理
使用高版本异步区块生成机制,对随机传送后的区块进行预加载,加载完成后再将玩家传送。


总结

也就是说当你使用本插件进行CMI随机传送时,会造成TPS损耗的几乎只有CMI自带的“寻找安全位置”功能。

(CMI自带的“寻找安全位置”在对1.16的地狱使用时,有非常大的失败,非常抵消,但是是CMI的问题不予解决)


对于1.13的服,其实有考虑PaperLib,但是因为本插件主要私用,因此不考虑1.13的支持

简单对比
测试环境:Paper 1.16.1-97
未修改视距等配置。使用LagAssist的LagMap监测TPS变化
主世界:


地狱世界:




第一幅图为使用该插件后随即传送后的效果
第二幅为未使用
图中点1和3都为"寻找安全着陆点"操作,无可避免导致TPS下降。点2点4是区块生成操作。
玩家在传送到一个随机传送点后,一般情况下都会左右看看,那么会导致周围的区块被生成(这个过程是同步的)且生成的区块数量庞大,
如果视距调整为4,那么生成的区块最大将会是:8*8-del(del排除一些边角区块)


以上假设基于玩家传送后的区域的区块未生成。
当然,如果你把服务器全部区块都预生成了,那么影响将会非常小,用不用本插件都无所谓了。但预生成会占用大量的磁盘空间。(1.14~)
RandomTeleport-1.0.0-SNAPSHOT.jar (5.37 KB, 下载次数: 192)

评分

参与人数 1人气 +1收起 理由
魔法帝+ 1支持原创

查看全部评分

帖子永久链接: 

Minecraft中文论坛 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖若有内容转载自其它媒体,不代表本站赞同其观点和对其真实性负责
6、若本帖涉及任何版权问题,请立即告知本站,本站将及时予以删除并致以最深的歉意
7、Minecraft(我的世界)中文论坛管理员和版主有权不事先通知发贴者而删除本文

名副其实 当前离线
积分
26910
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2016-8-31
查看详细资料

来自:浙江

沙发
发表于 2020-7-17 17:45:29 | 只看该作者
标题不合格请修改
不存在叫做“辅助”的插件类型
回复

使用道具 举报

叁肆. 当前离线
积分
2982
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2020-2-21
查看详细资料
头像被屏蔽

来自:山东

板凳
发表于 2020-7-17 18:33:43 | 只看该作者
建议放插件的效果图哦,可以让浏览的人更加清楚的明白这个插件
回复

使用道具 举报

Hanssc 当前离线
积分
5607
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2018-7-1
查看详细资料

来自:江西

地板
 楼主| 发表于 2020-7-18 13:41:13 | 只看该作者
枫黎秋 发表于 2020-7-17 18:33
建议放插件的效果图哦,可以让浏览的人更加清楚的明白这个插件

已经添加了几个效果图
回复

使用道具 举报

PixelCloud 当前离线
积分
2778
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2014-3-30
查看详细资料

来自:香港

5#
发表于 2020-7-18 13:49:21 | 只看该作者
正在使用cmi 十分好的插件
回复

使用道具 举报

asd445 当前离线
积分
2574
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2016-7-8
查看详细资料

来自:广东

6#
发表于 2021-2-19 11:53:49 | 只看该作者
[RandomTeleport] Plugin RandomTeleport v1.0.0-SNAPSHOT generated an exception while executing task 1620
java.lang.NoSuchMethodError: org.bukkit.World.getChunkAtAsync(Lorg/bukkit/Location;Z)Ljava/util/concurrent/CompletableFuture;
        at me.knkm.randomteleport.RandomTeleport.loadNearby(RandomTeleport.java:55) ~[?:?]
        at me.knkm.randomteleport.RandomTeleport.lambda$onCMIPlayerTeleport$1(RandomTeleport.java:40) ~[?:?]
        at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftTask.run(CraftTask.java:81) ~[spigot-1.16.4.jar:git-Spigot-a19903d-5b74714]
        at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) [spigot-1.16.4.jar:git-Spigot-a19903d-5b74714]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:?]
        at java.lang.Thread.run(Unknown Source) [?:?]
回复

使用道具 举报

123456axc 当前离线
积分
193
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2013-8-4
查看详细资料

来自:河南

7#
发表于 2021-2-19 12:30:35 | 只看该作者
666666666666
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 京公网安备 11010502037624号 | 手机版

GMT+8, 2023-5-2 00:38 , Processed in 0.041110 second(s), Total 23, Slave 22 queries, Release: Build.2023.03.15 0137, Gzip On, Redis On.

"Minecraft"以及"我的世界"为美国微软公司的商标 本站与微软公司没有从属关系

© 2010-2022 我的世界中文论坛 版权所有 本站内原创内容版权属于其原创作者,除作者或版规特别声明外未经许可不得转载