黃易群俠傳M脫機外掛應用程式黃易神行
7948
54

[分享] 刺客專用的seraph腳本(自動撿物)

plutuop 發表於 2009-11-14 15:57:39 | 只看該作者 回帖獎勵 |倒序瀏覽 |
#[HOTKEY]END
#SetArgsOnCompile
/*-------------------變數宣告-----------------------*/
dim sum=1,hp,hp1,hp2,hp4,hp11,hp12,hp13,mp,mp1,mp2,xp,pet,pet1,pet2,pmp2,IDname,can1,can2,winx0,winy0,winid,cons,N1,N2,N3,N4,huy,sumtime=0
dim RunNO1=0,Scope,MyPosX,MyPosY,PosXNo1,PosYNo1,ID,find,Mywx,Myhy,WinX,WinY,MapX,MapY,hp3,maptitle,exp1//加入(全局變量)
/*-------------------偵測視窗ID碼,遊戲座標-----------------------*/
function main
N3=GetConfigNumber("走路回範圍幾秒")
N4=GetConfigNumber("消滅幾隻怪檢查紀錄點")
S1=GetConfigNumber("掛機範圍")
GetActiveWindowSize(width, height)
GetActiveWindowID(ID)
IF RunNO1=0 then //初始化,自動紀錄範圍掛機位置
        GetActiveWindowID(ID)
        Print("視窗ID碼: 【 "& ID &"】")
  check()
  PosXNo1=MyPosX //自動紀錄PosXNo1=目前人物所在X座標;或是手動更改MyPosX指定掛機位置,ex:PosXNo1=200
  PosYNo1=MyPosY //同上,Y座標
        Scope=S1  ///////////////掛機範圍(自行設定,預設5)///////////////
  print("初始化:紀錄腳本開始的座標 【"& PosXNo1 & "," & PosYNo1 &"】")
  print("人物目前在【"& maptitle & "】 地圖")
  print("目前經驗直【"& exp1 &"】")
  print("掛機範圍【"& Scope &"】")
  Mywx=(width/2)
  Myhy=(height/2)
  print("人物視窗座標:【"& Mywx&","& Myhy &"】")
        RunNO1=1
     end if     
/*-------------------討伐書座標設定--------------------*/
  //物品欄有討伐書時(討伐書放在上面第一排第5格)
  
  WinX=770 //背包討伐書 X 座標
  
  WinY=361 //背包討伐書 Y 座標
  
//請利用原點座標抓取
/*----------------------------------------------------*/
SetInputMode(4)
GetActiveWindowXY(WinX0, WinY0)
/*-------------------技能,討伐計時器-----------------------*/
bufftime1=GetConfigNumber("施放輔助技能1間隔秒數")
bufftime2=GetConfigNumber("施放輔助技能2間隔秒數")
bufftime3=GetConfigNumber("施放輔助技能3間隔秒數")
bufftime4=GetConfigNumber("施放輔助技能4間隔秒數")
bufftime5=GetConfigNumber("施放輔助技能5間隔秒數")
bufftime6=GetConfigNumber("施放輔助技能6間隔秒數")
bufftime7=GetConfigNumber("施放輔助技能7間隔秒數")
SetTimer("skill1", bufftime1*1000, true)  //施放技能1,每10分鐘
SetTimer("skill2", bufftime2*1000, true)  //揓技技能2,每30分鐘
SetTimer("skill3", bufftime3*1000, true)  //揓技技能3,每30分鐘
SetTimer("skill4", bufftime4*1000, true)  //揓技技能4,每30分鐘
SetTimer("skill5", bufftime5*1000, true)  //揓技技能5,每30分鐘
SetTimer("skill6", bufftime6*1000, true)  //揓技技能6,每30分鐘
SetTimer("skill7", bufftime7*1000, true)  //揓技技能7,每30分鐘
while true
  GO()
wend
end function
/*-------------------自動攻擊,自動檢取-----------------------*/
function GO
n=GetConfigNumber("選怪模式")
N2=GetConfigNumber("討伐怪的數量")
KSP_ReadMemory(&H1C1027C,2,find)
//check2()     //討伐腳本
//check3()
if find=0 then
  ReturnScope() //超出掛機範圍,回掛機點
  KeyPress("`")
  choice(n) //選怪模式1:不搶怪  ;選怪模式2:只打指定怪+不搶怪
