hhlm 发表于 2013-5-26 14:46:56

传奇的一些老资料

random 随机(0,1,2,3..."数字") 注:后面还有详细解释..!
gender 测试性别(MAN"男")
daytime 测试一天的时段(SUNRAISE"日出"\\DAY"白天"\\SUNSET"日落"\\NIGHT"夜晚")
checklevel 测试级别(1,2,3..."数字")
checkjob 测试职业(Warrior"武士"\\Wizard"法师"\\Taoist"道士")注:有些M2里可以支持写上3种职业的汉字:武士.魔法师.道士
checkitew 测试物品(物品名称+数量)
checkitemw 测试物品(物品名称+数量\\"身上的项链"\\"身上的戒指")和上面的相同
checkgold 测试金钱(数字)
istakeitem 测试并给与(物品名称)
checkdura 测试纯度(矿+纯度值)
checkduraeva 测试纯度(肉+纯度值)以上两个无大区别
dayofweek 测试星期(sun\\mon\\tue\\wed\\thu\\fri\\sat)
hour 测试小时(数字)
min 测试分钟(数字)例如:hour 20(意思是:如果是20:00那么就...)
checkpkpoint 测试pk值(数字0白名\\1黄名\\2红名)
checkluckpoint 测试幸运值(数字)注:这里我也不知道具体有什么用..目前好象没有M2可以加幸运值
checkmonmap 测试地图怪物数
checkmonarea 测试注:这个不清楚
checkhum 测试地图人数(数字)例如:checkhum t138 5(意思是:如果t138这个地图有5个人那么就...)
checkbaggage 检查包袱(不接任何语句)
checknamelist 检查名单
equal 检查函数值(和check类似)例如:equal p0 1(意思是:检查函数p0的值是否是1)
mov 赋予函数值(和set类似,和equal配套使用)例如:mov p0 0(意思是:赋予函数p0以0的值)
↑注:后面还有详细解释..!
inc
dec
sum
movr
large 大于某函数值(例如:large p0 3 如果p0函数大于3,不包括3)
small 小于某函数值
set 设置函数值(例如:set 1 设置的值为1)
check 检查函数值(例如:check 1 检查函数的值是否是1)
reset 重新设置函数值(例如:reset 20)注:这个不清楚...还没研究过..似乎没用
setopen
setunit
resetunit
take 取走物品(例如:take 屠龙 1)
give 赠与物品(例如:give 屠龙 1)
takew 取走物品(和take有区别,takew可以取走身上装备的物品)
close 结束
mapmove 移动地图(例如:mapmove 0 634 612)
map 移动地图(不需要具体坐标.例如:map 0)
break 在#act下关闭对话框
timerecall 在规定时间内召回(timerecall 5 在5分钟之内召唤回原地图)
breaktimerecall
param1 地图代码
param2 坐标x
param3 坐标y
mongen 召唤怪物(mongen 怪物名称 数量 范围)
takecheckitem 收取checkitem过的物品(不加任何参数)注:没什么用
monclear 清空地图怪物(monclear 0 清空0地图上的所有怪物)
ExchangeMap 互换地图(ExchangeMap 地图代码)注:不知道是什么用
recallmap 把某地图的人召唤过来(recallMap 地图代码)
batchDelay 1
addbatch 2
batchmove 3 (此3个连用可以瞬移地图用于场)
playdice 注:这个可以用于场...执行命令就是扔出骰子...随机出1-6之间的一个数
addnamelist 增加名单
delnamelist 删除名单
goquest 开始探索
denquest 结束探索
goto 转向段落(goto @normal 转向[@normal]段落)
#if 条件语句(#if 如果...)
#act 结果语句(#act 那么...)
#elseact 结果语句(#elseact 否则...)
#say 结果语句(#say 接显示对话内容)
#elsesay 结果语句(#elsesay 接显示对话内容)






符号详解:
[] [@main]这样的段落可以被goto @main识别
\\ 语言的换行,太长的语言将被显示在对话框之外
<> 交谈选项例如<关 闭/@exit>,在传奇中显示为黄色可点选的"关闭"字样,也有goto 只含义
/ 分隔符,像上例中的分隔显示语言与脚本语言
; 注释符号,加在一行之首,那么这行文字将作为注释理解,不显示也不加入脚本语言编译

地图属性(mapinfo.txt中地图代码后的英文含义):
DAY 白天 白天,免蜡
dark 黑暗 黑暗区域需要蜡烛火把,就是没有免蜡时候的效果
MINE 矿区 可以挖矿的地图
SAFE 安全区 安全区不可PK
FIGHT 战斗区 战斗区域,允许PK
FIGHT3 行会战 战斗区域,用在行会战争地图中,战斗不掉东西,包括祈祷系列,可连续登陆三次
norandommove 随机无效 不能使用随机传送卷的地图
NOPOSITIONMOVE 传送无效 不能使用传送戒指的地图
NORECALL 记忆无效 不能被记忆一套召回的地图
NORECONNECT 重登出现在 掉线后跳出地图,重登出现在(地图代码)掉线后被传送到某地图
nodrug 任务 不能使用药的地图
needhole 需要洞口 需要一个洞才可以进去的地图,用于尸王殿和桃源之门
quiz 小考 小考
↑新的M2中有这样的作用:标上后地图全封穿人穿怪 New..!(新的M2支持的功能)
checkquest 询问地图(进入此地图会弹出对话框)CHECKQUEST(Q001)内容在[地图脚本_配置]文件夹中
needset_on 检查人物属性NEEDSET_ON(001)必须赋有001属性的人才可进入
needset_off 同上相反
[地图编号 地图名称 ] X经验倍数 经验地图倍数 New..!(新的M2支持的功能)

