找回密码
 成为主人

QQ登录

只需一步,快速开始

查看: 9307|回复: 2

写攻击BUFF脚本的很棒的参考

[复制链接]

201

主题

181

回帖

1973

积分

管理员

积分
1973
发表于 2019-1-22 23:31:28 | 显示全部楼层 |阅读模式
写BUFF脚本,其实很简单。万变不离其中,只需要会一条,自己都可以参照着改
关键字:
1.[@attack]   攻击触发
2.[@magicattack]  魔法攻击触发
3.[@struck] 被攻击触发
4.[@magicstruck] 被魔法攻击触发
5.MOV       变量赋值
6.INC        变量相加
7.DEC       变量相减
8.DIV        变量整除
9.MUL       变量相乘
9.MOVR    变量A到B之间随机值
10.<$str(变量)>  变量显示为值
11.HumanHP       -      +             加血或者减血(自身)   P.XXX  M.XXX为多级脚本 为目标减血或加血
12.引擎说明书搜变量→脚本变量大全    用于实现BUFF的功能
13.CHECKCURRTARGETRACE  这个用于是否对人触发 对怪触发
14.以后待补充

↓↓====================↓↓↓=脚本的实现↓↓↓=====================↓↓
先想好自己要写什么BUFF,BUFF写多了没什么有创意的了。。。

例1:现在单职业用的最多的BUFF
【攻击怪物50%几率秒掉怪物最大生命值20%血量】
思路:
1.攻击
2.几率
3.最大生命值20%
4.是否对人触发,对怪触发?

然后开始写
[@attack]
#if
checkitemw  装备 1   
检测是否佩戴此装备
not  CHECKCURRTARGETRACE = 0    对人不触发
random  2        Random  1为1/1   2为1/2  3为 1/3   理论上来说。这里也可以用变量MOVR   large small来控制几率,偷懒不做介绍
#act
MOV N1  <$ATTACKMONSTER_MAXHP>    赋值N1为怪物最大血量
DIV N1 100  N1除以100
MUL N1 20    N1乘以20
(计算一下N1这时候的值是多少了?)
假设怪物最大血量8000   8000*0.2=1600
N1/100*20    8000/100=80    80*20=1600
M.humanHP -  <$str(N1)>   怪物血量减的值为N1
SendCenterMsg  168 255   装备XX的BUFF触发,怪物瞬间掉血20%伤害值为 <$str(N1)>!!   发送的信息文字
sendmsg  6  装备XX的BUFF触发,怪物瞬间掉血20%伤害值为 <$str(N1)>!!          发送的信息文字(聊天框的)


↓↓====================↓↓↓=脚本的实现↓↓↓=====================↓↓
例2:
几率对目标造成250%额外伤害
思路
1.攻击 或者 魔法攻击
2.本次攻击造成的伤害变量  <$PKPOWER>人物的对攻击目标的伤害输出值
3.是否对人也触发



[@attack]
#if
checkitemw 装备 1
random XX
#act
mov N1 <$PKPOWER>
MUL N1 100   变量不支持小数点只支持整数,所以需要计算
DIV N1 40      如果额外伤害为300%,则直接MUL N1 3即可
M.humanHP -  <$str(N1)>   怪物血量减的值为N1
SendCenterMsg  168 255   装备XX的BUFF触发,对目标造成250%额外伤害。伤害值为 <$str(N1)>!!   发送的信息文字
sendmsg  6  装备XX的BUFF触发,对目标造成250%额外伤害。伤害值为 <$str(N1)>!!          发送的信息文字(聊天框的)

↓↓====================↓↓↓=脚本的实现↓↓↓=====================↓↓
以下不做解释,看不懂的多分析上面的思路
例3:
攻击怪物会使怪物中剧毒,每秒损失3%最大生命值,效果持续5秒
#IF
checkitemw 装备 1
random XX
#ACT
MOV N1 <$ATTACKMONSTER_maxHP>
DIV N1 100
MUL N1 3
M.MAKEPOSION 1 5 <$STR(N1)>
SendCenterMsg  XXXXXXXXXXXX
sendmsg 6  XXXXXXXXXXXXXX
例3:
全屏火焰,全屏冰霜,全屏龙卷风?攻击怪物使7*7范围内敌人受到最大生命值20%的伤害
#if
random 20
#act
MOV N31 <$ATTACKMONSTER_MAXHP>
DIV N31 100
MUL N31 20
AreaDamage <$X> <$y> 7 <$STR(N31)> 2 4 【这里需要配合插件我用的只如初见】
PLAYEFFECT 14 3591 42 1 50
SendCenterMsg 253 0 暗影:天色突然变暗,暗雨降临给予大范围敌人20%固定伤害.! 0 5
break这里有个问题就是周围怪物掉血的血量是按你所攻击的怪物血量算的

