战网中国

标题: 求一个槅门打安姐的脚本!! [打印本页]

作者: 匿名    时间: 2013-5-27 15:41
标题: 求一个槅门打安姐的脚本!!
RTRT不足三个字,先行谢过!
作者: 74521    时间: 2013-5-27 16:48
谢谢你回复我!!
作者: 74521    时间: 2013-5-28 13:49
呼叫大神!!!
作者: brucehero    时间: 2013-5-28 20:02
幫忙推版
作者: 肥猫啊    时间: 2013-5-29 10:24
攻击文件加个判断怪物距离,然后自动闪避的功能就行了。开荒早期和HC都很有用。
上了LAD早期没改之前,死的也很惨,早晨一堆都在城里,没钱出城了,草~!

基本格式:if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
          NTM_MoveTo(me.areaid, monster.x+10, monster.y+10);
这只向右下躲,后边按这个格式加上其他几个方向就行了。。。
作者: newjoe    时间: 2013-5-29 11:00
[quote=肥猫啊,8125]攻击文件加个判断怪物距离,然后自动闪避的功能就行了。开荒早期和HC都很有用。
上了LAD早期没改之前,死的也很惨,早晨一堆都在城里,没钱出城了,草~!

基本格式:if(GetDistance(me.x,me.y,monster.x,mon...[/quote] 貓兄啊 你說的判斷怪物距離及自動閃避功能要放在哪呢? 方不方便PO一下你的攻擊文件內容讓小弟學習學習 在此先謝了
作者: 74521    时间: 2013-5-29 12:02
我 60  打不过安姐,所以只能跑门外打他,所以有脚本的给我发一个吧,大神!!
作者: 肥猫啊    时间: 2013-5-29 16:22
[quote=newjoe,8128]貓兄啊 你說的判斷怪物距離及自動閃避功能要放在哪呢? 方不方便PO一下你的攻擊文件內容讓小弟學習學習 在此先謝了[/quote] 以女巫为例:
NTAttack.ntl文件内的function NTA_IsValidMonster(monster)找到if(me.classid == NTC_CHAR_CLASS_SORCERESS)然后如下插入:
if(me.classid == NTC_CHAR_CLASS_SORCERESS)
{
if(me.areaid != 131 && me.areaid != 132 && me.areaid != 124 && me.areaid != 25 && me.areaid != 121)
{
  if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
  {
    NTM_MoveTo(me.areaid, monster.x+10, monster.y+10);
  }
  if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
  {
    NTM_MoveTo(me.areaid, monster.x-10, monster.y+10);
  }
  if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
  {
    NTM_MoveTo(me.areaid, monster.x-10, monster.y-10);
  }
  if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
  {
    NTM_MoveTo(me.areaid, monster.x+10, monster.y-10);
  }
  if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
  {
    NTM_MoveTo(me.areaid, monster.x, monster.y+10);
  }
  if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
  {
    NTM_MoveTo(me.areaid, monster.x-10, monster.y);
  }
  if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
  {
    NTM_MoveTo(me.areaid, monster.x, monster.y-10);
  }
  if(GetDistance(me.x,me.y,monster.x,monster.y) < 5)
  {
    NTM_MoveTo(me.areaid, monster.x+10, monster.y);
  }
}
if(NTC_GetSkillLevel(53) > 10 && NTC_GetSkillLevel(64) > 10)
{
  if(NTA_GetResistance(monster, NTA_DAMAGE_LIGHTNING) > 80 && NTA_GetResistance(monster, NTA_DAMAGE_COLD) > 80)
  {
    return false;
  }
}
其中前半部分是8个方向的躲怪,去除了一些特殊地图:KP,杀BAAL等躲避并不好,其他地图都生效。
后半部分是我的女巫是冰电双修,遇到冰电免的躲开不打,格式给大家参考。

躲怪部分只是针对当前攻击怪的距离来躲闪。看着基本接近手动的样子,但手段过于原始。一直想搞个近身后判断怪的分布,自动找落脚点坐标的程序,但有能用的也就懒得再搞了。
作者: bchan    时间: 2013-5-29 23:48
沙发帮顶!
作者: newjoe    时间: 2013-5-30 09:46
[quote=肥猫啊,8183]以女巫为例:
NTAttack.ntl文件内的function NTA_IsValidMonster(monster)找到if(me.classid == NTC_CHAR_CLASS_SORCERESS)然后如下插入:
if(me.c...[/quote] 貓兄 不好意思 我又來打擾了 我的文件路徑如下 並沒有你所說的
if(me.classid == NTC_CHAR_CLASS_SORCERESS) <-這一行
該怎辦
PS 我的版本是3.3的

function NTA_IsValidMonster(monster)
{
        var _classid;

        if(monster.hp <= 0 || monster.mode == 0 || monster.mode == 12)
                return false;

        _classid = monster.classid;

        if(((_classid >= 110 && _classid <= 113) || _classid == 608) && monster.mode == 8) // ignore flying scavengers
                return false;

        if(_classid == 68 && monster.mode == 14) // ignore burrowing maggots
                return false;

        if(_classid >= 258 && _classid <= 263 && monster.mode == 14) // ignore submerged WaterWatchers
                return false;

        if(monster.GetState(53) || monster.GetState(96)) // Conversion, Revive
                return false;
        
        return true;
}
作者: 74521    时间: 2013-5-30 10:05
还是继续求一下吧,这个太高端,我弄点低端的就行啦!!
作者: 肥猫啊    时间: 2013-5-30 10:50
[quote=newjoe,8322]貓兄 不好意思 我又來打擾了 我的文件路徑如下 並沒有你所說的
if(me.classid == NTC_CHAR_CLASS_SORCERESS) <-這一行
該怎辦
PS 我的版本是3.3的

function NTA_Is...[/quote] 没有的话自己加上这段,任意位置,保险的话最前或最后吧。其实练的角色多了,这段语句会自己加N多类似的东西,以适应不同职业,不同玩法。每人都不一样,这也就是为什么别人的整个拿来往往不好用。先照猫画虎吧,等学会原理,慢慢自己再DIY。




欢迎光临 战网中国 (http://www.battlecn.net/) Powered by Discuz! X3.1