您当前的位置:首页 > 传三技术

王者传奇三插件42魔法详细脚本命令

本文出处:网游动力作者:本站发布时间:2008-10-22阅读次数:
//////////////////////////////////////////////////////////////////////
actcmd:
//////////////////////////////////////////////////////////////////////

Mov D0 100
INC D8 5
Dec  D8 1
Mul      //Mul P1 P2 1   //结果P9中,第3个参数=1则影响自定义变量的值 如果使用自定义变量  Mul 测试 %P2 1 
Mul P1 P2  //Div P1 P2 //结果P9中   如果使用自定义变量  Div 测试 %P2 1 
Movr D0 100
Addstr A2 ")"
RUNSCRIPTLABEL [ALL|GUILD|GROUP|PLAYERNAME] "@_CALLBACK"   //标签为 [@~~*] 模式则忽略NPC位置~~可以任意地点调用
MOVETOPLAYER 角色名   //移动到角色
MOVETONPC NPC名       //移动到NPC名
DELFILE               //删除文件
SETPROJOB             //设置PRO职业
SETPROLVL             //设置PRO等级
SETPROEXP             //设置PRO经验
SETSTORAGEPASSOK      //设置仓库密码
ITEMNAMEPREFIX 位置 名字 //系统名字前缀
CHANGELVL + 100          //等级 + 100
CHANGEPK + 100           //PK值 + 100
SETSUPERCHANGE + 100     //设置超级修改  + 100
SETTEMPJF + 100          //设置积分  + 100
SETSERVEREXPMULTIPLE     //设置服务器经验倍数
CHECKCARDPASS            //核对人物密码


SETSTFLAG 1 AAAA BBBB    
//设置 BBBB 的ST状态为1 ST名字为 AAAA   
//SETSTFLAG 1 CCCC  //设置自己的ST状态为1 ST名字为CCCC
    //0 没有拜师也没有收徒弟
    //1 师傅 是师傅                   //师傅
    //2 徒弟 是徒弟                   //徒弟
    //3 徒弟 是被逐出师门
    //4 师傅 徒弟已经出师
    //5 师傅 是 背叛师门
    //6 师傅 徒弟已经达到出师等级,暂时还没出师     //师傅
    //7 徒弟 自己已到出师等级,暂时还不出师         //徒弟
    //8 师傅 徒弟选择不出师 但师傅不在线 没有获得奖励    //师傅
    //9 师傅 达到出师等级继续保留的徒弟 决定脱离关系
    //10徒弟 保留的师徒关系被师傅解除了并且自己未在线

SUBCARD
SETUSERJF + 100 吃经验 用户名
SETFAME + 100
EDITITEM [FLD_DESC1~FLD_DESCB] +-= 100 makeidx
ADDMAGIC 魔法名 5

GIVEEXPEX  50000      //给经验
KICKUSER              //踢出用户
ATTRIBUTEADD [CLEAR]|DC|SC|MC|MAC|MP|AC|AM1~7|HP 100   //属性增加
SETDOUBLEEXP + 1000                                    //设置双倍经验时间                   
STARTDOUBLEEXP 100                                     //开始双倍经验
SETLOCK                                                //设置锁定
SETUNLOCK                                              //解开锁定
TAKEITEMBYIDX 1234                                     //删除物品IDX号
GIVEEX AAA 1                                           //给坐标
CHANGEMAGLVL AAA 1 2                                   //修改魔法等级
GIVEGOLDEX 1000                                        //增加金币
RESETSERVERTOP 10   //刷新服务器排行榜前10名,结合后面 %*** 使用
SETPOINT + 100          //设置转生加点次数
ACCEPTREBORNBONUS [CLEAR]|DC|SC|MC|MAC|MP|AC|AM1~7|HP 100
ENLOADVALUE P9 ".A.INI" "设置,测试,默认值"          //只能用自定义变量
ENSAVEVALUE P9 ".A.INI" "设置,测试,默认值"          //只能用自定义变量

FormatStr "where fld_username = '%s'" %Username
FormatStr "where fld_time = %s" %D0
READSQL "表名" "字段名,字段名2" "自定义变量1,自定义变量2"  %A9 //读取插件数据库的字段数据 默认用户名


FormatStr "%s,%s,%s" FLD_CHARACTER,字段名1,字段名2        //最多3个变量
MOV A7 %A9
FormatStr "'%s',%s,%s" %Username,字段名1值,字段名2值        //最多3个变量
MOV A8 %A9
FormatStr " where FLD_CHARACTER='%s' " %Username
WRITESQL "表名" %A7 %A8 %A9         //写入数据库的字段数据 默认用户名