回复

使用道具 举报

201

主题

181

回帖

1973

积分

管理员

积分
1973
 楼主| 发表于 2019-1-24 02:10:19 | 显示全部楼层
NPC命令增加石化或冰冻 中毒效果 蛛网效果 禁锢 吸血

命令格式:
ChangeState 效果 时间



[@Test]
#IF
#ACT
ChangeState 3 30
#SAY
你被蜘蛛网罩了,30秒内无法跑步.

[@Test1]
#IF
#ACT
H.ChangeState 3 30
#SAY
你的英雄被蜘蛛网罩了,30秒内无法跑步.

效果代码:1.石化 2.冰冻 3.蛛网效果 4.红毒 5.绿毒 6.定身 7.瘫痪 8.禁锢 9.防禁锢 10.吸血 11.吸蓝

//8 禁锢(释放一个类似困魔咒的光圈,敌对人物或怪物只能在这个圈子里移动,无法走出圈子外面,所有传送失效,不能小退)
//9 防禁锢
//10 吸血
//11 吸蓝

例子:

#ACT
CHANGESTATE 8 10 3
SENDMSG 6 你被禁锢10秒,禁锢期间可移动范围3X3

CHANGESTATE 9 10
SENDMSG 6 10秒内可以防禁锢

CHANGESTATE 10 10 100 50
SENDMSG 6 10秒内攻击目标,可以吸血,吸血机率100(数字越大机率越高 100表示每次都会吸血),吸血百分比50%(比如攻击伤害值是10000,50%的吸血比例,可以吸血5000)

CHANGESTATE 11 10 100 50
SENDMSG 6 10秒内攻击目标,可以吸蓝,吸蓝机率100(数字越大机率越高 100表示每次都会吸蓝),吸蓝百分比50%(比如攻击伤害值是10000,50%的吸蓝比例,可以吸蓝5000)


#########################以下为2016-11-08扩展#########################
当效果为1-5时,参数3表示是否检查对应的防止属性(0:不检查;1:检查)
当效果为8时,参数3表示范围
当效果为10-11时,参数3表示吸血、吸蓝成功几率(%), 参数4表示吸血吸蓝比例(%)
例子:

#ACT
CHANGESTATE 1 10 1
SENDMSG 6 麻痹时间有效时间10秒,注意:佩戴防御麻痹的人物有几率躲过麻痹!

#ACT
CHANGESTATE 5 10 1
SENDMSG 6 绿毒时间10秒,注意:佩戴有防毒属性的装备按照几率躲避毒物!

#ACT
CHANGESTATE 2 10 0
SENDMSG 6 冰冻时间10秒,无视佩戴有防冰冻属性角色!

##################################################




状态说明

6、定身 无法跑动、走动,可以攻击、施法
7、瘫痪 无法攻击、施法、跑动、走动,被攻击立即解除瘫痪状态

注意:以上所有状态支持通过重置时间为0来解除状态,比如:

changestate 1 10 ;麻痹10秒
changestate 1 0 ;解除麻痹


备注:此命令支持多级脚本!
回复

使用道具 举报

201

主题

181

回帖

1973

积分

管理员

积分
1973
 楼主| 发表于 2020-2-27 13:45:46 | 显示全部楼层
#if
random 200
NOT CHECKCURRTARGETRACE = 0
checkitemw 世界最强·黑刀夜
NOT CHECKTEXTLIST ..\QuestDiary\不触发怪物.txt <$CURRRTARGETNAME>
#act
M.AddHpPer - 10
#if
random 200
NOT CHECKCURRTARGETRACE = 0
checkitemw 世界最强·黑刀夜
NOT CHECKTEXTLIST ..\QuestDiary\不触发怪物.txt <$CURRRTARGETNAME>
#act
M.AddHpPer - 10
SendCenterMsg 70 0 世界最强·黑刀夜BUFF触发,直接打掉怪物10%的血量. 0 10
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 成为主人

本版积分规则

QQ|Archiver|手机版|小黑屋|无语西风——公益传奇 ( 豫ICP备14021580号 )

GMT+8, 2024-12-22 11:49 , Processed in 0.029737 second(s), 9 queries , MemCache On.

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表