else
  while find>0
   choice(n) //選怪模式1:不搶怪  ;選怪模式2:只打指定怪+不搶怪
   KeyPress("1")
   wait(500)
  //KeyPress("4")
   check()    //邊打邊檢查hp、mp、寵hp
   KSP_ReadMemory(&H1C1027C,2,find)
  wend
  check()   //打完再檢查一下hp、mp、寵hp
  wait(10)
  //Punitive(N2) //討伐書  現在關閉 要用時請清除前面的[//]
  FindTreasure()        //找尋寶箱
  Wait(50)
  KeyPress("`")
  KeyPress("1")
  print("第" & sum &"隻怪–【" & IDname & "】 |討伐已擊殺:" & sum & "隻 | 需擊殺"&N2 &"隻怪")
  print("HP:" & hp2 & "%|MP:" & mp2 & "%|XP:" & xp & "|寵HP:" & pet2 & "%" &"|寵MP:" & pmp2 & "%" &"|補機HP:" & hp13 & "%")
  sum=sum+1
  sumtime=sumtime+1
  huy=N4
  print("殺【"& huy & "】隻怪物時,檢查範圍紀錄點,目前殺【" & sumtime & "】隻,倒數【" & huy-sumtime & "】隻")
  if sumtime >= huy then
   print("檢查範圍紀錄點")
   ReturnScope()//超出掛機範圍,回掛機點
   sumtime=0
  end if
  end if
end function
/*-------------------記憶體內存位置-----------------------*/
function Check  //檢查hp、mp、xp、寵血
nhp1=GetConfigNumber("人物HP小於%第一組補血")
hpkey1=GetConfigString("第一組補血鍵")

nhp2=GetConfigNumber("人物HP小於%第二組補血")
hpkey2=GetConfigString("第二組補血鍵")

nmp1=GetConfigNumber("人物MP小於%第一組補藍")
mpkey1=GetConfigString("第一組補藍鍵")

nmp2=GetConfigNumber("人物MP小於%第二組補藍")
mpkey2=GetConfigString("第二組補藍鍵")

pethp2=GetConfigNumber("寵物HP小於%補血")
pethpkey=GetConfigString("寵物補血鍵")

petmp2=GetConfigNumber("寵物MP小於%補藍")
petmpkey=GetConfigString("寵物補藍鍵")

nhp3=GetConfigNumber("人物HP小於%回城")
hpkey3=GetConfigString("人物回城鍵")

ResetMemBuffer()
KSP_ReadMemory(&H163A8A4,2,hp)
KSP_ReadMemory(&H163A8C0,2,hp1)
KSP_ReadMemory(&H163380C,2,hp11)
KSP_ReadMemory(&H1633814,2,hp12)
KSP_ReadMemory(&H163A8A8,2,mp)
KSP_ReadMemory(&H163A8C4,2,mp1)
KSP_ReadMemory(&H1A4F4B0,2,xp)
KSP_ReadMemory(&H1676E28,2,pet)
KSP_ReadMemory(&H1676E2C,2,pet1)
KSP_ReadMemory(&H1677FB8,2,pmp)
KSP_ReadMemory(&H1677FBC,2,pmp1)
KSP_ReadMemory(&H1C14EEC,5,20,IDname)
KSP_ReadMemory(&H163A86C,3,MyPosX)
KSP_ReadMemory(&H163A870,3,MyPosY)
KSP_ReadMemory(&H01C50A70,5,16,maptitle)
KSP_ReadMemory(&H163A8B4,2,exp1)
/*-------------------宣告-----------------------*/
MyPosX=int(MyPosX)
MyPosY=int(MyPosY)
hp3=int(hp/hp1*100)
hp4=int(hp/hp1*100)
hp2=int(hp/hp1*100)
mp2=int(mp/mp1*100)
hp13=int(hp11/hp12*100)
pet2=int(pet/pet1*100)
pmp2=int(pmp/pmp1*100)
/*-------------------自動輔助補血,魔-----------------------*/
if hp2<nhp1 then   //hp低於80%,按補血鍵
  KeyPress(hpkey1)
