本帖最后由 Sssss... 于 2023-1-16 13:14 编辑 
(完整名称为IceTimerRemade,Remade指对同样为原创的前一版本插件的重制。嫌改名麻烦就保留了,不要误会。)
版本兼容
开发版本为1.15.2
已测试1.16.5可以正常工作,但无法阻止玩家误触Shift后卡下船。
顶部标明的其他版本理论上支持,但没有实际测试。
功能简介
本插件适用于冰船竞速的计时。
在这种小游戏中,一个或多个玩家分别乘船在一个两端有防护的冰制赛道上滑行。
比赛开始前,玩家在起点线前等待,当起点线阻挡消失后统一出发。一段时间后到达终点线,按照时间排名。
由于船具有较大的碰撞体积,容易导致碰撞或堵塞,每次只有一个玩家参加,最后记录成绩并手动排序是个好的选择。
本插件可以实现:
本插件只支持起点线、终点线均沿x或z轴延伸的场地。
本插件测得的时间为实际时间,而非游戏刻的数目。经过实验验证,测实际秒数受服务器运行情况波动的影响远小于测刻数。
配置文件[config.yml]
复制代码
指令
/ice 查看帮助
/ice on <场地名> 启动某个场地的计时器【可设置仅限op执行】
/ice off <场地名> 终止某个场地的计时器【可设置仅限op执行】
/ice quit 退出比赛
/ice record <场地名> <行数> 显示某个场地的前n名
/ice delrecord <场地名> <序号> 删除某个场地的某条记录【仅限op执行】
权限
只检测是否为op,无新增权限节点。
回放
/ice on <场地名> true 录制本场比赛,结束后将保存在IceTimerRemade文件夹
/ice replay <播放速率> <录像文件名> [同时播放的其他文件名1] [2] [...] 播放回放,用苦力怕表示玩家。
同时播放多个回放可以用于比较玩家在赛道不同部分的发挥情况。
本功能开发中,使用不便且可能有bug。
图片展示

图1:场地示例。图中绿、红、蓝分别表示检测点、起点线(其下为玻璃阻拦板)、终点线。所有彩色方块仅用于标记,实际并不存在。
图2:一次比赛的示例。

图3:全服记录功能展示。

图4:在水中浸泡后对原版自动下船机制的阻断。

图5:船被攻击时的保护机制。
下载
 IceTimerRemade[蓝冰计时器].jar
(70.63 KB, 下载次数: 13)
IceTimerRemade[蓝冰计时器].jar
(70.63 KB, 下载次数: 13)
 
更新日志:
请勿将本插件用于盈利。
代码可随意使用,没有在其他网站发布,可随意反编译,相当于开源。
本插件所用所有代码均为原创,不存在借用/抄袭等行为。
IceTimer - 蓝冰计时器
(完整名称为IceTimerRemade,Remade指对同样为原创的前一版本插件的重制。嫌改名麻烦就保留了,不要误会。)
版本兼容
开发版本为1.15.2
已测试1.16.5可以正常工作,但无法阻止玩家误触Shift后卡下船。
顶部标明的其他版本理论上支持,但没有实际测试。
功能简介
本插件适用于冰船竞速的计时。
在这种小游戏中,一个或多个玩家分别乘船在一个两端有防护的冰制赛道上滑行。
比赛开始前,玩家在起点线前等待,当起点线阻挡消失后统一出发。一段时间后到达终点线,按照时间排名。
由于船具有较大的碰撞体积,容易导致碰撞或堵塞,每次只有一个玩家参加,最后记录成绩并手动排序是个好的选择。
本插件可以实现:
- 比赛开始前倒计时
- 比赛开始时自动检测参赛玩家
- 比赛开始时清除起点线的阻挡
- 玩家冲过终点线时立即公布成绩,包括用时、总路程、平均速率等
- 所有参赛玩家都完成比赛后公布排名,包括本次比赛的排名和全服排名
- 同时进行多个场地的比赛
- 查看指定场地的全服成绩记录
- 当比赛中玩家的船被攻击时,会自动抵挡伤害
- 当比赛中的玩家因为某些原因主动或被动下船时,会将其阻止。这将在玩家误触Shift或在水中停留过久导致自动下船(原版机制)等情况下发生。1.16以上无法阻止误触Shift导致的下船,需要玩家注意。
- 回放(开发中)
 
