精易论坛

标题: 分享一下最近学习的TL**部分Lua源码 [打印本页]

作者: 待一季花开    时间: 2022-5-26 20:04
标题: 分享一下最近学习的TL**部分Lua源码
之前一直搞不明白TL的lua是如何实现取返回值的,在论坛也搜索了很多资料,但也没有搜到实质性的东西。发了很多求助的帖子,因为不太明白所以听着也比较糊涂,不过好在最后是研究出来了。在这里还要先感谢一下论坛中几位大神在汇编上的指导!因为我也是小白,所以我觉得这源码比较适合小白研究一下,高手请勿喷。


源码内用到的基础命令连模块一起都上传了,还有一部分Hook出来的游戏内部zc好的函数命令。源码直接编译就可以。
**************************************************************************************************************************************
下面说一下用法:
   首先需要用特征码搜索一下lua的jz,特征码已接写在内了,可以直接用特征码工具搜索或者自行写特征码定位自动获取。
   搜索到jz后填入,然后进行初始化就可以了。(注意一下源码内lua文件的路径)。
   这里我把脚本函数进行了二次封装,也就是用了两个lua进行,可以理解为一个是自己的lua,一个是游戏的lua,后面不想这样用也可以只用游戏的lua,自行修改。
  **************************************************************************************************************************************
压缩文件内我还放了不同版本的lua.dll文件,想用其他版本需要自行修改源码内DLL函数的库文件名和命令名,命令名可以用DLL函数查看工具去查看一下。
最后奉上源码!!
开源文件.zip (868.04 KB, 下载次数: 210)









作者: yuan71058    时间: 2022-5-26 20:55
好东西,非常感谢
作者: ﹎z°    时间: 2022-5-26 21:41
这个东西好。
作者: 154251406    时间: 2022-5-27 02:37
支持开源
作者: xjshuaishuai    时间: 2022-5-27 07:35
谢谢分享!
作者: wjswzj0    时间: 2022-5-27 09:20
谢谢分享!
作者: xj1314520    时间: 2022-5-27 10:06
支持一下。。。。。。。。
作者: 深圳梦    时间: 2022-5-27 17:06
支持开源~!感谢分享
作者: 胖虎O    时间: 2022-5-27 20:03
看看,感谢了
作者: 78226800    时间: 2022-5-27 20:45
谢谢分享
作者: fyh505099    时间: 2022-5-27 22:59
感谢分享 看看学习一下
作者: gaoqing    时间: 2022-5-29 19:58
谢谢分享
作者: zjbdsg    时间: 2022-5-30 05:57
感谢感谢感谢感谢
作者: Esma001    时间: 2022-5-31 00:01

谢谢分享!
作者: zgdtianya    时间: 2022-5-31 16:27
楼主大大感谢
作者: xiaoxbin    时间: 2022-6-2 02:08
首先需要用特征码搜索一下lua的jz,特征码已接写在内了,
这个jz 是指的那个地址?还是指哪个函数地址?  内置1-6都用CE测试 没一个能搜到的
天龙经典 3.68.6068版本
作者: 待一季花开    时间: 2022-6-2 08:17
xiaoxbin 发表于 2022-6-2 02:08
首先需要用特征码搜索一下lua的jz,特征码已接写在内了,
这个jz 是指的那个地址?还是指哪个函数地址?   ...

特征码是怀旧版的
作者: 待一季花开    时间: 2022-6-2 08:28
xiaoxbin 发表于 2022-6-2 02:08
首先需要用特征码搜索一下lua的jz,特征码已接写在内了,
这个jz 是指的那个地址?还是指哪个函数地址?   ...

LUAjz,,jz,8B0D????????8B01FF503C57FF30FF15????????83C408837DE400,2,1

经典版用这个,我这里说的jz是指获取Lua指针的偏移,可以看下源码里汇编的原型
作者: xiaoxbin    时间: 2022-6-2 10:00
待一季花开 发表于 2022-6-2 08:28
LUAjz,,jz,8B0D????????8B01FF503C57FF30FF15????????83C408837DE400,2,1

经典版用这个,我这里说的jz是 ...

大哥这个JZ 是不是值 是不是指的  lua_dostring   再游戏模块里调用的函数地址? 我用特征码工具搜,8B01FF503C57FF30FF15????????83C408837DE400搜出来2个地址,00F0776A,00F077E6 注入后初始化就奔溃了
作者: 待一季花开    时间: 2022-6-2 11:23
xiaoxbin 发表于 2022-6-2 10:00
大哥这个JZ 是不是值 是不是指的  lua_dostring   再游戏模块里调用的函数地址?我用特征码工具搜,8B01F ...

不是lua_dostring调用地址,是取 L指针用的偏移,源码里封装的Game_Lua_Asm,看汇编代码的原型,有个 mov ecx,dword ptr ds:[0x723D90]  ,特征码是搜这个的
作者: xiaoxbin    时间: 2022-6-4 11:08
待一季花开 发表于 2022-6-2 08:28
LUAjz,,jz,8B0D????????8B01FF503C57FF30FF15????????83C408837DE400,2,1

经典版用这个,我这里说的jz是 ...

你这个特征码 搜JZ还是没搞懂,我用任何函数的第一个参数用作lua指针写个dll,调用你源码里的各种call 可以,直接输入你的就不行
作者: 待一季花开    时间: 2022-6-4 20:02
xiaoxbin 发表于 2022-6-4 11:08
你这个特征码 搜JZ还是没搞懂,我用任何函数的第一个参数用作lua指针写个dll,调用你源码里的各种call 可 ...


特征码搜索出来就是B66A88,你自己能想办法搜出这个,再填上初始化就行了

作者: 梁庆昌℡    时间: 2022-6-5 00:45
感谢分享。最近也在学习这个
作者: zgdtianya    时间: 2022-6-11 21:46

作者: tsl0413    时间: 2022-6-15 05:29
开源精神必须支持~
作者: 五月海    时间: 2022-6-16 20:02
过来看看  辛苦了!!!!!
作者: fangweipeng    时间: 2022-7-25 14:12
这是可以把自己写的lua注入到游戏内吗???
作者: ly765893958    时间: 2022-10-29 22:31

楼主 问一下这个问题怎么处理  源码里我就填写了一下我自己定位到的基值  路径改成我自己的路径了 其余没做啥改动  初始化就报错  文件都是你发的压缩包里的
作者: hj54696339    时间: 2022-11-4 20:42
222222222222222222222222222222222222222222222222
作者: 文子    时间: 2024-4-5 02:08

作者: 553663260    时间: 2024-4-8 20:35
多谢大佬分享~~~~~~~学习了~~
作者: hzacwc1988    时间: 2024-5-11 21:57
开元必须支持。感谢奉献
作者: 陆苏    时间: 2025-6-21 20:22
支持!!!!!!!!!!!!!!!!!!!!!!!!!!!!
作者: 麦八    时间: 2025-6-21 20:32
        开源精神必须支持~




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4