//初始化数据库
FormatStr "where FLD_CHARACTER = '%s'" %Username
WRITESQL "表名" "FLD_CHARACTER" %Username %A9


TAKEBONUSEX [CLEAR]|[INC]|DC|SC|MC|MAC|MP|AC|AM1~7|HP 100   //设置转生属性

ADDEIMEMOLOG "aaaaaaaaaaaaaaaa"           //增加EI记录
SENDUSERSAY "@允许悄悄话"
//////////////////////////////////////////////////////////////////////
checkcmd:
//////////////////////////////////////////////////////////////////////
mov
Equal    //支持自定义常量  Equal USERSTNAME "AAAAA"    等于
Large    //支持自定义常量  大
Small    //支持自定义常量  小
Elarge   //支持自定义常量  更大
Esmall   //支持自定义常量  更小
Inc
Dec
Checkbonus
CHECKMAPFLAG ksnomove 名字(为空则脚本执行者所在地图) 名字类型 (0: 玩家名  1:NPC名  2:地图名字  3:地图编号)
//////////////
CHECKMAPFLAG MAPGOURP 5    //P9
CHECKMAPFLAG NPARAM1 5    //P9
CHECKMAPFLAG SPARAM1 "AAAAAAAAA"    //A9
//////////////
CHECKUSERJF 100 用户名         //检测用户是否有积分
CHECKITEMINFO 参数1  参数2(参数2指明参数1的类型 -> 0:身上位置 1:包裹内物品名字  2:包裹内物品ID  3: 身上装备名字)
CHECKTEMPJF 100            //检测临时积分
CHECKCARDVALUE  100        //检测卡的数值
ISONLINE  用户名  参数2(参数2=1 在需要保证用户不在线的时候使用)  
CHECKWEIGHT  物品名            //返回剩余负重
CHECKBAGGAGEEX                 //返回已经占用的包裹数
CHECKSTORAGEPASSOK            //检测仓库密码
ISGROUPOWNER                 //返回队伍创建人的名字
CHECKFAME 100                //检测声望
FINDNPC NPC名               //查询NPC
GUILDMEMBER  [S|T|行会名|空]   //行会成员
CHECKITEMPRICE 金创药 0       //是否可以喝药
CHECKREBORNBONUS           //检查转生加点次数 setpoint  //p1-p8  Dc mc sc hp mp ac mac AddPoint
CHECKALLOWST 玩家名       //检查角色是否允许拜师
ISDUOEXP //组队经验
ISTESTSERVER  //测试服务器
CHECKSTFLAG 1 AAA BBB  
//检查 BBB 的ST状态是否为1,ST名字是否为AAA  
//CHECKSTFLAG 1 AAA   检查自己的ST状态是否为1,ST名字是否为AAA  

CHECKITEMCOUNT 物品名   //该物品数量返回到P9里

//////////////////////////////////////////////////////////////////////
DynamicValues
//////////////////////////////////////////////////////////////////////
%USERJF   //用户积分
%USERFAME  //用户声望
%USERPK    //用户PK值
%USERCARDVAL  //用户卡的值
%USERSTFLAG   //记录地图坐标
%USERSTNAME   //记录ST名字
%USERMAPNAME  //用户地图名字
%USERSPOUSENAME   //用户配偶名字
%USERPROJOB       //用户PRO职业
%USERPROLVL        //用户PRO等级
%USERPROEXP        //用户PRO经验
%USERMAPGOURP    //用户地图GOURP
%USERREBORNCOUNT       //转生次数
%USERADDBONUSCOUNT  //大善加点次数
%CURWEEK          //距离开服多少星期
%CURDAY            //距离开服多少天
%CURHOUR        //距离开服多少小时
%STARTSVRMINUTE   //服务器启动多少分钟
%STARTGAMEMINUTE   //玩家进入游戏多少分钟


%FLD_NAME          //通过  CHECKITEMINFO  来确定物品
%FLD_STDMODE     //S物品TD模式
%FLD_SHAPE     //物品形状
%FLD_UPLVLTYPE   //物品升级类型
%FLD_PRICE      //物品价格
%FLD_DESC*    //0 -- 13  R G B
%FLD_NAMEPREFIX  //物品名字代码
%FLD_MAKEINDEX    //生产物品代码号

//在 RESETSERVERTOP 10 后可以获得相应排名的角色相关信息

%WARLVLTOPNAME1       //等级第1武士的名字  %WARLVLTOPNAME10  等级第10武士的名字
%WIZLVLTOPNAME1       //等级第1法师的名字  %WIZLVLTOPNAME10  等级第10法师的名字
%TAOLVLTOPNAME1        //等级第1道士的名字 %TAOLVLTOPNAME10  等级第10道士的名字
%ALLLVLTOPNAME1        //等级第1的名字     %ALLLVLTOPNAME10  等级第10的名字  


