石器技术教程

在LINUX系统下安装Lua的扩展库LuaSocket

 在石器时代里让LUA脚本直接访问http并获取网页的内容,通过获取网页内容可以写出全自动获取各种比赛结果等的LUA。只是嫌麻烦懒得写,先把安装方法记录一下,百度一下,安装方法随处可见。一、下载、安装1.1下载    文件名:luasocket-2.0.2.tar.gz     ...

用ABLUA给石器增加货币

 石器里用LUA来写增加货币的GM命令非常方便,虽说老的GM命令里也有,但用LUA来写却可以增加各种货币,就不需要在服务端源码里添加了。代码如下:function addpoint(charaindex, data)--货币类型,对应pointname里的货币名称local type = other.getString(da...

石器sa_8001.exe的HOOK技术

 在很多反汇编里都会用到HOOK技术,在石器时代里,早期没有源码的情况下,大神们便利用HOOK技术对石器的登陆器sa_8001.exe进行HOOK来达到增加新功能和新外观,最具有代表性的就是32色下运行和分离补丁。对于石器的HOOK,通常是在sa_8001.exe加载一个DLL文件,这个DLL文件就是HOOK这个sa_8001.exe里的函数所用到的文件。 下面大致说下,其...

用LUA设置石器服务端CF文件的命令

在石器里修改配置文件一般是修改好setup.cf后再丢到服务器gmsv文件夹下后使用重读命令[gmreloadlua]这里使用ablua写的gm命令,来实现针对setup.cf中某一项进行修改代码如下:function config(charaindex, data)--这个服务端ablua里自带的接口,是针对setup.cf里的配置内容进行修改--data这个参...

石器LUA脚本NPC重叠事件讲解

今天给大家讲解的是石器时代里LUA中的重叠事件,顾名思义,就是当玩家和NPC碰触重叠了产生的事件。在重叠事件里,一般是用作于和NPC对战或者得到/丢失某个道具等。下面我将以两组LUA脚本代码讲述重叠事件的效果。代码一:--NPC重叠事件(NPC索引, 玩家索引)function Overlap(meindex, toindex)--怪物队列数组设置战斗的宠物...

石器服务端NPC循环事件Loop讲解

 在石器时代LUA以往的教学里,循环事件我都是利用了NetLoopFunction来讲解案例等,NetLoopFunction是针对全局来循环,咱们可以理解为整个石器时代游戏系统的循环,他不需要任何索引进行循环,但有个不便之处就是这个内置的循环是按照分钟来进行计算。也就是每分钟才执行一次,但有时候我们需要精确到秒的时候,比如咱们需要一个按秒倒计时的功能,这个NetLoopFunctio...

让石器的LUA支持中文变量名的第二方法

大部分石器时代的代码里都采用的LUA5.1,并不支持中文的变量,我们通过修改LUA代码可以实现中文变量名,在我的老端里早已修改成中文变量也把接口追加了中文名,中文是为了方便记忆(毕竟英文单词太长又是大小写就很难记的嘛,哈哈)很早之前已经讲过让LUA支持中文变量名的方法,这里把第一种重新说明下,下面会教大家第二种方法。修改代码如下:方法一:找到llex.c文件,打开后,大概在420-432行进行...

石器时代人物创建失败的原因

在新手架设石器时代SF进入游戏后在创建人物会出现创建人物失败,这里给讲一下会有哪些原因出现的失败。1、人物名字使用了服务端禁止的特殊符号,文字,字母等。2、文件夹没有写入权限,当文件夹没有写入权限的时候,人物数据文件创建失败,自然人物创建也失败了。3、出生点的地图或者坐标不存在。暂时想到的原因就这些,如果想到或者遇到了继续补上去。...

石器时代LUA抗性代码

在石器SF里可以查看人物的抗性但没有宠物抗性,所以我们就来写一个人物和宠物抗性的查询NPC。下面我直接贴全套代码:function Talked(meindex, talkerindex , szMes, color )if npc.isFaceToFace(meindex, talkerindex) ...

adrn.bin 二进制解释

每张图片头信息占80个字节  2进制打开总共有20个参数00000010000000000000000000000000 0000000000000000 0000000000000000 0000100100000110000000000000000000001100000000000000000000000000 ...