LiteLDev / LeviScript

The next generation NodeJs engine for LeviLamina
18 stars 1 forks source link

[Proposal]: GameTest Extension #37

Open Redbeanw44602 opened 5 months ago

Redbeanw44602 commented 5 months ago

该方案仍在讨论中,不做任何保证,任何内容可能随时被修改。

简介

我们正在为 LeviScript 项目规划新的发展路线,一个可能的方案是将其作为Minecraft GameTest(简称GT)框架的拓展组件。

GT框架目前完成度已非常高且设计良好,相比从0开始设计LeviScript,基于GT框架可以带来诸多好处——如更高的可靠性与更短的开发周期,以及与行为包生态契合等。

关于 LLSE

LLSE(即 Liteloader Script Engine,LegacySE)基于ScriptX,为不同的脚本语言提供了一致、丰富的API,得益于此LLSE建立了插件数量可观的社区生态。但引擎本身仍存在一些问题,如在开发调试、补全库、文档、乃至游戏内容的支持方面相比 GT 均有所欠缺。

要为 GT 拓展什么?

由于基于 GT,LLSE 本身的缺憾已被消除。但 GT 也并非完美无瑕,LeviScript 需要做的是将 LLSE 的优势引入 GT,以达到最佳。

I. APIs

Research: GT 引擎内容注册

(待补充)

II. Backend

Research: 脚本引擎抽象层

相关链接

LLSE文档 GameTest文档

XiaoXiaoYang233 commented 5 months ago

但是用gametest不就没有跨版本兼容性了嘛

Redbeanw44602 commented 5 months ago

但是用gametest不就没有跨版本兼容性了嘛

啥玩意,为什么

XiaoXiaoYang233 commented 5 months ago

但是用gametest不就没有跨版本兼容性了嘛

啥玩意,为什么

之前玩的一个小游戏服就是用gt做的,每个次要版本更新都需要适配一下,否则无法使用,现在原作者已经跑路了

不适配遇到的问题包括但不限于gui无法打开,各种游戏异常等

例如说gui无法打开,那可能api改了什么的,但是好几个小版本都是这样,难道一直在改什么的?

Redbeanw44602 commented 5 months ago

但是用gametest不就没有跨版本兼容性了嘛

啥玩意,为什么

之前玩的一个小游戏服就是用gt做的,每个次要版本更新都需要适配一下,否则无法使用,现在原作者已经跑路了

不适配遇到的问题包括但不限于gui无法打开,各种游戏异常等

例如说gui无法打开,那可能api改了什么的,但是好几个小版本都是这样,难道一直在改什么的?

这是因为gt还在experimental,接口不稳定,不是说gt就一定跨版本不兼容😅