固定含义的语句(不能当作他用,可以在M2里修改这些命令):
@s_repair 特殊修理
@buy 购买东西
@sell 出售东西
@repair 普通修理
@makedrug 制作毒药
@prices 未解
@storage 保管物品
@getback 取回物品
@exit 关闭窗口
@upgradenow 升级武器
@getbackupgnow 取回武器
<$USERWEAPON> 你手中的武器
<$USERname> 你的姓名
<$OWNERGUILD> 沙巴克的占领行会
<$LORD> 沙巴克城主的名字
<$CASTLEGOLD> 沙巴克的总黄金
<$TODAYINCOME> 沙巴克今天的收入
<$CASTLEDOORSTATE>城门的状态

关于买卖NPC的属性设置的解释:
%100 这个百分比是表现了这里的物价,%100是原始物价,%150是1.5倍物价
+19 +20 +21 是项链店,所有项链可以在这里维修和交易
+22 +23 是戒指店,所有戒指可以在这里维修和交易
+24 +26 是手镯店,所有手镯可以在这里维修和交易
+3 +25 +30 是杂货店,所有杂货可以在这里维修和交易
+3 +4 是书店,所有图书可以在这里交易
+0 +42 是药店,所有药剂可以在这里交易
+10 +11 是衣服店,所有衣服可以在这里维修和交易
+15 是头盔店,所有头盔可以在这里维修和交易
+5 +6 +43 是兵器店,所有兵器可以在这里维修和交易
+1 +40 是肉店,所有肉可以在这里交易

新的M2命令:

NPC动作(#act)部分:
marry lvl (+)(-) 2 加或降2级
marry exp 加100万经验
marry data 加1次转生
marry 声望 (+)(-)50 加减声望50点,数字前不带符号为调整声望到50点,(1条命令不能超过50)
marry undata 取消转生()
marry pass 清仓库密码
marry 祈祷生效(祈祷失效,武器强度,武器准确,戒指攻击,衣服道术,等等......)
marry mob 鸡 7 给个7级宝宝
tellme XXXXXX 0 NPC发红字(悄悄话)给玩家 0红字1绿字2为蓝字
@@拜师 拜师
@@广播 自由广播 100万一次 注:这个脚本命令还有可能是@@Announcement
tellme XXXXXX 1 1 npc发白字,后面的1是几率 1/X
marry 双倍经验 脚本给双倍经验,但是不能控制时间
marry PK值 增加PK值。每次100点
marry 已复活 NPC加复活
marry 护身 NPC加护身
marry 麻痹 NPC加麻痹

NPC检测(#if)部分:
checkmarry 沙城主
checkmarry 行会掌门
checknamelist ..\\会员.txt 检测此玩家是否会员
checkjob 武士(魔法师,道士) 检测职业
checkmarry data 检测转生次数是否大于等于0 ,自然都能通过检测checkmarry data 2 检测转生次数是否大于等于2
checkmarry 5 检测玩家宝宝数是否小于等于5
checkmarry 结婚 检测玩家是否结婚或拜师了(最好辅以检测级别)
checkmarry 徒弟 检测玩家是否拜师了
checkmarry 声望 5 检测玩家声望是否大于等于5
checkitemw (,,,,,) 检测玩家身上是否有某种装备
CHECKMARRY IP 218.28.166.124 检测是否来自218.28.166.124这个IP
CHECKIP IP.txt 检测IP是否在IP.txt文件中
checkmarry 参加行会 检测某个玩家是否已加入行会
checkmarry 沙成员 检测沙成员
checkmarry 行会 行会名字 检测某个玩家是否已加入该行会
*********************************************************************

关于变量

说个小经验:你可以把变量,理解为一个特殊的盒子,这个盒子,每次只能装一个。不管是什么,仅仅能装一样。
这次装进来的,一定会把上次的“顶走” ,下次的,会把现在的“顶”走。

mov G3 1 给服务器G3变量为1
equal G3 1 检测服务器变量是否1
inc d1 1 给服务器d1变量加1
small (变量) (数值) ;测试变量是不是小于指定数值
large (变量) (数值) ;测试变量是不是大于指定数值
equal (变量) (数值) ;测试变量是不是等于指定数值
mov (变量) (数值) ;让变量等于指定数值
sum (变量A) (变量B) ;A+B 注意,如果还要家第3个数直接换行写sum (变量C)
注:关于SUM的详解
首先有MOV (变量X) 0 ;(变量X)清0
sum (变量A) (变量B) ;X=A+B
sum (变量C) ;X=X+C
movr (变量) (数值) ;随机把指定数值以下的数(正数)给变量
inc (变量) (数值) ;让变量自动加指定数值到变量
SET [条件数] 1 ;设置[条件数]触发
Check [条件数] 1 ;测试[条件数]触发与否 1(触发)


注意: check 不能用在 类的变量上 。忘记以前版本有人写 check 这样的变量然后发出来,害了很多人。


reset 7 意思是将从XXX开始的7个变量回复到原始值0

比如:reset 7 就是把600 601 602 603 604 605 606 607这7个变量赋值为0。

它等同与:set 0
set 0
set 0
set 0
set 0
set 0
set 0
最常见的是沙发工资的脚本:

[@sun]
#IF
check 0
#act
reset 7
set 1
give 金币 150000
give 金币 150000
#SAY
<星期天>嘻嘻!约会的好机会!这是今天的工资,还有购物补贴,你拿好了!
#ELSESAY
你好象今天已经领过了啊,怎么,还想再领?走开!不然我请<$LORD>将你逐出沙巴克。\


页: [1]
查看完整版本: 传奇的一些老资料