%WARLVLTOPLVL1       //等级第1武士的等级  %WARLVLTOPLVL10  等级第10武士的等级
%WIZLVLTOPLVL1       //
%TAOLVLTOPLVL1
%ALLLVLTOPLVL1


%WARLVLTOPEXP1       //等级第1武士的当前经验  %WARLVLTOPLVL10  等级第10武士的当前经验
%WIZLVLTOPEXP1
%TAOLVLTOPEXP1
%ALLLVLTOPEXP1


%WARLVLTOPZS1       //等级第1武士的转身等级  %WARLVLTOPLVL10  等级第10武士的转身等级
%WIZLVLTOPZS1
%TAOLVLTOPZS1
%ALLLVLTOPZS1


%ALLLVLTOPJOB1       //所有人排名 第 1 名的职业


%ZSTOPNAME1         //转身等级第1的名字
%ZSTOPLVL1         //转身等级第1的等级
%ZSTOPEXP1         //转身等级第1的当前经验
%ZSTOPJOB1         //转身等级第1的职业


%FAMETOPNAME1     //声望第1的名字
%FAMETOPVALUE1    //声望第1的声望值

//////////////////////////////////////////////////////////////////////
地图标签:
//////////////////////////////////////////////////////////////////////
KSNOMOVE      //师徒令 天地合一 结婚戒指 魔法
KSNOMOVEEX    //行会召唤 地牢逃脱卷 随机  回城 行会回城卷  师徒令 天地合一 手足合一 结婚戒指  魔法 移动
KSNOEXEC      //禁止死亡触发 @_USERDIE
DISKWZJ       //禁止卡位自救
KSNOIMMU      //不准喝无敌
MAPGOURP(1002) //地图分组
KSATT(1.2)    //攻击翻倍   
KSEXP(1.5)    //经验翻倍
KSADDDC(1.7)  //增加破坏
KSADDAC(0.8)  //增加防御
KSADDMAC(0.9) //增加魔御  都是给怪物的能力

NPARAM1(*)  //一个数字型的参数
NPARAM2(*)
NPARAM3(*)

SPARAM1("*") //一个字符型的参数
SPARAM2("*")
SPARAM3("*")


//////////////////////////////////////////////////////////////////////
00DEF标签:
//////////////////////////////////////////////////////////////////////
@_ONHOURCHANGE     //小时改变
@_ONDAYCHANGE      //天改变
@_ONWEEKCHANGE     //周改变

@_ONUSERHOURCHANGE   //用户小时改变
@_ONUSERDAYCHANGE    //用户天改变
@_ONUSERWEEKCHANGE   //用户周改变

@_UPLVLEVENT     //升级触发


@_ONREADBOOK(%s)
//(魔法名)
//P9=魔法ID
//执行完后如果 P0=0 就是吃书失败,返回原来的MAGID就吃书成功


//////////////////////////////////////////////////////////////////////
物品数据库:
//////////////////////////////////////////////////////////////////////
免疫药水:
持续时间 DC+ DC2*255 
间隔时间 MC+ MC2*255

师徒令修改为 stdmode=0
间隔时间 MC+ MC2*255


//stdmode = 0   shape=2  makeword(ac,ac2)=+血   dc=每250毫秒+血量   makeword(mac,mac2)=+蓝 * 20  dc2=每250毫秒+蓝量
//修改其他 stdmode = 0   shape=2 的物品的属性


怪物数据库增加
Fame AddDc AddMc AddAc AddMac SHRatio SHValue  //增强怪物


///
//251  死亡必爆物品
//SQL 注入过滤
//@_USERDIE
武器超17级
//设置特殊物品刷新时间
//天地合一限制

限制不能用毒毒死人
//修正夫妻互飞重叠
超大毒
超大符

//摆摊
//人物锁
//杀怪物获得声望
need=
244: //非土成员不能穿戴
245: //非沙成员不能穿戴

243: //非沙老大不能穿戴
242: //非土老大不能穿戴


NOREVIVAL   //不能复活

!!吃药
!!修炼魔法
!!ADDMAGIC
!!RUNSCR


可加密文件

StrRes.txt
MiniMap.txt
MapInfo.txt
MonAIs.txt
MonItems*.txt
MonAi_Def*.txt
MonGen.txt
MapQuest.txt
LineNotice.txt
Merchant.txt
GuardList.txt
StartPoint.txt


马的属性
AC 负重
Dc    攻击 上限
DcMax  自然 上限
Mc     灵魂 上限
McMAX  回血速度 