本插件只支持起点线、终点线均沿x或z轴延伸的场地。
本插件测得的时间为实际时间,而非游戏刻的数目。经过实验验证,测实际秒数受服务器运行情况波动的影响远小于测刻数。
配置文件[config.yml]
- # 是否允许非op启动或终止计时器
 
- allows-not-op-swtich-timer: true
 
- # 比赛开始前的倒计时秒数
 
- timer-start-count: 3
 
- # 场地列表
 
- fields:
 
-     # 以下所有坐标的格式都是 worldname;x;y;z
 
-     # 场地名
 
-     example:
 
-         # 参赛玩家检测中心和检测半径
 
-         # 倒计时结束的瞬间,在此范围内的所有在船上驾驶位的玩家将被认为是参赛者
 
-         check-point: ice;-768;63;690
 
-         check-radius: 25
 
-                 
 
-         # 到达终点线时被判为完成比赛至少行驶的路程
 
-         # 防止玩家原地绕圈作弊
 
-         # 可以先设为0然后进行一次比赛,结束后将公布玩家经过的路程(不是位移!distance实际不太准确),设置为大约1/2即可
 
-         # 也可以在起点线前制造一个单向的下坡
 
-         min-distance: 600
 
-                 
 
-         # 终点线,在空间中是一个竖直的矩形区域,单向通过时认为完成比赛
 
-         finish-line:
 
-             # 终点线在水平面上投影为线段
 
-             # 要求给出线段的一个端点、延展方向和长度
 
-             # 按格式修改即可
 
-             point: ice;-776;63;678
 
-             segmet: X+16
 
-             # 通过终点线的方向
 
-             # 只需要给出正负(POSITIVE/NEGATIVE),因为当终点线的方向(X/Z)确定后,通过它的方向也确定为垂直的另一个方向(Z/X)
 
-             # 示例中POSITIVE表示Z+,因为终点线沿X方向延伸
 
-             direction: POSITIVE
 
-             # 通过终点线时的y坐标范围
 
-             # 如果终点线设在半空中要求飞过,或附近有弹射装置等,可以适当放宽
 
-             # 如果终点线正上方或正下方有赛道,需要避免范围设置过大
 
-             min-y: 60.0
 
-             max-y: 100.0
 
-                         
 
-         # 起点线,配置项顾名思义
 
-         start-blocker:
 
-             point1: ice;-775;63;704
 
-             point2: ice;-761;63;704
 
-             block: GLASS
 
-     # 可以添加更多场地
 
 
指令
/ice 查看帮助
/ice on <场地名> 启动某个场地的计时器【可设置仅限op执行】
/ice off <场地名> 终止某个场地的计时器【可设置仅限op执行】
/ice quit 退出比赛
/ice record <场地名> <行数> 显示某个场地的前n名
/ice delrecord <场地名> <序号> 删除某个场地的某条记录【仅限op执行】
权限
只检测是否为op,无新增权限节点。
回放
/ice on <场地名> true 录制本场比赛,结束后将保存在IceTimerRemade文件夹
/ice replay <播放速率> <录像文件名> [同时播放的其他文件名1] [2] [...] 播放回放,用苦力怕表示玩家。
同时播放多个回放可以用于比较玩家在赛道不同部分的发挥情况。
本功能开发中,使用不便且可能有bug。
图片展示
图1:场地示例。图中绿、红、蓝分别表示检测点、起点线(其下为玻璃阻拦板)、终点线。所有彩色方块仅用于标记,实际并不存在。
图2:一次比赛的示例。
图3:全服记录功能展示。
图4:在水中浸泡后对原版自动下船机制的阻断。
图5:船被攻击时的保护机制。
下载
更新日志:
- 2023/1/16 修改了默认配置文件中的错误
 
请勿将本插件用于盈利。
代码可随意使用,没有在其他网站发布,可随意反编译,相当于开源。
本插件所用所有代码均为原创,不存在借用/抄袭等行为。
1.16.5报错
可以发几个地图吗,懒得搭
非常不错的插件,很喜欢支持者作者
挺好的在租赁服的时候我就用命令方块写冰船系统
eerr992 发表于 2023-1-15 18:11
可以发几个地图吗,懒得搭
论坛有噢(多逛逛
很好的插件,如果能配合优质的赛道就好了
哈哈哈 很棒的插件,感谢你为mc赛车运动做出的贡献(滑稽