end if
if hp2<nhp2 then   //hp低於60%,執行第二補HP按鍵
  KeyPress(hpkey2)
end if
if mp2<nmp1 then  //mp低於50%,按補mp鍵
  KeyPress(mpkey1)
end if
if mp2<nmp2 then  //hp低於30%,執行第二補MP按鍵
  KeyPress(mpkey2)
end if
if pet2<pethp2 then //寵的血低於80%,按吃藥鍵
  KeyPress(pethpkey)//寵的魔低於80%,按吃藥鍵
end if
if pmp2<petmp2 then
  KeyPress(petmpkey)//寵的魔低於80%,按吃藥鍵
end if
if xp=1000 then //xp滿,自動放
  KeyPress("9")
end if
if hp3<nhp3 then   //hp低於35%,回城
  KeyPress(npkey3)
  wait(6000)
  print("血量低於"& hp3 & "%|嘗試回城")
end if
if hp4=0 then   //hp為 0 人物死亡
  print("血量歸"& hp4 & "%|人物已死亡")
end if
end function
/*-------------------自動使用技能-----------------------*/
function skill1  //技能1按鍵
buffkey1=GetConfigString("輔助技能1的按鍵")
KeyPress(buffkey1)
end function
function skill2  //技能2按鍵
buffkey2=GetConfigString("輔助技能2的按鍵")
KeyPress(buffkey2)
end function
function skill3  //技能3按鍵
buffkey3=GetConfigString("輔助技能3的按鍵")
KeyPress(buffkey3)
end function
function skill4  //技能4按鍵
buffkey4=GetConfigString("輔助技能4的按鍵")
KeyPress(buffkey4)
end function
function skill5  //技能5按鍵
buffkey5=GetConfigString("輔助技能5的按鍵")
KeyPress(buffkey5)
end function
function skill6  //技能6按鍵
buffkey6=GetConfigString("輔助技能6的按鍵")
KeyPress(buffkey6)
end function
function skill7  //技能7按鍵
buffkey7=GetConfigString("輔助技能7的按鍵")
KeyPress(buffkey7)
end function
/*-------------------自動討伐書接取-----------------------*/
//物品欄有討伐書時(討伐書放在上面第一排第5格)
//OOOO[O]←背包討伐書位置
//OOOOO
//OOOOO
//OOOOO
//OOOOO
function Punitive  //討伐書鍵
KSP_ReadMemory(&H1CDBB68,2,itemtab)
if sum>N2 then
  KeyPress("A")
  Wait(500)
  //討伐書原點坐標:
  //單擊鼠標右鍵
  MouseRightClick(WinX, WinY)
  Wait(200)
  //點擊確定代替 "RETURN"  減少游標跑到打字那裡,人物無法打怪
  //如你沒法點到 請自行抓點 否是改回舊的設定
  KeyPress("Esc")
  Wait(100)
  KeyPress("A")
  sum=0 //歸零,重新計算怪死亡數
  wait(1000)
  itemtab_A(0)
  check3()
end if
end function
/*-------------------選怪模式-----------------------*/
function choice(mode) //選怪模式1:不搶怪  ;選怪模式2:只打指定怪+不搶怪
can1=1
can2=1
if mode=1 then //模式1,不搶怪
  do
   can_hit()  //不搶怪
  loop until can1=0      
end if
if mode=2 then //模式2,只打指定怪+不搶怪
  do
   need_hit() //只打指定怪
   can_hit()  //不搶怪
  loop until can1=0 and can2=0
end if
end function
/*-------------------不搶怪-----------------------*/
function can_hit
KSP_ReadMemory(&H1C3DAE0,2,can1)
if can1>0 then
  KeyPress("`")
