Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

有关trapdoor-ll后续更新的说明 #127

Open
hhhxiao opened this issue Feb 5, 2024 · 2 comments
Open

有关trapdoor-ll后续更新的说明 #127

hhhxiao opened this issue Feb 5, 2024 · 2 comments

Comments

@hhhxiao
Copy link
Collaborator

hhhxiao commented Feb 5, 2024

由于ll2 到 ll3(LeviLamina)的变化过大,导致迁移成本和重构的工作量较大,因此短期内很难完成,加之主要开发者的一些个人原因,适配和新版本更新工作更加举步维艰。因此,新版本的适配很难说有一个确定的时间,直接停更也不是不可能。如果有想pr或者fork下来自己维护的,我这里可以提供一些适配的思路:

  • 从Cmake向Xmake迁移,可以从LeviLamina官方的模板中提取模Xmake.lua文件,复制到根目录下,然后修改源文件部分把tr的所有文件包括第三方库等加进去,模板中的RenameThis.cpp中的ll_plugin_load等几个导出函数需要复制到tr里面参与编译,tr的dllmain.cpp可以根据需要删除
  • 修改所有的头文件,将原版的<mc/xxx.hpp>全部修改为<mc/xxx/xxx/xxx/xxx.h>,有一些新版消失的类如BlockInstance等需要根据新的事件API重构
  • 由于LeviLamina重写了指令注册系统,因此tr所有的指令全部需要重写和注册,可以参考旧版进行迁移,对外接口直接调用即可
  • HOOK和SYMCALL的格式也可能发生变化,不过这部分应该变化不多
  • 其他一些善后工作
@superwfox
Copy link

🌹

@VKLID
Copy link

VKLID commented May 31, 2024

爷青结

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants