【教程】给技能添加区域限制

[复制链接]
查看747 | 回复1 | 2023-3-8 22:39:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 mjc1232009 于 2023-3-8 22:39 编辑

给技能添加区域限制的结果就是:这个技能只能在某个区域使用

我们以技能上古寒冰箭(代码:11)为例子,我们希望这个技能只能在贫瘠之地使用,那首先你要搞清楚贫瘠之地的区域ID。我们跑到贫瘠之地,然后在对话框输入 .gps  ,就会出现下图:
图片1.png
可以看到,贫瘠之地的ID17 17代表了整个贫瘠之地,如果你想这个技能只能在棘齿城或者贫瘠之地的三个绿洲或者北方城堡使用,那你要记住这些小的区域的ID,如上图,棘齿城的ID392,392只代表棘齿城)

第一步:用mydbceditor打开服务端data文件下下面的areagroup.dbc,如下图:
图片2.png
然后我们随便复制一列,取个不一样的名字,比如数字999999,接着在第2列、第3列、第4.....添加你刚才查询到的区域ID

我们希望技能11上古寒冰箭只能在贫瘠之地使用,那我们就在999999这一行的第2列添加上贫瘠之地的ID,也就是17。如果我希望这个技能能在贫瘠之地、石爪山脉和灰谷三块地图使用,那就再接着添加另外两块地图的ID
图片3.png

第二步:用mydbceditor打开服务端data文件下下面的spell.dbc,找到一想要修改的技能,可以看到第225列是0,也就是说这个技能在任何地方都可以施放。现在我们把第225列改成我们刚才自己创造的代码,比如999999
图片4.png
现在你的技能区域限制已经加好了。当然还需要打补丁才能正常工作。

添加区域buff
只有一步:用navicat链接数据库,然后打开spell_area这张表
图片5.png
然后点击左下方的+”,表示添加一列数据。
spell  不用说,就是技能ID
area 区域代码,我们可以在游戏里通过.gps的命令获得代码数值
quest_start  玩家需要在开始某任务的状态
quest_end  玩家需要在结束某任务的状态(quest_startquest_end 不可同时设置相同值)
aura_spell 如果设置了这个值,那么此值表示生效的附加条件
                    此值 < 0 (负值) 表示如果玩家身上有aura_spell这个效果,那么此行设置不会被激活
                    此值  > 0 (正值) 表示如果玩家身上没有aura_spell这个效果,那么此行设置不会被激活
racemask  种族类别,此列可对技能生效对应的种族,
                   如果仅对联盟生效,此列可设置成1101  1+4+8+64+1024
                   如果仅对部落生效,此列可设置成690  2+16+32+128+512
gender 性别类型,0=男性,1=女性,2=任意
autocast  当角色进入该区域时是否自动施放,0=不自动,1=自动(这个一般都要选择1
添加好之后记得点击左下方的勾号,表示确认修改。

例子:我在牛头人出生地莫高雷的三个水井处都添加了区域buff,玩家进入这三个水井就会自动获得buff,如下图:
图片6.png

再来看我的spell_area:
图片7.png
1列使这个区域的buff,叫做凯恩的庇护;第2列的398,397396分别代表3个水井。







您需要登录后才可以回帖 登录 | 立即注册

本版积分规则