end if
end function
/*-------------------指定怪物設定-----------------------*/
function need_hit      
need=Array(10)
need[1]=GetConfigString("怪物指定列表1")
need[2]=GetConfigString("怪物指定列表2")
need[3]=GetConfigString("怪物指定列表3")
need[4]=GetConfigString("怪物指定列表4")
need[5]=GetConfigString("怪物指定列表5")
need[6]=GetConfigString("怪物指定列表6")
need[7]=GetConfigString("怪物指定列表7")
need[8]=GetConfigString("怪物指定列表8")
need[9]=GetConfigString("怪物指定列表9")
need[10]=GetConfigString("怪物指定列表10")
ResetMemBuffer()
KSP_ReadMemory(&H1C14EEC,5,20,need1)      
for i=1 to 10                  
  Pos = Instr(need1, need)
  if pos>0 then
   exit for
  end if
next
if pos=0 then
  KeyPress("`")
else
  can2=0
end if
end function
/*-------------------回到原掛點-----------------------*/
function ReturnScope
         if PosXNo1-MyPosX>Scope Or PosXNo1-MyPosX<-Scope Or PosYNo1-MyPosY>Scope Or PosYNo1-MyPosY<-Scope then
            Print("掛機範圍:"& Scope & "  已超出範圍:" & PosXNo1-MyPosX & "," & PosYNo1-MyPosY)
            if find>0 then //如果有目標,可能是打怪中,取消選取)
               KeyPress("Esc")
               Wait(500)
            end if
               Check_Tab(1)
               MouseLeftClick(MaptoPosX(PosXNo1), MaptoPosY(PosYNo1))
    Wait(N3*1000)
    Check_Tab(0)
end if
end function
/*-----------------檢查Tab----------------------*/
function Check_Tab(value)
        //調用方式Check_Tab(value) value=0 關閉 value=1 開啟
    KSP_ReadMemory(&H01C8FD10,2,chktab)
        while chktab<>value
                Keypress("Tab")
    Wait(400)
    KSP_ReadMemory(&H01C8FD10,2,chktab)
  wend
end function
/*-----------------地圖座標轉換視窗座標----------------------*/
//調用方式 MouseLeftClick(MaptoPosX(地圖座標X), MaptoPosY(地圖座標Y))
function MaptoPosX(MapX)
MaptoPosX=int(166+(MapX*1.56))
end function
function MaptoPosY(MapY)
    MaptoPosY=int(124+(MapY*1.56))
end function
#地圖座標轉視窗座標
/*-----------------寶箱搜尋----------------------*/
function FindTreasure
if find=0 then
  //找尋寶箱
  FOR x=412 TO 612 STEP 45
   FOR y=269 TO 469 STEP 45
    MouseRightClick(x,y,3)
   NEXT
  NEXT
  end if
end function
/*-----------------內存討伐----------------------*/
function check2  //討伐怪
book=&H09E85EA8   //每個人都不同,請自行尋找。
KSP_ReadMemory(book,2,cons)//選擇討伐怪類型 (這行是討伐怪數量所在的記憶體位址,但每個人會不同,重開遊戲後也會不同)
KSP_ReadMemory(&H1CDBB68,2,itemtab)
print("已討伐 "& cons & " 隻|設定 50 隻  完成討伐")
if cons=50 then
//當未接任務時,其值會是0,因此在直接啟動腳本時並不會自動開道具欄接任務,所以需要自己先接一次討伐卷               
  KeyPress("A")
  MouseRightClick(781, 224)
  wait(1000)
  KSP_ReadMemory(book,2,cons)//選擇討伐怪類型
  itemtab_A(0)
end if
end function
/*-----------------內存檢查畫面變灰----------------------*/
function check3  //檢查esc
KSP_ReadMemory(&H3297e11,2,chkesc)
if chkesc=1 then
  Keypress("Esc")               
end if
end function
/*-----------------檢查背包開關----------------------*/
function itemtab_A(pig)
//調用方式itemtab_A(pig) pig=0 關閉 pig=1 開啟
KSP_ReadMemory(&H1CDBB68,2,itemtab)
while itemtab<>pig
  Keypress("A")
  Wait(400)
  KSP_ReadMemory(&H1CDBB68,2,itemtab)
wend
end function
收藏收藏 分享分享 讚 幹 分享分享 FB分享
回覆

使用道具 舉報


