Setup\VarDefine.txt

全局变量定义和绑定:


文件内容示例:

INT=X0-X200,Y0, 全服金币获取,全服金币消费,全服爆率

STR=Q0-Q7

USERBIND=TBL_USERVARTEST1| FLD_KILLMON:杀怪,  FLD_KILLTEXT:'内容' | FLD_CHARNAME:'USERNAME'          ;玩家类型,绑定2个自定义变量,条件使用UESRNAME

USERBIND=TBL_USERVARTEST2|FLD_INCASH:账号充值,FLD_OUTCASH:账号消费|FLD_USERID:'USERID'          ;玩家类型,绑定2个自定义变量,条件使用USERID

GLOBALBIND=TBL_GLOBALVARTEST1|FLD_GOLDGAIN:全服金币获取,FLD_GOLDTAKE:全服金币消费|FLD_BRADNAME:'新开分区'      ;全局类型,绑定2个全局变量,条件使用常量

GLOBALBIND=TBL_GLOBALVARTEST2|FLD_ALLDROP:全服爆率,FLD_ALLEXP:X5,FLD_Q2:'Q2'|FLD_IDX:1        ;全局类型,绑定2个全局变量,全局条件使用常量


全局变量说明:

      INT为整数类型的变量名称,STR字符类型

      整数类型最大数量300,字符最大数量128,字符长度不能超过64

      若与他内置变量名称相同,则以内置变量为准.

      定义全局变量名称应避免与正在使用的自定义变量相同

      示例中定义了X0-X200范围变量(含X200)201个+Y0+杀怪数量 共203个整数变量,Q0-Q7共8个字符类型变量

      当使用ReadSql读取字符类型全局变量时务必不要超过64个字符

      尽量避免多个玩家同时修改字符类型的全局变量

      其他操作与普通变量相同


变量绑定说明:

 格式: 格式为:绑定类型=数据库表名|字段:变量名,..|条件, 当变量名称在''内时表示此字段为字符类型,否则为int类型

          说明:

          1.绑定类型: 两种, USERBIND为玩家类型,GLOBALBIND为全局类型

          2.表名: 不同行可以使用相同的表,但是依然建议在同一个表的变量写到同一行

          3.变量绑定: 字段名:变量名, 玩家类型必须使用自定义变量, 全局类型必须使用全局变量,每个变量只允许被绑定一次.

          4:条件: 条件约束字段名:变量名, 变量可以使用内置变量和常量, 应使用不会变动的内置变量如USERNAME等

          5.示例1登录时获取绑定变量相当于执行脚本命令: READSQL "TBL_USERVARTEST1" "FLD_KILLMON,FLD_KILLTEXT" "杀怪,内容" "WHREE FLD_CHARNAME = 'XXXX'" ,自行设计表和字段,或者在已有表(如TBL_QUEST)添加字段

 注意:     

       1.全局变量在服务器启动时将会自动读取,玩家变量在玩家登录时将会自动读取,无需操作数据库

       2.变量根据玩家的存档时间保存/服务器关闭/离线时自动保存,当GS崩溃时由GSM保存

       3.应尽量减少字符串类型的变量绑定,以提高性能

       4.当变量与数据库绑定后,不应再ReadSql否则可能读取到的是还未更新的数据       

       5.当使用脚本命令插入新行(如WRITEVALUESQL)包含绑定变量的字段时,注意应手动给绑定变量赋初始值

       6.绑定的字段名不应以数字开头,也不应有特殊符号,会产生一些复杂的问题