@_ONREADBOOK(%s,%s)
//(魔法名,物品名)  addmagic 魔法名 1  take 物品名
//P9=魔法ID
//执行完后如果 P9=0 就不继续执行吃书,如果 P9=原来的魔法ID就继续执行吃书!
//吃书处去掉所有魔法排斥检查

                nTemp:=FieldByName('FurbishHpMp').AsInteger; //恢复
                Item.wFurbishHpRatio:=HiWord(nTemp) ;  //恢复 HP 率   6553  19991999 //Random(65535)<=pStdItem.wFurbishHpRatio
                Item.wFurbishMpRatio:=LoWord(nTemp);  //恢复 MP 率    6553           //Random(65535)<=pStdItem.wFurbishHpRatio

                nTemp:=FieldByName('SuperHit').AsInteger;  //爆击
                Item.wSuperHitRatio:=HiWord(nTemp);    //爆击几率   6553   1999    Random(65535) <= pStdItem.wSuperHitRatio
                Item.btSuperHitValueMin:=HiByte(LoWord(nTemp)); //爆击倍率 2 0203  Min+random(max-min)
                Item.btSuperHitValueMax:=LoByte(LoWord(nTemp)); //爆击倍率 3

                nTemp:=FieldByName('SuperPoison').AsInteger;//爆毒
                Item.wSuperPoisonRatio:=HiWord(nTemp); //爆毒几率   6553   1999 191A   Random(65535) <= pStdItem.wSuperPoisonRatio
                Item.btSuperPoisonValueMin:=HiByte(LoWord(nTemp)); //爆击倍率 25  Min+random(max-min) 191A
                Item.btSuperPoisonValueMax:=LoByte(LoWord(nTemp)); //爆击倍率 26

!!带上某装备可以从攻击力回血(有几率)   //Random(65535)<=Ratio   //FurbishHpMp=makelong(MpRatio,HpRatio)

!!爆击(1:几率   2:爆击攻击倍率)   //Random(65535)<=Ratio  Min+random(max-min)   //SuperHit=makelong(makeword(ValueMax,ValueMin),HitRatio)

!!爆毒(1:几率   2:爆击攻击倍率)   //Random(65535)<=Ratio  Min+random(max-min)   //SuperPoison=makelong(makeword(ValueMax,ValueMin),PoisonRatio)

!!金刚套装加防减攻  //229 228 227 226 225新金刚套装   //maxax=(mindc+maxdc)*2;  mindc,maxdc=mindc/3,maxdc/3 攻击下限=攻击下限/3  攻击上限=攻击上限/3         防御上限=自身防御+攻击力*2

武器升级 17 级后升附加属性  

积分买卖系统

!!守财奴的戒指    //224  守财奴的戒指  Anicount 1 为 * (Anicount/10)10 表示1倍金币  25表示 2.5倍


武器升级 17 级后升附加属性 
//


积分买卖系统
//数据库  BuyBackJf 
//@jfbuy(0)  (0 武器  1 衣服  2 帽子  3 项链  4  手镯  5  戒指  6 鞋子  7  杂物)
//@jfsell
//物品保存路径  .MarketJfGoodsJfGood_*.dat


!!1。怪物数量物品  
// (数据库) LogKillCount=1  记录一共被杀了多少个
//.EnvirKillMonLogAllKillMonLog.ini    记录怪物总共被杀的个数
//.EnvirKillMonLogAllKillMonLog.ini    记录怪物每天被杀的个数
//爆率文件设置   -5/6  MonKillCount>(5+random(6)) 则爆出    

!!2。积分兑换卷  //EnvirParamControlEI内部参数.ini   DropItemName=要爆的物品名   DropItemCount=还有多少个要爆  EndDropItemDatetime=爆到什么时候结束

!!4。指定时间指定怪物 指定角色爆     //.EnvirMonitemsSetMonItem.ini [@ADDMONITEMS 时间(2007-05-06@12:12:20) 物品名 怪物名(nil='') 角色名(nil='')]  @RELOADADDMONITEMS

        //SETPKMODE 1 0
        //参数1=1设置成PK竞技模式(可以在NOSPELL的地图内使用魔法,而且只能攻击该模式的玩家)   0取消PK竞技模式
        //同时设置成执行该命令的NPC所在地图为挑战地图
        //参数2=0  为允许吃药   =1 为禁止吃药

@_ONDELGUILDMEMBER
//ARG(1) = 退出行会的角色的名字
//沙 土行会触发 执行完后如果 P9=0 就正常退出行会,否则就退出失败


@_ONGUILDMAKEALLY
//ARG(1) = 对方名字
//ARG(2) = 对方行会名
//沙 土行会触发 执行完后如果 P9=0 就正常结盟,否则就结盟失败