sunnoboy 當前離線
UID
1351844
熱心
5 值
嘉獎
0 次
違規
0 次
在線時間
0 小時
經驗
5 點
積分
5
精華
0
最後登錄
2009-11-14
閱讀權限
5
註冊時間
2009-11-14
論壇幣
10 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 1
sunnoboy 2009-11-14 20:59:20
感謝大大的提供
一直很想要
趕快去試一試
回覆

使用道具 舉報

p0612 當前離線
UID
411416
熱心
44 值
嘉獎
0 次
違規
0 次
在線時間
26 小時
經驗
40 點
積分
332
精華
0
最後登錄
2019-8-13
閱讀權限
25
註冊時間
2007-6-22
論壇幣
219 幣
聯合幣
3 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 3
p0612 2009-11-15 00:03:09
感謝大大分享唷!!!!!!!!!!!!!!!!!!!
回覆

使用道具 舉報

lovescandal1314 該用戶已被刪除
lovescandal1314 2009-11-15 00:53:48
提示: 作者被禁止或刪除 內容自動屏蔽
回覆

使用道具 舉報

qq505061 該用戶已被刪除
5
qq505061 2009-11-15 01:22:12
提示: 作者被禁止或刪除 內容自動屏蔽
回覆

使用道具 舉報

hhboyz222 當前離線
UID
1351768
熱心
8 值
嘉獎
0 次
違規
0 次
在線時間
2 小時
經驗
12 點
積分
12
精華
0
最後登錄
2009-12-5
閱讀權限
10
註冊時間
2009-11-14
論壇幣
18 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 1
6
hhboyz222 2009-11-15 01:27:44
太好了~有大大寫好腳本了!
小弟就先下載來用看看囉!!
回覆

使用道具 舉報

chris0608 當前離線
UID
1352074
熱心
10 值
嘉獎
0 次
違規
0 次
在線時間
3 小時
經驗
10 點
積分
10
精華
0
最後登錄
2009-12-18
閱讀權限
10
註冊時間
2009-11-15
論壇幣
13 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 1
7
chris0608 2009-11-15 03:03:45
感謝大大分享~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
回覆

使用道具 舉報

yoyo131475 當前離線
UID
1322098
熱心
15 值
嘉獎
0 次
違規
0 次
在線時間
5 小時
經驗
15 點
積分
15
精華
0
最後登錄
2010-10-9
閱讀權限
10
註冊時間
2009-10-2
論壇幣
-1 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 1
8
yoyo131475 2009-11-15 08:07:56
謝謝大大的分享★★★★★★


YCT56B
回覆

使用道具 舉報

wadd 當前離線
UID
1332967
熱心
44 值
嘉獎
0 次
違規
0 次
在線時間
7 小時
經驗
44 點
積分
44
精華
0
最後登錄
2011-5-29
閱讀權限
20
註冊時間
2009-10-17
論壇幣
219 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 2Rank: 2
9
wadd 2009-11-15 08:32:43
感謝大大的提供
一直很想要
趕快去試一試
回覆

使用道具 舉報

FF7 當前離線
UID
160871
熱心
18 值
嘉獎
0 次
違規
0 次
在線時間
5 小時
經驗
12 點
積分
48
精華
0
最後登錄
2016-11-9
閱讀權限
20
註冊時間
2007-1-23
論壇幣
7 幣
聯合幣
6 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 2Rank: 2
10
FF7 2009-11-15 10:40:20
很感謝大大的分享
但是我的電腦不能用seraph
開第一次出現錯誤開第二次電腦就自動重開機了
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊


手機版 | Archiver | 外掛聯合國

GMT+8, 2024-5-6 03:22 , Processed in 0.052535 second(s), 16 queries , Memcache On.

版權說明:
  本站不會製作、經銷、代理外掛程式。僅免費提供外掛程式下載前之掃毒及掃木馬等安全檢測驗證,協助會員遠離盜號危險程式。本站所有資料均來自網際網路收集整理,說明文字暨下載連結轉載自原程 式開發站。站上出現之公司名稱、遊戲名稱、程式等,商標及著作權,均歸各公司及程式原創所有,本站程式所有權歸外掛聯合國所有。本程式所有權歸外掛聯合國所有.......

回頂部
第二步?
第三步?