ArcartX-Fabric-1.21.4

免费 ArcartX-Fabric-1.21.4 2.5.36

没有下载权限
修复所有已知bug
优化残影效果
增加相机吸附
重写全息渲染逻辑
修复所有已知bug
修复所有已知bug
修复所有已知bug
修复所有已知bug
修复所有已知bug
  • 本次迭代版本号更新至2.2.0,其中含部分API破坏性更新
  • 本次更新用Aria替代了Shimmer,如果出现行为和之前不一致,请第一时间提交错误
  • 本次更新后,ArcartX本体将专注于维护(视市场竞争环境增加内容
  • 7.3 - 7.18将保持一段时间的高强度修复,但是这期间不处理任何“建议”类型反馈
  1. 更换底层至Blink,支持1.21.11/26.1/26.1.2/26.2
  2. 移除Glimmer,改为Aria,部分过时API移除,部分拼写错误API纠正[破坏]
  3. 修复网络信道校验恒为真
  4. 修复SQLite 连接空指针
  5. 修复MySQL 连接池参数重复赋值
  6. 修复事件构造函数空指针
  7. 修复网络消息 ID 非原子
  8. 修复ArcartXSender 缓存未命中时不存储
  9. 修复客户端包空安全
  10. 修复PlaceholderContext NPE
  11. 修复分片消息内存泄漏
  12. 修复恶意包可致 OOM 崩服
  13. 修复分片缓存无上限
  14. 加密升级服务端与客户端 Mod 须同步升级,新旧不兼容
  15. CPackConnection 解密后对客户端 message/code/resource 增加输入边界校验,防御畸形/超大数据 DoS
  16. 修复 ItemStack.hasLore 永远返回 false
  17. 修复副本世界区域索引失效
  18. 修复命令参数转换失败静默返回 0 继续执行
  19. 修复核心缓存用普通 HashMap 跨线程读写(实体/UI/代理/编辑器/控制器缓存 → ConcurrentHashMap)
  20. 修复 onDisable 不取消调度任务(Folia 下泄漏)→ 任务登记 + cancelAll()
  21. 修复事件取消失效
  22. 修复槽位数据库读写阻塞主线程:异步 JDBC + 主线程序列化;玩家缓存并发化;SQLite 共享连接加锁
  23. 修复 ScriptManager 共享脚本引擎跨线程并发
  24. 修复脚本 setHealth 无范围校验
  25. 修复槽位数据序列化的无效单引号手动转义(写入已 PreparedStatement 参数化,读取端反转义会损坏含特殊字符的 NBT)
  26. 修复 config 数字字段类型不符时抛晦涩 ClassCastException
  27. 修复配置 reload 的 clear()+重建非原子
  28. 修复命令校验失败 return false 触发 Bukkit 再打一遍 usage
  29. 修复多处空 catch 吞异常
  30. 修复 sendException 丢失来源上下文
  31. 修复命令注册失败只打 message 丢堆栈
  32. 修复 MythicMobs 生成事件重复创建实体
  33. NMS 桥接 lazy(NONE) 改为线程安全默认 lazy(跨线程访问)
  34. 简化 onPlayerMove 双重否定判断;去除冗余 !! 断言(SPackConnection、ScriptManager)
  35. 弃用类 internal.command / internal.config 迁移至 commons[破坏]
  36. 解散 internal 包:网络协议层 / 语言 / 消息子系统升为顶层包,与核心模块平级,消除包命名上的层级倒置[破坏]
  37. 封包接口拆分:ServerPacket(纯数据)/ ClientPacket(带处理逻辑)
  38. ArcartXAPI 暴露的可变集合改为只读视图
  39. 18 个 MythicMobs 机制类代码优化
  40. MythicMobs 机制注册的一长串 when 改为表模式
  41. EntityMovement 的 dash 系列抽出公共 helper
  42. sendPacketSync/Async 抽出 buildAndSend 去重
  43. MessageID 增加启动期重复 ID 自检
  44. WorldTextureBuilder 七个雷同方法收敛为单一 addAnimation + 枚举[破坏]
  45. 22 个配置 *Folder 收敛(基类工厂参数)
  46. 统一调度封装到 AsteroidScheduler,移除重复的 SchedulerUtils
  47. 命令可选参数在帮助文本中渲染为 [..]
  48. 部分面向用户的硬编码中文(踢出消息、配置迁移、HTTP/API 异常)接入语言系统
  49. 统一日志渠道到 sendException
  50. 通用语言管理器解耦具体语言枚举
  51. InteractionProxyManager 接入 ArcartXAPI 主入口
  52. HikariCP 配置增加 prepStmtCacheSize/prepStmtCacheSqlLimit/useServerPrepStmts
  53. 补充 KDoc(事件取参契约、setModel 重载、Sound/Effect 的 Java 调用约定、createProxy 延迟差异、配置迁移)
  54. 增加1.20.4 Forge支持
  55. 增加1.21.4 NeoForge支持
  56. 增加1.21.8 NeoForge支持
  57. 增加1.21.11 NeoForge支持
  58. 移除1.21 Forge支持
  59. 修复深层嵌套界面(如滚动列表里再放卡片、裁剪容器)中,内容会画出边界、裁剪区域错位的问题。
  60. 修复在使用多层 Boss 血条时,可能导致游戏崩溃、或让后续界面元素显示异常的问题。
  61. 修复界面卡顿或频繁刷新时,点击偶尔会落到错误的控件(点到刚刚消失或移动过的元素)上的问题,现在点击响应更准确。
  62. 修复关闭菜单、退出存档或断开服务器后,部分界面与 HUD 仍在后台残留、反复重连后越积越多导致卡顿的问题;退出世界/断线时现在会彻底清理所有界面与 HUD。
  63. 修复包含模型展示的界面在列表频繁刷新时,模型资源持续累积占用内存的问题。
  64. 修复滚动条、可拖拽控件通过脚本设置位置时偶尔跳位或不准确的问题。
  65. 修复在文本框中拖动选择文字时,按下右键或中键会意外打断选择的问题。
  66. 修复当菜单与 HUD 使用了相同 ID 时,服务器下发的脚本会被重复执行两次的问题。
  67. 修复观察者(Observer)控件指向滚动容器内元素时,会导致整个界面同步中断的问题。
  68. 修复只配置了定时任务、但没有配置模板时,定时器不生效的问题。
  69. 修复 HUD 分层渲染中,脚本取消单独某一层不生效、或反而把其余层一起取消的问题。
  70. 大幅优化界面渲染性能,显著降低运行时的内存占用与卡顿,控件数量多、界面复杂时更流畅、掉帧更少。
  71. 进度条与 Boss 血条的渲染更稳定,避免特效在个别情况下的闪烁或串用。
  72. 修复并发重载竞态
  73. 修复资源更新失败丢数据
  74. 修复命中缓存丢弃新资源 GPU 泄漏
  75. 修复下载串行
  76. 修复文字图标渲染异常
  77. 修复1.21.8 Background
  78. 修复1.21.11 Background
  79. 修复1.21.8 物品url渲染错误
  80. 修复1.21.11 物品url渲染错误
  81. 如果使用ax去替换实体/挂载特效,请不要使用LibsDisguises相关的任何内容
  82. 修复全息gif错乱
  83. 优化相机转向手感
  84. 相机对远程类型(如法杖等)增加弹道修正
  85. 修复全息血条匹配失败
  86. 全息血条val增加uid
  87. 修复1.21.8+带序列帧模型加载失败
  88. 修复1.21.8+物品渲染上下文错误
  89. 修复1.21.8+物品不同环境下偏移错位
  90. 修复1.21.11方块渲染上下文错误
  91. 修复过度剔除
  92. 修复死亡动画导致的客户端崩溃
  93. 修复ChatBox的getContent无法使用
  94. 调低文字最小阈值(限制这个是因为SDF渲染本身限制,如果太小文字是整个看不清的,虽然用原版也看不清)
  95. 修复mm投掷物注册首次无法加载
  96. 优化超大模型加载时的主线程占用
  97. 修复UIgetSameCount语句无效
  98. 修复1.21.8+由于延迟渲染导致的tip物品无法获取任何信息 该bug只涉及axUI
  99. 修复getlore颜色代码被剔除
  100. 修复UI文字深度导致的渲染问题
  101. 修复1.21.8+UI剪裁问题
  102. 修复itemeffect和原版tip深度的问题
  103. 修复某空实现导致的报错问题
  104. 增加Packet.clickSlot语句,用于纯点击物品槽位点击事件,且不会真的拿起物品,适用于替换菜单按钮
  105. 修复UI频繁打开概率卡死
  106. 基岩粒子mm语句增加允许以坐标为目标
  107. 修复1.21.1/1.21.4基岩粒子错位
  108. 增加playSound语句
  109. 修复模型基岩粒子帧remvoe为true却无法在结束时候删除
  110. 修复实体模型对应实体死亡基岩粒子没被清理
  111. 增加飞行状态同步
  112. 修复进出状态本地脚本start如果没有状态不触发
  113. 修复本地限流导致的状态机手感减弱
  114. 状态机增加增加sleep状态
  115. 修复状态机walk状态包含本地条件
  116. 增加网格模型的支持
  117. 增加内置玩家渲染器,启用功能后即开启 玩家动作、自定义护甲贴图、时装(关闭后这些功能将无效)
  118. 增加自定义护甲贴图
  119. 增加护甲绑定时装模型
  120. 增加玩家动作
  121. 增加模型镜头帧
  122. 增加模型GPU渲染路径,模型渲染目前为双路径,开启光影时,回退至多层CPU剔除优化,关闭后走高性能GPU路径(只对实体、玩家生效)
  123. 模型增加残影帧
  124. Mod端使用Aria替代Shimmer

更新​

  1. 优化UI历史遗留问题
  2. 修复gif迭代后忘了实现默认接口了
  3. 修复1.21.4部分显示问题
  4. 增加文字预加载配置
  5. 扩大文字预加载范围减少异步加载的闪烁感
  6. 增加全局字体替换开关,关闭后原版界面无法使用ax增加的特殊格式
  7. 修复文字变暗问题
  8. 修复文字基线
  9. 修复文字大小
  10. 修复图形渲染过度内收
  11. 修复某个神秘因素导致1.20.1无法启动
  12. 修复世界文字渲染深度问题
  13. 修复tips会有1帧抽象渲染
  14. 修复手机端文字渲染
  15. 修复新版模型步帧的解析
  16. 修复对bbmodel molang帧的解析
  17. 修复对molang查询动画时间的步幅
  18. 修复新版布局卡片消息排列问题
  19. mm配置项增加拓展 Width Height ProxyWidth ProxyHeight
  20. 所有ax mm语句增加占位符支持
  21. 增加1.20.1forge版与史诗战斗mod的兼容性
  22. 修复覆盖颜色渲染
  23. 增加1.21.8 1.21.11NMS支持
  24. 增加客户端1.21.8 1.21.11支持

请注意,本次更新涉及重构较多,虽然已经经过内部测试确保更新版本基本稳定,生产环境可能仍存在一些小问题。我们会在近期进行及时进行小型版本更新​

此版本后,本体近期应当不再添加重大更新,转为维护稳定以及更多版本支持。

本次更新聚焦:​

* 更加完善的UI图形功能,增加多种内置特效、形状​

* 更加完善且高性能的粒子​

* 大幅提高模型帧率​

* 大幅提高动画控制表达​

* 全新文字渲染引擎,替换全局文字,增加多种文字特效(原版可用)​

更新​

  1. 修复mixin兼容问题
  2. 加快本地资源访问速度
  3. 修复和mm 5.11+版本冲突
  4. MODEL控件增加属性
  5. mythicmobs/key_words.yml迁移至link/mythicmobs_key_words.yml(如有老版配置自动迁移)
  6. 增加单件时装穿戴类型API
  7. 修复文字控件部分渲染问题
  8. 修复纹理控件部分渲染问题
  9. 修复模特控件不过渲染问题
  10. 修复模型控件内存溢出风险
  11. 优化网络通讯结构减少占用
  12. 优化区域进入退出判断算法
  13. 优化多轨控制器混合逻辑*
  14. 优化大角度旋转复位逻辑*
  15. 实体渲染器增加对鞘翅渲染的支持
  16. 增加了一些molang语句用于模型动画*
  17. 移除了对于head骨骼的被动旋转,如需根据玩家实际头朝向渲染,可使用molang
  18. 独立化玩家默认控制器(本次修改针对于不需要ac的生存服)*
  19. 优化实体渲染器算法
  20. 增加默认骨骼玩家模型渲染器第一人称手部渲染*
  21. 增加模型链接,可将其它模型的动作导入指定模型
  22. 完全重写客户端控制器(这包含了配置的改动,大体结构没有改变,但仍需进行手动修改迁移,做这个决定时确实进行了长时间的考虑,但老版本控制器是我几年前写的屎山,且设计上确有不足,我进攻了半天被屎埋住差点憋死,新版控制器减少了大部分内存占用以及多余查询和判断,并移除了手写判断条件,因为从始至终这玩意都是在判断玩家客户端的判断,压根没必要手写,且新版状态判断完全基于代码而非脚本,可获得更快的速度体验和更少的内存占用)
  23. 移除本体控制器配置文件夹,改为仅API可注册客户端控制器
  24. 客户端控制器加入禁止方向改变
  25. 迁移克洛诺斯大部分glimmer语句至本体
  26. 加入getPlaceholder glimmmer语句
  27. 加入sendUIPacket glimmer语句
  28. 加入dashAdvanced glimmer语句
  29. 修复方块放置空气时的报错
  30. 客户端itemstack对象增加toJson方法
  31. 修复UI报错导致崩溃
  32. 修复全息血条匹配错误
  33. setKeyBindingKeyName语句最后一位参数改为按键名(原参数是数字ID)
  34. 加入getKeyBindingKey语句,和之前已有语句的区别是,比如左ctrl 之前的语句返回的是 ‘左ctrl’ <- 这会根据客户端语言文件变化 而getKeyBindingKey返回的是mc的键位ID:key.keyboard.left.control
  35. keyPress函数参数优化,允许传入mc键位id 例如 key.xxx 也允许传入ax键位id,例如 G
  36. 修复步动画的bbmodel转换解析
  37. 修复平滑帧运算公式错误
  38. 兼容不同版本UI背景渲染写法
  39. 为预备高版本兼容,模型渲染模块进行大量重构,且对性能进行了些许提升
  40. 加入对neoforge ui的jei支持
  41. 加入对neoforge的shader支持
  42. 出于某些原因,1.21Forge版本似乎被很多mod遗弃了,AX并不打算兼容OPF系列的光影mod,所以在此版本如果使用光影可能对渲染造成未知影响
  43. 模型渲染进行再次重构优化,模型渲染效率约提升至160%(视硬件配置有所浮动)对于地图类型建模,使用多重优化,命中优化时帧率提升至约300%(视硬件配置有所浮动)
  44. 基岩粒子系统完全重构:
    1. 停止独立维护:原独立发布的「BedrockParticle」mod(基于LGPLv3协议)即日起不再维护。
    2. 全新实现,直接集成至ArcartX,新版粒子系统为完全重写,未使用、未引用、未衍生任何先前LGPLv3版本的代码,也未使用任何其他GPL许可的开源项目。
    3. 性能与特性:相较于旧版独立mod,帧率提升约1500%(视硬件配置有所浮动),同时新增了真正的定位器播放粒子功能。
  45. 文字渲染由AWT位图渲染改为SDF平滑渲染
  46. 文字排列算法大量优化
  47. 文字渲染增加动态流光效果
  48. 文字渲染增加描边效果
  49. 文字渲染增加RGB过渡渐变
  50. 加入全局文字替换,本次改动将使得任何文字相关mod与ArcartX冲突,并使任何地方的字体都可使用ArcartX的文字渲染格式,如图标、流光字等
  51. ui图形渲染新增支持圆形剪裁
  52. ui图形渲染新增支持圆角矩形剪裁
  53. ui图形渲染新增支持饼图剪裁
  54. ui纹理相关(不包括文字、实体等)支持浮点数的矩形剪裁,使进度条、血条、九宫格图片的剪裁效果更为稳定精准
  55. ui图形渲染增加流光滤镜
  56. ui图形渲染增加渐变滤镜
  57. ui图形渲染增加描边效果
  58. ui图形渲染增加阴影效果
  59. ui图形渲染增加霓虹效果
  60. ui图形渲染增加波纹点击效果
  61. ui图形渲染增加毛玻璃效果
  62. ui图形渲染增加霓虹呼吸效果
  63. ui图形渲染增加全息滤镜
  64. ui图形渲染增加能量滤镜
  65. ui运算层大幅重构,减少主线程类型转换次数,优化数据传递
  66. 控件增加属性radius
  67. 控件增加属性shape
  68. UI文字显示加入最小限制,文字会被限制在可视范围,而不是过小缩放导致看不清
  69. 移除对!&!的替换 改为将所有‘§k!’替换为‘§’ 通过此方法可以在聊天栏、物品名等位置使用ax文字渲染格式
  70. 增加基岩粒子相关API
  71. 定位器支持旋转
  72. 完全实现正确的模型定位器播放基岩粒子(已确认大量案例与编辑器行为一致)
  73. 为了未来模型增加更多功能,即将移除分体读取模型,未来将仅支持bbmodel格式,当前分体读取(即json+png多个文件读取)将保留一个中间版本作为过渡,并于下次中间版本迭代时完全移除。
  74. 修复物品模型定位器运算位置错误
  75. 移除所有模型伪LOD相关内容,新版渲染能耗已不需要拙略的伪LOD
  76. 增加方块靠近动画 默认为16格距离
  77. 增加第一人称物品动画
  78. 增加物品模型/第一人称动画模型定位器额外渲染
  79. 增加第一人称全功能camera控制:yaw pitch roll x y z fov.
  80. 修复平滑帧过渡为0失效的问题
  81. 客户端增加配置textshadow 关闭后所有文字不渲染阴影
  82. 客户端增加配置pixel_font 关闭后不对像素字体单独处理而是使用平滑处理
  83. 客户端增加preload列表,允许预加载本地资源,不走冷热数据。
  84. 还有很多我忘了是啥了,不过实际功能性变动应该都写在日志了

更新​

这次主要是为了把堆积的bug修复先放出来,新功能下个版本发
  1. 属性读取增加对CraneAttribute的兼容性
  2. 修复hud获取槽位物品语句
  3. 修复1.21.1neo隐藏hud失败
  4. 修复1.21.4fabric血量上限1024
  5. 修复1.21.1neo hud变暗
  6. 修复和史诗战斗的冲突
  7. 移除插件端对1.18.0nms的支持
  8. 修复补全对于回溯历史命令时的冲突
  9. 修复补全控件显示非当前选中值
  10. 修复neo版本隐藏selectedItemName失效
  11. 修复Shimmer获取护甲值失败
  12. 修复输入框控件持有焦点时,键盘输入仍向下传递
  13. 默认控制器attack damage过渡改为0
  14. 修复模型读取膨胀为负数时候未取绝对值导致渲染错误
  15. 增加更多实体NMS工具
  16. mm增加proxyAddSeat语句[文档待更新]
  17. mm增加proxyMountType语句[文档待更新]
  18. mm增加proxyMountSpeed语句[文档待更新]
  19. 通过以上三条可通过mm实现船 生物 车 飞行 潜艇坐骑功能
  20. 修复代理碰撞箱会被mm范围技能选中(注,该操作和mm&meg的处理方式类似,某种情况下,您需要对其它技能插件进行兼容)
  21. 优化自由相机下车辆类型操作体验(包括ax内置的自定义坐骑功能)
  22. 增加检测实体是否是代理实体的api(用于选择器兼容)
  23. 修复背景渲染异常
  24. 修复TIP下进度条渲染异常
  25. 修复进度条在过高尺寸缩放下仍可能因失去精度导致丢失部分像素
  26. 修复bbmodel v5通道修正错误
  27. 修复投影逆运算w值无限接近0时造成的不稳定问题
  28. 修复bbmodel块构建错误
  29. 支持bbmodel负尺寸渲染描边效果
  30. 模型渲染剔除内侧面优化能耗
  31. 模型支持uv旋转
  32. 修复面重叠导致变暗
  33. menuUI对象增加语句slotCount[文档待更新]
  34. chatbox对象增加send语句[文档待更新]
  35. 修复chatbox对象发送时若不关闭界面未清空内容
  36. chatview增加keep属性,为true时,内容持续渲染[文档待更新]
  37. 模型动画支持平滑帧
  38. menu hud control对象增加get函数 可通过索引获取对应控件[文档待更新]
  39. itemeffect增加befor属性,默认false 为true时渲染在物品之前[文档待更新]
  40. Texture控件增加loop属性,为false时将停止于最后一帧[文档待更新]
  41. Texture控件增加replay函数,用于重置gif图像动画[文档待更新]
  42. 优化text控件center渲染模式显示效果
  43. UI发包加入缓存,如果是未打开的UI接包,将临时缓存,该包将于UI打开后被处理,不过,预先发送的包无法访问控件数据,它触发于控件创建之前
  44. forge 1.20.1 增加对Shoulder Surfing Reloaded的兼容性,注,这需要关闭arcartx的自定义相机功能
  45. 修正uipacket mm词条文档[文档待更新]
  46. 文档设置槽位图标错误[文档待更新]
  47. kotlin编译版本回退至1.8.22
  48. slot增加hud类型的hovered的检测
  49. text控件增加alignment属性[文档待更新]
  50. 客户端日志调试输出调整
  51. 插件端增加语言文件
  52. 增加兼容中转API